ntsc-beta: Get game functions in their correct places

This commit is contained in:
Ryan Dwyer committed 2021-03-23 17:15:05 +10:00
1 parent 3b173ec13a
commit 4b7473d768
98 files changed
+109480 -2496

No files matched your search

+3 -5
View File
@@ -23,15 +23,13 @@ Perfect Dark has six known versions:
| ROM ID | Description |
|------------|---------------------------------------------------------------|
| ntsc-final | NTSC 8.7 final - fully supported |
| ntsc-beta | NTSC 6.4 beta - supported but mismatching |
| ntsc-1.0 | NTSC 8.7 final (the initial, buggy release) - fully supported |
| ntsc-beta | NTSC 6.4 beta - can extract assets only |
| pal-final | PAL 8.7 final - can extract assets only |
| ntsc-final | NTSC 8.7 final - fully supported |
| pal-beta | PAL 28.7 beta - can extract assets only |
| pal-final | PAL 8.7 final - supported but mismatching |
| jpn-final | Japanese 8.7 final - can extract assets only |
Currently only the ntsc-final and ntsc-1.0 versions are fully supported. The NTSC beta, PAL and JPN versions can have their assets extracted from the base ROM but no effort has been made to build those versions back into a ROM.
The project uses the `$ROMID` environment variable to know which version to work with. If not set, it defaults to `ntsc-final`. You can change it by running something like `export ROMID=ntsc-1.0`.
## Extracting the base ROM
+5 -1
View File
@@ -134,7 +134,9 @@
build/ROMID/game/padhalllv.o (section); \
build/ROMID/game/pad.o (section); \
build/ROMID/game/pak/pak.o (section); \
build/ROMID/game/debug.o (section); \
build/ROMID/game/debug1.o (section); \
build/ROMID/game/debug2.o (section); \
build/ROMID/game/debug3.o (section); \
build/ROMID/game/stubs/game_11eff0.o (section); \
build/ROMID/game/data/ailists.o (section); \
build/ROMID/game/data/data_020df0.o (section); \
@@ -173,6 +175,7 @@
build/ROMID/game/music.o (section); \
build/ROMID/game/lang.o (section); \
build/ROMID/game/texture.o (section); \
build/ROMID/game/game_173520.o (section); \
build/ROMID/game/game_173a00.o (section); \
build/ROMID/game/stubs/game_175f50.o (section); \
build/ROMID/game/game_175f90.o (section); \
@@ -186,6 +189,7 @@
build/ROMID/game/radar.o (section); \
build/ROMID/game/game_190260.o (section); \
build/ROMID/game/game_197600.o (section); \
build/ROMID/game/game_197c00.o (section); \
build/ROMID/game/game_1999b0.o (section); \
build/ROMID/game/game_19aa80.o (section); \
build/ROMID/game/training/training.o (section); \
+3
View File
@@ -135,6 +135,7 @@
build/ROMID/game/pad.o (section); \
build/ROMID/game/pak/pak.o (section); \
build/ROMID/game/debug.o (section); \
build/ROMID/game/debug3.o (section); \
build/ROMID/game/stubs/game_11eff0.o (section); \
build/ROMID/game/data/ailists.o (section); \
build/ROMID/game/data/data_020df0.o (section); \
@@ -173,6 +174,7 @@
build/ROMID/game/music.o (section); \
build/ROMID/game/lang.o (section); \
build/ROMID/game/texture.o (section); \
build/ROMID/game/game_173520.o (section); \
build/ROMID/game/game_173a00.o (section); \
build/ROMID/game/stubs/game_175f50.o (section); \
build/ROMID/game/game_175f90.o (section); \
@@ -186,6 +188,7 @@
build/ROMID/game/radar.o (section); \
build/ROMID/game/game_190260.o (section); \
build/ROMID/game/game_197600.o (section); \
build/ROMID/game/game_197c00.o (section); \
build/ROMID/game/game_1999b0.o (section); \
build/ROMID/game/game_19aa80.o (section); \
build/ROMID/game/training/training.o (section); \
+3
View File
@@ -135,6 +135,7 @@
build/ROMID/game/pad.o (section); \
build/ROMID/game/pak/pak.o (section); \
build/ROMID/game/debug.o (section); \
build/ROMID/game/debug3.o (section); \
build/ROMID/game/stubs/game_11eff0.o (section); \
build/ROMID/game/data/ailists.o (section); \
build/ROMID/game/data/data_020df0.o (section); \
@@ -173,6 +174,7 @@
build/ROMID/game/music.o (section); \
build/ROMID/game/lang.o (section); \
build/ROMID/game/texture.o (section); \
build/ROMID/game/game_173520.o (section); \
build/ROMID/game/game_173a00.o (section); \
build/ROMID/game/stubs/game_175f50.o (section); \
build/ROMID/game/game_175f90.o (section); \
@@ -186,6 +188,7 @@
build/ROMID/game/radar.o (section); \
build/ROMID/game/game_190260.o (section); \
build/ROMID/game/game_197600.o (section); \
build/ROMID/game/game_197c00.o (section); \
build/ROMID/game/game_1999b0.o (section); \
build/ROMID/game/game_19aa80.o (section); \
build/ROMID/game/training/training.o (section); \
+1 -1
View File
@@ -640,7 +640,7 @@ u8 weapon_crossbow[] = {
set_max_active_targets(3, 3, 1),
set_score_multiplier(0, 0, 1),
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
set_goal_score(72, 90, 200),
#else
set_goal_score(72, 90, 150),
File diff suppressed because it is too large. Load diff
+942
View File
@@ -12,6 +12,7 @@
#include "data.h"
#include "types.h"
#if VERSION >= VERSION_NTSC_1_0
void amTick(void)
{
s32 prevplayernum = g_Vars.currentplayernum;
@@ -410,3 +411,944 @@ void amTick(void)
setCurrentPlayerNum(prevplayernum);
}
#else
GLOBAL_ASM(
glabel amTick
/* f01ae90: 27bdff20 */ addiu $sp,$sp,-224
/* f01ae94: 3c06800a */ lui $a2,0x800a
/* f01ae98: 24c6e6c0 */ addiu $a2,$a2,-6464
/* f01ae9c: 8ccf006c */ lw $t7,0x6c($a2)
/* f01aea0: 8cce028c */ lw $t6,0x28c($a2)
/* f01aea4: afbf0044 */ sw $ra,0x44($sp)
/* f01aea8: afbe0040 */ sw $s8,0x40($sp)
/* f01aeac: afb7003c */ sw $s7,0x3c($sp)
/* f01aeb0: afb60038 */ sw $s6,0x38($sp)
/* f01aeb4: afb50034 */ sw $s5,0x34($sp)
/* f01aeb8: afb40030 */ sw $s4,0x30($sp)
/* f01aebc: afb3002c */ sw $s3,0x2c($sp)
/* f01aec0: afb20028 */ sw $s2,0x28($sp)
/* f01aec4: afb10024 */ sw $s1,0x24($sp)
/* f01aec8: afb00020 */ sw $s0,0x20($sp)
/* f01aecc: f7b40018 */ sdc1 $f20,0x18($sp)
/* f01aed0: 00003825 */ or $a3,$zero,$zero
/* f01aed4: 11e00003 */ beqz $t7,.NB0f01aee4
/* f01aed8: afae00dc */ sw $t6,0xdc($sp)
/* f01aedc: 10000002 */ beqz $zero,.NB0f01aee8
/* f01aee0: 24050001 */ addiu $a1,$zero,0x1
.NB0f01aee4:
/* f01aee4: 00002825 */ or $a1,$zero,$zero
.NB0f01aee8:
/* f01aee8: 8cd80068 */ lw $t8,0x68($a2)
/* f01aeec: 00002025 */ or $a0,$zero,$zero
/* f01aef0: 00001825 */ or $v1,$zero,$zero
/* f01aef4: 13000003 */ beqz $t8,.NB0f01af04
/* f01aef8: 00001025 */ or $v0,$zero,$zero
/* f01aefc: 10000001 */ beqz $zero,.NB0f01af04
/* f01af00: 24040001 */ addiu $a0,$zero,0x1
.NB0f01af04:
/* f01af04: 8cd90064 */ lw $t9,0x64($a2)
/* f01af08: 3c017f1a */ lui $at,0x7f1a
/* f01af0c: 13200003 */ beqz $t9,.NB0f01af1c
/* f01af10: 00000000 */ sll $zero,$zero,0x0
/* f01af14: 10000001 */ beqz $zero,.NB0f01af1c
/* f01af18: 24030001 */ addiu $v1,$zero,0x1
.NB0f01af1c:
/* f01af1c: 8cc80070 */ lw $t0,0x70($a2)
/* f01af20: 11000003 */ beqz $t0,.NB0f01af30
/* f01af24: 00000000 */ sll $zero,$zero,0x0
/* f01af28: 10000001 */ beqz $zero,.NB0f01af30
/* f01af2c: 24020001 */ addiu $v0,$zero,0x1
.NB0f01af30:
/* f01af30: 00434821 */ addu $t1,$v0,$v1
/* f01af34: 01245021 */ addu $t2,$t1,$a0
/* f01af38: 01455821 */ addu $t3,$t2,$a1
/* f01af3c: 19600306 */ blez $t3,.NB0f01bb58
/* f01af40: 00000000 */ sll $zero,$zero,0x0
/* f01af44: afa700d8 */ sw $a3,0xd8($sp)
/* f01af48: c4342244 */ lwc1 $f20,0x2244($at)
.NB0f01af4c:
/* f01af4c: 0fc48d5b */ jal 0xf12356c
/* f01af50: 8fa400d8 */ lw $a0,0xd8($sp)
/* f01af54: 3c07800a */ lui $a3,0x800a
/* f01af58: 24e7e6c0 */ addiu $a3,$a3,-6464
/* f01af5c: 8cec028c */ lw $t4,0x28c($a3)
/* f01af60: 3c01800a */ lui $at,0x800a
/* f01af64: 3c0d800a */ lui $t5,0x800a
/* f01af68: ac2c66a8 */ sw $t4,0x66a8($at)
/* f01af6c: 8dad66a8 */ lw $t5,0x66a8($t5)
/* f01af70: 3c0f800a */ lui $t7,0x800a
/* f01af74: 2404003c */ addiu $a0,$zero,0x3c
/* f01af78: 000d70c0 */ sll $t6,$t5,0x3
/* f01af7c: 01cd7023 */ subu $t6,$t6,$t5
/* f01af80: 000e70c0 */ sll $t6,$t6,0x3
/* f01af84: 01ee7821 */ addu $t7,$t7,$t6
/* f01af88: 91ef65f0 */ lbu $t7,0x65f0($t7)
/* f01af8c: 00002825 */ or $a1,$zero,$zero
/* f01af90: 51e0000f */ beqzl $t7,.NB0f01afd0
/* f01af94: 8ce80318 */ lw $t0,0x318($a3)
/* f01af98: 0fc299bf */ jal 0xf0a66fc
/* f01af9c: 24060001 */ addiu $a2,$zero,0x1
/* f01afa0: 18400009 */ blez $v0,.NB0f01afc8
/* f01afa4: 3c07800a */ lui $a3,0x800a
/* f01afa8: 3c18800a */ lui $t8,0x800a
/* f01afac: 8f1866a8 */ lw $t8,0x66a8($t8)
/* f01afb0: 3c01800a */ lui $at,0x800a
/* f01afb4: 0018c8c0 */ sll $t9,$t8,0x3
/* f01afb8: 0338c823 */ subu $t9,$t9,$t8
/* f01afbc: 0019c8c0 */ sll $t9,$t9,0x3
/* f01afc0: 00390821 */ addu $at,$at,$t9
/* f01afc4: a02065f0 */ sb $zero,0x65f0($at)
.NB0f01afc8:
/* f01afc8: 24e7e6c0 */ addiu $a3,$a3,-6464
/* f01afcc: 8ce80318 */ lw $t0,0x318($a3)
.NB0f01afd0:
/* f01afd0: 1500000f */ bnez $t0,.NB0f01b010
/* f01afd4: 00000000 */ sll $zero,$zero,0x0
/* f01afd8: 0fc4336c */ jal 0xf10cdb0
/* f01afdc: 00000000 */ sll $zero,$zero,0x0
/* f01afe0: 3c09800a */ lui $t1,0x800a
/* f01afe4: 8d2966a8 */ lw $t1,0x66a8($t1)
/* f01afe8: 3c0b800a */ lui $t3,0x800a
/* f01afec: 000950c0 */ sll $t2,$t1,0x3
/* f01aff0: 01495023 */ subu $t2,$t2,$t1
/* f01aff4: 000a50c0 */ sll $t2,$t2,0x3
/* f01aff8: 016a5821 */ addu $t3,$t3,$t2
/* f01affc: 916b65f1 */ lbu $t3,0x65f1($t3)
/* f01b000: 104b0003 */ beq $v0,$t3,.NB0f01b010
/* f01b004: 00000000 */ sll $zero,$zero,0x0
/* f01b008: 0fc3ec1f */ jal 0xf0fb07c
/* f01b00c: 00000000 */ sll $zero,$zero,0x0
.NB0f01b010:
/* f01b010: 3c07800a */ lui $a3,0x800a
/* f01b014: 24e7e6c0 */ addiu $a3,$a3,-6464
/* f01b018: 8cec0284 */ lw $t4,0x284($a3)
/* f01b01c: 918d0250 */ lbu $t5,0x250($t4)
/* f01b020: 11a00237 */ beqz $t5,.NB0f01b900
/* f01b024: 00000000 */ sll $zero,$zero,0x0
/* f01b028: 8cee0288 */ lw $t6,0x288($a3)
/* f01b02c: 0000f025 */ or $s8,$zero,$zero
/* f01b030: 0fc53380 */ jal 0xf14ce00
/* f01b034: 8dc40070 */ lw $a0,0x70($t6)
/* f01b038: 3c0f800a */ lui $t7,0x800a
/* f01b03c: 8defe948 */ lw $t7,-0x16b8($t7)
/* f01b040: afa200d4 */ sw $v0,0xd4($sp)
/* f01b044: 0fc5338e */ jal 0xf14ce38
/* f01b048: 8de40070 */ lw $a0,0x70($t7)
/* f01b04c: 0c0055bf */ jal 0x156fc
/* f01b050: a3a200d3 */ sb $v0,0xd3($sp)
/* f01b054: 1840022a */ blez $v0,.NB0f01b900
/* f01b058: afa200cc */ sw $v0,0xcc($sp)
/* f01b05c: a3a000c7 */ sb $zero,0xc7($sp)
.NB0f01b060:
/* f01b060: 03c02025 */ or $a0,$s8,$zero
/* f01b064: 83a500d3 */ lb $a1,0xd3($sp)
/* f01b068: afa000b8 */ sw $zero,0xb8($sp)
/* f01b06c: 24150001 */ addiu $s5,$zero,0x1
/* f01b070: 24140001 */ addiu $s4,$zero,0x1
/* f01b074: afa000b0 */ sw $zero,0xb0($sp)
/* f01b078: 0c0055ca */ jal 0x15728
/* f01b07c: afa000ac */ sw $zero,0xac($sp)
/* f01b080: 0002b600 */ sll $s6,$v0,0x18
/* f01b084: 0016c603 */ sra $t8,$s6,0x18
/* f01b088: 0300b025 */ or $s6,$t8,$zero
/* f01b08c: 03c02025 */ or $a0,$s8,$zero
/* f01b090: 0c0055f9 */ jal 0x157e4
/* f01b094: 83a500d3 */ lb $a1,0xd3($sp)
/* f01b098: 0002be00 */ sll $s7,$v0,0x18
/* f01b09c: 0017ce03 */ sra $t9,$s7,0x18
/* f01b0a0: 0320b825 */ or $s7,$t9,$zero
/* f01b0a4: 03c02025 */ or $a0,$s8,$zero
/* f01b0a8: 83a500d3 */ lb $a1,0xd3($sp)
/* f01b0ac: 0c005656 */ jal 0x15958
/* f01b0b0: 3406ffff */ dli $a2,0xffff
/* f01b0b4: 3051ffff */ andi $s1,$v0,0xffff
/* f01b0b8: 03c02025 */ or $a0,$s8,$zero
/* f01b0bc: 83a500d3 */ lb $a1,0xd3($sp)
/* f01b0c0: 0c00568c */ jal 0x15a30
/* f01b0c4: 3406ffff */ dli $a2,0xffff
/* f01b0c8: 3c08800a */ lui $t0,0x800a
/* f01b0cc: 8d0866a8 */ lw $t0,0x66a8($t0)
/* f01b0d0: 3c0a800a */ lui $t2,0x800a
/* f01b0d4: 254a65c0 */ addiu $t2,$t2,0x65c0
/* f01b0d8: 000848c0 */ sll $t1,$t0,0x3
/* f01b0dc: 01284823 */ subu $t1,$t1,$t0
/* f01b0e0: 000948c0 */ sll $t1,$t1,0x3
/* f01b0e4: 012a8021 */ addu $s0,$t1,$t2
/* f01b0e8: a2000032 */ sb $zero,0x32($s0)
/* f01b0ec: 3c0b800a */ lui $t3,0x800a
/* f01b0f0: 8d6be944 */ lw $t3,-0x16bc($t3)
/* f01b0f4: a7a200be */ sh $v0,0xbe($sp)
/* f01b0f8: 24010002 */ addiu $at,$zero,0x2
/* f01b0fc: 916c0250 */ lbu $t4,0x250($t3)
/* f01b100: 02206825 */ or $t5,$s1,$zero
/* f01b104: 55810006 */ bnel $t4,$at,.NB0f01b120
/* f01b108: 8faf00d4 */ lw $t7,0xd4($sp)
/* f01b10c: 31b18000 */ andi $s1,$t5,0x8000
/* f01b110: 0000b025 */ or $s6,$zero,$zero
/* f01b114: 0000b825 */ or $s7,$zero,$zero
/* f01b118: a7a000be */ sh $zero,0xbe($sp)
/* f01b11c: 8faf00d4 */ lw $t7,0xd4($sp)
.NB0f01b120:
/* f01b120: 24010002 */ addiu $at,$zero,0x2
/* f01b124: 32380010 */ andi $t8,$s1,0x10
/* f01b128: 11e10003 */ beq $t7,$at,.NB0f01b138
/* f01b12c: 24010003 */ addiu $at,$zero,0x3
/* f01b130: 15e1000c */ bne $t7,$at,.NB0f01b164
/* f01b134: 322b8000 */ andi $t3,$s1,0x8000
.NB0f01b138:
/* f01b138: 17000003 */ bnez $t8,.NB0f01b148
/* f01b13c: 02209025 */ or $s2,$s1,$zero
/* f01b140: 32390020 */ andi $t9,$s1,0x20
/* f01b144: 13200002 */ beqz $t9,.NB0f01b150
.NB0f01b148:
/* f01b148: 24080001 */ addiu $t0,$zero,0x1
/* f01b14c: afa800b0 */ sw $t0,0xb0($sp)
.NB0f01b150:
/* f01b150: 32498000 */ andi $t1,$s2,0x8000
/* f01b154: 1120000d */ beqz $t1,.NB0f01b18c
/* f01b158: 240a0001 */ addiu $t2,$zero,0x1
/* f01b15c: 1000000b */ beqz $zero,.NB0f01b18c
/* f01b160: a20a0032 */ sb $t2,0x32($s0)
.NB0f01b164:
/* f01b164: 11600003 */ beqz $t3,.NB0f01b174
/* f01b168: 02209025 */ or $s2,$s1,$zero
/* f01b16c: 240c0001 */ addiu $t4,$zero,0x1
/* f01b170: afac00b0 */ sw $t4,0xb0($sp)
.NB0f01b174:
/* f01b174: 324d0010 */ andi $t5,$s2,0x10
/* f01b178: 15a00002 */ bnez $t5,.NB0f01b184
/* f01b17c: 324e0020 */ andi $t6,$s2,0x20
/* f01b180: 11c00002 */ beqz $t6,.NB0f01b18c
.NB0f01b184:
/* f01b184: 240f0001 */ addiu $t7,$zero,0x1
/* f01b188: a20f0032 */ sb $t7,0x32($s0)
.NB0f01b18c:
/* f01b18c: 92020032 */ lbu $v0,0x32($s0)
/* f01b190: 10400016 */ beqz $v0,.NB0f01b1ec
/* f01b194: 00000000 */ sll $zero,$zero,0x0
/* f01b198: 82030000 */ lb $v1,0x0($s0)
/* f01b19c: 28610002 */ slti $at,$v1,0x2
/* f01b1a0: 14200012 */ bnez $at,.NB0f01b1ec
/* f01b1a4: 00000000 */ sll $zero,$zero,0x0
/* f01b1a8: 82180034 */ lb $t8,0x34($s0)
/* f01b1ac: 24190002 */ addiu $t9,$zero,0x2
/* f01b1b0: 00002025 */ or $a0,$zero,$zero
/* f01b1b4: 1700000d */ bnez $t8,.NB0f01b1ec
/* f01b1b8: 00000000 */ sll $zero,$zero,0x0
/* f01b1bc: a2030034 */ sb $v1,0x34($s0)
/* f01b1c0: 0fc3ebc8 */ jal 0xf0faf20
/* f01b1c4: a2190000 */ sb $t9,0x0($s0)
/* f01b1c8: 3c08800a */ lui $t0,0x800a
/* f01b1cc: 8d0866a8 */ lw $t0,0x66a8($t0)
/* f01b1d0: 3c0a800a */ lui $t2,0x800a
/* f01b1d4: 254a65c0 */ addiu $t2,$t2,0x65c0
/* f01b1d8: 000848c0 */ sll $t1,$t0,0x3
/* f01b1dc: 01284823 */ subu $t1,$t1,$t0
/* f01b1e0: 000948c0 */ sll $t1,$t1,0x3
/* f01b1e4: 012a8021 */ addu $s0,$t1,$t2
/* f01b1e8: 92020032 */ lbu $v0,0x32($s0)
.NB0f01b1ec:
/* f01b1ec: 54400009 */ bnezl $v0,.NB0f01b214
/* f01b1f0: 324b0008 */ andi $t3,$s2,0x8
/* f01b1f4: 82020034 */ lb $v0,0x34($s0)
/* f01b1f8: 00002025 */ or $a0,$zero,$zero
/* f01b1fc: 50400005 */ beqzl $v0,.NB0f01b214
/* f01b200: 324b0008 */ andi $t3,$s2,0x8
/* f01b204: a2020000 */ sb $v0,0x0($s0)
/* f01b208: 0fc3ebc8 */ jal 0xf0faf20
/* f01b20c: a2000034 */ sb $zero,0x34($s0)
/* f01b210: 324b0008 */ andi $t3,$s2,0x8
.NB0f01b214:
/* f01b214: 11600002 */ beqz $t3,.NB0f01b220
/* f01b218: 324c0004 */ andi $t4,$s2,0x4
/* f01b21c: 0000a025 */ or $s4,$zero,$zero
.NB0f01b220:
/* f01b220: 11800002 */ beqz $t4,.NB0f01b22c
/* f01b224: 324d0002 */ andi $t5,$s2,0x2
/* f01b228: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b22c:
/* f01b22c: 11a00002 */ beqz $t5,.NB0f01b238
/* f01b230: 324e0001 */ andi $t6,$s2,0x1
/* f01b234: 0000a825 */ or $s5,$zero,$zero
.NB0f01b238:
/* f01b238: 11c00002 */ beqz $t6,.NB0f01b244
/* f01b23c: 324f0800 */ andi $t7,$s2,0x800
/* f01b240: 24150002 */ addiu $s5,$zero,0x2
.NB0f01b244:
/* f01b244: 11e00002 */ beqz $t7,.NB0f01b250
/* f01b248: 32580400 */ andi $t8,$s2,0x400
/* f01b24c: 0000a025 */ or $s4,$zero,$zero
.NB0f01b250:
/* f01b250: 13000002 */ beqz $t8,.NB0f01b25c
/* f01b254: 32590200 */ andi $t9,$s2,0x200
/* f01b258: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b25c:
/* f01b25c: 13200002 */ beqz $t9,.NB0f01b268
/* f01b260: 32480100 */ andi $t0,$s2,0x100
/* f01b264: 0000a825 */ or $s5,$zero,$zero
.NB0f01b268:
/* f01b268: 11000002 */ beqz $t0,.NB0f01b274
/* f01b26c: 8fa900d4 */ lw $t1,0xd4($sp)
/* f01b270: 24150002 */ addiu $s5,$zero,0x2
.NB0f01b274:
/* f01b274: 24010006 */ addiu $at,$zero,0x6
/* f01b278: 11210008 */ beq $t1,$at,.NB0f01b29c
/* f01b27c: 3c0a800a */ lui $t2,0x800a
/* f01b280: 24010007 */ addiu $at,$zero,0x7
/* f01b284: 11210005 */ beq $t1,$at,.NB0f01b29c
/* f01b288: 24010005 */ addiu $at,$zero,0x5
/* f01b28c: 11210003 */ beq $t1,$at,.NB0f01b29c
/* f01b290: 24010004 */ addiu $at,$zero,0x4
/* f01b294: 15210089 */ bne $t1,$at,.NB0f01b4bc
/* f01b298: 00000000 */ sll $zero,$zero,0x0
.NB0f01b29c:
/* f01b29c: 8d4ae948 */ lw $t2,-0x16b8($t2)
/* f01b2a0: 0fc53395 */ jal 0xf14ce54
/* f01b2a4: 8d440070 */ lw $a0,0x70($t2)
/* f01b2a8: 00028600 */ sll $s0,$v0,0x18
/* f01b2ac: 00022e00 */ sll $a1,$v0,0x18
/* f01b2b0: 00105e03 */ sra $t3,$s0,0x18
/* f01b2b4: 00056603 */ sra $t4,$a1,0x18
/* f01b2b8: 01608025 */ or $s0,$t3,$zero
/* f01b2bc: 01802825 */ or $a1,$t4,$zero
/* f01b2c0: 0c0055ca */ jal 0x15728
/* f01b2c4: 03c02025 */ or $a0,$s8,$zero
/* f01b2c8: 00029600 */ sll $s2,$v0,0x18
/* f01b2cc: 00102e00 */ sll $a1,$s0,0x18
/* f01b2d0: 00126e03 */ sra $t5,$s2,0x18
/* f01b2d4: 00057603 */ sra $t6,$a1,0x18
/* f01b2d8: 01a09025 */ or $s2,$t5,$zero
/* f01b2dc: 01c02825 */ or $a1,$t6,$zero
/* f01b2e0: 0c0055f9 */ jal 0x157e4
/* f01b2e4: 03c02025 */ or $a0,$s8,$zero
/* f01b2e8: 00029e00 */ sll $s3,$v0,0x18
/* f01b2ec: 00102e00 */ sll $a1,$s0,0x18
/* f01b2f0: 00137e03 */ sra $t7,$s3,0x18
/* f01b2f4: 0005c603 */ sra $t8,$a1,0x18
/* f01b2f8: 01e09825 */ or $s3,$t7,$zero
/* f01b2fc: 03002825 */ or $a1,$t8,$zero
/* f01b300: 03c02025 */ or $a0,$s8,$zero
/* f01b304: 0c005656 */ jal 0x15958
/* f01b308: 3406ffff */ dli $a2,0xffff
/* f01b30c: 00102e00 */ sll $a1,$s0,0x18
/* f01b310: 0005ce03 */ sra $t9,$a1,0x18
/* f01b314: 3051ffff */ andi $s1,$v0,0xffff
/* f01b318: 03202825 */ or $a1,$t9,$zero
/* f01b31c: 03c02025 */ or $a0,$s8,$zero
/* f01b320: 0c00568c */ jal 0x15a30
/* f01b324: 3406ffff */ dli $a2,0xffff
/* f01b328: 3c08800a */ lui $t0,0x800a
/* f01b32c: 8d08e944 */ lw $t0,-0x16bc($t0)
/* f01b330: 24010002 */ addiu $at,$zero,0x2
/* f01b334: 3043ffff */ andi $v1,$v0,0xffff
/* f01b338: 91090250 */ lbu $t1,0x250($t0)
/* f01b33c: 02205025 */ or $t2,$s1,$zero
/* f01b340: 240d0001 */ addiu $t5,$zero,0x1
/* f01b344: 15210005 */ bne $t1,$at,.NB0f01b35c
/* f01b348: 240f0001 */ addiu $t7,$zero,0x1
/* f01b34c: 31518000 */ andi $s1,$t2,0x8000
/* f01b350: 00009025 */ or $s2,$zero,$zero
/* f01b354: 00009825 */ or $s3,$zero,$zero
/* f01b358: 00001825 */ or $v1,$zero,$zero
.NB0f01b35c:
/* f01b35c: 322c8000 */ andi $t4,$s1,0x8000
/* f01b360: 11800002 */ beqz $t4,.NB0f01b36c
/* f01b364: 02201025 */ or $v0,$s1,$zero
/* f01b368: afad00b0 */ sw $t5,0xb0($sp)
.NB0f01b36c:
/* f01b36c: 306e2000 */ andi $t6,$v1,0x2000
/* f01b370: 11c00002 */ beqz $t6,.NB0f01b37c
/* f01b374: 30580008 */ andi $t8,$v0,0x8
/* f01b378: afaf00ac */ sw $t7,0xac($sp)
.NB0f01b37c:
/* f01b37c: 13000002 */ beqz $t8,.NB0f01b388
/* f01b380: 30590004 */ andi $t9,$v0,0x4
/* f01b384: 0000a025 */ or $s4,$zero,$zero
.NB0f01b388:
/* f01b388: 13200002 */ beqz $t9,.NB0f01b394
/* f01b38c: 30480002 */ andi $t0,$v0,0x2
/* f01b390: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b394:
/* f01b394: 11000002 */ beqz $t0,.NB0f01b3a0
/* f01b398: 30490001 */ andi $t1,$v0,0x1
/* f01b39c: 0000a825 */ or $s5,$zero,$zero
.NB0f01b3a0:
/* f01b3a0: 11200002 */ beqz $t1,.NB0f01b3ac
/* f01b3a4: 304a0800 */ andi $t2,$v0,0x800
/* f01b3a8: 24150002 */ addiu $s5,$zero,0x2
.NB0f01b3ac:
/* f01b3ac: 11400002 */ beqz $t2,.NB0f01b3b8
/* f01b3b0: 304b0400 */ andi $t3,$v0,0x400
/* f01b3b4: 0000a025 */ or $s4,$zero,$zero
.NB0f01b3b8:
/* f01b3b8: 11600002 */ beqz $t3,.NB0f01b3c4
/* f01b3bc: 304c0200 */ andi $t4,$v0,0x200
/* f01b3c0: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b3c4:
/* f01b3c4: 11800002 */ beqz $t4,.NB0f01b3d0
/* f01b3c8: 304d0100 */ andi $t5,$v0,0x100
/* f01b3cc: 0000a825 */ or $s5,$zero,$zero
.NB0f01b3d0:
/* f01b3d0: 11a00002 */ beqz $t5,.NB0f01b3dc
/* f01b3d4: 00121e00 */ sll $v1,$s2,0x18
/* f01b3d8: 24150002 */ addiu $s5,$zero,0x2
.NB0f01b3dc:
/* f01b3dc: 06410005 */ bgez $s2,.NB0f01b3f4
/* f01b3e0: 0003c603 */ sra $t8,$v1,0x18
/* f01b3e4: 00121823 */ negu $v1,$s2
/* f01b3e8: 00037600 */ sll $t6,$v1,0x18
/* f01b3ec: 10000002 */ beqz $zero,.NB0f01b3f8
/* f01b3f0: 000e1e03 */ sra $v1,$t6,0x18
.NB0f01b3f4:
/* f01b3f4: 03001825 */ or $v1,$t8,$zero
.NB0f01b3f8:
/* f01b3f8: 06610005 */ bgez $s3,.NB0f01b410
/* f01b3fc: 28610015 */ slti $at,$v1,0x15
/* f01b400: 00131023 */ negu $v0,$s3
/* f01b404: 0002ce00 */ sll $t9,$v0,0x18
/* f01b408: 10000004 */ beqz $zero,.NB0f01b41c
/* f01b40c: 00191603 */ sra $v0,$t9,0x18
.NB0f01b410:
/* f01b410: 00131600 */ sll $v0,$s3,0x18
/* f01b414: 00024e03 */ sra $t1,$v0,0x18
/* f01b418: 01201025 */ or $v0,$t1,$zero
.NB0f01b41c:
/* f01b41c: 10200004 */ beqz $at,.NB0f01b430
/* f01b420: 240a0001 */ addiu $t2,$zero,0x1
/* f01b424: 28410015 */ slti $at,$v0,0x15
/* f01b428: 14200024 */ bnez $at,.NB0f01b4bc
/* f01b42c: 00000000 */ sll $zero,$zero,0x0
.NB0f01b430:
/* f01b430: 44822000 */ mtc1 $v0,$f4
/* f01b434: 44833000 */ mtc1 $v1,$f6
/* f01b438: 46802020 */ cvt.s.w $f0,$f4
/* f01b43c: 468030a0 */ cvt.s.w $f2,$f6
/* f01b440: 46020203 */ div.s $f8,$f0,$f2
/* f01b444: 4614403c */ c.lt.s $f8,$f20
/* f01b448: 00000000 */ sll $zero,$zero,0x0
/* f01b44c: 45020008 */ bc1fl .NB0f01b470
/* f01b450: 46001283 */ div.s $f10,$f2,$f0
/* f01b454: 06410003 */ bgez $s2,.NB0f01b464
/* f01b458: 24140001 */ addiu $s4,$zero,0x1
/* f01b45c: 10000016 */ beqz $zero,.NB0f01b4b8
/* f01b460: 0000a825 */ or $s5,$zero,$zero
.NB0f01b464:
/* f01b464: 10000014 */ beqz $zero,.NB0f01b4b8
/* f01b468: 24150002 */ addiu $s5,$zero,0x2
/* f01b46c: 46001283 */ div.s $f10,$f2,$f0
.NB0f01b470:
/* f01b470: 4614503c */ c.lt.s $f10,$f20
/* f01b474: 00000000 */ sll $zero,$zero,0x0
/* f01b478: 45000007 */ bc1f .NB0f01b498
/* f01b47c: 00000000 */ sll $zero,$zero,0x0
/* f01b480: 06610003 */ bgez $s3,.NB0f01b490
/* f01b484: 24150001 */ addiu $s5,$zero,0x1
/* f01b488: 1000000b */ beqz $zero,.NB0f01b4b8
/* f01b48c: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b490:
/* f01b490: 10000009 */ beqz $zero,.NB0f01b4b8
/* f01b494: 0000a025 */ or $s4,$zero,$zero
.NB0f01b498:
/* f01b498: 06410003 */ bgez $s2,.NB0f01b4a8
/* f01b49c: 24150002 */ addiu $s5,$zero,0x2
/* f01b4a0: 10000001 */ beqz $zero,.NB0f01b4a8
/* f01b4a4: 0000a825 */ or $s5,$zero,$zero
.NB0f01b4a8:
/* f01b4a8: 06610003 */ bgez $s3,.NB0f01b4b8
/* f01b4ac: 0000a025 */ or $s4,$zero,$zero
/* f01b4b0: 10000001 */ beqz $zero,.NB0f01b4b8
/* f01b4b4: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b4b8:
/* f01b4b8: afaa00b8 */ sw $t2,0xb8($sp)
.NB0f01b4bc:
/* f01b4bc: 3c04800a */ lui $a0,0x800a
/* f01b4c0: 06c10005 */ bgez $s6,.NB0f01b4d8
/* f01b4c4: 8c84e944 */ lw $a0,-0x16bc($a0)
/* f01b4c8: 00161823 */ negu $v1,$s6
/* f01b4cc: 00035e00 */ sll $t3,$v1,0x18
/* f01b4d0: 10000004 */ beqz $zero,.NB0f01b4e4
/* f01b4d4: 000b1e03 */ sra $v1,$t3,0x18
.NB0f01b4d8:
/* f01b4d8: 00161e00 */ sll $v1,$s6,0x18
/* f01b4dc: 00036e03 */ sra $t5,$v1,0x18
/* f01b4e0: 01a01825 */ or $v1,$t5,$zero
.NB0f01b4e4:
/* f01b4e4: 06e10005 */ bgez $s7,.NB0f01b4fc
/* f01b4e8: 28610015 */ slti $at,$v1,0x15
/* f01b4ec: 00171023 */ negu $v0,$s7
/* f01b4f0: 00027600 */ sll $t6,$v0,0x18
/* f01b4f4: 10000004 */ beqz $zero,.NB0f01b508
/* f01b4f8: 000e1603 */ sra $v0,$t6,0x18
.NB0f01b4fc:
/* f01b4fc: 00171600 */ sll $v0,$s7,0x18
/* f01b500: 0002c603 */ sra $t8,$v0,0x18
/* f01b504: 03001025 */ or $v0,$t8,$zero
.NB0f01b508:
/* f01b508: 10200004 */ beqz $at,.NB0f01b51c
/* f01b50c: 3c0b8007 */ lui $t3,0x8007
/* f01b510: 28410015 */ slti $at,$v0,0x15
/* f01b514: 54200026 */ bnezl $at,.NB0f01b5b0
/* f01b518: 8c8800d8 */ lw $t0,0xd8($a0)
.NB0f01b51c:
/* f01b51c: 44828000 */ mtc1 $v0,$f16
/* f01b520: 44839000 */ mtc1 $v1,$f18
/* f01b524: 24190001 */ addiu $t9,$zero,0x1
/* f01b528: 46808020 */ cvt.s.w $f0,$f16
/* f01b52c: afb900b8 */ sw $t9,0xb8($sp)
/* f01b530: 468090a0 */ cvt.s.w $f2,$f18
/* f01b534: 46020103 */ div.s $f4,$f0,$f2
/* f01b538: 4614203c */ c.lt.s $f4,$f20
/* f01b53c: 00000000 */ sll $zero,$zero,0x0
/* f01b540: 45020008 */ bc1fl .NB0f01b564
/* f01b544: 46001183 */ div.s $f6,$f2,$f0
/* f01b548: 06c10003 */ bgez $s6,.NB0f01b558
/* f01b54c: 24140001 */ addiu $s4,$zero,0x1
/* f01b550: 10000016 */ beqz $zero,.NB0f01b5ac
/* f01b554: 0000a825 */ or $s5,$zero,$zero
.NB0f01b558:
/* f01b558: 10000014 */ beqz $zero,.NB0f01b5ac
/* f01b55c: 24150002 */ addiu $s5,$zero,0x2
/* f01b560: 46001183 */ div.s $f6,$f2,$f0
.NB0f01b564:
/* f01b564: 4614303c */ c.lt.s $f6,$f20
/* f01b568: 00000000 */ sll $zero,$zero,0x0
/* f01b56c: 45000007 */ bc1f .NB0f01b58c
/* f01b570: 00000000 */ sll $zero,$zero,0x0
/* f01b574: 06e10003 */ bgez $s7,.NB0f01b584
/* f01b578: 24150001 */ addiu $s5,$zero,0x1
/* f01b57c: 1000000b */ beqz $zero,.NB0f01b5ac
/* f01b580: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b584:
/* f01b584: 10000009 */ beqz $zero,.NB0f01b5ac
/* f01b588: 0000a025 */ or $s4,$zero,$zero
.NB0f01b58c:
/* f01b58c: 06c10003 */ bgez $s6,.NB0f01b59c
/* f01b590: 24150002 */ addiu $s5,$zero,0x2
/* f01b594: 10000001 */ beqz $zero,.NB0f01b59c
/* f01b598: 0000a825 */ or $s5,$zero,$zero
.NB0f01b59c:
/* f01b59c: 06e10003 */ bgez $s7,.NB0f01b5ac
/* f01b5a0: 0000a025 */ or $s4,$zero,$zero
/* f01b5a4: 10000001 */ beqz $zero,.NB0f01b5ac
/* f01b5a8: 24140002 */ addiu $s4,$zero,0x2
.NB0f01b5ac:
/* f01b5ac: 8c8800d8 */ lw $t0,0xd8($a0)
.NB0f01b5b0:
/* f01b5b0: 51000003 */ beqzl $t0,.NB0f01b5c0
/* f01b5b4: 8fa900b0 */ lw $t1,0xb0($sp)
/* f01b5b8: afa000b0 */ sw $zero,0xb0($sp)
/* f01b5bc: 8fa900b0 */ lw $t1,0xb0($sp)
.NB0f01b5c0:
/* f01b5c0: 97ae00be */ lhu $t6,0xbe($sp)
/* f01b5c4: 15200016 */ bnez $t1,.NB0f01b620
/* f01b5c8: 31cf2000 */ andi $t7,$t6,0x2000
/* f01b5cc: 908a0250 */ lbu $t2,0x250($a0)
/* f01b5d0: 24010002 */ addiu $at,$zero,0x2
/* f01b5d4: 1541000e */ bne $t2,$at,.NB0f01b610
/* f01b5d8: 00000000 */ sll $zero,$zero,0x0
/* f01b5dc: 8d6b3af0 */ lw $t3,0x3af0($t3)
/* f01b5e0: 3c0d800a */ lui $t5,0x800a
/* f01b5e4: 000b60c0 */ sll $t4,$t3,0x3
/* f01b5e8: 018b6023 */ subu $t4,$t4,$t3
/* f01b5ec: 000c60c0 */ sll $t4,$t4,0x3
/* f01b5f0: 018b6023 */ subu $t4,$t4,$t3
/* f01b5f4: 000c6100 */ sll $t4,$t4,0x4
/* f01b5f8: 018b6023 */ subu $t4,$t4,$t3
/* f01b5fc: 000c6080 */ sll $t4,$t4,0x2
/* f01b600: 01ac6821 */ addu $t5,$t5,$t4
/* f01b604: 8dad2c48 */ lw $t5,0x2c48($t5)
/* f01b608: 15a00005 */ bnez $t5,.NB0f01b620
/* f01b60c: 00000000 */ sll $zero,$zero,0x0
.NB0f01b610:
/* f01b610: 0fc3ecfa */ jal 0xf0fb3e8
/* f01b614: 00000000 */ sll $zero,$zero,0x0
/* f01b618: 100000b9 */ beqz $zero,.NB0f01b900
/* f01b61c: 00000000 */ sll $zero,$zero,0x0
.NB0f01b620:
/* f01b620: 11e00002 */ beqz $t7,.NB0f01b62c
/* f01b624: 24180001 */ addiu $t8,$zero,0x1
/* f01b628: afb800ac */ sw $t8,0xac($sp)
.NB0f01b62c:
/* f01b62c: 8fb900ac */ lw $t9,0xac($sp)
/* f01b630: 3c08800a */ lui $t0,0x800a
/* f01b634: 5320003f */ beqzl $t9,.NB0f01b734
/* f01b638: 83aa00c7 */ lb $t2,0xc7($sp)
/* f01b63c: 8d0866a8 */ lw $t0,0x66a8($t0)
/* f01b640: 3c0a800a */ lui $t2,0x800a
/* f01b644: 254a65c0 */ addiu $t2,$t2,0x65c0
/* f01b648: 000848c0 */ sll $t1,$t0,0x3
/* f01b64c: 01284823 */ subu $t1,$t1,$t0
/* f01b650: 000948c0 */ sll $t1,$t1,0x3
/* f01b654: 012a8021 */ addu $s0,$t1,$t2
/* f01b658: 820b0000 */ lb $t3,0x0($s0)
/* f01b65c: 3c0c800a */ lui $t4,0x800a
/* f01b660: 29610002 */ slti $at,$t3,0x2
/* f01b664: 5420002a */ bnezl $at,.NB0f01b710
/* f01b668: 9204000e */ lbu $a0,0xe($s0)
/* f01b66c: 8d8ceb34 */ lw $t4,-0x14cc($t4)
/* f01b670: 3c0d800a */ lui $t5,0x800a
/* f01b674: 51800010 */ beqzl $t4,.NB0f01b6b8
/* f01b678: 9202000e */ lbu $v0,0xe($s0)
/* f01b67c: 81ae27ab */ lb $t6,0x27ab($t5)
/* f01b680: 05c3000d */ bgezl $t6,.NB0f01b6b8
/* f01b684: 9202000e */ lbu $v0,0xe($s0)
/* f01b688: 9204000e */ lbu $a0,0xe($s0)
/* f01b68c: 24010004 */ addiu $at,$zero,0x4
/* f01b690: 240f0001 */ addiu $t7,$zero,0x1
/* f01b694: 14810003 */ bne $a0,$at,.NB0f01b6a4
/* f01b698: 00000000 */ sll $zero,$zero,0x0
/* f01b69c: 10000024 */ beqz $zero,.NB0f01b730
/* f01b6a0: a3af00c7 */ sb $t7,0xc7($sp)
.NB0f01b6a4:
/* f01b6a4: 0fc3e8df */ jal 0xf0fa37c
/* f01b6a8: 00000000 */ sll $zero,$zero,0x0
/* f01b6ac: 10000021 */ beqz $zero,.NB0f01b734
/* f01b6b0: 83aa00c7 */ lb $t2,0xc7($sp)
/* f01b6b4: 9202000e */ lbu $v0,0xe($s0)
.NB0f01b6b8:
/* f01b6b8: 3c18800b */ lui $t8,0x800b
/* f01b6bc: 24010001 */ addiu $at,$zero,0x1
/* f01b6c0: 0302c021 */ addu $t8,$t8,$v0
/* f01b6c4: 93181428 */ lbu $t8,0x1428($t8)
/* f01b6c8: 57010006 */ bnel $t8,$at,.NB0f01b6e4
/* f01b6cc: 92190032 */ lbu $t9,0x32($s0)
/* f01b6d0: 0fc3e6f4 */ jal 0xf0f9bd0
/* f01b6d4: 00000000 */ sll $zero,$zero,0x0
/* f01b6d8: 10000016 */ beqz $zero,.NB0f01b734
/* f01b6dc: 83aa00c7 */ lb $t2,0xc7($sp)
/* f01b6e0: 92190032 */ lbu $t9,0x32($s0)
.NB0f01b6e4:
/* f01b6e4: 24080001 */ addiu $t0,$zero,0x1
/* f01b6e8: 00402025 */ or $a0,$v0,$zero
/* f01b6ec: 17200010 */ bnez $t9,.NB0f01b730
/* f01b6f0: 24010004 */ addiu $at,$zero,0x4
/* f01b6f4: 1041000e */ beq $v0,$at,.NB0f01b730
/* f01b6f8: a3a800c7 */ sb $t0,0xc7($sp)
/* f01b6fc: 0fc3e8df */ jal 0xf0fa37c
/* f01b700: 00000000 */ sll $zero,$zero,0x0
/* f01b704: 1000000b */ beqz $zero,.NB0f01b734
/* f01b708: 83aa00c7 */ lb $t2,0xc7($sp)
/* f01b70c: 9204000e */ lbu $a0,0xe($s0)
.NB0f01b710:
/* f01b710: 24010004 */ addiu $at,$zero,0x4
/* f01b714: 24090001 */ addiu $t1,$zero,0x1
/* f01b718: 14810003 */ bne $a0,$at,.NB0f01b728
/* f01b71c: 00000000 */ sll $zero,$zero,0x0
/* f01b720: 10000003 */ beqz $zero,.NB0f01b730
/* f01b724: a3a900c7 */ sb $t1,0xc7($sp)
.NB0f01b728:
/* f01b728: 0fc3e8df */ jal 0xf0fa37c
/* f01b72c: 00000000 */ sll $zero,$zero,0x0
.NB0f01b730:
/* f01b730: 83aa00c7 */ lb $t2,0xc7($sp)
.NB0f01b734:
/* f01b734: 1140001f */ beqz $t2,.NB0f01b7b4
/* f01b738: 00000000 */ sll $zero,$zero,0x0
/* f01b73c: 0fc3ebc8 */ jal 0xf0faf20
/* f01b740: 01402025 */ or $a0,$t2,$zero
/* f01b744: 3c0b800a */ lui $t3,0x800a
/* f01b748: 8d6b66a8 */ lw $t3,0x66a8($t3)
/* f01b74c: 3c0d800a */ lui $t5,0x800a
/* f01b750: 24010001 */ addiu $at,$zero,0x1
/* f01b754: 000b60c0 */ sll $t4,$t3,0x3
/* f01b758: 018b6023 */ subu $t4,$t4,$t3
/* f01b75c: 000c60c0 */ sll $t4,$t4,0x3
/* f01b760: 01ac6821 */ addu $t5,$t5,$t4
/* f01b764: 81ad65c0 */ lb $t5,0x65c0($t5)
/* f01b768: 3c04800a */ lui $a0,0x800a
/* f01b76c: 15a10011 */ bne $t5,$at,.NB0f01b7b4
/* f01b770: 00000000 */ sll $zero,$zero,0x0
/* f01b774: 8c84e944 */ lw $a0,-0x16bc($a0)
/* f01b778: 00002825 */ or $a1,$zero,$zero
/* f01b77c: 0fc2bb86 */ jal 0xf0aee18
/* f01b780: 24840638 */ addiu $a0,$a0,0x638
/* f01b784: 3c04800a */ lui $a0,0x800a
/* f01b788: 8c84e944 */ lw $a0,-0x16bc($a0)
/* f01b78c: 00408025 */ or $s0,$v0,$zero
/* f01b790: 24050001 */ addiu $a1,$zero,0x1
/* f01b794: 0fc2bb86 */ jal 0xf0aee18
/* f01b798: 24840638 */ addiu $a0,$a0,0x638
/* f01b79c: 16000005 */ bnez $s0,.NB0f01b7b4
/* f01b7a0: 00000000 */ sll $zero,$zero,0x0
/* f01b7a4: 14400003 */ bnez $v0,.NB0f01b7b4
/* f01b7a8: 00000000 */ sll $zero,$zero,0x0
/* f01b7ac: 0fc3ebc8 */ jal 0xf0faf20
/* f01b7b0: 83a400c7 */ lb $a0,0xc7($sp)
.NB0f01b7b4:
/* f01b7b4: 3c0e800a */ lui $t6,0x800a
/* f01b7b8: 8dcee944 */ lw $t6,-0x16bc($t6)
/* f01b7bc: 0014c080 */ sll $t8,$s4,0x2
/* f01b7c0: 24010002 */ addiu $at,$zero,0x2
/* f01b7c4: 91cf0250 */ lbu $t7,0x250($t6)
/* f01b7c8: 0314c023 */ subu $t8,$t8,$s4
/* f01b7cc: 02b89021 */ addu $s2,$s5,$t8
/* f01b7d0: 11e10046 */ beq $t7,$at,.NB0f01b8ec
/* f01b7d4: 24010004 */ addiu $at,$zero,0x4
/* f01b7d8: 16410011 */ bne $s2,$at,.NB0f01b820
/* f01b7dc: 24110001 */ addiu $s1,$zero,0x1
/* f01b7e0: 3c19800a */ lui $t9,0x800a
/* f01b7e4: 8f3966a8 */ lw $t9,0x66a8($t9)
/* f01b7e8: 3c09800a */ lui $t1,0x800a
/* f01b7ec: 252965c0 */ addiu $t1,$t1,0x65c0
/* f01b7f0: 001940c0 */ sll $t0,$t9,0x3
/* f01b7f4: 01194023 */ subu $t0,$t0,$t9
/* f01b7f8: 000840c0 */ sll $t0,$t0,0x3
/* f01b7fc: 01098021 */ addu $s0,$t0,$t1
/* f01b800: 8e020014 */ lw $v0,0x14($s0)
/* f01b804: 1c400004 */ bgtz $v0,.NB0f01b818
/* f01b808: 244affff */ addiu $t2,$v0,-1
/* f01b80c: ae000014 */ sw $zero,0x14($s0)
/* f01b810: 10000036 */ beqz $zero,.NB0f01b8ec
/* f01b814: a212000e */ sb $s2,0xe($s0)
.NB0f01b818:
/* f01b818: 10000034 */ beqz $zero,.NB0f01b8ec
/* f01b81c: ae0a0014 */ sw $t2,0x14($s0)
.NB0f01b820:
/* f01b820: 02402025 */ or $a0,$s2,$zero
/* f01b824: 27a50070 */ addiu $a1,$sp,0x70
/* f01b828: 0fc3e9b3 */ jal 0xf0fa6cc
/* f01b82c: 27a60074 */ addiu $a2,$sp,0x74
/* f01b830: 3c057f1a */ lui $a1,0x7f1a
/* f01b834: 24a52240 */ addiu $a1,$a1,0x2240
/* f01b838: 0c004eb1 */ jal 0x13ac4
/* f01b83c: 27a40074 */ addiu $a0,$sp,0x74
/* f01b840: 14400002 */ bnez $v0,.NB0f01b84c
/* f01b844: 3c0b800a */ lui $t3,0x800a
/* f01b848: 00008825 */ or $s1,$zero,$zero
.NB0f01b84c:
/* f01b84c: 8d6b66a8 */ lw $t3,0x66a8($t3)
/* f01b850: 3c0d800a */ lui $t5,0x800a
/* f01b854: 25ad65c0 */ addiu $t5,$t5,0x65c0
/* f01b858: 000b60c0 */ sll $t4,$t3,0x3
/* f01b85c: 018b6023 */ subu $t4,$t4,$t3
/* f01b860: 000c60c0 */ sll $t4,$t4,0x3
/* f01b864: 018d8021 */ addu $s0,$t4,$t5
/* f01b868: 9204000e */ lbu $a0,0xe($s0)
/* f01b86c: 24010004 */ addiu $at,$zero,0x4
/* f01b870: 8fae00b8 */ lw $t6,0xb8($sp)
/* f01b874: 10810019 */ beq $a0,$at,.NB0f01b8dc
/* f01b878: 2408000f */ addiu $t0,$zero,0xf
/* f01b87c: 15c00017 */ bnez $t6,.NB0f01b8dc
/* f01b880: 00000000 */ sll $zero,$zero,0x0
/* f01b884: 10800007 */ beqz $a0,.NB0f01b8a4
/* f01b888: 24010002 */ addiu $at,$zero,0x2
/* f01b88c: 10810005 */ beq $a0,$at,.NB0f01b8a4
/* f01b890: 24010006 */ addiu $at,$zero,0x6
/* f01b894: 10810003 */ beq $a0,$at,.NB0f01b8a4
/* f01b898: 24010008 */ addiu $at,$zero,0x8
/* f01b89c: 1481000f */ bne $a0,$at,.NB0f01b8dc
/* f01b8a0: 00000000 */ sll $zero,$zero,0x0
.NB0f01b8a4:
/* f01b8a4: 920f000f */ lbu $t7,0xf($s0)
/* f01b8a8: 24180002 */ addiu $t8,$zero,0x2
/* f01b8ac: 524f0005 */ beql $s2,$t7,.NB0f01b8c4
/* f01b8b0: 8e020010 */ lw $v0,0x10($s0)
/* f01b8b4: ae180010 */ sw $t8,0x10($s0)
/* f01b8b8: a212000f */ sb $s2,0xf($s0)
/* f01b8bc: 00008825 */ or $s1,$zero,$zero
/* f01b8c0: 8e020010 */ lw $v0,0x10($s0)
.NB0f01b8c4:
/* f01b8c4: 18400005 */ blez $v0,.NB0f01b8dc
/* f01b8c8: 00000000 */ sll $zero,$zero,0x0
/* f01b8cc: 12200003 */ beqz $s1,.NB0f01b8dc
/* f01b8d0: 2459ffff */ addiu $t9,$v0,-1
/* f01b8d4: 00008825 */ or $s1,$zero,$zero
/* f01b8d8: ae190010 */ sw $t9,0x10($s0)
.NB0f01b8dc:
/* f01b8dc: 52200004 */ beqzl $s1,.NB0f01b8f0
/* f01b8e0: 8fa900cc */ lw $t1,0xcc($sp)
/* f01b8e4: ae080014 */ sw $t0,0x14($s0)
/* f01b8e8: a212000e */ sb $s2,0xe($s0)
.NB0f01b8ec:
/* f01b8ec: 8fa900cc */ lw $t1,0xcc($sp)
.NB0f01b8f0:
/* f01b8f0: 27de0001 */ addiu $s8,$s8,0x1
/* f01b8f4: 03c9082a */ slt $at,$s8,$t1
/* f01b8f8: 5420fdd9 */ bnezl $at,.NB0f01b060
/* f01b8fc: a3a000c7 */ sb $zero,0xc7($sp)
.NB0f01b900:
/* f01b900: 3c07800a */ lui $a3,0x800a
/* f01b904: 24e7e6c0 */ addiu $a3,$a3,-6464
/* f01b908: 8cea0284 */ lw $t2,0x284($a3)
/* f01b90c: 24010002 */ addiu $at,$zero,0x2
/* f01b910: 3c07800a */ lui $a3,0x800a
/* f01b914: 914b0250 */ lbu $t3,0x250($t2)
/* f01b918: 00002825 */ or $a1,$zero,$zero
/* f01b91c: 3c0c800a */ lui $t4,0x800a
/* f01b920: 1161006e */ beq $t3,$at,.NB0f01badc
/* f01b924: 24e7e6c0 */ addiu $a3,$a3,-6464
/* f01b928: 8d8c66a8 */ lw $t4,0x66a8($t4)
/* f01b92c: 3c0e800a */ lui $t6,0x800a
/* f01b930: 25ce65c0 */ addiu $t6,$t6,0x65c0
/* f01b934: 000c68c0 */ sll $t5,$t4,0x3
/* f01b938: 01ac6823 */ subu $t5,$t5,$t4
/* f01b93c: 000d68c0 */ sll $t5,$t5,0x3
/* f01b940: 01ae8021 */ addu $s0,$t5,$t6
/* f01b944: 8603000a */ lh $v1,0xa($s0)
/* f01b948: 2401ff85 */ addiu $at,$zero,-123
/* f01b94c: 50610026 */ beql $v1,$at,.NB0f01b9e8
/* f01b950: 86020004 */ lh $v0,0x4($s0)
/* f01b954: 860f0006 */ lh $t7,0x6($s0)
/* f01b958: 8604000c */ lh $a0,0xc($s0)
/* f01b95c: 86080008 */ lh $t0,0x8($s0)
/* f01b960: 006fc021 */ addu $t8,$v1,$t7
/* f01b964: 07010003 */ bgez $t8,.NB0f01b974
/* f01b968: 0018c843 */ sra $t9,$t8,0x1
/* f01b96c: 27010001 */ addiu $at,$t8,0x1
/* f01b970: 0001c843 */ sra $t9,$at,0x1
.NB0f01b974:
/* f01b974: a6190006 */ sh $t9,0x6($s0)
/* f01b978: 860b0006 */ lh $t3,0x6($s0)
/* f01b97c: 00884821 */ addu $t1,$a0,$t0
/* f01b980: 05210003 */ bgez $t1,.NB0f01b990
/* f01b984: 00095043 */ sra $t2,$t1,0x1
/* f01b988: 25210001 */ addiu $at,$t1,0x1
/* f01b98c: 00015043 */ sra $t2,$at,0x1
.NB0f01b990:
/* f01b990: 01631023 */ subu $v0,$t3,$v1
/* f01b994: 00026400 */ sll $t4,$v0,0x10
/* f01b998: 000c6c03 */ sra $t5,$t4,0x10
/* f01b99c: 29a10002 */ slti $at,$t5,0x2
/* f01b9a0: 10200006 */ beqz $at,.NB0f01b9bc
/* f01b9a4: a60a0008 */ sh $t2,0x8($s0)
/* f01b9a8: 29a1ffff */ slti $at,$t5,-1
/* f01b9ac: 54200004 */ bnezl $at,.NB0f01b9c0
/* f01b9b0: 860e0008 */ lh $t6,0x8($s0)
/* f01b9b4: a6030006 */ sh $v1,0x6($s0)
/* f01b9b8: 8604000c */ lh $a0,0xc($s0)
.NB0f01b9bc:
/* f01b9bc: 860e0008 */ lh $t6,0x8($s0)
.NB0f01b9c0:
/* f01b9c0: 01c41023 */ subu $v0,$t6,$a0
/* f01b9c4: 00027c00 */ sll $t7,$v0,0x10
/* f01b9c8: 000fc403 */ sra $t8,$t7,0x10
/* f01b9cc: 2b010002 */ slti $at,$t8,0x2
/* f01b9d0: 10200004 */ beqz $at,.NB0f01b9e4
/* f01b9d4: 2b01ffff */ slti $at,$t8,-1
/* f01b9d8: 54200003 */ bnezl $at,.NB0f01b9e8
/* f01b9dc: 86020004 */ lh $v0,0x4($s0)
/* f01b9e0: a6040008 */ sh $a0,0x8($s0)
.NB0f01b9e4:
/* f01b9e4: 86020004 */ lh $v0,0x4($s0)
.NB0f01b9e8:
/* f01b9e8: 86090002 */ lh $t1,0x2($s0)
/* f01b9ec: 24420005 */ addiu $v0,$v0,0x5
/* f01b9f0: 0002cc00 */ sll $t9,$v0,0x10
/* f01b9f4: 00095080 */ sll $t2,$t1,0x2
/* f01b9f8: 00194403 */ sra $t0,$t9,0x10
/* f01b9fc: 01495023 */ subu $t2,$t2,$t1
/* f01ba00: 01485821 */ addu $t3,$t2,$t0
/* f01ba04: 01001025 */ or $v0,$t0,$zero
/* f01ba08: 05610003 */ bgez $t3,.NB0f01ba18
/* f01ba0c: 000b6083 */ sra $t4,$t3,0x2
/* f01ba10: 25610003 */ addiu $at,$t3,0x3
/* f01ba14: 00016083 */ sra $t4,$at,0x2
.NB0f01ba18:
/* f01ba18: a60c0002 */ sh $t4,0x2($s0)
/* f01ba1c: 860d0002 */ lh $t5,0x2($s0)
/* f01ba20: 01a21823 */ subu $v1,$t5,$v0
/* f01ba24: 00037400 */ sll $t6,$v1,0x10
/* f01ba28: 000e7c03 */ sra $t7,$t6,0x10
/* f01ba2c: 29e10002 */ slti $at,$t7,0x2
/* f01ba30: 10200004 */ beqz $at,.NB0f01ba44
/* f01ba34: 29e1ffff */ slti $at,$t7,-1
/* f01ba38: 54200003 */ bnezl $at,.NB0f01ba48
/* f01ba3c: 3c013f80 */ lui $at,0x3f80
/* f01ba40: a6020002 */ sh $v0,0x2($s0)
.NB0f01ba44:
/* f01ba44: 3c013f80 */ lui $at,0x3f80
.NB0f01ba48:
/* f01ba48: 44816000 */ mtc1 $at,$f12
/* f01ba4c: c6000018 */ lwc1 $f0,0x18($s0)
/* f01ba50: 3c01800a */ lui $at,0x800a
/* f01ba54: 460c003c */ c.lt.s $f0,$f12
/* f01ba58: 00000000 */ sll $zero,$zero,0x0
/* f01ba5c: 45000009 */ bc1f .NB0f01ba84
/* f01ba60: 00000000 */ sll $zero,$zero,0x0
/* f01ba64: c428e704 */ lwc1 $f8,-0x18fc($at)
/* f01ba68: 3c0141f0 */ lui $at,0x41f0
/* f01ba6c: 44815000 */ mtc1 $at,$f10
/* f01ba70: 00000000 */ sll $zero,$zero,0x0
/* f01ba74: 460a4403 */ div.s $f16,$f8,$f10
/* f01ba78: 46100480 */ add.s $f18,$f0,$f16
/* f01ba7c: e6120018 */ swc1 $f18,0x18($s0)
/* f01ba80: c6000018 */ lwc1 $f0,0x18($s0)
.NB0f01ba84:
/* f01ba84: 3c01800a */ lui $at,0x800a
/* f01ba88: 4600603c */ c.lt.s $f12,$f0
/* f01ba8c: c422e704 */ lwc1 $f2,-0x18fc($at)
/* f01ba90: 3c0140a0 */ lui $at,0x40a0
/* f01ba94: 44813000 */ mtc1 $at,$f6
/* f01ba98: 45000002 */ bc1f .NB0f01baa4
/* f01ba9c: 46061203 */ div.s $f8,$f2,$f6
/* f01baa0: e60c0018 */ swc1 $f12,0x18($s0)
.NB0f01baa4:
/* f01baa4: c604001c */ lwc1 $f4,0x1c($s0)
/* f01baa8: 3c017f1a */ lui $at,0x7f1a
/* f01baac: 46082280 */ add.s $f10,$f4,$f8
/* f01bab0: e60a001c */ swc1 $f10,0x1c($s0)
/* f01bab4: c4302248 */ lwc1 $f16,0x2248($at)
/* f01bab8: c600001c */ lwc1 $f0,0x1c($s0)
/* f01babc: 3c017f1a */ lui $at,0x7f1a
/* f01bac0: 4600803c */ c.lt.s $f16,$f0
/* f01bac4: 00000000 */ sll $zero,$zero,0x0
/* f01bac8: 45020005 */ bc1fl .NB0f01bae0
/* f01bacc: 8cf8006c */ lw $t8,0x6c($a3)
/* f01bad0: c432224c */ lwc1 $f18,0x224c($at)
/* f01bad4: 46120181 */ sub.s $f6,$f0,$f18
/* f01bad8: e606001c */ swc1 $f6,0x1c($s0)
.NB0f01badc:
/* f01badc: 8cf8006c */ lw $t8,0x6c($a3)
.NB0f01bae0:
/* f01bae0: 8fa600d8 */ lw $a2,0xd8($sp)
/* f01bae4: 3c08800a */ lui $t0,0x800a
/* f01bae8: 13000003 */ beqz $t8,.NB0f01baf8
/* f01baec: 24c60001 */ addiu $a2,$a2,0x1
/* f01baf0: 10000001 */ beqz $zero,.NB0f01baf8
/* f01baf4: 24050001 */ addiu $a1,$zero,0x1
.NB0f01baf8:
/* f01baf8: 8cf90068 */ lw $t9,0x68($a3)
/* f01bafc: 3c09800a */ lui $t1,0x800a
/* f01bb00: 00002025 */ or $a0,$zero,$zero
/* f01bb04: 13200003 */ beqz $t9,.NB0f01bb14
/* f01bb08: 00001825 */ or $v1,$zero,$zero
/* f01bb0c: 10000001 */ beqz $zero,.NB0f01bb14
/* f01bb10: 24040001 */ addiu $a0,$zero,0x1
.NB0f01bb14:
/* f01bb14: 8d08e724 */ lw $t0,-0x18dc($t0)
/* f01bb18: 00001025 */ or $v0,$zero,$zero
/* f01bb1c: 11000003 */ beqz $t0,.NB0f01bb2c
/* f01bb20: 00000000 */ sll $zero,$zero,0x0
/* f01bb24: 10000001 */ beqz $zero,.NB0f01bb2c
/* f01bb28: 24030001 */ addiu $v1,$zero,0x1
.NB0f01bb2c:
/* f01bb2c: 8d29e730 */ lw $t1,-0x18d0($t1)
/* f01bb30: 11200003 */ beqz $t1,.NB0f01bb40
/* f01bb34: 00000000 */ sll $zero,$zero,0x0
/* f01bb38: 10000001 */ beqz $zero,.NB0f01bb40
/* f01bb3c: 24020001 */ addiu $v0,$zero,0x1
.NB0f01bb40:
/* f01bb40: 00435021 */ addu $t2,$v0,$v1
/* f01bb44: 01445821 */ addu $t3,$t2,$a0
/* f01bb48: 01656021 */ addu $t4,$t3,$a1
/* f01bb4c: 00cc082a */ slt $at,$a2,$t4
/* f01bb50: 1420fcfe */ bnez $at,.NB0f01af4c
/* f01bb54: afa600d8 */ sw $a2,0xd8($sp)
.NB0f01bb58:
/* f01bb58: 0fc48d5b */ jal 0xf12356c
/* f01bb5c: 8fa400dc */ lw $a0,0xdc($sp)
/* f01bb60: 8fbf0044 */ lw $ra,0x44($sp)
/* f01bb64: d7b40018 */ ldc1 $f20,0x18($sp)
/* f01bb68: 8fb00020 */ lw $s0,0x20($sp)
/* f01bb6c: 8fb10024 */ lw $s1,0x24($sp)
/* f01bb70: 8fb20028 */ lw $s2,0x28($sp)
/* f01bb74: 8fb3002c */ lw $s3,0x2c($sp)
/* f01bb78: 8fb40030 */ lw $s4,0x30($sp)
/* f01bb7c: 8fb50034 */ lw $s5,0x34($sp)
/* f01bb80: 8fb60038 */ lw $s6,0x38($sp)
/* f01bb84: 8fb7003c */ lw $s7,0x3c($sp)
/* f01bb88: 8fbe0040 */ lw $s8,0x40($sp)
/* f01bb8c: 03e00008 */ jr $ra
/* f01bb90: 27bd00e0 */ addiu $sp,$sp,0xe0
);
#endif
+17
View File
@@ -1218,6 +1218,21 @@ void bbikeUpdateVertical(struct coord *arg0)
angle = hoverpropGetTurnAngle(bike);
func0f065e74(&bike->prop->pos, bike->prop->rooms, arg0, newrooms);
#if VERSION < VERSION_NTSC_1_0
{
s32 i;
for (i = 0; newrooms[i] != -1; i++) {
if (g_Vars.currentplayer->floorroom == newrooms[i]) {
newrooms[0] = g_Vars.currentplayer->floorroom;
newrooms[1] = -1;
break;
}
}
}
#endif
bmove0f0cb79c(g_Vars.currentplayer, arg0, newrooms);
func0f065c44(g_Vars.currentplayer->prop);
roomsCopy(newrooms, g_Vars.currentplayer->prop->rooms);
@@ -1648,6 +1663,7 @@ void bbikeTick(void)
prop = g_Vars.currentplayer->prop;
#if VERSION >= VERSION_NTSC_1_0
for (i = 0; prop->rooms[i] != -1; i++) {
if (prop->rooms[i] == g_Vars.currentplayer->floorroom) {
func0f065c44(prop);
@@ -1656,6 +1672,7 @@ void bbikeTick(void)
break;
}
}
#endif
}
bheadAdjustAnimation(0);
+1637 -1
View File
File diff suppressed because it is too large. Load diff
+969 -1
View File
File diff suppressed because it is too large. Load diff
+3508 -1
View File
File diff suppressed because it is too large. Load diff
+4956 -1
View File
File diff suppressed because it is too large. Load diff
+2444 -1
View File
File diff suppressed because it is too large. Load diff
+8
View File
@@ -905,6 +905,7 @@ s32 cheatMenuHandleTurnOffAllCheats(s32 operation, struct menuitem *item, union
return false;
}
#if VERSION >= VERSION_NTSC_1_0
s32 cheatGetByTimedStageIndex(s32 stage_index, s32 difficulty)
{
s32 cheat_id;
@@ -920,7 +921,9 @@ s32 cheatGetByTimedStageIndex(s32 stage_index, s32 difficulty)
return -1;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
s32 cheatGetByCompletedStageIndex(s32 stage_index)
{
s32 cheat_id;
@@ -933,16 +936,21 @@ s32 cheatGetByCompletedStageIndex(s32 stage_index)
return -1;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
s32 cheatGetTime(s32 cheat_id)
{
return g_Cheats[cheat_id].time;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
char *cheatGetName(s32 cheat_id)
{
return langGet(g_Cheats[cheat_id].nametextid);
}
#endif
struct menuitem g_CheatsWarningMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU_479, 0x00000000, NULL }, // "If you activate any cheats, then you will be unable to progress further in the game while those cheats are active."
+3726 -3
View File
File diff suppressed because it is too large. Load diff
+7380 -479
View File
File diff suppressed because it is too large. Load diff
+10 -1
View File
@@ -446,7 +446,11 @@ bool (*g_CommandPointers[])(void) = {
/*0x01b1*/ aiShuffleRuinsPillars,
/*0x01b2*/ ai01b2,
/*0x01b3*/ aiToggleP1P2,
#if VERSION >= VERSION_NTSC_1_0
/*0x01b4*/ ai01b4,
#else
/*0x01b4*/ NULL,
#endif
/*0x01b5*/ aiChrSetP1P2,
/*0x01b6*/ aiConfigureSnow,
/*0x01b7*/ aiChrSetCloaked,
@@ -489,8 +493,10 @@ bool (*g_CommandPointers[])(void) = {
/*0x01dc*/ aiRemoveWeaponFromInventory,
/*0x01dd*/ ai01dd,
/*0x01de*/ aiIfCoopMode,
#if VERSION >= VERSION_NTSC_1_0
/*0x01df*/ aiIfChrSameFloorDistanceToPadLessThan,
/*0x01e0*/ aiRemoveReferencesToChr,
#endif
};
u16 g_CommandLengths[] = {
@@ -613,8 +619,11 @@ u16 g_CommandLengths[] = {
/*0x01d0*/ 0x0005, /*0x01d1*/ 0x0005, /*0x01d2*/ 0x0003, /*0x01d3*/ 0x0005,
/*0x01d4*/ 0x0006, /*0x01d5*/ 0x0003, /*0x01d6*/ 0x0006, /*0x01d7*/ 0x0005,
/*0x01d8*/ 0x0005, /*0x01d9*/ 0x000b, /*0x01da*/ 0x0003, /*0x01db*/ 0x0003,
/*0x01dc*/ 0x0003, /*0x01dd*/ 0x0004, /*0x01de*/ 0x0003, /*0x01df*/ 0x0008,
/*0x01dc*/ 0x0003, /*0x01dd*/ 0x0004, /*0x01de*/ 0x0003,
#if VERSION >= VERSION_NTSC_1_0
/*0x01df*/ 0x0008,
/*0x01e0*/ 0x0002,
#endif
};
s32 chraiGetListIdByList(u8 *ailist, bool *is_global)
File diff suppressed because it is too large. Load diff
+4214 -48
View File
File diff suppressed because it is too large. Load diff
+787 -2
View File
@@ -1117,7 +1117,7 @@ glabel var7f1b5824
/* f138e64: 03e00008 */ jr $ra
/* f138e68: 27bd0048 */ addiu $sp,$sp,0x48
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f13899c
.late_rodata
@@ -1463,6 +1463,317 @@ glabel var7f1b5824
/* f138e64: 03e00008 */ jr $ra
/* f138e68: 27bd0048 */ addiu $sp,$sp,0x48
);
#else
GLOBAL_ASM(
glabel func0f13899c
.late_rodata
glabel var7f1b5810
.word 0x3be56042
glabel var7f1b5814
.word 0x3b03126f
glabel var7f1b5818
.word 0x3be56042
glabel var7f1b581c
.word 0x453b8000
glabel var7f1b5820
.word 0x3c23d70a
glabel var7f1b5824
.word 0x40c907a9
.text
/* f13352c: 27bdffb8 */ addiu $sp,$sp,-72
/* f133530: afb1003c */ sw $s1,0x3c($sp)
/* f133534: 3c11800b */ lui $s1,0x800b
/* f133538: 26318730 */ addiu $s1,$s1,-30928
/* f13353c: 8e230000 */ lw $v1,0x0($s1)
/* f133540: afbf0044 */ sw $ra,0x44($sp)
/* f133544: afb20040 */ sw $s2,0x40($sp)
/* f133548: afb00038 */ sw $s0,0x38($sp)
/* f13354c: f7ba0030 */ sdc1 $f26,0x30($sp)
/* f133550: f7b80028 */ sdc1 $f24,0x28($sp)
/* f133554: f7b60020 */ sdc1 $f22,0x20($sp)
/* f133558: f7b40018 */ sdc1 $f20,0x18($sp)
/* f13355c: 806e41f5 */ lb $t6,0x41f5($v1)
/* f133560: 05c00019 */ bltz $t6,.NB0f1335c8
/* f133564: 3c01800a */ lui $at,0x800a
/* f133568: c424e708 */ lwc1 $f4,-0x18f8($at)
/* f13356c: 3c014434 */ lui $at,0x4434
/* f133570: 44813000 */ mtc1 $at,$f6
/* f133574: c46a41f8 */ lwc1 $f10,0x41f8($v1)
/* f133578: 3c013f80 */ lui $at,0x3f80
/* f13357c: 46062203 */ div.s $f8,$f4,$f6
/* f133580: 44819000 */ mtc1 $at,$f18
/* f133584: 3c012f80 */ lui $at,0x2f80
/* f133588: 4481c000 */ mtc1 $at,$f24
/* f13358c: 46085400 */ add.s $f16,$f10,$f8
/* f133590: e47041f8 */ swc1 $f16,0x41f8($v1)
/* f133594: 8e230000 */ lw $v1,0x0($s1)
/* f133598: c46441f8 */ lwc1 $f4,0x41f8($v1)
/* f13359c: 4604903c */ c.lt.s $f18,$f4
/* f1335a0: 00000000 */ sll $zero,$zero,0x0
/* f1335a4: 45000006 */ bc1f .NB0f1335c0
/* f1335a8: 00000000 */ sll $zero,$zero,0x0
/* f1335ac: 806f41f5 */ lb $t7,0x41f5($v1)
/* f1335b0: 2418ffff */ addiu $t8,$zero,-1
/* f1335b4: a06f41f6 */ sb $t7,0x41f6($v1)
/* f1335b8: 8e390000 */ lw $t9,0x0($s1)
/* f1335bc: a33841f5 */ sb $t8,0x41f5($t9)
.NB0f1335c0:
/* f1335c0: 1000001b */ beqz $zero,.NB0f133630
/* f1335c4: 00000000 */ sll $zero,$zero,0x0
.NB0f1335c8:
/* f1335c8: 0c004d84 */ jal 0x13610
/* f1335cc: 00000000 */ sll $zero,$zero,0x0
/* f1335d0: 44823000 */ mtc1 $v0,$f6
/* f1335d4: 3c012f80 */ lui $at,0x2f80
/* f1335d8: 4481c000 */ mtc1 $at,$f24
/* f1335dc: 04410005 */ bgez $v0,.NB0f1335f4
/* f1335e0: 468032a0 */ cvt.s.w $f10,$f6
/* f1335e4: 3c014f80 */ lui $at,0x4f80
/* f1335e8: 44814000 */ mtc1 $at,$f8
/* f1335ec: 00000000 */ sll $zero,$zero,0x0
/* f1335f0: 46085280 */ add.s $f10,$f10,$f8
.NB0f1335f4:
/* f1335f4: 46185402 */ mul.s $f16,$f10,$f24
/* f1335f8: 3c017f1b */ lui $at,0x7f1b
/* f1335fc: c432fd50 */ lwc1 $f18,-0x2b0($at)
/* f133600: 4612803c */ c.lt.s $f16,$f18
/* f133604: 00000000 */ sll $zero,$zero,0x0
/* f133608: 45000009 */ bc1f .NB0f133630
/* f13360c: 00000000 */ sll $zero,$zero,0x0
/* f133610: 0c004d84 */ jal 0x13610
/* f133614: 00000000 */ sll $zero,$zero,0x0
/* f133618: 8e290000 */ lw $t1,0x0($s1)
/* f13361c: 30480003 */ andi $t0,$v0,0x3
/* f133620: 44802000 */ mtc1 $zero,$f4
/* f133624: a12841f5 */ sb $t0,0x41f5($t1)
/* f133628: 8e2a0000 */ lw $t2,0x0($s1)
/* f13362c: e54441f8 */ swc1 $f4,0x41f8($t2)
.NB0f133630:
/* f133630: 0c004d84 */ jal 0x13610
/* f133634: 00000000 */ sll $zero,$zero,0x0
/* f133638: 44823000 */ mtc1 $v0,$f6
/* f13363c: 3c014f80 */ lui $at,0x4f80
/* f133640: 04410004 */ bgez $v0,.NB0f133654
/* f133644: 46803220 */ cvt.s.w $f8,$f6
/* f133648: 44815000 */ mtc1 $at,$f10
/* f13364c: 00000000 */ sll $zero,$zero,0x0
/* f133650: 460a4200 */ add.s $f8,$f8,$f10
.NB0f133654:
/* f133654: 46184402 */ mul.s $f16,$f8,$f24
/* f133658: 3c017f1b */ lui $at,0x7f1b
/* f13365c: c432fd54 */ lwc1 $f18,-0x2ac($at)
/* f133660: 4612803c */ c.lt.s $f16,$f18
/* f133664: 00000000 */ sll $zero,$zero,0x0
/* f133668: 45000009 */ bc1f .NB0f133690
/* f13366c: 00000000 */ sll $zero,$zero,0x0
/* f133670: 0c004d84 */ jal 0x13610
/* f133674: 00000000 */ sll $zero,$zero,0x0
/* f133678: 24010005 */ addiu $at,$zero,0x5
/* f13367c: 0041001b */ divu $zero,$v0,$at
/* f133680: 8e2c0000 */ lw $t4,0x0($s1)
/* f133684: 00005810 */ mfhi $t3
/* f133688: a18b41fc */ sb $t3,0x41fc($t4)
/* f13368c: 00000000 */ sll $zero,$zero,0x0
.NB0f133690:
/* f133690: 0c004d84 */ jal 0x13610
/* f133694: 00000000 */ sll $zero,$zero,0x0
/* f133698: 44822000 */ mtc1 $v0,$f4
/* f13369c: 3c014f80 */ lui $at,0x4f80
/* f1336a0: 04410004 */ bgez $v0,.NB0f1336b4
/* f1336a4: 468021a0 */ cvt.s.w $f6,$f4
/* f1336a8: 44815000 */ mtc1 $at,$f10
/* f1336ac: 00000000 */ sll $zero,$zero,0x0
/* f1336b0: 460a3180 */ add.s $f6,$f6,$f10
.NB0f1336b4:
/* f1336b4: 46183202 */ mul.s $f8,$f6,$f24
/* f1336b8: 3c017f1b */ lui $at,0x7f1b
/* f1336bc: c430fd58 */ lwc1 $f16,-0x2a8($at)
/* f1336c0: 4610403c */ c.lt.s $f8,$f16
/* f1336c4: 00000000 */ sll $zero,$zero,0x0
/* f1336c8: 4502000b */ bc1fl .NB0f1336f8
/* f1336cc: 3c0141f0 */ lui $at,0x41f0
/* f1336d0: 0c004d84 */ jal 0x13610
/* f1336d4: 00000000 */ sll $zero,$zero,0x0
/* f1336d8: 8e2e0000 */ lw $t6,0x0($s1)
/* f1336dc: 304d0001 */ andi $t5,$v0,0x1
/* f1336e0: 0c004d84 */ jal 0x13610
/* f1336e4: a1cd41fd */ sb $t5,0x41fd($t6)
/* f1336e8: 8e380000 */ lw $t8,0x0($s1)
/* f1336ec: 304f0001 */ andi $t7,$v0,0x1
/* f1336f0: a30f41fe */ sb $t7,0x41fe($t8)
/* f1336f4: 3c0141f0 */ lui $at,0x41f0
.NB0f1336f8:
/* f1336f8: 4481d000 */ mtc1 $at,$f26
/* f1336fc: 3c017f1b */ lui $at,0x7f1b
/* f133700: c436fd5c */ lwc1 $f22,-0x2a4($at)
/* f133704: 00009025 */ or $s2,$zero,$zero
/* f133708: 00008025 */ or $s0,$zero,$zero
.NB0f13370c:
/* f13370c: 32590007 */ andi $t9,$s2,0x7
/* f133710: 27280001 */ addiu $t0,$t9,0x1
/* f133714: 44889000 */ mtc1 $t0,$f18
/* f133718: 3c017f1b */ lui $at,0x7f1b
/* f13371c: c42afd60 */ lwc1 $f10,-0x2a0($at)
/* f133720: 46809120 */ cvt.s.w $f4,$f18
/* f133724: 8e290000 */ lw $t1,0x0($s1)
/* f133728: 324a0008 */ andi $t2,$s2,0x8
/* f13372c: 01301021 */ addu $v0,$t1,$s0
/* f133730: 460a2082 */ mul.s $f2,$f4,$f10
/* f133734: 15400002 */ bnez $t2,.NB0f133740
/* f133738: 46001006 */ mov.s $f0,$f2
/* f13373c: 46001007 */ neg.s $f0,$f2
.NB0f133740:
/* f133740: c4460018 */ lwc1 $f6,0x18($v0)
/* f133744: 3c01800a */ lui $at,0x800a
/* f133748: 46003200 */ add.s $f8,$f6,$f0
/* f13374c: e4480018 */ swc1 $f8,0x18($v0)
/* f133750: c430e708 */ lwc1 $f16,-0x18f8($at)
/* f133754: 3c013e80 */ lui $at,0x3e80
/* f133758: 44812000 */ mtc1 $at,$f4
/* f13375c: 461a8482 */ mul.s $f18,$f16,$f26
/* f133760: 8e2b0000 */ lw $t3,0x0($s1)
/* f133764: 44804000 */ mtc1 $zero,$f8
/* f133768: 01701021 */ addu $v0,$t3,$s0
/* f13376c: c44a0014 */ lwc1 $f10,0x14($v0)
/* f133770: 46049002 */ mul.s $f0,$f18,$f4
/* f133774: 46005180 */ add.s $f6,$f10,$f0
/* f133778: e4460014 */ swc1 $f6,0x14($v0)
/* f13377c: 8e2c0000 */ lw $t4,0x0($s1)
/* f133780: 01906821 */ addu $t5,$t4,$s0
/* f133784: c5b00014 */ lwc1 $f16,0x14($t5)
/* f133788: 4610403c */ c.lt.s $f8,$f16
/* f13378c: 00000000 */ sll $zero,$zero,0x0
/* f133790: 4502006b */ bc1fl .NB0f133940
/* f133794: 26520001 */ addiu $s2,$s2,0x1
/* f133798: 0c004d84 */ jal 0x13610
/* f13379c: 00000000 */ sll $zero,$zero,0x0
/* f1337a0: 44829000 */ mtc1 $v0,$f18
/* f1337a4: 3c014f80 */ lui $at,0x4f80
/* f1337a8: 04410004 */ bgez $v0,.NB0f1337bc
/* f1337ac: 46809120 */ cvt.s.w $f4,$f18
/* f1337b0: 44815000 */ mtc1 $at,$f10
/* f1337b4: 00000000 */ sll $zero,$zero,0x0
/* f1337b8: 460a2100 */ add.s $f4,$f4,$f10
.NB0f1337bc:
/* f1337bc: 46182502 */ mul.s $f20,$f4,$f24
/* f1337c0: 8e2e0000 */ lw $t6,0x0($s1)
/* f1337c4: 01d07821 */ addu $t7,$t6,$s0
/* f1337c8: 4614a180 */ add.s $f6,$f20,$f20
/* f1337cc: 46163202 */ mul.s $f8,$f6,$f22
/* f1337d0: 46164401 */ sub.s $f16,$f8,$f22
/* f1337d4: 0c004d84 */ jal 0x13610
/* f1337d8: e5f0000c */ swc1 $f16,0xc($t7)
/* f1337dc: 44829000 */ mtc1 $v0,$f18
/* f1337e0: 3c014f80 */ lui $at,0x4f80
/* f1337e4: 04410004 */ bgez $v0,.NB0f1337f8
/* f1337e8: 468092a0 */ cvt.s.w $f10,$f18
/* f1337ec: 44812000 */ mtc1 $at,$f4
/* f1337f0: 00000000 */ sll $zero,$zero,0x0
/* f1337f4: 46045280 */ add.s $f10,$f10,$f4
.NB0f1337f8:
/* f1337f8: 46185502 */ mul.s $f20,$f10,$f24
/* f1337fc: 8e380000 */ lw $t8,0x0($s1)
/* f133800: 0310c821 */ addu $t9,$t8,$s0
/* f133804: 4614a180 */ add.s $f6,$f20,$f20
/* f133808: 46163202 */ mul.s $f8,$f6,$f22
/* f13380c: 46164401 */ sub.s $f16,$f8,$f22
/* f133810: 0c004d84 */ jal 0x13610
/* f133814: e7300010 */ swc1 $f16,0x10($t9)
/* f133818: 8e290000 */ lw $t1,0x0($s1)
/* f13381c: 30480003 */ andi $t0,$v0,0x3
/* f133820: 01305021 */ addu $t2,$t1,$s0
/* f133824: 0c004d84 */ jal 0x13610
/* f133828: a148001e */ sb $t0,0x1e($t2)
/* f13382c: 8e2c0000 */ lw $t4,0x0($s1)
/* f133830: 304b0003 */ andi $t3,$v0,0x3
/* f133834: 01906821 */ addu $t5,$t4,$s0
/* f133838: 0c004d84 */ jal 0x13610
/* f13383c: a1ab0020 */ sb $t3,0x20($t5)
/* f133840: 44829000 */ mtc1 $v0,$f18
/* f133844: 3c014f80 */ lui $at,0x4f80
/* f133848: 04410004 */ bgez $v0,.NB0f13385c
/* f13384c: 46809120 */ cvt.s.w $f4,$f18
/* f133850: 44815000 */ mtc1 $at,$f10
/* f133854: 00000000 */ sll $zero,$zero,0x0
/* f133858: 460a2100 */ add.s $f4,$f4,$f10
.NB0f13385c:
/* f13385c: 46182182 */ mul.s $f6,$f4,$f24
/* f133860: 3c017f1b */ lui $at,0x7f1b
/* f133864: c428fd64 */ lwc1 $f8,-0x29c($at)
/* f133868: 8e2e0000 */ lw $t6,0x0($s1)
/* f13386c: 01d07821 */ addu $t7,$t6,$s0
/* f133870: 46083402 */ mul.s $f16,$f6,$f8
/* f133874: e5f00018 */ swc1 $f16,0x18($t7)
/* f133878: 8e230000 */ lw $v1,0x0($s1)
/* f13387c: 90644200 */ lbu $a0,0x4200($v1)
/* f133880: 907841ff */ lbu $t8,0x41ff($v1)
/* f133884: 00705821 */ addu $t3,$v1,$s0
/* f133888: 0098082a */ slt $at,$a0,$t8
/* f13388c: 50200012 */ beqzl $at,.NB0f1338d8
/* f133890: a164001f */ sb $a0,0x1f($t3)
/* f133894: 0c004d84 */ jal 0x13610
/* f133898: 00000000 */ sll $zero,$zero,0x0
/* f13389c: 8e230000 */ lw $v1,0x0($s1)
/* f1338a0: 90644200 */ lbu $a0,0x4200($v1)
/* f1338a4: 907941ff */ lbu $t9,0x41ff($v1)
/* f1338a8: 00706021 */ addu $t4,$v1,$s0
/* f1338ac: 03244823 */ subu $t1,$t9,$a0
/* f1338b0: 0049001b */ divu $zero,$v0,$t1
/* f1338b4: 00004010 */ mfhi $t0
/* f1338b8: 01045021 */ addu $t2,$t0,$a0
/* f1338bc: 15200002 */ bnez $t1,.NB0f1338c8
/* f1338c0: 00000000 */ sll $zero,$zero,0x0
/* f1338c4: 0007000d */ break 0x7
.NB0f1338c8:
/* f1338c8: a18a001f */ sb $t2,0x1f($t4)
/* f1338cc: 10000003 */ beqz $zero,.NB0f1338dc
/* f1338d0: 8e230000 */ lw $v1,0x0($s1)
/* f1338d4: a164001f */ sb $a0,0x1f($t3)
.NB0f1338d8:
/* f1338d8: 8e230000 */ lw $v1,0x0($s1)
.NB0f1338dc:
/* f1338dc: 906d41fc */ lbu $t5,0x41fc($v1)
/* f1338e0: 00707021 */ addu $t6,$v1,$s0
/* f1338e4: 0c004d84 */ jal 0x13610
/* f1338e8: a1cd001c */ sb $t5,0x1c($t6)
/* f1338ec: 304f0001 */ andi $t7,$v0,0x1
/* f1338f0: 24010001 */ addiu $at,$zero,0x1
/* f1338f4: 55e10007 */ bnel $t7,$at,.NB0f133914
/* f1338f8: 8e230000 */ lw $v1,0x0($s1)
/* f1338fc: 8e230000 */ lw $v1,0x0($s1)
/* f133900: 907841fd */ lbu $t8,0x41fd($v1)
/* f133904: 0070c821 */ addu $t9,$v1,$s0
/* f133908: 10000005 */ beqz $zero,.NB0f133920
/* f13390c: a338001d */ sb $t8,0x1d($t9)
/* f133910: 8e230000 */ lw $v1,0x0($s1)
.NB0f133914:
/* f133914: 906941fe */ lbu $t1,0x41fe($v1)
/* f133918: 00704021 */ addu $t0,$v1,$s0
/* f13391c: a109001d */ sb $t1,0x1d($t0)
.NB0f133920:
/* f133920: 8e2a0000 */ lw $t2,0x0($s1)
/* f133924: 3c01c5fa */ lui $at,0xc5fa
/* f133928: 44815000 */ mtc1 $at,$f10
/* f13392c: 01501021 */ addu $v0,$t2,$s0
/* f133930: c4520014 */ lwc1 $f18,0x14($v0)
/* f133934: 460a9100 */ add.s $f4,$f18,$f10
/* f133938: e4440014 */ swc1 $f4,0x14($v0)
/* f13393c: 26520001 */ addiu $s2,$s2,0x1
.NB0f133940:
/* f133940: 240101f4 */ addiu $at,$zero,0x1f4
/* f133944: 1641ff71 */ bne $s2,$at,.NB0f13370c
/* f133948: 26100018 */ addiu $s0,$s0,0x18
/* f13394c: 8fbf0044 */ lw $ra,0x44($sp)
/* f133950: d7b40018 */ ldc1 $f20,0x18($sp)
/* f133954: d7b60020 */ ldc1 $f22,0x20($sp)
/* f133958: d7b80028 */ ldc1 $f24,0x28($sp)
/* f13395c: d7ba0030 */ ldc1 $f26,0x30($sp)
/* f133960: 8fb00038 */ lw $s0,0x38($sp)
/* f133964: 8fb1003c */ lw $s1,0x3c($sp)
/* f133968: 8fb20040 */ lw $s2,0x40($sp)
/* f13396c: 03e00008 */ jr $ra
/* f133970: 27bd0048 */ addiu $sp,$sp,0x48
);
#endif
// Mismatch: 30.0f should be loaded earlier and needs to go into a callee-save
@@ -4487,6 +4798,7 @@ glabel func0f13ae04
/* f13ae08: afa40000 */ sw $a0,0x0($sp)
);
#if VERSION >= VERSION_NTSC_1_0
void creditsTick(void)
{
s32 i;
@@ -4538,6 +4850,170 @@ void creditsTick(void)
g_CreditsData->unk4204 += g_Vars.diffframe60;
}
}
#else
GLOBAL_ASM(
glabel creditsTick
/* f135914: 27bdffe0 */ addiu $sp,$sp,-32
/* f135918: afbf001c */ sw $ra,0x1c($sp)
/* f13591c: 3c047f1b */ lui $a0,0x7f1b
/* f135920: 3c058008 */ lui $a1,0x8008
/* f135924: afb00018 */ sw $s0,0x18($sp)
/* f135928: 24a51f2c */ addiu $a1,$a1,0x1f2c
/* f13592c: 0c00381c */ jal 0xe070
/* f135930: 2484fd10 */ addiu $a0,$a0,-752
/* f135934: 3c0e8008 */ lui $t6,0x8008
/* f135938: 8dce1f2c */ lw $t6,0x1f2c($t6)
/* f13593c: 3401ffff */ dli $at,0xffff
/* f135940: 3c047f1b */ lui $a0,0x7f1b
/* f135944: 01c1082b */ sltu $at,$t6,$at
/* f135948: 1020000c */ beqz $at,.NB0f13597c
/* f13594c: 2484fd14 */ addiu $a0,$a0,-748
/* f135950: 3c10800b */ lui $s0,0x800b
/* f135954: 26108730 */ addiu $s0,$s0,-30928
/* f135958: 00001025 */ or $v0,$zero,$zero
/* f13595c: 24030040 */ addiu $v1,$zero,0x40
.NB0f135960:
/* f135960: 8e180000 */ lw $t8,0x0($s0)
/* f135964: 3c0f8008 */ lui $t7,0x8008
/* f135968: 8def1f2c */ lw $t7,0x1f2c($t7)
/* f13596c: 0302c821 */ addu $t9,$t8,$v0
/* f135970: 24420010 */ addiu $v0,$v0,0x10
/* f135974: 1443fffa */ bne $v0,$v1,.NB0f135960
/* f135978: af2f41b4 */ sw $t7,0x41b4($t9)
.NB0f13597c:
/* f13597c: 3c10800b */ lui $s0,0x800b
/* f135980: 3c058008 */ lui $a1,0x8008
/* f135984: 26108730 */ addiu $s0,$s0,-30928
/* f135988: 0c00381c */ jal 0xe070
/* f13598c: 24a51f28 */ addiu $a1,$a1,0x1f28
/* f135990: 3c088008 */ lui $t0,0x8008
/* f135994: 8d081f28 */ lw $t0,0x1f28($t0)
/* f135998: 11000005 */ beqz $t0,.NB0f1359b0
/* f13599c: 00000000 */ sll $zero,$zero,0x0
/* f1359a0: 0fc4cbc7 */ jal 0xf132f1c
/* f1359a4: 2404ffff */ addiu $a0,$zero,-1
/* f1359a8: 3c018008 */ lui $at,0x8008
/* f1359ac: ac201f28 */ sw $zero,0x1f28($at)
.NB0f1359b0:
/* f1359b0: 3c09800b */ lui $t1,0x800b
/* f1359b4: 8d29872c */ lw $t1,-0x78d4($t1)
/* f1359b8: 3c0a8008 */ lui $t2,0x8008
/* f1359bc: 55200010 */ bnezl $t1,.NB0f135a00
/* f1359c0: 00002025 */ or $a0,$zero,$zero
/* f1359c4: 8d4a1998 */ lw $t2,0x1998($t2)
/* f1359c8: 11400008 */ beqz $t2,.NB0f1359ec
/* f1359cc: 00000000 */ sll $zero,$zero,0x0
/* f1359d0: 0fc5a1ab */ jal 0xf1686ac
/* f1359d4: 2404005c */ addiu $a0,$zero,0x5c
/* f1359d8: 44806000 */ mtc1 $zero,$f12
/* f1359dc: 0fc5a063 */ jal 0xf16818c
/* f1359e0: 00000000 */ sll $zero,$zero,0x0
/* f1359e4: 10000006 */ beqz $zero,.NB0f135a00
/* f1359e8: 00002025 */ or $a0,$zero,$zero
.NB0f1359ec:
/* f1359ec: 0fc5a1ab */ jal 0xf1686ac
/* f1359f0: 2404005c */ addiu $a0,$zero,0x5c
/* f1359f4: 0fc5a176 */ jal 0xf1685d8
/* f1359f8: 24040058 */ addiu $a0,$zero,0x58
/* f1359fc: 00002025 */ or $a0,$zero,$zero
.NB0f135a00:
/* f135a00: 0c005790 */ jal 0x15e40
/* f135a04: 24050010 */ addiu $a1,$zero,0x10
/* f135a08: 1440000f */ bnez $v0,.NB0f135a48
/* f135a0c: 24052000 */ addiu $a1,$zero,0x2000
/* f135a10: 3c04800b */ lui $a0,0x800b
/* f135a14: 24848724 */ addiu $a0,$a0,-30940
/* f135a18: 8c820000 */ lw $v0,0x0($a0)
/* f135a1c: 3c03800a */ lui $v1,0x800a
/* f135a20: 8c63e700 */ lw $v1,-0x1900($v1)
/* f135a24: 3c01800b */ lui $at,0x800b
/* f135a28: ac228728 */ sw $v0,-0x78d8($at)
/* f135a2c: 00435821 */ addu $t3,$v0,$v1
/* f135a30: ac8b0000 */ sw $t3,0x0($a0)
/* f135a34: 3c0c800b */ lui $t4,0x800b
/* f135a38: 8d8c872c */ lw $t4,-0x78d4($t4)
/* f135a3c: 3c01800b */ lui $at,0x800b
/* f135a40: 01836821 */ addu $t5,$t4,$v1
/* f135a44: ac2d872c */ sw $t5,-0x78d4($at)
.NB0f135a48:
/* f135a48: 0c0057c0 */ jal 0x15f00
/* f135a4c: 00002025 */ or $a0,$zero,$zero
/* f135a50: 3c0e800b */ lui $t6,0x800b
/* f135a54: 8dce872c */ lw $t6,-0x78d4($t6)
/* f135a58: 240112c0 */ addiu $at,$zero,0x12c0
/* f135a5c: 01c1001b */ divu $zero,$t6,$at
/* f135a60: 0000c010 */ mfhi $t8
/* f135a64: 44982000 */ mtc1 $t8,$f4
/* f135a68: 3c014f80 */ lui $at,0x4f80
/* f135a6c: 07010004 */ bgez $t8,.NB0f135a80
/* f135a70: 468021a0 */ cvt.s.w $f6,$f4
/* f135a74: 44814000 */ mtc1 $at,$f8
/* f135a78: 00000000 */ sll $zero,$zero,0x0
/* f135a7c: 46083180 */ add.s $f6,$f6,$f8
.NB0f135a80:
/* f135a80: 3c014596 */ lui $at,0x4596
/* f135a84: 44815000 */ mtc1 $at,$f10
/* f135a88: 3c01800b */ lui $at,0x800b
/* f135a8c: 00002025 */ or $a0,$zero,$zero
/* f135a90: 460a3403 */ div.s $f16,$f6,$f10
/* f135a94: 24050010 */ addiu $a1,$zero,0x10
/* f135a98: 0c005790 */ jal 0x15e40
/* f135a9c: e4308720 */ swc1 $f16,-0x78e0($at)
/* f135aa0: 5440002c */ bnezl $v0,.NB0f135b54
/* f135aa4: 8fbf001c */ lw $ra,0x1c($sp)
/* f135aa8: 0fc4cd4b */ jal 0xf13352c
/* f135aac: 00000000 */ sll $zero,$zero,0x0
/* f135ab0: 8e0f0000 */ lw $t7,0x0($s0)
/* f135ab4: 91f941f4 */ lbu $t9,0x41f4($t7)
/* f135ab8: 13200005 */ beqz $t9,.NB0f135ad0
/* f135abc: 00000000 */ sll $zero,$zero,0x0
/* f135ac0: 0fc4d31b */ jal 0xf134c6c
/* f135ac4: 00000000 */ sll $zero,$zero,0x0
/* f135ac8: 10000016 */ beqz $zero,.NB0f135b24
/* f135acc: 8e020000 */ lw $v0,0x0($s0)
.NB0f135ad0:
/* f135ad0: 0c004d84 */ jal 0x13610
/* f135ad4: 00000000 */ sll $zero,$zero,0x0
/* f135ad8: 44829000 */ mtc1 $v0,$f18
/* f135adc: 3c014f80 */ lui $at,0x4f80
/* f135ae0: 04410004 */ bgez $v0,.NB0f135af4
/* f135ae4: 46809120 */ cvt.s.w $f4,$f18
/* f135ae8: 44814000 */ mtc1 $at,$f8
/* f135aec: 00000000 */ sll $zero,$zero,0x0
/* f135af0: 46082100 */ add.s $f4,$f4,$f8
.NB0f135af4:
/* f135af4: 3c012f80 */ lui $at,0x2f80
/* f135af8: 44813000 */ mtc1 $at,$f6
/* f135afc: 3c017f1b */ lui $at,0x7f1b
/* f135b00: c430fe70 */ lwc1 $f16,-0x190($at)
/* f135b04: 46062282 */ mul.s $f10,$f4,$f6
/* f135b08: 4610503c */ c.lt.s $f10,$f16
/* f135b0c: 00000000 */ sll $zero,$zero,0x0
/* f135b10: 45020004 */ bc1fl .NB0f135b24
/* f135b14: 8e020000 */ lw $v0,0x0($s0)
/* f135b18: 0fc4cbc7 */ jal 0xf132f1c
/* f135b1c: 2404ffff */ addiu $a0,$zero,-1
/* f135b20: 8e020000 */ lw $v0,0x0($s0)
.NB0f135b24:
/* f135b24: 904841f4 */ lbu $t0,0x41f4($v0)
/* f135b28: 5500000a */ bnezl $t0,.NB0f135b54
/* f135b2c: 8fbf001c */ lw $ra,0x1c($sp)
/* f135b30: 8c434204 */ lw $v1,0x4204($v0)
/* f135b34: 3c09800a */ lui $t1,0x800a
/* f135b38: 2c610550 */ sltiu $at,$v1,0x550
/* f135b3c: 50200005 */ beqzl $at,.NB0f135b54
/* f135b40: 8fbf001c */ lw $ra,0x1c($sp)
/* f135b44: 8d29e6c0 */ lw $t1,-0x1940($t1)
/* f135b48: 00695021 */ addu $t2,$v1,$t1
/* f135b4c: ac4a4204 */ sw $t2,0x4204($v0)
/* f135b50: 8fbf001c */ lw $ra,0x1c($sp)
.NB0f135b54:
/* f135b54: 8fb00018 */ lw $s0,0x18($sp)
/* f135b58: 27bd0020 */ addiu $sp,$sp,0x20
/* f135b5c: 03e00008 */ jr $ra
/* f135b60: 00000000 */ sll $zero,$zero,0x0
);
#endif
u32 var8007f6dc = 0;
@@ -4852,7 +5328,7 @@ glabel var7f1b5948
/* f13c020: 03e00008 */ jr $ra
/* f13c024: 27bd00a8 */ addiu $sp,$sp,0xa8
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel creditsRender
.late_rodata
@@ -5161,6 +5637,315 @@ glabel var7f1b5948
/* f13b4bc: 03e00008 */ jr $ra
/* f13b4c0: 27bd00a8 */ addiu $sp,$sp,0xa8
);
#else
GLOBAL_ASM(
glabel creditsRender
.late_rodata
glabel var7f1b5934
.word 0xbe86051b
glabel var7f1b5938
.word 0x4516d000
glabel var7f1b593c
.word 0x44504000
glabel var7f1b5940
.word 0x428db852
glabel var7f1b5944
.word 0xc5002000
glabel var7f1b5948
.word 0x3fbbc6a8
.text
/* 7f135b64: 27bdff58 */ addiu $sp,$sp,-168
/* 7f135b68: afbf001c */ sw $ra,0x1c($sp)
/* 7f135b6c: afb00018 */ sw $s0,0x18($sp)
/* 7f135b70: 0fc588b6 */ jal 0x7f1622d8
/* 7f135b74: 00808025 */ or $s0,$a0,$zero
/* 7f135b78: afa20064 */ sw $v0,0x64($sp)
/* 7f135b7c: 0fc53637 */ jal 0x7f14d8dc
/* 7f135b80: 00002025 */ or $a0,$zero,$zero
/* 7f135b84: 240e0001 */ addiu $t6,$zero,0x1
/* 7f135b88: 3c018008 */ lui $at,0x8008
/* 7f135b8c: ac2e2320 */ sw $t6,0x2320($at)
/* 7f135b90: 0c002d00 */ jal 0x7000b400
/* 7f135b94: 02002025 */ or $a0,$s0,$zero
/* 7f135b98: 0c002cd4 */ jal 0x7000b350
/* 7f135b9c: 00402025 */ or $a0,$v0,$zero
/* 7f135ba0: 00402025 */ or $a0,$v0,$zero
/* 7f135ba4: 0fc4cc11 */ jal 0x7f133044
/* 7f135ba8: 240500ff */ addiu $a1,$zero,0xff
/* 7f135bac: 3c0fed00 */ lui $t7,0xed00
/* 7f135bb0: 35ef0078 */ ori $t7,$t7,0x78
/* 7f135bb4: afa20048 */ sw $v0,0x48($sp)
/* 7f135bb8: ac4f0000 */ sw $t7,0x0($v0)
/* 7f135bbc: 0c002f77 */ jal 0x7000bddc
/* 7f135bc0: 24500008 */ addiu $s0,$v0,0x8
/* 7f135bc4: 0c002f7b */ jal 0x7000bdec
/* 7f135bc8: a7a20036 */ sh $v0,0x36($sp)
/* 7f135bcc: 2458ffe2 */ addiu $t8,$v0,-30
/* 7f135bd0: 44982000 */ mtc1 $t8,$f4
/* 7f135bd4: 87aa0036 */ lh $t2,0x36($sp)
/* 7f135bd8: 3c014080 */ lui $at,0x4080
/* 7f135bdc: 468021a0 */ cvt.s.w $f6,$f4
/* 7f135be0: 448a8000 */ mtc1 $t2,$f16
/* 7f135be4: 44810000 */ mtc1 $at,$f0
/* 7f135be8: 8fb80048 */ lw $t8,0x48($sp)
/* 7f135bec: 468084a0 */ cvt.s.w $f18,$f16
/* 7f135bf0: 46003202 */ mul.s $f8,$f6,$f0
/* 7f135bf4: 00000000 */ sll $zero,$zero,0x0
/* 7f135bf8: 46009102 */ mul.s $f4,$f18,$f0
/* 7f135bfc: 4600428d */ trunc.w.s $f10,$f8
/* 7f135c00: 4600218d */ trunc.w.s $f6,$f4
/* 7f135c04: 44085000 */ mfc1 $t0,$f10
/* 7f135c08: 440c3000 */ mfc1 $t4,$f6
/* 7f135c0c: 31090fff */ andi $t1,$t0,0xfff
/* 7f135c10: 318d0fff */ andi $t5,$t4,0xfff
/* 7f135c14: 000d7300 */ sll $t6,$t5,0xc
/* 7f135c18: 012e7825 */ or $t7,$t1,$t6
/* 7f135c1c: 0fc4d645 */ jal 0x7f135914
/* 7f135c20: af0f0004 */ sw $t7,0x4($t8)
/* 7f135c24: 3c07800b */ lui $a3,0x800b
/* 7f135c28: 24e78730 */ addiu $a3,$a3,-30928
/* 7f135c2c: 8ce30000 */ lw $v1,0x0($a3)
/* 7f135c30: 906441f4 */ lbu $a0,0x41f4($v1)
/* 7f135c34: 14800007 */ bnez $a0,.NB7f135c54
/* 7f135c38: 00000000 */ sll $zero,$zero,0x0
/* 7f135c3c: 8c624204 */ lw $v0,0x4204($v1)
/* 7f135c40: 2c41003c */ sltiu $at,$v0,0x3c
/* 7f135c44: 14200003 */ bnez $at,.NB7f135c54
/* 7f135c48: 2c4104b1 */ sltiu $at,$v0,0x4b1
/* 7f135c4c: 142000bd */ bnez $at,.NB7f135f44
/* 7f135c50: 00000000 */ sll $zero,$zero,0x0
.NB7f135c54:
/* 7f135c54: 14800066 */ bnez $a0,.NB7f135df0
/* 7f135c58: 00000000 */ sll $zero,$zero,0x0
/* 7f135c5c: 8c794204 */ lw $t9,0x4204($v1)
/* 7f135c60: 3c058008 */ lui $a1,0x8008
/* 7f135c64: 24a51990 */ addiu $a1,$a1,0x1990
/* 7f135c68: 2f2104b1 */ sltiu $at,$t9,0x4b1
/* 7f135c6c: 14200060 */ bnez $at,.NB7f135df0
/* 7f135c70: 00000000 */ sll $zero,$zero,0x0
/* 7f135c74: 8ca80000 */ lw $t0,0x0($a1)
/* 7f135c78: 240a0001 */ addiu $t2,$zero,0x1
/* 7f135c7c: 24642ef0 */ addiu $a0,$v1,0x2ef0
/* 7f135c80: 15000007 */ bnez $t0,.NB7f135ca0
/* 7f135c84: 3c018008 */ lui $at,0x8008
/* 7f135c88: acaa0000 */ sw $t2,0x0($a1)
/* 7f135c8c: 0fc3c0ba */ jal 0x7f0f02e8
/* 7f135c90: ac201f30 */ sw $zero,0x1f30($at)
/* 7f135c94: 3c07800b */ lui $a3,0x800b
/* 7f135c98: 24e78730 */ addiu $a3,$a3,-30928
/* 7f135c9c: 8ce30000 */ lw $v1,0x0($a3)
.NB7f135ca0:
/* 7f135ca0: 3c028008 */ lui $v0,0x8008
/* 7f135ca4: 3c0b800a */ lui $t3,0x800a
/* 7f135ca8: 8c421f30 */ lw $v0,0x1f30($v0)
/* 7f135cac: 8d6be700 */ lw $t3,-0x1900($t3)
/* 7f135cb0: 44800000 */ mtc1 $zero,$f0
/* 7f135cb4: 004b1021 */ addu $v0,$v0,$t3
/* 7f135cb8: 2c413841 */ sltiu $at,$v0,0x3841
/* 7f135cbc: 54200003 */ bnezl $at,.NB7f135ccc
/* 7f135cc0: e460343c */ swc1 $f0,0x343c($v1)
/* 7f135cc4: 00001025 */ or $v0,$zero,$zero
/* 7f135cc8: e460343c */ swc1 $f0,0x343c($v1)
.NB7f135ccc:
/* 7f135ccc: 8cec0000 */ lw $t4,0x0($a3)
/* 7f135cd0: 3c017f1b */ lui $at,0x7f1b
/* 7f135cd4: 44829000 */ mtc1 $v0,$f18
/* 7f135cd8: e5803414 */ swc1 $f0,0x3414($t4)
/* 7f135cdc: 8ced0000 */ lw $t5,0x0($a3)
/* 7f135ce0: c428fe74 */ lwc1 $f8,-0x18c($at)
/* 7f135ce4: 3c014f80 */ lui $at,0x4f80
/* 7f135ce8: 46809120 */ cvt.s.w $f4,$f18
/* 7f135cec: e5a83438 */ swc1 $f8,0x3438($t5)
/* 7f135cf0: 8ce30000 */ lw $v1,0x0($a3)
/* 7f135cf4: c46a3438 */ lwc1 $f10,0x3438($v1)
/* 7f135cf8: e46a3410 */ swc1 $f10,0x3410($v1)
/* 7f135cfc: 8ce90000 */ lw $t1,0x0($a3)
/* 7f135d00: e5203440 */ swc1 $f0,0x3440($t1)
/* 7f135d04: 8ce30000 */ lw $v1,0x0($a3)
/* 7f135d08: c4703440 */ lwc1 $f16,0x3440($v1)
/* 7f135d0c: 04410004 */ bgez $v0,.NB7f135d20
/* 7f135d10: e4703418 */ swc1 $f16,0x3418($v1)
/* 7f135d14: 44813000 */ mtc1 $at,$f6
/* 7f135d18: 00000000 */ sll $zero,$zero,0x0
/* 7f135d1c: 46062100 */ add.s $f4,$f4,$f6
.NB7f135d20:
/* 7f135d20: 3c014661 */ lui $at,0x4661
/* 7f135d24: 44814000 */ mtc1 $at,$f8
/* 7f135d28: 3c017f1b */ lui $at,0x7f1b
/* 7f135d2c: c430fe78 */ lwc1 $f16,-0x188($at)
/* 7f135d30: 46082283 */ div.s $f10,$f4,$f8
/* 7f135d34: 3c017f1b */ lui $at,0x7f1b
/* 7f135d38: c426fe7c */ lwc1 $f6,-0x184($at)
/* 7f135d3c: 8cee0000 */ lw $t6,0x0($a3)
/* 7f135d40: 3c017f1b */ lui $at,0x7f1b
/* 7f135d44: 240804b0 */ addiu $t0,$zero,0x4b0
/* 7f135d48: 02002025 */ or $a0,$s0,$zero
/* 7f135d4c: 24060004 */ addiu $a2,$zero,0x4
/* 7f135d50: 46105482 */ mul.s $f18,$f10,$f16
/* 7f135d54: 46123101 */ sub.s $f4,$f6,$f18
/* 7f135d58: e5c43428 */ swc1 $f4,0x3428($t6)
/* 7f135d5c: 8cef0000 */ lw $t7,0x0($a3)
/* 7f135d60: c428fe80 */ lwc1 $f8,-0x180($at)
/* 7f135d64: 3c017f1b */ lui $at,0x7f1b
/* 7f135d68: e5e8342c */ swc1 $f8,0x342c($t7)
/* 7f135d6c: 8cf80000 */ lw $t8,0x0($a3)
/* 7f135d70: c42afe84 */ lwc1 $f10,-0x17c($at)
/* 7f135d74: 3c017f1b */ lui $at,0x7f1b
/* 7f135d78: e70a3430 */ swc1 $f10,0x3430($t8)
/* 7f135d7c: 8cf90000 */ lw $t9,0x0($a3)
/* 7f135d80: c430fe88 */ lwc1 $f16,-0x178($at)
/* 7f135d84: 3c018008 */ lui $at,0x8008
/* 7f135d88: e7303434 */ swc1 $f16,0x3434($t9)
/* 7f135d8c: 8cea0000 */ lw $t2,0x0($a3)
/* 7f135d90: ad482efc */ sw $t0,0x2efc($t2)
/* 7f135d94: 8ce30000 */ lw $v1,0x0($a3)
/* 7f135d98: 906c34a1 */ lbu $t4,0x34a1($v1)
/* 7f135d9c: 358d0002 */ ori $t5,$t4,0x2
/* 7f135da0: a06d34a1 */ sb $t5,0x34a1($v1)
/* 7f135da4: 8ce90000 */ lw $t1,0x0($a3)
/* 7f135da8: ad2034a4 */ sw $zero,0x34a4($t1)
/* 7f135dac: 8ce50000 */ lw $a1,0x0($a3)
/* 7f135db0: ac221f30 */ sw $v0,0x1f30($at)
/* 7f135db4: 0fc3c0fd */ jal 0x7f0f03f4
/* 7f135db8: 24a52ef0 */ addiu $a1,$a1,0x2ef0
/* 7f135dbc: 3c0e0102 */ lui $t6,0x102
/* 7f135dc0: 35ce0040 */ ori $t6,$t6,0x40
/* 7f135dc4: afa20040 */ sw $v0,0x40($sp)
/* 7f135dc8: ac4e0000 */ sw $t6,0x0($v0)
/* 7f135dcc: 8fa40064 */ lw $a0,0x64($sp)
/* 7f135dd0: 0c013100 */ jal 0x7004c400
/* 7f135dd4: 24500008 */ addiu $s0,$v0,0x8
/* 7f135dd8: 8faf0040 */ lw $t7,0x40($sp)
/* 7f135ddc: 02002025 */ or $a0,$s0,$zero
/* 7f135de0: 240500d8 */ addiu $a1,$zero,0xd8
/* 7f135de4: 0fc4cc11 */ jal 0x7f133044
/* 7f135de8: ade20004 */ sw $v0,0x4($t7)
/* 7f135dec: 00408025 */ or $s0,$v0,$zero
.NB7f135df0:
/* 7f135df0: 0c005a28 */ jal 0x700168a0
/* 7f135df4: 27a40068 */ addiu $a0,$sp,0x68
/* 7f135df8: 27a40068 */ addiu $a0,$sp,0x68
/* 7f135dfc: 0c005bd1 */ jal 0x70016f44
/* 7f135e00: 8fa50064 */ lw $a1,0x64($sp)
/* 7f135e04: 0fc2cb5e */ jal 0x7f0b2d78
/* 7f135e08: 27a40068 */ addiu $a0,$sp,0x68
/* 7f135e0c: 3c180102 */ lui $t8,0x102
/* 7f135e10: 37180040 */ ori $t8,$t8,0x40
/* 7f135e14: 02001825 */ or $v1,$s0,$zero
/* 7f135e18: ac780000 */ sw $t8,0x0($v1)
/* 7f135e1c: afa3003c */ sw $v1,0x3c($sp)
/* 7f135e20: 8fa40064 */ lw $a0,0x64($sp)
/* 7f135e24: 0c013100 */ jal 0x7004c400
/* 7f135e28: 26100008 */ addiu $s0,$s0,0x8
/* 7f135e2c: 8fa3003c */ lw $v1,0x3c($sp)
/* 7f135e30: 3c01c47a */ lui $at,0xc47a
/* 7f135e34: 44810000 */ mtc1 $at,$f0
/* 7f135e38: ac620004 */ sw $v0,0x4($v1)
/* 7f135e3c: 3c01c2c8 */ lui $at,0xc2c8
/* 7f135e40: 44803000 */ mtc1 $zero,$f6
/* 7f135e44: 44809000 */ mtc1 $zero,$f18
/* 7f135e48: 44812000 */ mtc1 $at,$f4
/* 7f135e4c: 02002025 */ or $a0,$s0,$zero
/* 7f135e50: e7a00058 */ swc1 $f0,0x58($sp)
/* 7f135e54: e7a0005c */ swc1 $f0,0x5c($sp)
/* 7f135e58: e7a00060 */ swc1 $f0,0x60($sp)
/* 7f135e5c: e7a6004c */ swc1 $f6,0x4c($sp)
/* 7f135e60: e7b20050 */ swc1 $f18,0x50($sp)
/* 7f135e64: 0fc4caad */ jal 0x7f132ab4
/* 7f135e68: e7a40054 */ swc1 $f4,0x54($sp)
/* 7f135e6c: 0fc4cf66 */ jal 0x7f133d98
/* 7f135e70: 00402025 */ or $a0,$v0,$zero
/* 7f135e74: 3c07800b */ lui $a3,0x800b
/* 7f135e78: 24e78730 */ addiu $a3,$a3,-30928
/* 7f135e7c: 8ce30000 */ lw $v1,0x0($a3)
/* 7f135e80: 00408025 */ or $s0,$v0,$zero
/* 7f135e84: 906441f4 */ lbu $a0,0x41f4($v1)
/* 7f135e88: 10800009 */ beqz $a0,.NB7f135eb0
/* 7f135e8c: 00000000 */ sll $zero,$zero,0x0
/* 7f135e90: 0fc347cf */ jal 0x7f0d1f3c
/* 7f135e94: 00402025 */ or $a0,$v0,$zero
/* 7f135e98: 0fc4d3bd */ jal 0x7f134ef4
/* 7f135e9c: 00402025 */ or $a0,$v0,$zero
/* 7f135ea0: 3c03800b */ lui $v1,0x800b
/* 7f135ea4: 8c638730 */ lw $v1,-0x78d0($v1)
/* 7f135ea8: 00408025 */ or $s0,$v0,$zero
/* 7f135eac: 906441f4 */ lbu $a0,0x41f4($v1)
.NB7f135eb0:
/* 7f135eb0: 14800024 */ bnez $a0,.NB7f135f44
/* 7f135eb4: 00000000 */ sll $zero,$zero,0x0
/* 7f135eb8: 8c624204 */ lw $v0,0x4204($v1)
/* 7f135ebc: 00002825 */ or $a1,$zero,$zero
/* 7f135ec0: 240300ff */ addiu $v1,$zero,0xff
/* 7f135ec4: 2c41003c */ sltiu $at,$v0,0x3c
/* 7f135ec8: 5020000b */ beqzl $at,.NB7f135ef8
/* 7f135ecc: 2c4104b1 */ sltiu $at,$v0,0x4b1
/* 7f135ed0: 00430019 */ multu $v0,$v1
/* 7f135ed4: 2401003c */ addiu $at,$zero,0x3c
/* 7f135ed8: 00002812 */ mflo $a1
/* 7f135edc: 00000000 */ sll $zero,$zero,0x0
/* 7f135ee0: 00000000 */ sll $zero,$zero,0x0
/* 7f135ee4: 00a1001b */ divu $zero,$a1,$at
/* 7f135ee8: 00002812 */ mflo $a1
/* 7f135eec: 00000000 */ sll $zero,$zero,0x0
/* 7f135ef0: 00000000 */ sll $zero,$zero,0x0
/* 7f135ef4: 2c4104b1 */ sltiu $at,$v0,0x4b1
.NB7f135ef8:
/* 7f135ef8: 1420000d */ bnez $at,.NB7f135f30
/* 7f135efc: 240300ff */ addiu $v1,$zero,0xff
/* 7f135f00: 2c4104ec */ sltiu $at,$v0,0x4ec
/* 7f135f04: 1020000a */ beqz $at,.NB7f135f30
/* 7f135f08: 2448fb50 */ addiu $t0,$v0,-1200
/* 7f135f0c: 01030019 */ multu $t0,$v1
/* 7f135f10: 2401003c */ addiu $at,$zero,0x3c
/* 7f135f14: 00005012 */ mflo $t2
/* 7f135f18: 00000000 */ sll $zero,$zero,0x0
/* 7f135f1c: 00000000 */ sll $zero,$zero,0x0
/* 7f135f20: 0141001b */ divu $zero,$t2,$at
/* 7f135f24: 00005812 */ mflo $t3
/* 7f135f28: 006b2823 */ subu $a1,$v1,$t3
/* 7f135f2c: 00000000 */ sll $zero,$zero,0x0
.NB7f135f30:
/* 7f135f30: 10a00004 */ beqz $a1,.NB7f135f44
/* 7f135f34: 00000000 */ sll $zero,$zero,0x0
/* 7f135f38: 0fc4cc11 */ jal 0x7f133044
/* 7f135f3c: 02002025 */ or $a0,$s0,$zero
/* 7f135f40: 00408025 */ or $s0,$v0,$zero
.NB7f135f44:
/* 7f135f44: 3c0c8008 */ lui $t4,0x8008
/* 7f135f48: 8d8c1998 */ lw $t4,0x1998($t4)
/* 7f135f4c: 00002025 */ or $a0,$zero,$zero
/* 7f135f50: 51800018 */ beqzl $t4,.NB7f135fb4
/* 7f135f54: 8fbf001c */ lw $ra,0x1c($sp)
/* 7f135f58: 0c005790 */ jal 0x70015e40
/* 7f135f5c: 3405ffff */ dli $a1,0xffff
/* 7f135f60: 10400013 */ beqz $v0,.NB7f135fb0
/* 7f135f64: 240d0026 */ addiu $t5,$zero,0x26
/* 7f135f68: 3c018006 */ lui $at,0x8006
/* 7f135f6c: ac2d49f4 */ sw $t5,0x49f4($at)
/* 7f135f70: 0fc06821 */ jal 0x7f01a084
/* 7f135f74: 24040001 */ addiu $a0,$zero,0x1
/* 7f135f78: 3c048006 */ lui $a0,0x8006
/* 7f135f7c: 0c003c56 */ jal 0x7000f158
/* 7f135f80: 8c8449f4 */ lw $a0,0x49f4($a0)
/* 7f135f84: 3c01800a */ lui $at,0x800a
/* 7f135f88: ac20e954 */ sw $zero,-0x16ac($at)
/* 7f135f8c: 2402ffff */ addiu $v0,$zero,-1
/* 7f135f90: 3c01800a */ lui $at,0x800a
/* 7f135f94: ac22e958 */ sw $v0,-0x16a8($at)
/* 7f135f98: 3c01800a */ lui $at,0x800a
/* 7f135f9c: ac22e95c */ sw $v0,-0x16a4($at)
/* 7f135fa0: 0fc59ed6 */ jal 0x7f167b58
/* 7f135fa4: 00002025 */ or $a0,$zero,$zero
/* 7f135fa8: 0c00281a */ jal 0x7000a068
/* 7f135fac: 24040001 */ addiu $a0,$zero,0x1
.NB7f135fb0:
/* 7f135fb0: 8fbf001c */ lw $ra,0x1c($sp)
.NB7f135fb4:
/* 7f135fb4: 02001025 */ or $v0,$s0,$zero
/* 7f135fb8: 8fb00018 */ lw $s0,0x18($sp)
/* 7f135fbc: 03e00008 */ jr $ra
/* 7f135fc0: 27bd00a8 */ addiu $sp,$sp,0xa8
);
#endif
// Mismatch: Come back to to this when more is known about these symbols
+78 -94
View File
@@ -5,6 +5,17 @@
#include "data.h"
#include "types.h"
/**
* This file is used by ntsc-1.0 and above which has the debug functions
* ifdeffed out.
*
* ntsc-beta's debug implementations are in debug1.c and debug2.c.
* Those files are only linked into ntsc-beta.
*
* Splitting it like this is temporary due to it being difficult to identify
* which functions are the same between beta and 1.0.
*/
s32 var80075d60 = 0x00000002;
u32 var80075d64 = 0x00000002;
u32 var80075d68 = 0x00000002;
@@ -38,102 +49,105 @@ u32 var80075dd4 = 0x00000000;
u32 var80075dd8 = 0x3f800000;
u32 var80075ddc = 0x00000000;
void debug0f11ecf0(s32 arg0)
void debug0f11ecf0(s32 arg0) // not called
{
// empty
}
void debug0f11ecf8(s32 arg0, s32 arg1, s32 arg2)
void debug0f11ecf8(s32 arg0, s32 arg1, s32 arg2) // not called
{
// empty
}
s32 debug0f11ed08(s32 arg0)
s32 debug0f11ed08(s32 arg0) // not called
{
return arg0;
}
void debug0f11ed10(s32 arg0, s32 arg1, s32 arg2)
void debug0f11ed10(s32 arg0, s32 arg1, s32 arg2) // not called
{
// empty
}
bool debug0f11ed20(void)
bool debug0f11ed20(void) // not called
{
return false;
}
void debug0f11ed28(s32 arg0)
void debug0f11ed28(s32 arg0) // not called
{
// empty
}
void debug0f11ed30(void)
void debug0f11ed30(void) // not called
{
// empty
}
void debug0f11ed38(void)
void debug0f11ed38(void) // not called
{
// empty
}
void debug0f11ed40(void)
void debug0f11ed40(void) // not called
{
// empty
}
void debug0f11ed48(void)
void debug0f11ed48(void) // not called
{
// empty
}
void debug0f11ed50(void)
void debug0f11ed50(void) // not called
{
// empty
}
bool debug0f11ed58(s32 arg0, s32 arg1, s32 arg2, s32 arg3)
bool debug0f11ed58(s32 arg0, s32 arg1, s32 arg2, s32 arg3) // not called
{
return false;
}
/**
* If 1, would render something but the render function is stubbed.
*/
s32 debug0f11ed70(void)
{
return 0;
}
bool debug0f11ed78(void)
bool debugEnableBgRendering(void)
{
return true;
}
bool debug0f11ed80(void)
bool debugEnablePropRendering(void)
{
return true;
}
bool debug0f11ed88(void)
bool debug0f11ed88(void) // not called
{
return false;
}
bool debug0f11ed90(void)
bool debug0f11ed90(void) // not called
{
return false;
}
void debug0f11ed98(s32 arg0)
void debug0f11ed98(s32 arg0) // not called
{
// empty
}
bool debug0f11eda0(void)
bool debug0f11eda0(void) // not called
{
return false;
}
bool debug0f11eda8(void)
bool debug0f11eda8(void) // not called
{
return false;
}
@@ -153,37 +167,37 @@ bool debugIsRoomStateDebugEnabled(void)
return false;
}
s32 debug0f11edc8(void)
s32 debug0f11edc8(void) // not called
{
return var80075d70;
}
void debug0f11edd4(s32 arg0)
void debug0f11edd4(s32 arg0) // not called
{
var80075d70 = arg0;
}
bool debug0f11ede0(void)
bool debug0f11ede0(void) // not called
{
return false;
}
bool debug0f11ede8(void)
bool debug0f11ede8(void) // not called
{
return false;
}
bool debug0f11edf0(void)
bool debug0f11edf0(void) // not called
{
return false;
}
void debug0f11edf8(void)
void debug0f11edf8(void) // not called
{
// empty
}
void debug0f11ee00(void)
void debug0f11ee00(void) // not called
{
// empty
}
@@ -193,7 +207,7 @@ s32 debugIsTurboModeEnabled(void)
return g_DebugTurboMode;
}
void debugSetTurboMode(bool enabled)
void debugSetTurboMode(bool enabled) // not called
{
g_DebugTurboMode = enabled;
}
@@ -208,12 +222,12 @@ bool debug0f11ee28(void)
return false;
}
bool debug0f11ee30(void)
bool debug0f11ee30(void) // not called
{
return false;
}
bool debug0f11ee38(void)
bool debug0f11ee38(void) // not called
{
return false;
}
@@ -223,27 +237,27 @@ bool debug0f11ee40(void)
return false;
}
bool debug0f11ee48(void)
bool debug0f11ee48(void) // not called
{
return false;
}
bool debug0f11ee50(void)
bool debug0f11ee50(void) // not called
{
return false;
}
bool debug0f11ee58(void)
bool debug0f11ee58(void) // not called
{
return false;
}
bool debug0f11ee60(void)
bool debug0f11ee60(void) // not called
{
return false;
}
bool debug0f11ee68(void)
bool debug0f11ee68(void) // not called
{
return false;
}
@@ -253,12 +267,12 @@ u32 debugGetSlowMotion(void)
return SLOWMOTION_OFF;
}
bool debug0f11ee78(void)
bool debug0f11ee78(void) // not called
{
return false;
}
bool debug0f11ee80(void)
bool debug0f11ee80(void) // not called
{
return false;
}
@@ -273,12 +287,12 @@ bool debug0f11ee90(void)
return false;
}
bool debug0f11ee98(void)
bool debug0f11ee98(void) // not called
{
return false;
}
bool debug0f11eea0(void)
bool debug0f11eea0(void) // not called
{
return false;
}
@@ -288,27 +302,27 @@ bool debug0f11eea8(void)
return false;
}
bool debug0f11eeb0(void)
bool debugDangerousProps(void)
{
return false;
}
bool debug0f11eeb8(void)
bool debug0f11eeb8(void) // not called
{
return false;
}
bool debug0f11eec0(void)
bool debug0f11eec0(void) // not called
{
return false;
}
bool debug0f11eec8(void)
bool debug0f11eec8(void) // not called
{
return false;
}
bool debug0f11eed0(void)
bool debug0f11eed0(void) // not called
{
return false;
}
@@ -318,7 +332,7 @@ s32 debugGetMotionBlur(void)
return 0;
}
bool debug0f11eee0(void)
bool debug0f11eee0(void) // not called
{
return false;
}
@@ -328,7 +342,7 @@ u32 dprint()
return 0;
}
bool debug0f11eef0(void)
bool debug0f11eef0(void) // not called
{
return false;
}
@@ -338,47 +352,47 @@ bool debugEnableFootsteps(void)
return true;
}
bool debug0f11ef00(void)
bool debug0f11ef00(void) // not called
{
return false;
}
bool debug0f11ef08(void)
bool debug0f11ef08(void) // not called
{
return false;
}
bool debug0f11ef10(void)
bool debug0f11ef10(void) // not called
{
return false;
}
bool debug0f11ef18(void)
bool debug0f11ef18(void) // not called
{
return false;
}
bool debug0f11ef20(void)
bool debug0f11ef20(void) // not called
{
return false;
}
bool debug0f11ef28(void)
bool debug0f11ef28(void) // not called
{
return false;
}
bool debug0f11ef30(void)
bool debug0f11ef30(void) // not called
{
return false;
}
bool debug0f11ef38(void)
bool debug0f11ef38(void) // not called
{
return false;
}
bool debug0f11ef40(void)
bool debug0f11ef40(void) // not called
{
return false;
}
@@ -388,27 +402,27 @@ bool debugAllowEndLevel(void)
return true;
}
bool debug0f11ef50(void)
bool debug0f11ef50(void) // not called
{
return false;
}
bool debug0f11ef58(void)
bool debug0f11ef58(void) // not called
{
return false;
}
bool debug0f11ef60(void)
bool debug0f11ef60(void) // not called
{
return false;
}
bool debug0f11ef68(void)
bool debug0f11ef68(void) // not called
{
return false;
}
bool debug0f11ef70(void)
bool debug0f11ef70(void) // not called
{
return false;
}
@@ -423,57 +437,27 @@ bool debug0f11ef80(void)
return false;
}
bool debug0f11ef88(void)
bool debug0f11ef88(void) // not called
{
return false;
}
bool debug0f11ef90(void)
bool debug0f11ef90(void) // not called
{
return false;
}
void debug0f11ef98(s32 arg0)
void debug0f11ef98(s32 arg0) // not called
{
// empty
}
void debug0f11efa0(void)
void debug0f11efa0(void) // not called
{
// empty
}
void debug0f11efa8(void)
{
// empty
}
void debug0f11efb0(s32 arg0, s32 arg1)
{
// empty
}
void debug0f11efbc(s32 arg0)
{
// empty
}
s32 debug0f11efc4(s32 arg0)
{
return arg0;
}
void debug0f11efcc(void)
{
// empty
}
void debug0f11efd4(void)
{
// empty
}
void debug0f11efdc(s32 arg0)
void debug0f11efa8(void) // not called
{
// empty
}
+489
View File
@@ -0,0 +1,489 @@
#include <ultra64.h>
#include "constants.h"
#include "game/debug.h"
#include "bss.h"
#include "data.h"
#include "types.h"
s32 var80075d60 = 0x00000002;
u32 var80075d64 = 0x00000002;
u32 var80075d68 = 0x00000002;
u32 var80075d6c = 0x00000002;
u32 var80075d70 = 0x00000000;
bool g_DebugTurboMode = false;
s32 var80075d78 = 0;
u32 var80075d7c = 0x00000000;
u32 var80075d80 = 0x00000000;
u32 var80075d84 = 0x00000000;
u32 var80075d88 = 0x00000000;
u32 var80075d8c = 0x00000000;
u32 var80075d90 = 0x00000000;
u32 var80075d94 = 0xbf800000;
u32 var80075d98 = 0x00000000;
u32 var80075d9c = 0x3f800000;
u32 var80075da0 = 0x00000000;
u32 var80075da4 = 0x00000000;
u32 var80075da8 = 0x3f800000;
u32 var80075dac = 0x00000000;
u32 var80075db0 = 0x00000000;
u32 var80075db4 = 0x3f800000;
u32 var80075db8 = 0x00000000;
u32 var80075dbc = 0x00000000;
u32 var80075dc0 = 0x00000000;
u32 var80075dc4 = 0x00000000;
u32 var80075dc8 = 0x00000000;
u32 var80075dcc = 0x00000000;
u32 var80075dd0 = 0x00000000;
u32 var80075dd4 = 0x00000000;
u32 var80075dd8 = 0x3f800000;
u32 var80075ddc = 0x00000000;
void debug0f118c80nb(void)
{
// empty
}
GLOBAL_ASM(
glabel debug0f118c88nb
/* f118c88: 3c018008 */ lui $at,0x8008
/* f118c8c: 03e00008 */ jr $ra
/* f118c90: ac248138 */ sw $a0,-0x7ec8($at)
);
GLOBAL_ASM(
glabel debug0f118c94nb
/* f118c94: 3c018008 */ lui $at,0x8008
/* f118c98: ac248128 */ sw $a0,-0x7ed8($at)
/* f118c9c: 3c018008 */ lui $at,0x8008
/* f118ca0: ac25812c */ sw $a1,-0x7ed4($at)
/* f118ca4: 3c018008 */ lui $at,0x8008
/* f118ca8: ac268134 */ sw $a2,-0x7ecc($at)
/* f118cac: 8cce0000 */ lw $t6,0x0($a2)
/* f118cb0: 00001025 */ or $v0,$zero,$zero
/* f118cb4: 00c01825 */ or $v1,$a2,$zero
/* f118cb8: 05c20007 */ bltzl $t6,.NB0f118cd8
/* f118cbc: 0002c080 */ sll $t8,$v0,0x2
/* f118cc0: 8c6f0004 */ lw $t7,0x4($v1)
.NB0f118cc4:
/* f118cc4: 24420001 */ addiu $v0,$v0,0x1
/* f118cc8: 24630004 */ addiu $v1,$v1,0x4
/* f118ccc: 05e3fffd */ bgezl $t7,.NB0f118cc4
/* f118cd0: 8c6f0004 */ lw $t7,0x4($v1)
/* f118cd4: 0002c080 */ sll $t8,$v0,0x2
.NB0f118cd8:
/* f118cd8: 00d8c821 */ addu $t9,$a2,$t8
/* f118cdc: 8f28fffc */ lw $t0,-0x4($t9)
/* f118ce0: 3c018008 */ lui $at,0x8008
/* f118ce4: ac288124 */ sw $t0,-0x7edc($at)
/* f118ce8: 3c018008 */ lui $at,0x8008
/* f118cec: 03e00008 */ jr $ra
/* f118cf0: ac228130 */ sw $v0,-0x7ed0($at)
);
GLOBAL_ASM(
glabel debug0f118cf4nb
/* f118cf4: 27bdffc0 */ addiu $sp,$sp,-64
/* f118cf8: 3c038008 */ lui $v1,0x8008
/* f118cfc: 8c638138 */ lw $v1,-0x7ec8($v1)
/* f118d00: afbe0038 */ sw $s8,0x38($sp)
/* f118d04: afb70034 */ sw $s7,0x34($sp)
/* f118d08: 3c178008 */ lui $s7,0x8008
/* f118d0c: 3c1e8008 */ lui $s8,0x8008
/* f118d10: afa40040 */ sw $a0,0x40($sp)
/* f118d14: 248f0008 */ addiu $t7,$a0,0x8
/* f118d18: 02e3b821 */ addu $s7,$s7,$v1
/* f118d1c: 03c3f021 */ addu $s8,$s8,$v1
/* f118d20: afbf003c */ sw $ra,0x3c($sp)
/* f118d24: afb60030 */ sw $s6,0x30($sp)
/* f118d28: afb5002c */ sw $s5,0x2c($sp)
/* f118d2c: afb40028 */ sw $s4,0x28($sp)
/* f118d30: afb30024 */ sw $s3,0x24($sp)
/* f118d34: afb20020 */ sw $s2,0x20($sp)
/* f118d38: afb1001c */ sw $s1,0x1c($sp)
/* f118d3c: afb00018 */ sw $s0,0x18($sp)
/* f118d40: 92f7813c */ lbu $s7,-0x7ec4($s7)
/* f118d44: 93de8140 */ lbu $s8,-0x7ec0($s8)
/* f118d48: afaf0040 */ sw $t7,0x40($sp)
/* f118d4c: 3c18ba00 */ lui $t8,0xba00
/* f118d50: 37180e02 */ ori $t8,$t8,0xe02
/* f118d54: ac980000 */ sw $t8,0x0($a0)
/* f118d58: ac800004 */ sw $zero,0x4($a0)
/* f118d5c: 3c028008 */ lui $v0,0x8008
/* f118d60: 8c428124 */ lw $v0,-0x7edc($v0)
/* f118d64: 3c168008 */ lui $s6,0x8008
/* f118d68: 26d68128 */ addiu $s6,$s6,-32472
/* f118d6c: 18400039 */ blez $v0,.NB0f118e54
/* f118d70: 00008025 */ or $s0,$zero,$zero
/* f118d74: 3c148008 */ lui $s4,0x8008
/* f118d78: 3c138008 */ lui $s3,0x8008
/* f118d7c: 26738120 */ addiu $s3,$s3,-32480
/* f118d80: 2694812c */ addiu $s4,$s4,-32468
/* f118d84: 24150007 */ addiu $s5,$zero,0x7
.NB0f118d88:
/* f118d88: 0fc46320 */ jal 0xf118c80
/* f118d8c: 00000000 */ sll $zero,$zero,0x0
/* f118d90: 8e790000 */ lw $t9,0x0($s3)
/* f118d94: 240400c0 */ addiu $a0,$zero,0xc0
/* f118d98: 240500c0 */ addiu $a1,$zero,0xc0
/* f118d9c: 12190026 */ beq $s0,$t9,.NB0f118e38
/* f118da0: 240600c0 */ addiu $a2,$zero,0xc0
/* f118da4: 240700c0 */ addiu $a3,$zero,0xc0
/* f118da8: 001088c0 */ sll $s1,$s0,0x3
/* f118dac: 0c005106 */ jal 0x14418
/* f118db0: 00109080 */ sll $s2,$s0,0x2
/* f118db4: 8e880000 */ lw $t0,0x0($s4)
/* f118db8: 01111021 */ addu $v0,$t0,$s1
/* f118dbc: 8c490000 */ lw $t1,0x0($v0)
/* f118dc0: 8c4b0004 */ lw $t3,0x4($v0)
/* f118dc4: 01370019 */ multu $t1,$s7
/* f118dc8: 00002012 */ mflo $a0
/* f118dcc: 2484ffec */ addiu $a0,$a0,-20
/* f118dd0: 04810003 */ bgez $a0,.NB0f118de0
/* f118dd4: 00045083 */ sra $t2,$a0,0x2
/* f118dd8: 24810003 */ addiu $at,$a0,0x3
/* f118ddc: 00015083 */ sra $t2,$at,0x2
.NB0f118de0:
/* f118de0: 017e0019 */ multu $t3,$s8
/* f118de4: 01402025 */ or $a0,$t2,$zero
/* f118de8: 00006012 */ mflo $t4
/* f118dec: 258dfff8 */ addiu $t5,$t4,-8
/* f118df0: 00000000 */ sll $zero,$zero,0x0
/* f118df4: 01b5001a */ div $zero,$t5,$s5
/* f118df8: 00002812 */ mflo $a1
/* f118dfc: 16a00002 */ bnez $s5,.NB0f118e08
/* f118e00: 00000000 */ sll $zero,$zero,0x0
/* f118e04: 0007000d */ break 0x7
.NB0f118e08:
/* f118e08: 2401ffff */ addiu $at,$zero,-1
/* f118e0c: 16a10004 */ bne $s5,$at,.NB0f118e20
/* f118e10: 3c018000 */ lui $at,0x8000
/* f118e14: 15a10002 */ bne $t5,$at,.NB0f118e20
/* f118e18: 00000000 */ sll $zero,$zero,0x0
/* f118e1c: 0006000d */ break 0x6
.NB0f118e20:
/* f118e20: 0c0050df */ jal 0x1437c
/* f118e24: 00000000 */ sll $zero,$zero,0x0
/* f118e28: 8ece0000 */ lw $t6,0x0($s6)
/* f118e2c: 01d27821 */ addu $t7,$t6,$s2
/* f118e30: 0c005175 */ jal 0x145d4
/* f118e34: 8de40000 */ lw $a0,0x0($t7)
.NB0f118e38:
/* f118e38: 3c028008 */ lui $v0,0x8008
/* f118e3c: 8c428124 */ lw $v0,-0x7edc($v0)
/* f118e40: 26100001 */ addiu $s0,$s0,0x1
/* f118e44: 0202082a */ slt $at,$s0,$v0
/* f118e48: 1420ffcf */ bnez $at,.NB0f118d88
/* f118e4c: 00000000 */ sll $zero,$zero,0x0
/* f118e50: 00008025 */ or $s0,$zero,$zero
.NB0f118e54:
/* f118e54: 3c138008 */ lui $s3,0x8008
/* f118e58: 3c148008 */ lui $s4,0x8008
/* f118e5c: 3c168008 */ lui $s6,0x8008
/* f118e60: 26d68128 */ addiu $s6,$s6,-32472
/* f118e64: 2694812c */ addiu $s4,$s4,-32468
/* f118e68: 26738120 */ addiu $s3,$s3,-32480
/* f118e6c: 18400033 */ blez $v0,.NB0f118f3c
/* f118e70: 24150007 */ addiu $s5,$zero,0x7
.NB0f118e74:
/* f118e74: 0fc46320 */ jal 0xf118c80
/* f118e78: 00000000 */ sll $zero,$zero,0x0
/* f118e7c: 8e780000 */ lw $t8,0x0($s3)
/* f118e80: 240400c0 */ addiu $a0,$zero,0xc0
/* f118e84: 00002825 */ or $a1,$zero,$zero
/* f118e88: 16180026 */ bne $s0,$t8,.NB0f118f24
/* f118e8c: 00003025 */ or $a2,$zero,$zero
/* f118e90: 240700c0 */ addiu $a3,$zero,0xc0
/* f118e94: 001088c0 */ sll $s1,$s0,0x3
/* f118e98: 0c005106 */ jal 0x14418
/* f118e9c: 00109080 */ sll $s2,$s0,0x2
/* f118ea0: 8e990000 */ lw $t9,0x0($s4)
/* f118ea4: 03311021 */ addu $v0,$t9,$s1
/* f118ea8: 8c480000 */ lw $t0,0x0($v0)
/* f118eac: 8c4a0004 */ lw $t2,0x4($v0)
/* f118eb0: 01170019 */ multu $t0,$s7
/* f118eb4: 00002012 */ mflo $a0
/* f118eb8: 2484ffec */ addiu $a0,$a0,-20
/* f118ebc: 04810003 */ bgez $a0,.NB0f118ecc
/* f118ec0: 00044883 */ sra $t1,$a0,0x2
/* f118ec4: 24810003 */ addiu $at,$a0,0x3
/* f118ec8: 00014883 */ sra $t1,$at,0x2
.NB0f118ecc:
/* f118ecc: 015e0019 */ multu $t2,$s8
/* f118ed0: 01202025 */ or $a0,$t1,$zero
/* f118ed4: 00005812 */ mflo $t3
/* f118ed8: 256cfff8 */ addiu $t4,$t3,-8
/* f118edc: 00000000 */ sll $zero,$zero,0x0
/* f118ee0: 0195001a */ div $zero,$t4,$s5
/* f118ee4: 00002812 */ mflo $a1
/* f118ee8: 16a00002 */ bnez $s5,.NB0f118ef4
/* f118eec: 00000000 */ sll $zero,$zero,0x0
/* f118ef0: 0007000d */ break 0x7
.NB0f118ef4:
/* f118ef4: 2401ffff */ addiu $at,$zero,-1
/* f118ef8: 16a10004 */ bne $s5,$at,.NB0f118f0c
/* f118efc: 3c018000 */ lui $at,0x8000
/* f118f00: 15810002 */ bne $t4,$at,.NB0f118f0c
/* f118f04: 00000000 */ sll $zero,$zero,0x0
/* f118f08: 0006000d */ break 0x6
.NB0f118f0c:
/* f118f0c: 0c0050df */ jal 0x1437c
/* f118f10: 00000000 */ sll $zero,$zero,0x0
/* f118f14: 8ecd0000 */ lw $t5,0x0($s6)
/* f118f18: 01b27021 */ addu $t6,$t5,$s2
/* f118f1c: 0c005175 */ jal 0x145d4
/* f118f20: 8dc40000 */ lw $a0,0x0($t6)
.NB0f118f24:
/* f118f24: 3c0f8008 */ lui $t7,0x8008
/* f118f28: 8def8124 */ lw $t7,-0x7edc($t7)
/* f118f2c: 26100001 */ addiu $s0,$s0,0x1
/* f118f30: 020f082a */ slt $at,$s0,$t7
/* f118f34: 1420ffcf */ bnez $at,.NB0f118e74
/* f118f38: 00000000 */ sll $zero,$zero,0x0
.NB0f118f3c:
/* f118f3c: 8fbf003c */ lw $ra,0x3c($sp)
/* f118f40: 8fa20040 */ lw $v0,0x40($sp)
/* f118f44: 8fb00018 */ lw $s0,0x18($sp)
/* f118f48: 8fb1001c */ lw $s1,0x1c($sp)
/* f118f4c: 8fb20020 */ lw $s2,0x20($sp)
/* f118f50: 8fb30024 */ lw $s3,0x24($sp)
/* f118f54: 8fb40028 */ lw $s4,0x28($sp)
/* f118f58: 8fb5002c */ lw $s5,0x2c($sp)
/* f118f5c: 8fb60030 */ lw $s6,0x30($sp)
/* f118f60: 8fb70034 */ lw $s7,0x34($sp)
/* f118f64: 8fbe0038 */ lw $s8,0x38($sp)
/* f118f68: 03e00008 */ jr $ra
/* f118f6c: 27bd0040 */ addiu $sp,$sp,0x40
);
GLOBAL_ASM(
glabel debug0f118f70nb
/* f118f70: 3c028008 */ lui $v0,0x8008
/* f118f74: 03e00008 */ jr $ra
/* f118f78: 8c428120 */ lw $v0,-0x7ee0($v0)
);
GLOBAL_ASM(
glabel debug0f118f7cnb
/* f118f7c: 3c018008 */ lui $at,0x8008
/* f118f80: 03e00008 */ jr $ra
/* f118f84: ac248120 */ sw $a0,-0x7ee0($at)
);
GLOBAL_ASM(
glabel debug0f118f88nb
/* f118f88: 3c068008 */ lui $a2,0x8008
/* f118f8c: 24c68120 */ addiu $a2,$a2,-32480
/* f118f90: 8cce0000 */ lw $t6,0x0($a2)
/* f118f94: 3c188008 */ lui $t8,0x8008
/* f118f98: 3c048008 */ lui $a0,0x8008
/* f118f9c: 25c2ffff */ addiu $v0,$t6,-1
/* f118fa0: 04410006 */ bgez $v0,.NB0f118fbc
/* f118fa4: acc20000 */ sw $v0,0x0($a2)
/* f118fa8: 8f188134 */ lw $t8,-0x7ecc($t8)
/* f118fac: 8f190000 */ lw $t9,0x0($t8)
/* f118fb0: 2728ffff */ addiu $t0,$t9,-1
/* f118fb4: 03e00008 */ jr $ra
/* f118fb8: acc80000 */ sw $t0,0x0($a2)
.NB0f118fbc:
/* f118fbc: 8c848130 */ lw $a0,-0x7ed0($a0)
/* f118fc0: 00001825 */ or $v1,$zero,$zero
/* f118fc4: 3c058008 */ lui $a1,0x8008
/* f118fc8: 1880000d */ blez $a0,.NB0f119000
/* f118fcc: 00000000 */ sll $zero,$zero,0x0
/* f118fd0: 8ca58134 */ lw $a1,-0x7ecc($a1)
.NB0f118fd4:
/* f118fd4: 8caa0000 */ lw $t2,0x0($a1)
/* f118fd8: 24630001 */ addiu $v1,$v1,0x1
/* f118fdc: 24490001 */ addiu $t1,$v0,0x1
/* f118fe0: 152a0005 */ bne $t1,$t2,.NB0f118ff8
/* f118fe4: 0064082a */ slt $at,$v1,$a0
/* f118fe8: 8cab0004 */ lw $t3,0x4($a1)
/* f118fec: 256cffff */ addiu $t4,$t3,-1
/* f118ff0: 03e00008 */ jr $ra
/* f118ff4: accc0000 */ sw $t4,0x0($a2)
.NB0f118ff8:
/* f118ff8: 1420fff6 */ bnez $at,.NB0f118fd4
/* f118ffc: 24a50004 */ addiu $a1,$a1,0x4
.NB0f119000:
/* f119000: 03e00008 */ jr $ra
/* f119004: 00000000 */ sll $zero,$zero,0x0
);
GLOBAL_ASM(
glabel debug0f119008nb
/* f119008: 3c078008 */ lui $a3,0x8008
/* f11900c: 24e78120 */ addiu $a3,$a3,-32480
/* f119010: 8cee0000 */ lw $t6,0x0($a3)
/* f119014: 3c038008 */ lui $v1,0x8008
/* f119018: 3c058008 */ lui $a1,0x8008
/* f11901c: 25c20001 */ addiu $v0,$t6,0x1
/* f119020: ace20000 */ sw $v0,0x0($a3)
/* f119024: 8c638134 */ lw $v1,-0x7ecc($v1)
/* f119028: 8c780000 */ lw $t8,0x0($v1)
/* f11902c: 14580003 */ bne $v0,$t8,.NB0f11903c
/* f119030: 00000000 */ sll $zero,$zero,0x0
/* f119034: 03e00008 */ jr $ra
/* f119038: ace00000 */ sw $zero,0x0($a3)
.NB0f11903c:
/* f11903c: 8ca58130 */ lw $a1,-0x7ed0($a1)
/* f119040: 00002025 */ or $a0,$zero,$zero
/* f119044: 00603025 */ or $a2,$v1,$zero
/* f119048: 18a0000b */ blez $a1,.NB0f119078
/* f11904c: 00000000 */ sll $zero,$zero,0x0
.NB0f119050:
/* f119050: 8cd90000 */ lw $t9,0x0($a2)
/* f119054: 24840001 */ addiu $a0,$a0,0x1
/* f119058: 0085082a */ slt $at,$a0,$a1
/* f11905c: 14590004 */ bne $v0,$t9,.NB0f119070
/* f119060: 00000000 */ sll $zero,$zero,0x0
/* f119064: 8cc8fffc */ lw $t0,-0x4($a2)
/* f119068: 03e00008 */ jr $ra
/* f11906c: ace80000 */ sw $t0,0x0($a3)
.NB0f119070:
/* f119070: 1420fff7 */ bnez $at,.NB0f119050
/* f119074: 24c60004 */ addiu $a2,$a2,0x4
.NB0f119078:
/* f119078: 03e00008 */ jr $ra
/* f11907c: 00000000 */ sll $zero,$zero,0x0
);
GLOBAL_ASM(
glabel debug0f119080nb
/* f119080: 3c038008 */ lui $v1,0x8008
/* f119084: 8c638134 */ lw $v1,-0x7ecc($v1)
/* f119088: 3c088008 */ lui $t0,0x8008
/* f11908c: 25088120 */ addiu $t0,$t0,-32480
/* f119090: 8d020000 */ lw $v0,0x0($t0)
/* f119094: 8c640000 */ lw $a0,0x0($v1)
/* f119098: 3c0e8008 */ lui $t6,0x8008
/* f11909c: 0044082a */ slt $at,$v0,$a0
/* f1190a0: 1020000d */ beqz $at,.NB0f1190d8
/* f1190a4: 00000000 */ sll $zero,$zero,0x0
/* f1190a8: 8dce8130 */ lw $t6,-0x7ed0($t6)
/* f1190ac: 00447821 */ addu $t7,$v0,$a0
/* f1190b0: 29c10002 */ slti $at,$t6,0x2
/* f1190b4: 1420002d */ bnez $at,.NB0f11916c
/* f1190b8: 00000000 */ sll $zero,$zero,0x0
/* f1190bc: ad0f0000 */ sw $t7,0x0($t0)
/* f1190c0: 8c650004 */ lw $a1,0x4($v1)
/* f1190c4: 01e5082a */ slt $at,$t7,$a1
/* f1190c8: 14200028 */ bnez $at,.NB0f11916c
/* f1190cc: 24b9ffff */ addiu $t9,$a1,-1
/* f1190d0: 03e00008 */ jr $ra
/* f1190d4: ad190000 */ sw $t9,0x0($t0)
.NB0f1190d8:
/* f1190d8: 3c048008 */ lui $a0,0x8008
/* f1190dc: 8c848130 */ lw $a0,-0x7ed0($a0)
/* f1190e0: 00002825 */ or $a1,$zero,$zero
/* f1190e4: 00603025 */ or $a2,$v1,$zero
/* f1190e8: 18800020 */ blez $a0,.NB0f11916c
/* f1190ec: 00000000 */ sll $zero,$zero,0x0
.NB0f1190f0:
/* f1190f0: 8cc70000 */ lw $a3,0x0($a2)
/* f1190f4: 24a50001 */ addiu $a1,$a1,0x1
/* f1190f8: 0047082a */ slt $at,$v0,$a3
/* f1190fc: 50200019 */ beqzl $at,.NB0f119164
/* f119100: 00a4082a */ slt $at,$a1,$a0
/* f119104: 8ccafffc */ lw $t2,-0x4($a2)
/* f119108: 00474821 */ addu $t1,$v0,$a3
/* f11910c: 012a5823 */ subu $t3,$t1,$t2
/* f119110: ad0b0000 */ sw $t3,0x0($t0)
/* f119114: 8cc40004 */ lw $a0,0x4($a2)
/* f119118: 0483000b */ bgezl $a0,.NB0f119148
/* f11911c: 8d190000 */ lw $t9,0x0($t0)
/* f119120: 8ccd0000 */ lw $t5,0x0($a2)
/* f119124: 016d7023 */ subu $t6,$t3,$t5
/* f119128: ad0e0000 */ sw $t6,0x0($t0)
/* f11912c: 8c640000 */ lw $a0,0x0($v1)
/* f119130: 01c4082a */ slt $at,$t6,$a0
/* f119134: 1420000d */ bnez $at,.NB0f11916c
/* f119138: 2498ffff */ addiu $t8,$a0,-1
/* f11913c: 03e00008 */ jr $ra
/* f119140: ad180000 */ sw $t8,0x0($t0)
/* f119144: 8d190000 */ lw $t9,0x0($t0)
.NB0f119148:
/* f119148: 2489ffff */ addiu $t1,$a0,-1
/* f11914c: 0324082a */ slt $at,$t9,$a0
/* f119150: 14200006 */ bnez $at,.NB0f11916c
/* f119154: 00000000 */ sll $zero,$zero,0x0
/* f119158: 03e00008 */ jr $ra
/* f11915c: ad090000 */ sw $t1,0x0($t0)
/* f119160: 00a4082a */ slt $at,$a1,$a0
.NB0f119164:
/* f119164: 1420ffe2 */ bnez $at,.NB0f1190f0
/* f119168: 24c60004 */ addiu $a2,$a2,0x4
.NB0f11916c:
/* f11916c: 03e00008 */ jr $ra
/* f119170: 00000000 */ sll $zero,$zero,0x0
);
GLOBAL_ASM(
glabel debug0f119174nb
/* f119174: 3c038008 */ lui $v1,0x8008
/* f119178: 8c638134 */ lw $v1,-0x7ecc($v1)
/* f11917c: 3c078008 */ lui $a3,0x8008
/* f119180: 24e78120 */ addiu $a3,$a3,-32480
/* f119184: 8ce20000 */ lw $v0,0x0($a3)
/* f119188: 8c640000 */ lw $a0,0x0($v1)
/* f11918c: 3c058008 */ lui $a1,0x8008
/* f119190: 0044082a */ slt $at,$v0,$a0
/* f119194: 50200017 */ beqzl $at,.NB0f1191f4
/* f119198: 0044082a */ slt $at,$v0,$a0
/* f11919c: 8ca58130 */ lw $a1,-0x7ed0($a1)
/* f1191a0: 00002025 */ or $a0,$zero,$zero
/* f1191a4: 24a5ffff */ addiu $a1,$a1,-1
/* f1191a8: 18a00005 */ blez $a1,.NB0f1191c0
/* f1191ac: 00000000 */ sll $zero,$zero,0x0
/* f1191b0: 24840001 */ addiu $a0,$a0,0x1
.NB0f1191b4:
/* f1191b4: 0085082a */ slt $at,$a0,$a1
/* f1191b8: 5420fffe */ bnezl $at,.NB0f1191b4
/* f1191bc: 24840001 */ addiu $a0,$a0,0x1
.NB0f1191c0:
/* f1191c0: 18800026 */ blez $a0,.NB0f11925c
/* f1191c4: 00047080 */ sll $t6,$a0,0x2
/* f1191c8: 006e2821 */ addu $a1,$v1,$t6
/* f1191cc: 8caffffc */ lw $t7,-0x4($a1)
/* f1191d0: 004fc021 */ addu $t8,$v0,$t7
/* f1191d4: acf80000 */ sw $t8,0x0($a3)
/* f1191d8: 8ca60000 */ lw $a2,0x0($a1)
/* f1191dc: 0306082a */ slt $at,$t8,$a2
/* f1191e0: 1420001e */ bnez $at,.NB0f11925c
/* f1191e4: 24c8ffff */ addiu $t0,$a2,-1
/* f1191e8: 03e00008 */ jr $ra
/* f1191ec: ace80000 */ sw $t0,0x0($a3)
/* f1191f0: 0044082a */ slt $at,$v0,$a0
.NB0f1191f4:
/* f1191f4: 14200008 */ bnez $at,.NB0f119218
/* f1191f8: 00002825 */ or $a1,$zero,$zero
/* f1191fc: 00602025 */ or $a0,$v1,$zero
/* f119200: 8c890004 */ lw $t1,0x4($a0)
.NB0f119204:
/* f119204: 24a50001 */ addiu $a1,$a1,0x1
/* f119208: 24840004 */ addiu $a0,$a0,0x4
/* f11920c: 0049082a */ slt $at,$v0,$t1
/* f119210: 5020fffc */ beqzl $at,.NB0f119204
/* f119214: 8c890004 */ lw $t1,0x4($a0)
.NB0f119218:
/* f119218: 00055080 */ sll $t2,$a1,0x2
/* f11921c: 006a2021 */ addu $a0,$v1,$t2
/* f119220: 8c8bfffc */ lw $t3,-0x4($a0)
/* f119224: 24adfffe */ addiu $t5,$a1,-2
/* f119228: 004b6023 */ subu $t4,$v0,$t3
/* f11922c: 05a00004 */ bltz $t5,.NB0f119240
/* f119230: acec0000 */ sw $t4,0x0($a3)
/* f119234: 8c8ffff8 */ lw $t7,-0x8($a0)
/* f119238: 018fc021 */ addu $t8,$t4,$t7
/* f11923c: acf80000 */ sw $t8,0x0($a3)
.NB0f119240:
/* f119240: 8c82fffc */ lw $v0,-0x4($a0)
/* f119244: 8cf90000 */ lw $t9,0x0($a3)
/* f119248: 2448ffff */ addiu $t0,$v0,-1
/* f11924c: 0322082a */ slt $at,$t9,$v0
/* f119250: 14200002 */ bnez $at,.NB0f11925c
/* f119254: 00000000 */ sll $zero,$zero,0x0
/* f119258: ace80000 */ sw $t0,0x0($a3)
.NB0f11925c:
/* f11925c: 03e00008 */ jr $ra
/* f119260: 00000000 */ sll $zero,$zero,0x0
);
+922
View File
@@ -0,0 +1,922 @@
#include <ultra64.h>
#include "constants.h"
#include "game/debug.h"
#include "bss.h"
#include "data.h"
#include "types.h"
GLOBAL_ASM(
glabel debug0f119270nb
/* f119270: 27bdffd8 */ addiu $sp,$sp,-40
/* f119274: 3c028008 */ lui $v0,0x8008
/* f119278: 8c4286dc */ lw $v0,-0x7924($v0)
/* f11927c: afbf0024 */ sw $ra,0x24($sp)
/* f119280: afb30020 */ sw $s3,0x20($sp)
/* f119284: afb2001c */ sw $s2,0x1c($sp)
/* f119288: afb10018 */ sw $s1,0x18($sp)
/* f11928c: 1440000b */ bnez $v0,.NB0f1192bc
/* f119290: afb00014 */ sw $s0,0x14($sp)
/* f119294: 3c048008 */ lui $a0,0x8008
/* f119298: 3c058008 */ lui $a1,0x8008
/* f11929c: 3c068008 */ lui $a2,0x8008
/* f1192a0: 24c68150 */ addiu $a2,$a2,-32432
/* f1192a4: 24a58174 */ addiu $a1,$a1,-32396
/* f1192a8: 0fc46325 */ jal 0xf118c94
/* f1192ac: 248484d4 */ addiu $a0,$a0,-31532
/* f1192b0: 3c028008 */ lui $v0,0x8008
/* f1192b4: 10000032 */ beqz $zero,.NB0f119380
/* f1192b8: 8c4286dc */ lw $v0,-0x7924($v0)
.NB0f1192bc:
/* f1192bc: 24010001 */ addiu $at,$zero,0x1
/* f1192c0: 1441002f */ bne $v0,$at,.NB0f119380
/* f1192c4: 3c03800a */ lui $v1,0x800a
/* f1192c8: 3c02800a */ lui $v0,0x800a
/* f1192cc: 3c04800a */ lui $a0,0x800a
/* f1192d0: 24847950 */ addiu $a0,$a0,0x7950
/* f1192d4: 24427888 */ addiu $v0,$v0,0x7888
/* f1192d8: 24637860 */ addiu $v1,$v1,0x7860
.NB0f1192dc:
/* f1192dc: ac620000 */ sw $v0,0x0($v1)
/* f1192e0: 24420014 */ addiu $v0,$v0,0x14
/* f1192e4: 0044082b */ sltu $at,$v0,$a0
/* f1192e8: 1420fffc */ bnez $at,.NB0f1192dc
/* f1192ec: 24630004 */ addiu $v1,$v1,0x4
/* f1192f0: 3c118008 */ lui $s1,0x8008
/* f1192f4: 3c13800a */ lui $s3,0x800a
/* f1192f8: 26737860 */ addiu $s3,$s3,0x7860
/* f1192fc: 26318684 */ addiu $s1,$s1,-31100
/* f119300: 3c057f1b */ lui $a1,0x7f1b
/* f119304: ae200000 */ sw $zero,0x0($s1)
/* f119308: 24a5f378 */ addiu $a1,$a1,-3208
/* f11930c: 0c004e60 */ jal 0x13980
/* f119310: 8e640000 */ lw $a0,0x0($s3)
/* f119314: 8e2e0000 */ lw $t6,0x0($s1)
/* f119318: 3c127f1b */ lui $s2,0x7f1b
/* f11931c: 2652f380 */ addiu $s2,$s2,-3200
/* f119320: 25cf0001 */ addiu $t7,$t6,0x1
/* f119324: ae2f0000 */ sw $t7,0x0($s1)
/* f119328: 00008025 */ or $s0,$zero,$zero
.NB0f11932c:
/* f11932c: 0c006568 */ jal 0x195a0
/* f119330: 26040c00 */ addiu $a0,$s0,0xc00
/* f119334: 1040000b */ beqz $v0,.NB0f119364
/* f119338: 0010c080 */ sll $t8,$s0,0x2
/* f11933c: 0278c821 */ addu $t9,$s3,$t8
/* f119340: 8f240004 */ lw $a0,0x4($t9)
/* f119344: 02402825 */ or $a1,$s2,$zero
/* f119348: 0c004fc1 */ jal 0x13f04
/* f11934c: 02003025 */ or $a2,$s0,$zero
/* f119350: 8e280000 */ lw $t0,0x0($s1)
/* f119354: 26100001 */ addiu $s0,$s0,0x1
/* f119358: 25090001 */ addiu $t1,$t0,0x1
/* f11935c: 1000fff3 */ beqz $zero,.NB0f11932c
/* f119360: ae290000 */ sw $t1,0x0($s1)
.NB0f119364:
/* f119364: 3c058008 */ lui $a1,0x8008
/* f119368: 24a5868c */ addiu $a1,$a1,-31092
/* f11936c: 02602025 */ or $a0,$s3,$zero
/* f119370: 0fc46325 */ jal 0xf118c94
/* f119374: 02203025 */ or $a2,$s1,$zero
/* f119378: 3c028008 */ lui $v0,0x8008
/* f11937c: 8c4286dc */ lw $v0,-0x7924($v0)
.NB0f119380:
/* f119380: 00025080 */ sll $t2,$v0,0x2
/* f119384: 3c048008 */ lui $a0,0x8008
/* f119388: 008a2021 */ addu $a0,$a0,$t2
/* f11938c: 0fc463df */ jal 0xf118f7c
/* f119390: 8c8486e0 */ lw $a0,-0x7920($a0)
/* f119394: 8fbf0024 */ lw $ra,0x24($sp)
/* f119398: 8fb00014 */ lw $s0,0x14($sp)
/* f11939c: 8fb10018 */ lw $s1,0x18($sp)
/* f1193a0: 8fb2001c */ lw $s2,0x1c($sp)
/* f1193a4: 8fb30020 */ lw $s3,0x20($sp)
/* f1193a8: 03e00008 */ jr $ra
/* f1193ac: 27bd0028 */ addiu $sp,$sp,0x28
);
GLOBAL_ASM(
glabel debug0f1193b0nb
/* f1193b0: 27bdffe8 */ addiu $sp,$sp,-24
/* f1193b4: afbf0014 */ sw $ra,0x14($sp)
/* f1193b8: 0fc463dc */ jal 0xf118f70
/* f1193bc: 00000000 */ sll $zero,$zero,0x0
/* f1193c0: 3c0e8008 */ lui $t6,0x8008
/* f1193c4: 8dce86dc */ lw $t6,-0x7924($t6)
/* f1193c8: 8fbf0014 */ lw $ra,0x14($sp)
/* f1193cc: 3c018008 */ lui $at,0x8008
/* f1193d0: 000e7880 */ sll $t7,$t6,0x2
/* f1193d4: 002f0821 */ addu $at,$at,$t7
/* f1193d8: ac2286e0 */ sw $v0,-0x7920($at)
/* f1193dc: 03e00008 */ jr $ra
/* f1193e0: 27bd0018 */ addiu $sp,$sp,0x18
);
void debug0f1193e4nb(void)
{
// empty
}
void debug0f1193ecnb(void)
{
// empty
}
GLOBAL_ASM(
glabel debug0f1193f4nb
/* f1193f4: 3c028008 */ lui $v0,0x8008
/* f1193f8: 3c038008 */ lui $v1,0x8008
/* f1193fc: 240e0002 */ addiu $t6,$zero,0x2
/* f119400: 246386ec */ addiu $v1,$v1,-30996
/* f119404: 244286f4 */ addiu $v0,$v0,-30988
/* f119408: ac4e0000 */ sw $t6,0x0($v0)
/* f11940c: ac6e0000 */ sw $t6,0x0($v1)
/* f119410: 3c018008 */ lui $at,0x8008
/* f119414: 03e00008 */ jr $ra
/* f119418: ac2e86e8 */ sw $t6,-0x7918($at)
);
GLOBAL_ASM(
glabel debug0f11941cnb
/* f11941c: 27bdffe8 */ addiu $sp,$sp,-24
/* f119420: afbf0014 */ sw $ra,0x14($sp)
/* f119424: 3c048008 */ lui $a0,0x8008
/* f119428: 248487f4 */ addiu $a0,$a0,-30732
/* f11942c: 0c00c460 */ jal 0x31180
/* f119430: 24050002 */ addiu $a1,$zero,0x2
/* f119434: 0c00c462 */ jal 0x31188
/* f119438: 240400fa */ addiu $a0,$zero,0xfa
/* f11943c: 8fbf0014 */ lw $ra,0x14($sp)
/* f119440: 27bd0018 */ addiu $sp,$sp,0x18
/* f119444: 03e00008 */ jr $ra
/* f119448: 00000000 */ sll $zero,$zero,0x0
);
GLOBAL_ASM(
glabel debug0f11944cnb
/* f11944c: 27bdffe8 */ addiu $sp,$sp,-24
/* f119450: afbf0014 */ sw $ra,0x14($sp)
/* f119454: 0c00c464 */ jal 0x31190
/* f119458: 00000000 */ sll $zero,$zero,0x0
/* f11945c: 8fbf0014 */ lw $ra,0x14($sp)
/* f119460: 27bd0018 */ addiu $sp,$sp,0x18
/* f119464: 03e00008 */ jr $ra
/* f119468: 00000000 */ sll $zero,$zero,0x0
);
GLOBAL_ASM(
glabel debug0f11946cnb
/* f11946c: 27bdffd0 */ addiu $sp,$sp,-48
/* f119470: afbf0014 */ sw $ra,0x14($sp)
/* f119474: afa40030 */ sw $a0,0x30($sp)
/* f119478: afa50034 */ sw $a1,0x34($sp)
/* f11947c: afa60038 */ sw $a2,0x38($sp)
/* f119480: 0fc4649c */ jal 0xf119270
/* f119484: afa7003c */ sw $a3,0x3c($sp)
/* f119488: 3c048008 */ lui $a0,0x8008
/* f11948c: 24848814 */ addiu $a0,$a0,-30700
/* f119490: 8c820000 */ lw $v0,0x0($a0)
/* f119494: 24060003 */ addiu $a2,$zero,0x3
/* f119498: 1040000b */ beqz $v0,.NB0f1194c8
/* f11949c: 244e0001 */ addiu $t6,$v0,0x1
/* f1194a0: 14c20009 */ bne $a2,$v0,.NB0f1194c8
/* f1194a4: ac8e0000 */ sw $t6,0x0($a0)
/* f1194a8: 0c00305e */ jal 0xc178
/* f1194ac: 00000000 */ sll $zero,$zero,0x0
/* f1194b0: 3c048008 */ lui $a0,0x8008
/* f1194b4: 24848814 */ addiu $a0,$a0,-30700
/* f1194b8: 0c002b20 */ jal 0xac80
/* f1194bc: ac800000 */ sw $zero,0x0($a0)
/* f1194c0: 0c01282c */ jal 0x4a0b0
/* f1194c4: 00002025 */ or $a0,$zero,$zero
.NB0f1194c8:
/* f1194c8: 3c048008 */ lui $a0,0x8008
/* f1194cc: 24848818 */ addiu $a0,$a0,-30696
/* f1194d0: 8c820000 */ lw $v0,0x0($a0)
/* f1194d4: 24060003 */ addiu $a2,$zero,0x3
/* f1194d8: 1040000b */ beqz $v0,.NB0f119508
/* f1194dc: 244f0001 */ addiu $t7,$v0,0x1
/* f1194e0: 14c20009 */ bne $a2,$v0,.NB0f119508
/* f1194e4: ac8f0000 */ sw $t7,0x0($a0)
/* f1194e8: 0c00305a */ jal 0xc168
/* f1194ec: 00000000 */ sll $zero,$zero,0x0
/* f1194f0: 3c048008 */ lui $a0,0x8008
/* f1194f4: 24848818 */ addiu $a0,$a0,-30696
/* f1194f8: 0c002b20 */ jal 0xac80
/* f1194fc: ac800000 */ sw $zero,0x0($a0)
/* f119500: 0c01282c */ jal 0x4a0b0
/* f119504: 00002025 */ or $a0,$zero,$zero
.NB0f119508:
/* f119508: 3c188008 */ lui $t8,0x8008
/* f11950c: 8f18881c */ lw $t8,-0x77e4($t8)
/* f119510: 3c048008 */ lui $a0,0x8008
/* f119514: 3c018008 */ lui $at,0x8008
/* f119518: 1700000c */ bnez $t8,.NB0f11954c
/* f11951c: 248486f0 */ addiu $a0,$a0,-30992
/* f119520: 97a4003a */ lhu $a0,0x3a($sp)
/* f119524: 30820008 */ andi $v0,$a0,0x8
/* f119528: 0002182b */ sltu $v1,$zero,$v0
/* f11952c: 10600004 */ beqz $v1,.NB0f119540
/* f119530: 00000000 */ sll $zero,$zero,0x0
/* f119534: 30830004 */ andi $v1,$a0,0x4
/* f119538: 0003402b */ sltu $t0,$zero,$v1
/* f11953c: 01001825 */ or $v1,$t0,$zero
.NB0f119540:
/* f119540: ac23881c */ sw $v1,-0x77e4($at)
/* f119544: 100000e4 */ beqz $zero,.NB0f1198d8
/* f119548: 00601025 */ or $v0,$v1,$zero
.NB0f11954c:
/* f11954c: 8c820000 */ lw $v0,0x0($a0)
/* f119550: 2403fffe */ addiu $v1,$zero,-2
/* f119554: 3c018008 */ lui $at,0x8008
/* f119558: 50620004 */ beql $v1,$v0,.NB0f11956c
/* f11955c: 97a9003e */ lhu $t1,0x3e($sp)
/* f119560: ac2286f4 */ sw $v0,-0x790c($at)
/* f119564: ac830000 */ sw $v1,0x0($a0)
/* f119568: 97a9003e */ lhu $t1,0x3e($sp)
.NB0f11956c:
/* f11956c: 312a0200 */ andi $t2,$t1,0x200
/* f119570: 11400007 */ beqz $t2,.NB0f119590
/* f119574: afa9001c */ sw $t1,0x1c($sp)
/* f119578: 0fc4645d */ jal 0xf119174
/* f11957c: 00000000 */ sll $zero,$zero,0x0
/* f119580: 3c048008 */ lui $a0,0x8008
/* f119584: 248486f0 */ addiu $a0,$a0,-30992
/* f119588: 2403fffe */ addiu $v1,$zero,-2
/* f11958c: ac830000 */ sw $v1,0x0($a0)
.NB0f119590:
/* f119590: 8fab001c */ lw $t3,0x1c($sp)
/* f119594: 316c0100 */ andi $t4,$t3,0x100
/* f119598: 51800008 */ beqzl $t4,.NB0f1195bc
/* f11959c: 8fad001c */ lw $t5,0x1c($sp)
/* f1195a0: 0fc46420 */ jal 0xf119080
/* f1195a4: 00000000 */ sll $zero,$zero,0x0
/* f1195a8: 3c048008 */ lui $a0,0x8008
/* f1195ac: 248486f0 */ addiu $a0,$a0,-30992
/* f1195b0: 2403fffe */ addiu $v1,$zero,-2
/* f1195b4: ac830000 */ sw $v1,0x0($a0)
/* f1195b8: 8fad001c */ lw $t5,0x1c($sp)
.NB0f1195bc:
/* f1195bc: 31ae0800 */ andi $t6,$t5,0x800
/* f1195c0: 51c00008 */ beqzl $t6,.NB0f1195e4
/* f1195c4: 8faf001c */ lw $t7,0x1c($sp)
/* f1195c8: 0fc463e2 */ jal 0xf118f88
/* f1195cc: 00000000 */ sll $zero,$zero,0x0
/* f1195d0: 3c048008 */ lui $a0,0x8008
/* f1195d4: 248486f0 */ addiu $a0,$a0,-30992
/* f1195d8: 2403fffe */ addiu $v1,$zero,-2
/* f1195dc: ac830000 */ sw $v1,0x0($a0)
/* f1195e0: 8faf001c */ lw $t7,0x1c($sp)
.NB0f1195e4:
/* f1195e4: 31f80400 */ andi $t8,$t7,0x400
/* f1195e8: 53000008 */ beqzl $t8,.NB0f11960c
/* f1195ec: 8fb9001c */ lw $t9,0x1c($sp)
/* f1195f0: 0fc46402 */ jal 0xf119008
/* f1195f4: 00000000 */ sll $zero,$zero,0x0
/* f1195f8: 3c048008 */ lui $a0,0x8008
/* f1195fc: 248486f0 */ addiu $a0,$a0,-30992
/* f119600: 2403fffe */ addiu $v1,$zero,-2
/* f119604: ac830000 */ sw $v1,0x0($a0)
/* f119608: 8fb9001c */ lw $t9,0x1c($sp)
.NB0f11960c:
/* f11960c: 3c028008 */ lui $v0,0x8008
/* f119610: 33289000 */ andi $t0,$t9,0x9000
/* f119614: 510000a0 */ beqzl $t0,.NB0f119898
/* f119618: 8faf001c */ lw $t7,0x1c($sp)
/* f11961c: 8c4286dc */ lw $v0,-0x7924($v0)
/* f119620: 24010001 */ addiu $at,$zero,0x1
/* f119624: 14410011 */ bne $v0,$at,.NB0f11966c
/* f119628: 00000000 */ sll $zero,$zero,0x0
/* f11962c: 0fc463dc */ jal 0xf118f70
/* f119630: 00000000 */ sll $zero,$zero,0x0
/* f119634: 14400007 */ bnez $v0,.NB0f119654
/* f119638: 3c018008 */ lui $at,0x8008
/* f11963c: 0c0050b5 */ jal 0x142d4
/* f119640: ac2086dc */ sw $zero,-0x7924($at)
/* f119644: 0fc4649c */ jal 0xf119270
/* f119648: 00000000 */ sll $zero,$zero,0x0
/* f11964c: 10000092 */ beqz $zero,.NB0f119898
/* f119650: 8faf001c */ lw $t7,0x1c($sp)
.NB0f119654:
/* f119654: 0fc463dc */ jal 0xf118f70
/* f119658: 00000000 */ sll $zero,$zero,0x0
/* f11965c: 0fc11e7c */ jal 0xf0479f0
/* f119660: 24440bff */ addiu $a0,$v0,0xbff
/* f119664: 1000008c */ beqz $zero,.NB0f119898
/* f119668: 8faf001c */ lw $t7,0x1c($sp)
.NB0f11966c:
/* f11966c: 5440008a */ bnezl $v0,.NB0f119898
/* f119670: 8faf001c */ lw $t7,0x1c($sp)
/* f119674: 0fc463dc */ jal 0xf118f70
/* f119678: 00000000 */ sll $zero,$zero,0x0
/* f11967c: 2449fff3 */ addiu $t1,$v0,-13
/* f119680: 2d210059 */ sltiu $at,$t1,0x59
/* f119684: 10200083 */ beqz $at,.NB0f119894
/* f119688: 24060003 */ addiu $a2,$zero,0x3
/* f11968c: 00094880 */ sll $t1,$t1,0x2
/* f119690: 3c017f1b */ lui $at,0x7f1b
/* f119694: 00290821 */ addu $at,$at,$t1
/* f119698: 8c29f38c */ lw $t1,-0xc74($at)
/* f11969c: 01200008 */ jr $t1
/* f1196a0: 00000000 */ sll $zero,$zero,0x0
/* f1196a4: 3c028008 */ lui $v0,0x8008
/* f1196a8: 24428730 */ addiu $v0,$v0,-30928
/* f1196ac: 8c4a0000 */ lw $t2,0x0($v0)
/* f1196b0: 394b0001 */ xori $t3,$t2,0x1
/* f1196b4: 10000077 */ beqz $zero,.NB0f119894
/* f1196b8: ac4b0000 */ sw $t3,0x0($v0)
/* f1196bc: 3c028008 */ lui $v0,0x8008
/* f1196c0: 24428770 */ addiu $v0,$v0,-30864
/* f1196c4: 8c4c0000 */ lw $t4,0x0($v0)
/* f1196c8: 258d0001 */ addiu $t5,$t4,0x1
/* f1196cc: 05a10004 */ bgez $t5,.NB0f1196e0
/* f1196d0: 31ae0003 */ andi $t6,$t5,0x3
/* f1196d4: 11c00002 */ beqz $t6,.NB0f1196e0
/* f1196d8: 00000000 */ sll $zero,$zero,0x0
/* f1196dc: 25cefffc */ addiu $t6,$t6,-4
.NB0f1196e0:
/* f1196e0: 1000006c */ beqz $zero,.NB0f119894
/* f1196e4: ac4e0000 */ sw $t6,0x0($v0)
/* f1196e8: 3c028008 */ lui $v0,0x8008
/* f1196ec: 2442876c */ addiu $v0,$v0,-30868
/* f1196f0: 8c4f0000 */ lw $t7,0x0($v0)
/* f1196f4: 25f80001 */ addiu $t8,$t7,0x1
/* f1196f8: 07010004 */ bgez $t8,.NB0f11970c
/* f1196fc: 33190003 */ andi $t9,$t8,0x3
/* f119700: 13200002 */ beqz $t9,.NB0f11970c
/* f119704: 00000000 */ sll $zero,$zero,0x0
/* f119708: 2739fffc */ addiu $t9,$t9,-4
.NB0f11970c:
/* f11970c: 10000061 */ beqz $zero,.NB0f119894
/* f119710: ac590000 */ sw $t9,0x0($v0)
/* f119714: 3c05800a */ lui $a1,0x800a
/* f119718: 3c07800a */ lui $a3,0x800a
/* f11971c: 24e7676e */ addiu $a3,$a3,0x676e
/* f119720: 24a566f0 */ addiu $a1,$a1,0x66f0
/* f119724: 24040007 */ addiu $a0,$zero,0x7
/* f119728: 00001025 */ or $v0,$zero,$zero
.NB0f11972c:
/* f11972c: 00a01825 */ or $v1,$a1,$zero
.NB0f119730:
/* f119730: 24420001 */ addiu $v0,$v0,0x1
/* f119734: 24630002 */ addiu $v1,$v1,0x2
/* f119738: 1446fffd */ bne $v0,$a2,.NB0f119730
/* f11973c: a464001e */ sh $a0,0x1e($v1)
/* f119740: 24a50006 */ addiu $a1,$a1,0x6
/* f119744: 54a7fff9 */ bnel $a1,$a3,.NB0f11972c
/* f119748: 00001025 */ or $v0,$zero,$zero
/* f11974c: 24080001 */ addiu $t0,$zero,0x1
/* f119750: 3c01800a */ lui $at,0x800a
/* f119754: 1000004f */ beqz $zero,.NB0f119894
/* f119758: a028681b */ sb $t0,0x681b($at)
/* f11975c: 3c028008 */ lui $v0,0x8008
/* f119760: 24428798 */ addiu $v0,$v0,-30824
/* f119764: 8c490000 */ lw $t1,0x0($v0)
/* f119768: 392a0001 */ xori $t2,$t1,0x1
/* f11976c: 0fc65417 */ jal 0xf19505c
/* f119770: ac4a0000 */ sw $t2,0x0($v0)
/* f119774: 10000048 */ beqz $zero,.NB0f119898
/* f119778: 8faf001c */ lw $t7,0x1c($sp)
/* f11977c: 3c028008 */ lui $v0,0x8008
/* f119780: 2442879c */ addiu $v0,$v0,-30820
/* f119784: 8c4b0000 */ lw $t3,0x0($v0)
/* f119788: 396c0001 */ xori $t4,$t3,0x1
/* f11978c: 10000041 */ beqz $zero,.NB0f119894
/* f119790: ac4c0000 */ sw $t4,0x0($v0)
/* f119794: 3c048008 */ lui $a0,0x8008
/* f119798: 248487a0 */ addiu $a0,$a0,-30816
/* f11979c: 8c8d0000 */ lw $t5,0x0($a0)
/* f1197a0: 3c02800a */ lui $v0,0x800a
/* f1197a4: 244266f0 */ addiu $v0,$v0,0x66f0
/* f1197a8: 39ae0001 */ xori $t6,$t5,0x1
/* f1197ac: ac8e0000 */ sw $t6,0x0($a0)
/* f1197b0: 3c04800a */ lui $a0,0x800a
/* f1197b4: 248466f9 */ addiu $a0,$a0,0x66f9
/* f1197b8: 240300ff */ addiu $v1,$zero,0xff
.NB0f1197bc:
/* f1197bc: 24420001 */ addiu $v0,$v0,0x1
/* f1197c0: 1444fffe */ bne $v0,$a0,.NB0f1197bc
/* f1197c4: a04300ab */ sb $v1,0xab($v0)
/* f1197c8: 0fc425a7 */ jal 0xf10969c
/* f1197cc: 24040030 */ addiu $a0,$zero,0x30
/* f1197d0: 0fc425a7 */ jal 0xf10969c
/* f1197d4: 24040031 */ addiu $a0,$zero,0x31
/* f1197d8: 0fc425a7 */ jal 0xf10969c
/* f1197dc: 24040032 */ addiu $a0,$zero,0x32
/* f1197e0: 0fc425a7 */ jal 0xf10969c
/* f1197e4: 24040033 */ addiu $a0,$zero,0x33
/* f1197e8: 0fc425a7 */ jal 0xf10969c
/* f1197ec: 24040034 */ addiu $a0,$zero,0x34
/* f1197f0: 0fc425a7 */ jal 0xf10969c
/* f1197f4: 24040035 */ addiu $a0,$zero,0x35
/* f1197f8: 0fc425a7 */ jal 0xf10969c
/* f1197fc: 24040036 */ addiu $a0,$zero,0x36
/* f119800: 0fc425a7 */ jal 0xf10969c
/* f119804: 24040037 */ addiu $a0,$zero,0x37
/* f119808: 0fc425a7 */ jal 0xf10969c
/* f11980c: 24040038 */ addiu $a0,$zero,0x38
/* f119810: 0fc425a7 */ jal 0xf10969c
/* f119814: 24040039 */ addiu $a0,$zero,0x39
/* f119818: 1000001f */ beqz $zero,.NB0f119898
/* f11981c: 8faf001c */ lw $t7,0x1c($sp)
/* f119820: 3c028008 */ lui $v0,0x8008
/* f119824: 244287a4 */ addiu $v0,$v0,-30812
/* f119828: 8c4f0000 */ lw $t7,0x0($v0)
/* f11982c: 39f80001 */ xori $t8,$t7,0x1
/* f119830: 10000018 */ beqz $zero,.NB0f119894
/* f119834: ac580000 */ sw $t8,0x0($v0)
/* f119838: 3c028008 */ lui $v0,0x8008
/* f11983c: 244287e4 */ addiu $v0,$v0,-30748
/* f119840: 8c590000 */ lw $t9,0x0($v0)
/* f119844: 3b280001 */ xori $t0,$t9,0x1
/* f119848: 10000012 */ beqz $zero,.NB0f119894
/* f11984c: ac480000 */ sw $t0,0x0($v0)
/* f119850: 3c028008 */ lui $v0,0x8008
/* f119854: 24428700 */ addiu $v0,$v0,-30976
/* f119858: 8c490000 */ lw $t1,0x0($v0)
/* f11985c: 392a0001 */ xori $t2,$t1,0x1
/* f119860: 1000000c */ beqz $zero,.NB0f119894
/* f119864: ac4a0000 */ sw $t2,0x0($v0)
/* f119868: 3c028006 */ lui $v0,0x8006
/* f11986c: 2442e710 */ addiu $v0,$v0,-6384
/* f119870: 904b0000 */ lbu $t3,0x0($v0)
/* f119874: 396c0001 */ xori $t4,$t3,0x1
/* f119878: 10000006 */ beqz $zero,.NB0f119894
/* f11987c: a04c0000 */ sb $t4,0x0($v0)
/* f119880: 3c028008 */ lui $v0,0x8008
/* f119884: 244287ac */ addiu $v0,$v0,-30804
/* f119888: 8c4d0000 */ lw $t5,0x0($v0)
/* f11988c: 39ae0001 */ xori $t6,$t5,0x1
/* f119890: ac4e0000 */ sw $t6,0x0($v0)
.NB0f119894:
/* f119894: 8faf001c */ lw $t7,0x1c($sp)
.NB0f119898:
/* f119898: 3c198008 */ lui $t9,0x8008
/* f11989c: 31f81000 */ andi $t8,$t7,0x1000
/* f1198a0: 13000009 */ beqz $t8,.NB0f1198c8
/* f1198a4: 00000000 */ sll $zero,$zero,0x0
/* f1198a8: 8f39881c */ lw $t9,-0x77e4($t9)
/* f1198ac: 24010001 */ addiu $at,$zero,0x1
/* f1198b0: 17210003 */ bne $t9,$at,.NB0f1198c0
/* f1198b4: 00000000 */ sll $zero,$zero,0x0
/* f1198b8: 0c0050b5 */ jal 0x142d4
/* f1198bc: 00000000 */ sll $zero,$zero,0x0
.NB0f1198c0:
/* f1198c0: 3c018008 */ lui $at,0x8008
/* f1198c4: ac20881c */ sw $zero,-0x77e4($at)
.NB0f1198c8:
/* f1198c8: 0fc464ec */ jal 0xf1193b0
/* f1198cc: 00000000 */ sll $zero,$zero,0x0
/* f1198d0: 3c028008 */ lui $v0,0x8008
/* f1198d4: 8c42881c */ lw $v0,-0x77e4($v0)
.NB0f1198d8:
/* f1198d8: 8fbf0014 */ lw $ra,0x14($sp)
/* f1198dc: 27bd0030 */ addiu $sp,$sp,0x30
/* f1198e0: 03e00008 */ jr $ra
/* f1198e4: 00000000 */ sll $zero,$zero,0x0
);
GLOBAL_ASM(
glabel debug0f1198e8nb
/* f1198e8: 3c028008 */ lui $v0,0x8008
/* f1198ec: 03e00008 */ jr $ra
/* f1198f0: 8c4286f8 */ lw $v0,-0x7908($v0)
);
GLOBAL_ASM(
glabel debug0f1198f4nb
/* f1198f4: 3c028008 */ lui $v0,0x8008
/* f1198f8: 03e00008 */ jr $ra
/* f1198fc: 8c4286fc */ lw $v0,-0x7904($v0)
);
GLOBAL_ASM(
glabel debugEnablePropRendering
/* f119900: 3c028008 */ lui $v0,0x8008
/* f119904: 03e00008 */ jr $ra
/* f119908: 8c428700 */ lw $v0,-0x7900($v0)
);
GLOBAL_ASM(
glabel debug0f11990cnb
/* f11990c: 3c028008 */ lui $v0,0x8008
/* f119910: 03e00008 */ jr $ra
/* f119914: 8c428708 */ lw $v0,-0x78f8($v0)
);
GLOBAL_ASM(
glabel debug0f119918nb
/* f119918: 3c028008 */ lui $v0,0x8008
/* f11991c: 03e00008 */ jr $ra
/* f119920: 8c428730 */ lw $v0,-0x78d0($v0)
);
GLOBAL_ASM(
glabel debug0f119924nb
/* f119924: 3c018008 */ lui $at,0x8008
/* f119928: 03e00008 */ jr $ra
/* f11992c: ac248730 */ sw $a0,-0x78d0($at)
);
GLOBAL_ASM(
glabel debug0f119930nb
/* f119930: 3c028008 */ lui $v0,0x8008
/* f119934: 03e00008 */ jr $ra
/* f119938: 8c428710 */ lw $v0,-0x78f0($v0)
);
GLOBAL_ASM(
glabel debug0f11993cnb
/* f11993c: 3c028008 */ lui $v0,0x8008
/* f119940: 03e00008 */ jr $ra
/* f119944: 8c428714 */ lw $v0,-0x78ec($v0)
);
GLOBAL_ASM(
glabel debug0f119948nb
/* f119948: 3c028008 */ lui $v0,0x8008
/* f11994c: 03e00008 */ jr $ra
/* f119950: 8c428718 */ lw $v0,-0x78e8($v0)
);
GLOBAL_ASM(
glabel debug0f119954nb
/* f119954: 3c028008 */ lui $v0,0x8008
/* f119958: 03e00008 */ jr $ra
/* f11995c: 8c42871c */ lw $v0,-0x78e4($v0)
);
GLOBAL_ASM(
glabel debugIsRoomStateDebugEnabled
/* f119960: 3c028008 */ lui $v0,0x8008
/* f119964: 03e00008 */ jr $ra
/* f119968: 8c42870c */ lw $v0,-0x78f4($v0)
);
GLOBAL_ASM(
glabel debug0f11996cnb
/* f11996c: 3c028008 */ lui $v0,0x8008
/* f119970: 03e00008 */ jr $ra
/* f119974: 8c428720 */ lw $v0,-0x78e0($v0)
);
GLOBAL_ASM(
glabel debug0f119978nb
/* f119978: 3c018008 */ lui $at,0x8008
/* f11997c: 03e00008 */ jr $ra
/* f119980: ac248720 */ sw $a0,-0x78e0($at)
);
GLOBAL_ASM(
glabel debug0f119984nb
/* f119984: 3c028008 */ lui $v0,0x8008
/* f119988: 03e00008 */ jr $ra
/* f11998c: 8c428734 */ lw $v0,-0x78cc($v0)
);
GLOBAL_ASM(
glabel debug0f119990nb
/* f119990: 3c018008 */ lui $at,0x8008
/* f119994: 03e00008 */ jr $ra
/* f119998: ac248734 */ sw $a0,-0x78cc($at)
);
GLOBAL_ASM(
glabel debugForceAllObjectivesComplete
/* f11999c: 3c028008 */ lui $v0,0x8008
/* f1199a0: 03e00008 */ jr $ra
/* f1199a4: 8c428738 */ lw $v0,-0x78c8($v0)
);
GLOBAL_ASM(
glabel debug0f11ee28
/* f1199a8: 3c028008 */ lui $v0,0x8008
/* f1199ac: 03e00008 */ jr $ra
/* f1199b0: 8c42873c */ lw $v0,-0x78c4($v0)
);
GLOBAL_ASM(
glabel debug0f11ee30
/* f1199b4: 3c028008 */ lui $v0,0x8008
/* f1199b8: 03e00008 */ jr $ra
/* f1199bc: 8c428744 */ lw $v0,-0x78bc($v0)
);
GLOBAL_ASM(
glabel debug0f11ee38
/* f1199c0: 3c028008 */ lui $v0,0x8008
/* f1199c4: 03e00008 */ jr $ra
/* f1199c8: 8c428750 */ lw $v0,-0x78b0($v0)
);
GLOBAL_ASM(
glabel debug0f11ee40
/* f1199cc: 3c028008 */ lui $v0,0x8008
/* f1199d0: 03e00008 */ jr $ra
/* f1199d4: 8c428754 */ lw $v0,-0x78ac($v0)
);
GLOBAL_ASM(
glabel debug0f1199d8nb
/* f1199d8: 3c028008 */ lui $v0,0x8008
/* f1199dc: 03e00008 */ jr $ra
/* f1199e0: 8c428758 */ lw $v0,-0x78a8($v0)
);
GLOBAL_ASM(
glabel debug0f1199e4nb
/* f1199e4: 3c028008 */ lui $v0,0x8008
/* f1199e8: 03e00008 */ jr $ra
/* f1199ec: 8c428740 */ lw $v0,-0x78c0($v0)
);
GLOBAL_ASM(
glabel debug0f1199f0nb
/* f1199f0: 3c028008 */ lui $v0,0x8008
/* f1199f4: 03e00008 */ jr $ra
/* f1199f8: 8c428724 */ lw $v0,-0x78dc($v0)
);
GLOBAL_ASM(
glabel debug0f1199fcnb
/* f1199fc: 3c028008 */ lui $v0,0x8008
/* f119a00: 03e00008 */ jr $ra
/* f119a04: 8c428728 */ lw $v0,-0x78d8($v0)
);
GLOBAL_ASM(
glabel debug0f119a08nb
/* f119a08: 3c028008 */ lui $v0,0x8008
/* f119a0c: 03e00008 */ jr $ra
/* f119a10: 8c42872c */ lw $v0,-0x78d4($v0)
);
GLOBAL_ASM(
glabel debug0f119a14nb
/* f119a14: 3c028008 */ lui $v0,0x8008
/* f119a18: 03e00008 */ jr $ra
/* f119a1c: 8c428748 */ lw $v0,-0x78b8($v0)
);
GLOBAL_ASM(
glabel debug0f119a20nb
/* f119a20: 3c028008 */ lui $v0,0x8008
/* f119a24: 03e00008 */ jr $ra
/* f119a28: 8c42874c */ lw $v0,-0x78b4($v0)
);
GLOBAL_ASM(
glabel debug0f119a2cnb
/* f119a2c: 3c028008 */ lui $v0,0x8008
/* f119a30: 03e00008 */ jr $ra
/* f119a34: 8c42875c */ lw $v0,-0x78a4($v0)
);
GLOBAL_ASM(
glabel debugGetSlowMotion
/* f119a38: 3c028008 */ lui $v0,0x8008
/* f119a3c: 03e00008 */ jr $ra
/* f119a40: 8c428764 */ lw $v0,-0x789c($v0)
);
GLOBAL_ASM(
glabel debug0f119a44nb
/* f119a44: 3c028008 */ lui $v0,0x8008
/* f119a48: 03e00008 */ jr $ra
/* f119a4c: 8c428768 */ lw $v0,-0x7898($v0)
);
GLOBAL_ASM(
glabel debug0f119a50nb
/* f119a50: 3c028008 */ lui $v0,0x8008
/* f119a54: 03e00008 */ jr $ra
/* f119a58: 8c428760 */ lw $v0,-0x78a0($v0)
);
GLOBAL_ASM(
glabel debug0f11ee88
/* f119a5c: 3c028008 */ lui $v0,0x8008
/* f119a60: 03e00008 */ jr $ra
/* f119a64: 8c42876c */ lw $v0,-0x7894($v0)
);
GLOBAL_ASM(
glabel debug0f11ee90
/* f119a68: 3c028008 */ lui $v0,0x8008
/* f119a6c: 03e00008 */ jr $ra
/* f119a70: 8c428770 */ lw $v0,-0x7890($v0)
);
GLOBAL_ASM(
glabel debug0f119a74nb
/* f119a74: 3c028008 */ lui $v0,0x8008
/* f119a78: 03e00008 */ jr $ra
/* f119a7c: 8c428774 */ lw $v0,-0x788c($v0)
);
GLOBAL_ASM(
glabel debug0f119a80nb
/* f119a80: 3c018008 */ lui $at,0x8008
/* f119a84: 03e00008 */ jr $ra
/* f119a88: ac208774 */ sw $zero,-0x788c($at)
);
GLOBAL_ASM(
glabel debug0f119a8cnb
/* f119a8c: 3c028008 */ lui $v0,0x8008
/* f119a90: 03e00008 */ jr $ra
/* f119a94: 8c428778 */ lw $v0,-0x7888($v0)
);
GLOBAL_ASM(
glabel debug0f11eea8
/* f119a98: 3c028008 */ lui $v0,0x8008
/* f119a9c: 03e00008 */ jr $ra
/* f119aa0: 8c428780 */ lw $v0,-0x7880($v0)
);
bool debug0f119aa4nb(void)
{
return false;
}
GLOBAL_ASM(
glabel debugDangerousProps
/* f119aac: 3c028008 */ lui $v0,0x8008
/* f119ab0: 03e00008 */ jr $ra
/* f119ab4: 8c4287ec */ lw $v0,-0x7814($v0)
);
GLOBAL_ASM(
glabel debug0f119ab8nb
/* f119ab8: 3c028008 */ lui $v0,0x8008
/* f119abc: 03e00008 */ jr $ra
/* f119ac0: 8c4287d8 */ lw $v0,-0x7828($v0)
);
GLOBAL_ASM(
glabel debug0f119ac4nb
/* f119ac4: 3c028008 */ lui $v0,0x8008
/* f119ac8: 03e00008 */ jr $ra
/* f119acc: 8c4287dc */ lw $v0,-0x7824($v0)
);
GLOBAL_ASM(
glabel debug0f119ad0nb
/* f119ad0: 3c028008 */ lui $v0,0x8008
/* f119ad4: 03e00008 */ jr $ra
/* f119ad8: 8c42877c */ lw $v0,-0x7884($v0)
);
GLOBAL_ASM(
glabel debugGetMotionBlur
/* f119adc: 3c028008 */ lui $v0,0x8008
/* f119ae0: 03e00008 */ jr $ra
/* f119ae4: 8c428784 */ lw $v0,-0x787c($v0)
);
GLOBAL_ASM(
glabel debug0f119ae8nb
/* f119ae8: 3c028008 */ lui $v0,0x8008
/* f119aec: 03e00008 */ jr $ra
/* f119af0: 8c428790 */ lw $v0,-0x7870($v0)
);
GLOBAL_ASM(
glabel dprint
/* f119af4: 3c028008 */ lui $v0,0x8008
/* f119af8: 03e00008 */ jr $ra
/* f119afc: 8c4287b8 */ lw $v0,-0x7848($v0)
);
GLOBAL_ASM(
glabel debug0f119b00nb
/* f119b00: 3c028008 */ lui $v0,0x8008
/* f119b04: 03e00008 */ jr $ra
/* f119b08: 8c4287c0 */ lw $v0,-0x7840($v0)
);
GLOBAL_ASM(
glabel debugAllowEndLevel
/* f119b0c: 3c028008 */ lui $v0,0x8008
/* f119b10: 03e00008 */ jr $ra
/* f119b14: 8c4287c4 */ lw $v0,-0x783c($v0)
);
GLOBAL_ASM(
glabel debug0f119b18nb
/* f119b18: 3c028008 */ lui $v0,0x8008
/* f119b1c: 03e00008 */ jr $ra
/* f119b20: 8c4287c8 */ lw $v0,-0x7838($v0)
);
GLOBAL_ASM(
glabel debug0f119b24nb
/* f119b24: 3c028008 */ lui $v0,0x8008
/* f119b28: 03e00008 */ jr $ra
/* f119b2c: 8c4287cc */ lw $v0,-0x7834($v0)
);
GLOBAL_ASM(
glabel debug0f119b30nb
/* f119b30: 3c028008 */ lui $v0,0x8008
/* f119b34: 03e00008 */ jr $ra
/* f119b38: 8c4287d0 */ lw $v0,-0x7830($v0)
);
GLOBAL_ASM(
glabel debug0f119b3cnb
/* f119b3c: 3c028008 */ lui $v0,0x8008
/* f119b40: 03e00008 */ jr $ra
/* f119b44: 8c4287d4 */ lw $v0,-0x782c($v0)
);
GLOBAL_ASM(
glabel debugEnableFootsteps
/* f119b48: 3c028008 */ lui $v0,0x8008
/* f119b4c: 03e00008 */ jr $ra
/* f119b50: 8c428794 */ lw $v0,-0x786c($v0)
);
GLOBAL_ASM(
glabel debug0f119b54nb
/* f119b54: 3c028008 */ lui $v0,0x8008
/* f119b58: 03e00008 */ jr $ra
/* f119b5c: 8c428798 */ lw $v0,-0x7868($v0)
);
GLOBAL_ASM(
glabel debug0f119b60nb
/* f119b60: 3c028008 */ lui $v0,0x8008
/* f119b64: 03e00008 */ jr $ra
/* f119b68: 8c42879c */ lw $v0,-0x7864($v0)
);
GLOBAL_ASM(
glabel debugAllFrWeapons
/* f119b6c: 3c028008 */ lui $v0,0x8008
/* f119b70: 03e00008 */ jr $ra
/* f119b74: 8c4287a0 */ lw $v0,-0x7860($v0)
);
GLOBAL_ASM(
glabel debug0f119b78nb
/* f119b78: 3c028008 */ lui $v0,0x8008
/* f119b7c: 03e00008 */ jr $ra
/* f119b80: 8c4287a4 */ lw $v0,-0x785c($v0)
);
GLOBAL_ASM(
glabel debug0f119b84nb
/* f119b84: 3c028008 */ lui $v0,0x8008
/* f119b88: 03e00008 */ jr $ra
/* f119b8c: 8c4287a8 */ lw $v0,-0x7858($v0)
);
GLOBAL_ASM(
glabel debug0f119b90nb
/* f119b90: 3c028008 */ lui $v0,0x8008
/* f119b94: 03e00008 */ jr $ra
/* f119b98: 8c4287ac */ lw $v0,-0x7854($v0)
);
GLOBAL_ASM(
glabel debug0f119b9cnb
/* f119b9c: 3c028008 */ lui $v0,0x8008
/* f119ba0: 03e00008 */ jr $ra
/* f119ba4: 8c4287b0 */ lw $v0,-0x7850($v0)
);
GLOBAL_ASM(
glabel debug0f119ba8nb
/* f119ba8: 3c028008 */ lui $v0,0x8008
/* f119bac: 03e00008 */ jr $ra
/* f119bb0: 8c4287bc */ lw $v0,-0x7844($v0)
);
GLOBAL_ASM(
glabel debug0f11ef78
/* f119bb4: 3c028008 */ lui $v0,0x8008
/* f119bb8: 03e00008 */ jr $ra
/* f119bbc: 8c4287e4 */ lw $v0,-0x781c($v0)
);
GLOBAL_ASM(
glabel debug0f11ef80
/* f119bc0: 3c028008 */ lui $v0,0x8008
/* f119bc4: 03e00008 */ jr $ra
/* f119bc8: 8c4287e8 */ lw $v0,-0x7818($v0)
);
GLOBAL_ASM(
glabel debug0f119bccnb
/* f119bcc: 3c028008 */ lui $v0,0x8008
/* f119bd0: 03e00008 */ jr $ra
/* f119bd4: 8c4287e0 */ lw $v0,-0x7820($v0)
);
GLOBAL_ASM(
glabel debug0f119bd8nb
/* f119bd8: 3c028008 */ lui $v0,0x8008
/* f119bdc: 03e00008 */ jr $ra
/* f119be0: 8c4287f0 */ lw $v0,-0x7810($v0)
);
+36
View File
@@ -0,0 +1,36 @@
#include <ultra64.h>
#include "constants.h"
#include "game/debug.h"
#include "bss.h"
#include "data.h"
#include "types.h"
void debug0f11efb0(s32 arg0, s32 arg1)
{
// empty
}
void debug0f11efbc(s32 arg0)
{
// empty
}
s32 debug0f11efc4(s32 arg0)
{
return arg0;
}
void debug0f11efcc(void)
{
// empty
}
void debug0f11efd4(void)
{
// empty
}
void debug0f11efdc(s32 arg0)
{
// empty
}
+1138
View File
File diff suppressed because it is too large. Load diff
+625 -1
View File
@@ -313,13 +313,20 @@ char *soloMenuTextAgentStatus(struct menuitem *item)
char *menuTitleStageCompleted(struct menuitem *item)
{
#if VERSION >= VERSION_NTSC_1_0
sprintf(g_StringPointer, "%s: %s\n",
langGet(g_StageNames[g_Menus[g_MpPlayerNum].data.endscreen.stageindex].name3),
langGet(L_OPTIONS_276)); // "Completed"
#else
sprintf(g_StringPointer, "%s: %s\n",
langGet(g_StageNames[g_MissionConfig.stageindex].name3),
langGet(L_OPTIONS_276)); // "Completed"
#endif
return g_StringPointer;
}
#if VERSION >= VERSION_NTSC_1_0
char *menuTextCurrentStageName3(struct menuitem *item)
{
char *name = langGet(g_StageNames[g_MissionConfig.stageindex].name3);
@@ -327,6 +334,7 @@ char *menuTextCurrentStageName3(struct menuitem *item)
return g_StringPointer;
}
#endif
char *menuTitleStageFailed(struct menuitem *item)
{
@@ -345,6 +353,7 @@ char *soloMenuTextMissionTime(struct menuitem *item)
return g_StringPointer;
}
#if VERSION >= VERSION_NTSC_1_0
struct menudialog *func0f10d730(void)
{
g_MissionConfig.stageindex++;
@@ -352,6 +361,53 @@ struct menudialog *func0f10d730(void)
return &g_NextMissionMenuDialog;
}
#else
GLOBAL_ASM(
glabel func0f10d730
/* f10876c: 27bdffe0 */ addiu $sp,$sp,-32
/* f108770: afb00018 */ sw $s0,0x18($sp)
/* f108774: 3c10800a */ lui $s0,0x800a
/* f108778: 261027a8 */ addiu $s0,$s0,0x27a8
/* f10877c: 920e0001 */ lbu $t6,0x1($s0)
/* f108780: 2401002a */ addiu $at,$zero,0x2a
/* f108784: afbf001c */ sw $ra,0x1c($sp)
/* f108788: 15c1000e */ bne $t6,$at,.NB0f1087c4
/* f10878c: 240f005c */ addiu $t7,$zero,0x5c
/* f108790: a20f0001 */ sb $t7,0x1($s0)
/* f108794: 0fc06ba1 */ jal 0xf01ae84
/* f108798: 31e400ff */ andi $a0,$t7,0xff
/* f10879c: 8e040000 */ lw $a0,0x0($s0)
/* f1087a0: 0004c642 */ srl $t8,$a0,0x19
/* f1087a4: 0fc59ed6 */ jal 0xf167b58
/* f1087a8: 03002025 */ or $a0,$t8,$zero
/* f1087ac: 0fc06945 */ jal 0xf01a514
/* f1087b0: 24040005 */ addiu $a0,$zero,0x5
/* f1087b4: 0c003c56 */ jal 0xf158
/* f1087b8: 92040001 */ lbu $a0,0x1($s0)
/* f1087bc: 1000000e */ beqz $zero,.NB0f1087f8
/* f1087c0: 00001025 */ or $v0,$zero,$zero
.NB0f1087c4:
/* f1087c4: 92190002 */ lbu $t9,0x2($s0)
/* f1087c8: 3c0b8007 */ lui $t3,0x8007
/* f1087cc: 3c028007 */ lui $v0,0x8007
/* f1087d0: 27280001 */ addiu $t0,$t9,0x1
/* f1087d4: 310900ff */ andi $t1,$t0,0xff
/* f1087d8: 00095080 */ sll $t2,$t1,0x2
/* f1087dc: 01495023 */ subu $t2,$t2,$t1
/* f1087e0: 000a5080 */ sll $t2,$t2,0x2
/* f1087e4: a2080002 */ sb $t0,0x2($s0)
/* f1087e8: 016a5821 */ addu $t3,$t3,$t2
/* f1087ec: 8d6b43fc */ lw $t3,0x43fc($t3)
/* f1087f0: 24427a90 */ addiu $v0,$v0,0x7a90
/* f1087f4: a20b0001 */ sb $t3,0x1($s0)
.NB0f1087f8:
/* f1087f8: 8fbf001c */ lw $ra,0x1c($sp)
/* f1087fc: 8fb00018 */ lw $s0,0x18($sp)
/* f108800: 27bd0020 */ addiu $sp,$sp,0x20
/* f108804: 03e00008 */ jr $ra
/* f108808: 00000000 */ sll $zero,$zero,0x0
);
#endif
void func0f10d770(void)
{
@@ -368,6 +424,7 @@ void func0f10d770(void)
g_Menus[3].mpconfigbuffer = func0f09ddec() + func0f0e4fe0();
}
#if VERSION >= VERSION_NTSC_1_0
s32 menuhandlerReplayLastLevel(s32 operation, struct menuitem *item, union handlerdata *data)
{
if (operation == MENUOP_SET) {
@@ -377,6 +434,7 @@ s32 menuhandlerReplayLastLevel(s32 operation, struct menuitem *item, union handl
return 0;
}
#endif
struct menuitem g_2PMissionEndscreenObjectivesVMenuItems[] = {
{ MENUITEMTYPE_OBJECTIVES, 2, 0x00000000, 0x00000000, 0x00000000, NULL },
@@ -428,7 +486,7 @@ struct menudialog g_2PMissionEndscreenObjectivesCompletedVMenuDialog = {
NULL,
};
#if VERSION >= VERSION_NTSC_1_0
/**
* Displayed after Defense and Skedar Ruins completion screens.
*/
@@ -440,7 +498,9 @@ s32 menuhandlerContinueMission(s32 operation, struct menuitem *item, union handl
return 0;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
struct menuitem g_MissionContinueOrReplyMenuItems[] = {
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_MPWEAPONS_244, 0x00000000, menuhandlerContinueMission }, // "Continue"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_MPWEAPONS_245, 0x00000000, menuhandlerReplayLastLevel }, // "Replay Last Level"
@@ -455,7 +515,9 @@ struct menudialog g_MissionContinueOrReplyMenuDialog = {
0x00000004,
NULL,
};
#endif
#if VERSION >= VERSION_NTSC_1_0
/**
* Context is:
*
@@ -557,7 +619,9 @@ void endscreenHandleContinue(s32 context)
}
}
}
#endif
#if VERSION >= VERSION_NTSC_1_0
s32 menudialogSolo2PEndscreenCompleted(s32 operation, struct menudialog *dialog, union handlerdata *data)
{
if (operation == MENUOP_OPEN) {
@@ -591,6 +655,258 @@ s32 menudialogSolo2PEndscreenCompleted(s32 operation, struct menudialog *dialog,
return 0;
}
#else
GLOBAL_ASM(
glabel menudialogSolo2PEndscreenCompleted
/* f108918: 27bdffe0 */ addiu $sp,$sp,-32
/* f10891c: 24010064 */ addiu $at,$zero,0x64
/* f108920: 1481000d */ bne $a0,$at,.NB0f108958
/* f108924: afbf0014 */ sw $ra,0x14($sp)
/* f108928: 3c0e8007 */ lui $t6,0x8007
/* f10892c: 8dce3af0 */ lw $t6,0x3af0($t6)
/* f108930: 3c01800a */ lui $at,0x800a
/* f108934: 000e78c0 */ sll $t7,$t6,0x3
/* f108938: 01ee7823 */ subu $t7,$t7,$t6
/* f10893c: 000f78c0 */ sll $t7,$t7,0x3
/* f108940: 01ee7823 */ subu $t7,$t7,$t6
/* f108944: 000f7900 */ sll $t7,$t7,0x4
/* f108948: 01ee7823 */ subu $t7,$t7,$t6
/* f10894c: 000f7880 */ sll $t7,$t7,0x2
/* f108950: 002f0821 */ addu $at,$at,$t7
/* f108954: ac203538 */ sw $zero,0x3538($at)
.NB0f108958:
/* f108958: 24010066 */ addiu $at,$zero,0x66
/* f10895c: 148100c9 */ bne $a0,$at,.NB0f108c84
/* f108960: 3c188007 */ lui $t8,0x8007
/* f108964: 8f183af0 */ lw $t8,0x3af0($t8)
/* f108968: 3c08800a */ lui $t0,0x800a
/* f10896c: 250827c0 */ addiu $t0,$t0,0x27c0
/* f108970: 0018c8c0 */ sll $t9,$t8,0x3
/* f108974: 0338c823 */ subu $t9,$t9,$t8
/* f108978: 0019c8c0 */ sll $t9,$t9,0x3
/* f10897c: 0338c823 */ subu $t9,$t9,$t8
/* f108980: 0019c900 */ sll $t9,$t9,0x4
/* f108984: 0338c823 */ subu $t9,$t9,$t8
/* f108988: 0019c880 */ sll $t9,$t9,0x2
/* f10898c: 03281821 */ addu $v1,$t9,$t0
/* f108990: 8c620488 */ lw $v0,0x488($v1)
/* f108994: 504000bc */ beqzl $v0,.NB0f108c88
/* f108998: 8fbf0014 */ lw $ra,0x14($sp)
/* f10899c: 8c440000 */ lw $a0,0x0($v0)
/* f1089a0: 50a40007 */ beql $a1,$a0,.NB0f1089c0
/* f1089a4: 8cc90000 */ lw $t1,0x0($a2)
/* f1089a8: 8ca20014 */ lw $v0,0x14($a1)
/* f1089ac: 504000b6 */ beqzl $v0,.NB0f108c88
/* f1089b0: 8fbf0014 */ lw $ra,0x14($sp)
/* f1089b4: 544400b4 */ bnel $v0,$a0,.NB0f108c88
/* f1089b8: 8fbf0014 */ lw $ra,0x14($sp)
/* f1089bc: 8cc90000 */ lw $t1,0x0($a2)
.NB0f1089c0:
/* f1089c0: 240e0003 */ addiu $t6,$zero,0x3
/* f1089c4: 3c0f800a */ lui $t7,0x800a
/* f1089c8: afa9001c */ sw $t1,0x1c($sp)
/* f1089cc: 912b0002 */ lbu $t3,0x2($t1)
/* f1089d0: 55600008 */ bnezl $t3,.NB0f1089f4
/* f1089d4: ac6e0d78 */ sw $t6,0xd78($v1)
/* f1089d8: 912c0003 */ lbu $t4,0x3($t1)
/* f1089dc: 55800005 */ bnezl $t4,.NB0f1089f4
/* f1089e0: ac6e0d78 */ sw $t6,0xd78($v1)
/* f1089e4: 812d000a */ lb $t5,0xa($t1)
/* f1089e8: 51a00003 */ beqzl $t5,.NB0f1089f8
/* f1089ec: 8c620d78 */ lw $v0,0xd78($v1)
/* f1089f0: ac6e0d78 */ sw $t6,0xd78($v1)
.NB0f1089f4:
/* f1089f4: 8c620d78 */ lw $v0,0xd78($v1)
.NB0f1089f8:
/* f1089f8: 5040009f */ beqzl $v0,.NB0f108c78
/* f1089fc: 8fb8001c */ lw $t8,0x1c($sp)
/* f108a00: 8def2780 */ lw $t7,0x2780($t7)
/* f108a04: 3c05800a */ lui $a1,0x800a
/* f108a08: 2458ffff */ addiu $t8,$v0,-1
/* f108a0c: 11e00003 */ beqz $t7,.NB0f108a1c
/* f108a10: 24a5e6c0 */ addiu $a1,$a1,-6464
/* f108a14: ac780d78 */ sw $t8,0xd78($v1)
/* f108a18: 03001025 */ or $v0,$t8,$zero
.NB0f108a1c:
/* f108a1c: 54400096 */ bnezl $v0,.NB0f108c78
/* f108a20: 8fb8001c */ lw $t8,0x1c($sp)
/* f108a24: 8cb904b4 */ lw $t9,0x4b4($a1)
/* f108a28: 24010038 */ addiu $at,$zero,0x38
/* f108a2c: 57210046 */ bnel $t9,$at,.NB0f108b48
/* f108a30: 8cad029c */ lw $t5,0x29c($a1)
/* f108a34: 8ca8029c */ lw $t0,0x29c($a1)
/* f108a38: 05010021 */ bgez $t0,.NB0f108ac0
/* f108a3c: 00000000 */ sll $zero,$zero,0x0
/* f108a40: 8ca90298 */ lw $t1,0x298($a1)
/* f108a44: 05200022 */ bltz $t1,.NB0f108ad0
/* f108a48: 00000000 */ sll $zero,$zero,0x0
/* f108a4c: 8cab006c */ lw $t3,0x6c($a1)
/* f108a50: 00003025 */ or $a2,$zero,$zero
/* f108a54: 00002025 */ or $a0,$zero,$zero
/* f108a58: 11600003 */ beqz $t3,.NB0f108a68
/* f108a5c: 00001825 */ or $v1,$zero,$zero
/* f108a60: 10000001 */ beqz $zero,.NB0f108a68
/* f108a64: 24060001 */ addiu $a2,$zero,0x1
.NB0f108a68:
/* f108a68: 8cac0068 */ lw $t4,0x68($a1)
/* f108a6c: 00001025 */ or $v0,$zero,$zero
/* f108a70: 11800003 */ beqz $t4,.NB0f108a80
/* f108a74: 00000000 */ sll $zero,$zero,0x0
/* f108a78: 10000001 */ beqz $zero,.NB0f108a80
/* f108a7c: 24040001 */ addiu $a0,$zero,0x1
.NB0f108a80:
/* f108a80: 8caa0064 */ lw $t2,0x64($a1)
/* f108a84: 11400003 */ beqz $t2,.NB0f108a94
/* f108a88: 00000000 */ sll $zero,$zero,0x0
/* f108a8c: 10000001 */ beqz $zero,.NB0f108a94
/* f108a90: 24030001 */ addiu $v1,$zero,0x1
.NB0f108a94:
/* f108a94: 8cad0070 */ lw $t5,0x70($a1)
/* f108a98: 11a00003 */ beqz $t5,.NB0f108aa8
/* f108a9c: 00000000 */ sll $zero,$zero,0x0
/* f108aa0: 10000001 */ beqz $zero,.NB0f108aa8
/* f108aa4: 24020001 */ addiu $v0,$zero,0x1
.NB0f108aa8:
/* f108aa8: 00437021 */ addu $t6,$v0,$v1
/* f108aac: 01c47821 */ addu $t7,$t6,$a0
/* f108ab0: 01e6c021 */ addu $t8,$t7,$a2
/* f108ab4: 2b010002 */ slti $at,$t8,0x2
/* f108ab8: 14200005 */ bnez $at,.NB0f108ad0
/* f108abc: 00000000 */ sll $zero,$zero,0x0
.NB0f108ac0:
/* f108ac0: 0fc3c088 */ jal 0xf0f0220
/* f108ac4: 00000000 */ sll $zero,$zero,0x0
/* f108ac8: 1000006b */ beqz $zero,.NB0f108c78
/* f108acc: 8fb8001c */ lw $t8,0x1c($sp)
.NB0f108ad0:
/* f108ad0: 3c03800a */ lui $v1,0x800a
/* f108ad4: 246327a8 */ addiu $v1,$v1,0x27a8
/* f108ad8: 90790002 */ lbu $t9,0x2($v1)
/* f108adc: 3c0c8007 */ lui $t4,0x8007
/* f108ae0: 27280001 */ addiu $t0,$t9,0x1
/* f108ae4: 310900ff */ andi $t1,$t0,0xff
/* f108ae8: 00095880 */ sll $t3,$t1,0x2
/* f108aec: 01695823 */ subu $t3,$t3,$t1
/* f108af0: 000b5880 */ sll $t3,$t3,0x2
/* f108af4: a0680002 */ sb $t0,0x2($v1)
/* f108af8: 018b6021 */ addu $t4,$t4,$t3
/* f108afc: 8d8c43fc */ lw $t4,0x43fc($t4)
/* f108b00: a06c0001 */ sb $t4,0x1($v1)
/* f108b04: 0fc06ba1 */ jal 0xf01ae84
/* f108b08: 318400ff */ andi $a0,$t4,0xff
/* f108b0c: 3c03800a */ lui $v1,0x800a
/* f108b10: 246327a8 */ addiu $v1,$v1,0x27a8
/* f108b14: 8c640000 */ lw $a0,0x0($v1)
/* f108b18: 00045642 */ srl $t2,$a0,0x19
/* f108b1c: 0fc59ed6 */ jal 0xf167b58
/* f108b20: 01402025 */ or $a0,$t2,$zero
/* f108b24: 0fc06945 */ jal 0xf01a514
/* f108b28: 24040005 */ addiu $a0,$zero,0x5
/* f108b2c: 3c03800a */ lui $v1,0x800a
/* f108b30: 246327a8 */ addiu $v1,$v1,0x27a8
/* f108b34: 0c003c56 */ jal 0xf158
/* f108b38: 90640001 */ lbu $a0,0x1($v1)
/* f108b3c: 1000004e */ beqz $zero,.NB0f108c78
/* f108b40: 8fb8001c */ lw $t8,0x1c($sp)
/* f108b44: 8cad029c */ lw $t5,0x29c($a1)
.NB0f108b48:
/* f108b48: 05a10040 */ bgez $t5,.NB0f108c4c
/* f108b4c: 00000000 */ sll $zero,$zero,0x0
/* f108b50: 8cae0298 */ lw $t6,0x298($a1)
/* f108b54: 05c0001d */ bltz $t6,.NB0f108bcc
/* f108b58: 00000000 */ sll $zero,$zero,0x0
/* f108b5c: 8caf006c */ lw $t7,0x6c($a1)
/* f108b60: 00003025 */ or $a2,$zero,$zero
/* f108b64: 00002025 */ or $a0,$zero,$zero
/* f108b68: 11e00003 */ beqz $t7,.NB0f108b78
/* f108b6c: 00001825 */ or $v1,$zero,$zero
/* f108b70: 10000001 */ beqz $zero,.NB0f108b78
/* f108b74: 24060001 */ addiu $a2,$zero,0x1
.NB0f108b78:
/* f108b78: 8cb80068 */ lw $t8,0x68($a1)
/* f108b7c: 00001025 */ or $v0,$zero,$zero
/* f108b80: 13000003 */ beqz $t8,.NB0f108b90
/* f108b84: 00000000 */ sll $zero,$zero,0x0
/* f108b88: 10000001 */ beqz $zero,.NB0f108b90
/* f108b8c: 24040001 */ addiu $a0,$zero,0x1
.NB0f108b90:
/* f108b90: 8cb90064 */ lw $t9,0x64($a1)
/* f108b94: 13200003 */ beqz $t9,.NB0f108ba4
/* f108b98: 00000000 */ sll $zero,$zero,0x0
/* f108b9c: 10000001 */ beqz $zero,.NB0f108ba4
/* f108ba0: 24030001 */ addiu $v1,$zero,0x1
.NB0f108ba4:
/* f108ba4: 8ca80070 */ lw $t0,0x70($a1)
/* f108ba8: 11000003 */ beqz $t0,.NB0f108bb8
/* f108bac: 00000000 */ sll $zero,$zero,0x0
/* f108bb0: 10000001 */ beqz $zero,.NB0f108bb8
/* f108bb4: 24020001 */ addiu $v0,$zero,0x1
.NB0f108bb8:
/* f108bb8: 00434821 */ addu $t1,$v0,$v1
/* f108bbc: 01245821 */ addu $t3,$t1,$a0
/* f108bc0: 01666021 */ addu $t4,$t3,$a2
/* f108bc4: 29810002 */ slti $at,$t4,0x2
/* f108bc8: 10200020 */ beqz $at,.NB0f108c4c
.NB0f108bcc:
/* f108bcc: 3c03800a */ lui $v1,0x800a
/* f108bd0: 246327a8 */ addiu $v1,$v1,0x27a8
/* f108bd4: 0fc57f85 */ jal 0xf15fe14
/* f108bd8: 90640001 */ lbu $a0,0x1($v1)
/* f108bdc: 3c03800a */ lui $v1,0x800a
/* f108be0: 3c05800a */ lui $a1,0x800a
/* f108be4: 24a5e6c0 */ addiu $a1,$a1,-6464
/* f108be8: 04400018 */ bltz $v0,.NB0f108c4c
/* f108bec: 246327a8 */ addiu $v1,$v1,0x27a8
/* f108bf0: 8caa04b4 */ lw $t2,0x4b4($a1)
/* f108bf4: 24010026 */ addiu $at,$zero,0x26
/* f108bf8: 11410014 */ beq $t2,$at,.NB0f108c4c
/* f108bfc: 00000000 */ sll $zero,$zero,0x0
/* f108c00: 90620002 */ lbu $v0,0x2($v1)
/* f108c04: 3c0d800a */ lui $t5,0x800a
/* f108c08: 28410011 */ slti $at,$v0,0x11
/* f108c0c: 1020000f */ beqz $at,.NB0f108c4c
/* f108c10: 00000000 */ sll $zero,$zero,0x0
/* f108c14: 8dad66c0 */ lw $t5,0x66c0($t5)
/* f108c18: 3c0e800a */ lui $t6,0x800a
/* f108c1c: 55a00005 */ bnezl $t5,.NB0f108c34
/* f108c20: 8c650000 */ lw $a1,0x0($v1)
/* f108c24: 8dce66c4 */ lw $t6,0x66c4($t6)
/* f108c28: 11c0000c */ beqz $t6,.NB0f108c5c
/* f108c2c: 00000000 */ sll $zero,$zero,0x0
/* f108c30: 8c650000 */ lw $a1,0x0($v1)
.NB0f108c34:
/* f108c34: 24440001 */ addiu $a0,$v0,0x1
/* f108c38: 00057e42 */ srl $t7,$a1,0x19
/* f108c3c: 0fc3fdde */ jal 0xf0ff778
/* f108c40: 01e02825 */ or $a1,$t7,$zero
/* f108c44: 14400005 */ bnez $v0,.NB0f108c5c
/* f108c48: 00000000 */ sll $zero,$zero,0x0
.NB0f108c4c:
/* f108c4c: 0fc3c088 */ jal 0xf0f0220
/* f108c50: 00000000 */ sll $zero,$zero,0x0
/* f108c54: 10000008 */ beqz $zero,.NB0f108c78
/* f108c58: 8fb8001c */ lw $t8,0x1c($sp)
.NB0f108c5c:
/* f108c5c: 0fc42203 */ jal 0xf10880c
/* f108c60: 00000000 */ sll $zero,$zero,0x0
/* f108c64: 0fc421db */ jal 0xf10876c
/* f108c68: 00000000 */ sll $zero,$zero,0x0
/* f108c6c: 0fc3beda */ jal 0xf0efb68
/* f108c70: 00402025 */ or $a0,$v0,$zero
/* f108c74: 8fb8001c */ lw $t8,0x1c($sp)
.NB0f108c78:
/* f108c78: a300000a */ sb $zero,0xa($t8)
/* f108c7c: a3000003 */ sb $zero,0x3($t8)
/* f108c80: a3000002 */ sb $zero,0x2($t8)
.NB0f108c84:
/* f108c84: 8fbf0014 */ lw $ra,0x14($sp)
.NB0f108c88:
/* f108c88: 27bd0020 */ addiu $sp,$sp,0x20
/* f108c8c: 00001025 */ or $v0,$zero,$zero
/* f108c90: 03e00008 */ jr $ra
/* f108c94: 00000000 */ sll $zero,$zero,0x0
);
#endif
s32 menudialogSolo2PEndscreenFailed(s32 operation, struct menudialog *dialog, union handlerdata *data)
{
@@ -665,6 +981,7 @@ u32 g_CheatColour = 0xff7f7fff;
struct menuitem g_MissionEndscreenMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS_278, (u32)&soloMenuTextMissionStatus, NULL }, // "Mission Status:"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS_279, (u32)&soloMenuTextAgentStatus, NULL }, // "Agent Status:"
#if VERSION >= VERSION_NTSC_1_0
{ MENUITEMTYPE_LABEL, 0, 0x01000000, L_OPTIONS_280, (u32)&soloMenuTextMissionTime, menuhandlerEndscreenCheats }, // "Mission Time:"
{ MENUITEMTYPE_LABEL, 1, 0x01000000, L_MPWEAPONS_242, (u32)&soloMenuTextTargetTime, menuhandlerEndscreenCheats }, // "Target Time:"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPWEAPONS_129, (u32)&soloMenuTextDifficulty, NULL }, // "Difficulty:"
@@ -682,11 +999,13 @@ struct menuitem g_MissionEndscreenMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS_286, (u32)&soloMenuTextNumBodyShots, NULL }, // "Body Shots:"
{ MENUITEMTYPE_LABEL, 6, 0x00000000, L_OPTIONS_287, (u32)&soloMenuTextNumLimbShots, menuhandlerEndscreenCheats }, // "Limb Shots:"
{ MENUITEMTYPE_LABEL, 4, 0x00000000, L_OPTIONS_288, (u32)&soloMenuTextNumOtherShots, menuhandlerEndscreenCheats }, // "Others:"
#endif
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_OPTIONS_289, 0x00000000, NULL }, // "Press START"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
#if VERSION >= VERSION_NTSC_1_0
/**
* This function is re-used for several values on the endscreen.
* item->param is used to determine which value it is. Values are:
@@ -760,7 +1079,9 @@ s32 menuhandlerEndscreenCheats(s32 operation, struct menuitem *item, union handl
return false;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
char *soloMenuTextTimedCheatName(struct menuitem *item)
{
if (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x00000300) {
@@ -769,7 +1090,9 @@ char *soloMenuTextTimedCheatName(struct menuitem *item)
return NULL;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
char *soloMenuTextCompletionCheatName(struct menuitem *item)
{
if (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x00000800) {
@@ -778,7 +1101,9 @@ char *soloMenuTextCompletionCheatName(struct menuitem *item)
return NULL;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel soloMenuTextTargetTime
/* f10e4d8: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
@@ -851,13 +1176,16 @@ const char var7f1b38bc[] = "\n";
// strcat(g_StringPointer, "\n");
// return g_StringPointer;
//}
#endif
void endscreenSetCoopCompleted(void)
{
if (g_CheatsActiveBank0 == 0 && g_CheatsActiveBank1 == 0) {
#if VERSION >= VERSION_NTSC_1_0
if (g_SoloSaveFile.coopcompletions[g_MissionConfig.difficulty] & (1 << g_MissionConfig.stageindex)) {
g_Menus[g_MpPlayerNum].data.endscreen.isfirstcompletion = true;
}
#endif
g_SoloSaveFile.coopcompletions[g_MissionConfig.difficulty] |= (1 << g_MissionConfig.stageindex);
}
@@ -881,6 +1209,7 @@ struct menudialog g_SoloMissionEndscreenFailedMenuDialog = {
&g_SoloEndscreenObjectivesFailedMenuDialog,
};
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel endscreenPrepare
/* f10e620: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
@@ -1331,6 +1660,224 @@ glabel endscreenPrepare
/* f10ecac: 03e00008 */ jr $ra
/* f10ecb0: 00000000 */ nop
);
#else
GLOBAL_ASM(
glabel endscreenPrepare
/* f108f00: 3c03800a */ lui $v1,0x800a
/* f108f04: 8c635eb4 */ lw $v1,0x5eb4($v1)
/* f108f08: 27bdffe8 */ addiu $sp,$sp,-24
/* f108f0c: 24010001 */ addiu $at,$zero,0x1
/* f108f10: 106100b4 */ beq $v1,$at,.NB0f1091e4
/* f108f14: afbf0014 */ sw $ra,0x14($sp)
/* f108f18: 3c0e800a */ lui $t6,0x800a
/* f108f1c: 8dcee9d4 */ lw $t6,-0x162c($t6)
/* f108f20: 3c0f8007 */ lui $t7,0x8007
/* f108f24: 3c01800a */ lui $at,0x800a
/* f108f28: 55c000af */ bnezl $t6,.NB0f1091e8
/* f108f2c: 24010001 */ addiu $at,$zero,0x1
/* f108f30: 8def3af0 */ lw $t7,0x3af0($t7)
/* f108f34: 3c02800a */ lui $v0,0x800a
/* f108f38: 8c42e944 */ lw $v0,-0x16bc($v0)
/* f108f3c: 000fc0c0 */ sll $t8,$t7,0x3
/* f108f40: 030fc023 */ subu $t8,$t8,$t7
/* f108f44: 0018c0c0 */ sll $t8,$t8,0x3
/* f108f48: 030fc023 */ subu $t8,$t8,$t7
/* f108f4c: 0018c100 */ sll $t8,$t8,0x4
/* f108f50: 030fc023 */ subu $t8,$t8,$t7
/* f108f54: 0018c080 */ sll $t8,$t8,0x2
/* f108f58: 00380821 */ addu $at,$at,$t8
/* f108f5c: a0202f57 */ sb $zero,0x2f57($at)
/* f108f60: 8c5900d8 */ lw $t9,0xd8($v0)
/* f108f64: 17200008 */ bnez $t9,.NB0f108f88
/* f108f68: 00000000 */ sll $zero,$zero,0x0
/* f108f6c: 8c48048c */ lw $t0,0x48c($v0)
/* f108f70: 15000005 */ bnez $t0,.NB0f108f88
/* f108f74: 00000000 */ sll $zero,$zero,0x0
/* f108f78: 0fc24f11 */ jal 0xf093c44
/* f108f7c: 00000000 */ sll $zero,$zero,0x0
/* f108f80: 1440000a */ bnez $v0,.NB0f108fac
/* f108f84: 3c048007 */ lui $a0,0x8007
.NB0f108f88:
/* f108f88: 3c048007 */ lui $a0,0x8007
/* f108f8c: 24847ee0 */ addiu $a0,$a0,0x7ee0
/* f108f90: 0fc3d326 */ jal 0xf0f4c98
/* f108f94: 24050001 */ addiu $a1,$zero,0x1
/* f108f98: 3c02800a */ lui $v0,0x800a
/* f108f9c: 904227ab */ lbu $v0,0x27ab($v0)
/* f108fa0: 000249c2 */ srl $t1,$v0,0x7
/* f108fa4: 1000000f */ beqz $zero,.NB0f108fe4
/* f108fa8: 01201025 */ or $v0,$t1,$zero
.NB0f108fac:
/* f108fac: 24847ec8 */ addiu $a0,$a0,0x7ec8
/* f108fb0: 0fc3d326 */ jal 0xf0f4c98
/* f108fb4: 24050001 */ addiu $a1,$zero,0x1
/* f108fb8: 3c02800a */ lui $v0,0x800a
/* f108fbc: 904227ab */ lbu $v0,0x27ab($v0)
/* f108fc0: 000251c2 */ srl $t2,$v0,0x7
/* f108fc4: 11400007 */ beqz $t2,.NB0f108fe4
/* f108fc8: 01401025 */ or $v0,$t2,$zero
/* f108fcc: 0fc423a9 */ jal 0xf108ea4
/* f108fd0: 00000000 */ sll $zero,$zero,0x0
/* f108fd4: 3c02800a */ lui $v0,0x800a
/* f108fd8: 904227ab */ lbu $v0,0x27ab($v0)
/* f108fdc: 000259c2 */ srl $t3,$v0,0x7
/* f108fe0: 01601025 */ or $v0,$t3,$zero
.NB0f108fe4:
/* f108fe4: 14400078 */ bnez $v0,.NB0f1091c8
/* f108fe8: 3c0c800a */ lui $t4,0x800a
/* f108fec: 8d8c27a8 */ lw $t4,0x27a8($t4)
/* f108ff0: 000c7640 */ sll $t6,$t4,0x19
/* f108ff4: 05c00074 */ bltz $t6,.NB0f1091c8
/* f108ff8: 00000000 */ sll $zero,$zero,0x0
/* f108ffc: 0fc2ff91 */ jal 0xf0bfe44
/* f109000: 00000000 */ sll $zero,$zero,0x0
/* f109004: 0fc2ff91 */ jal 0xf0bfe44
/* f109008: 00000000 */ sll $zero,$zero,0x0
/* f10900c: 2401003c */ addiu $at,$zero,0x3c
/* f109010: 0041001a */ div $zero,$v0,$at
/* f109014: 00001812 */ mflo $v1
/* f109018: 3c047fff */ lui $a0,0x7fff
/* f10901c: 10600010 */ beqz $v1,.NB0f109060
/* f109020: 3484ffff */ ori $a0,$a0,0xffff
/* f109024: 0064082b */ sltu $at,$v1,$a0
/* f109028: 10200007 */ beqz $at,.NB0f109048
/* f10902c: 3c07800a */ lui $a3,0x800a
/* f109030: 24e766f0 */ addiu $a3,$a3,0x66f0
/* f109034: 8ce20010 */ lw $v0,0x10($a3)
/* f109038: 00837823 */ subu $t7,$a0,$v1
/* f10903c: 004f082b */ sltu $at,$v0,$t7
/* f109040: 14200005 */ bnez $at,.NB0f109058
/* f109044: 0043c021 */ addu $t8,$v0,$v1
.NB0f109048:
/* f109048: 3c07800a */ lui $a3,0x800a
/* f10904c: 24e766f0 */ addiu $a3,$a3,0x66f0
/* f109050: 10000003 */ beqz $zero,.NB0f109060
/* f109054: ace40010 */ sw $a0,0x10($a3)
.NB0f109058:
/* f109058: 3c01800a */ lui $at,0x800a
/* f10905c: ac386700 */ sw $t8,0x6700($at)
.NB0f109060:
/* f109060: 3c03800a */ lui $v1,0x800a
/* f109064: 246327a8 */ addiu $v1,$v1,0x27a8
/* f109068: 3c07800a */ lui $a3,0x800a
/* f10906c: 8c680000 */ lw $t0,0x0($v1)
/* f109070: 24e766f0 */ addiu $a3,$a3,0x66f0
/* f109074: 90ec000b */ lbu $t4,0xb($a3)
/* f109078: 90790002 */ lbu $t9,0x2($v1)
/* f10907c: 00085642 */ srl $t2,$t0,0x19
/* f109080: 314b0007 */ andi $t3,$t2,0x7
/* f109084: 318dfff8 */ andi $t5,$t4,0xfff8
/* f109088: 016d7025 */ or $t6,$t3,$t5
/* f10908c: a0ee000b */ sb $t6,0xb($a3)
/* f109090: 3c02800a */ lui $v0,0x800a
/* f109094: a0f9000c */ sb $t9,0xc($a3)
/* f109098: 8c42e944 */ lw $v0,-0x16bc($v0)
/* f10909c: 8c4f00d8 */ lw $t7,0xd8($v0)
/* f1090a0: 15e00049 */ bnez $t7,.NB0f1091c8
/* f1090a4: 00000000 */ sll $zero,$zero,0x0
/* f1090a8: 8c58048c */ lw $t8,0x48c($v0)
/* f1090ac: 17000046 */ bnez $t8,.NB0f1091c8
/* f1090b0: 00000000 */ sll $zero,$zero,0x0
/* f1090b4: 0fc24f11 */ jal 0xf093c44
/* f1090b8: 00000000 */ sll $zero,$zero,0x0
/* f1090bc: 10400042 */ beqz $v0,.NB0f1091c8
/* f1090c0: 3c19800a */ lui $t9,0x800a
/* f1090c4: 8f3966c0 */ lw $t9,0x66c0($t9)
/* f1090c8: 3c08800a */ lui $t0,0x800a
/* f1090cc: 1720003e */ bnez $t9,.NB0f1091c8
/* f1090d0: 00000000 */ sll $zero,$zero,0x0
/* f1090d4: 8d0866c4 */ lw $t0,0x66c4($t0)
/* f1090d8: 1500003b */ bnez $t0,.NB0f1091c8
/* f1090dc: 00000000 */ sll $zero,$zero,0x0
/* f1090e0: 0fc2ff91 */ jal 0xf0bfe44
/* f1090e4: 00000000 */ sll $zero,$zero,0x0
/* f1090e8: 2401003c */ addiu $at,$zero,0x3c
/* f1090ec: 0041001a */ div $zero,$v0,$at
/* f1090f0: 00003012 */ mflo $a2
/* f1090f4: 3c07800a */ lui $a3,0x800a
/* f1090f8: 2cc11000 */ sltiu $at,$a2,0x1000
/* f1090fc: 14200002 */ bnez $at,.NB0f109108
/* f109100: 24e766f0 */ addiu $a3,$a3,0x66f0
/* f109104: 24060fff */ addiu $a2,$zero,0xfff
.NB0f109108:
/* f109108: 3c03800a */ lui $v1,0x800a
/* f10910c: 906327aa */ lbu $v1,0x27aa($v1)
/* f109110: 3c0c800a */ lui $t4,0x800a
/* f109114: 8d8c27a8 */ lw $t4,0x27a8($t4)
/* f109118: 00034880 */ sll $t1,$v1,0x2
/* f10911c: 01234823 */ subu $t1,$t1,$v1
/* f109120: 00094840 */ sll $t1,$t1,0x1
/* f109124: 000c5e42 */ srl $t3,$t4,0x19
/* f109128: 000b6840 */ sll $t5,$t3,0x1
/* f10912c: 00e95021 */ addu $t2,$a3,$t1
/* f109130: 014d2021 */ addu $a0,$t2,$t5
/* f109134: 94820020 */ lhu $v0,0x20($a0)
/* f109138: 00c2082b */ sltu $at,$a2,$v0
/* f10913c: 54200004 */ bnezl $at,.NB0f109150
/* f109140: a4860020 */ sh $a2,0x20($a0)
/* f109144: 54400003 */ bnezl $v0,.NB0f109154
/* f109148: 28610011 */ slti $at,$v1,0x11
/* f10914c: a4860020 */ sh $a2,0x20($a0)
.NB0f109150:
/* f109150: 28610011 */ slti $at,$v1,0x11
.NB0f109154:
/* f109154: 1020000c */ beqz $at,.NB0f109188
/* f109158: 24630001 */ addiu $v1,$v1,0x1
/* f10915c: 306e00ff */ andi $t6,$v1,0xff
/* f109160: 29c10011 */ slti $at,$t6,0x11
/* f109164: 14200003 */ bnez $at,.NB0f109174
/* f109168: a0e3000c */ sb $v1,0xc($a3)
/* f10916c: 240f0010 */ addiu $t7,$zero,0x10
/* f109170: a0ef000c */ sb $t7,0xc($a3)
.NB0f109174:
/* f109174: 90e9000b */ lbu $t1,0xb($a3)
/* f109178: 000340c0 */ sll $t0,$v1,0x3
/* f10917c: 312cff07 */ andi $t4,$t1,0xff07
/* f109180: 010c5825 */ or $t3,$t0,$t4
/* f109184: a0eb000b */ sb $t3,0xb($a3)
.NB0f109188:
/* f109188: 0fc65417 */ jal 0xf19505c
/* f10918c: 00000000 */ sll $zero,$zero,0x0
/* f109190: 3c0a800a */ lui $t2,0x800a
/* f109194: 914a27a9 */ lbu $t2,0x27a9($t2)
/* f109198: 2401002a */ addiu $at,$zero,0x2a
/* f10919c: 3c03800a */ lui $v1,0x800a
/* f1091a0: 15410009 */ bne $t2,$at,.NB0f1091c8
/* f1091a4: 2463681b */ addiu $v1,$v1,0x681b
/* f1091a8: 906d0000 */ lbu $t5,0x0($v1)
/* f1091ac: 24020001 */ addiu $v0,$zero,0x1
/* f1091b0: 3c01800a */ lui $at,0x800a
/* f1091b4: 15a00004 */ bnez $t5,.NB0f1091c8
/* f1091b8: 00000000 */ sll $zero,$zero,0x0
/* f1091bc: a0620000 */ sb $v0,0x0($v1)
/* f1091c0: 0fc42b8c */ jal 0xf10ae30
/* f1091c4: a022681c */ sb $v0,0x681c($at)
.NB0f1091c8:
/* f1091c8: 3c04800a */ lui $a0,0x800a
/* f1091cc: 248467b0 */ addiu $a0,$a0,0x67b0
/* f1091d0: 00002825 */ or $a1,$zero,$zero
/* f1091d4: 0fc41358 */ jal 0xf104d60
/* f1091d8: 00003025 */ or $a2,$zero,$zero
/* f1091dc: 3c03800a */ lui $v1,0x800a
/* f1091e0: 8c635eb4 */ lw $v1,0x5eb4($v1)
.NB0f1091e4:
/* f1091e4: 24010001 */ addiu $at,$zero,0x1
.NB0f1091e8:
/* f1091e8: 54610008 */ bnel $v1,$at,.NB0f10920c
/* f1091ec: 8fbf0014 */ lw $ra,0x14($sp)
/* f1091f0: 0fc59ebc */ jal 0xf167af0
/* f1091f4: 24040001 */ addiu $a0,$zero,0x1
/* f1091f8: 3c0f800a */ lui $t7,0x800a
/* f1091fc: 8defe944 */ lw $t7,-0x16bc($t7)
/* f109200: 240e0003 */ addiu $t6,$zero,0x3
/* f109204: adee1a24 */ sw $t6,0x1a24($t7)
/* f109208: 8fbf0014 */ lw $ra,0x14($sp)
.NB0f10920c:
/* f10920c: 27bd0018 */ addiu $sp,$sp,0x18
/* f109210: 03e00008 */ jr $ra
/* f109214: 00000000 */ sll $zero,$zero,0x0
);
#endif
// Mismatch because address of var800a2328[3] is calcualted differently
//void endscreenPrepare(void)
@@ -1541,9 +2088,12 @@ void soloPushCoopModeEndscreen(void)
g_MpPlayerNum = g_Vars.currentplayerstats->mpindex;
#if VERSION >= VERSION_NTSC_1_0
g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo = 0;
g_Menus[g_MpPlayerNum].data.endscreen.isfirstcompletion = false;
g_Menus[g_MpPlayerNum].data.endscreen.stageindex = g_MissionConfig.stageindex;
#endif
g_Menus[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
if ((g_Vars.bond->isdead && g_Vars.coop->isdead)
@@ -1574,6 +2124,7 @@ void soloPushCoopModeEndscreen(void)
g_MpPlayerNum = prevplayernum;
}
#if VERSION >= VERSION_NTSC_1_0
/**
* This function is misnamed. It pushes the menu after the endscreen
* (ie. retry, next mission or continue), and it looks like it might be for coop
@@ -1602,6 +2153,76 @@ void soloPushSoloModeEndscreen(void)
g_MpPlayerNum = prevplayernum;
}
#else
GLOBAL_ASM(
glabel soloPushSoloModeEndscreen
/* f10938c: 0000c0c0 */ sll $t8,$zero,0x3
/* f109390: 0300c023 */ subu $t8,$t8,$zero
/* f109394: 0018c0c0 */ sll $t8,$t8,0x3
/* f109398: 0300c023 */ subu $t8,$t8,$zero
/* f10939c: 3c048007 */ lui $a0,0x8007
/* f1093a0: 0018c100 */ sll $t8,$t8,0x4
/* f1093a4: 24843af0 */ addiu $a0,$a0,0x3af0
/* f1093a8: 0300c023 */ subu $t8,$t8,$zero
/* f1093ac: 8c8e0000 */ lw $t6,0x0($a0)
/* f1093b0: 0018c080 */ sll $t8,$t8,0x2
/* f1093b4: 3c01800a */ lui $at,0x800a
/* f1093b8: 3c03800a */ lui $v1,0x800a
/* f1093bc: ac800000 */ sw $zero,0x0($a0)
/* f1093c0: 00380821 */ addu $at,$at,$t8
/* f1093c4: 2463e6c0 */ addiu $v1,$v1,-6464
/* f1093c8: a0202f57 */ sb $zero,0x2f57($at)
/* f1093cc: 8c6202a0 */ lw $v0,0x2a0($v1)
/* f1093d0: 27bdffe0 */ addiu $sp,$sp,-32
/* f1093d4: afbf0014 */ sw $ra,0x14($sp)
/* f1093d8: afae001c */ sw $t6,0x1c($sp)
/* f1093dc: 8c5900d8 */ lw $t9,0xd8($v0)
/* f1093e0: 53200006 */ beqzl $t9,.NB0f1093fc
/* f1093e4: 8c4a048c */ lw $t2,0x48c($v0)
/* f1093e8: 8c6802a4 */ lw $t0,0x2a4($v1)
/* f1093ec: 8d0900d8 */ lw $t1,0xd8($t0)
/* f1093f0: 1520000c */ bnez $t1,.NB0f109424
/* f1093f4: 00000000 */ sll $zero,$zero,0x0
/* f1093f8: 8c4a048c */ lw $t2,0x48c($v0)
.NB0f1093fc:
/* f1093fc: 15400009 */ bnez $t2,.NB0f109424
/* f109400: 00000000 */ sll $zero,$zero,0x0
/* f109404: 8c6b02a4 */ lw $t3,0x2a4($v1)
/* f109408: 8d6c048c */ lw $t4,0x48c($t3)
/* f10940c: 15800005 */ bnez $t4,.NB0f109424
/* f109410: 00000000 */ sll $zero,$zero,0x0
/* f109414: 0fc24f11 */ jal 0xf093c44
/* f109418: 00000000 */ sll $zero,$zero,0x0
/* f10941c: 14400009 */ bnez $v0,.NB0f109444
/* f109420: 00000000 */ sll $zero,$zero,0x0
.NB0f109424:
/* f109424: 0fc42203 */ jal 0xf10880c
/* f109428: 00000000 */ sll $zero,$zero,0x0
/* f10942c: 3c048007 */ lui $a0,0x8007
/* f109430: 24847a00 */ addiu $a0,$a0,0x7a00
/* f109434: 0fc3d326 */ jal 0xf0f4c98
/* f109438: 24050009 */ addiu $a1,$zero,0x9
/* f10943c: 1000000b */ beqz $zero,.NB0f10946c
/* f109440: 8fbf0014 */ lw $ra,0x14($sp)
.NB0f109444:
/* f109444: 0fc421db */ jal 0xf10876c
/* f109448: 00000000 */ sll $zero,$zero,0x0
/* f10944c: 50400007 */ beqzl $v0,.NB0f10946c
/* f109450: 8fbf0014 */ lw $ra,0x14($sp)
/* f109454: 0fc42203 */ jal 0xf10880c
/* f109458: afa20018 */ sw $v0,0x18($sp)
/* f10945c: 8fa40018 */ lw $a0,0x18($sp)
/* f109460: 0fc3d326 */ jal 0xf0f4c98
/* f109464: 24050009 */ addiu $a1,$zero,0x9
/* f109468: 8fbf0014 */ lw $ra,0x14($sp)
.NB0f10946c:
/* f10946c: 8fad001c */ lw $t5,0x1c($sp)
/* f109470: 3c018007 */ lui $at,0x8007
/* f109474: 27bd0020 */ addiu $sp,$sp,0x20
/* f109478: 03e00008 */ jr $ra
/* f10947c: ac2d3af0 */ sw $t5,0x3af0($at)
);
#endif
void soloPushAntiModeEndscreen(void)
{
@@ -1611,9 +2232,12 @@ void soloPushAntiModeEndscreen(void)
g_MpPlayerNum = g_Vars.currentplayerstats->mpindex;
#if VERSION >= VERSION_NTSC_1_0
g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo = 0;
g_Menus[g_MpPlayerNum].data.endscreen.isfirstcompletion = false;
g_Menus[g_MpPlayerNum].data.endscreen.stageindex = g_MissionConfig.stageindex;
#endif
g_Menus[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
if (g_Vars.currentplayer == g_Vars.bond) {
+766 -1
View File
@@ -2180,7 +2180,7 @@ glabel var7f1b68a0pf
/* f12c6d8: 03e00008 */ jr $ra
/* f12c6dc: 27bd03a8 */ addiu $sp,$sp,0x3a8
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f12b0e0
.late_rodata
@@ -2948,6 +2948,771 @@ glabel var7f1b559c
/* f12bbd4: 03e00008 */ jr $ra
/* f12bbd8: 27bd03a8 */ addiu $sp,$sp,0x3a8
);
#else
GLOBAL_ASM(
glabel func0f12b0e0
.late_rodata
glabel var7f1b5590
.word 0x3f333333
glabel var7f1b5594
.word 0x3e99999a
glabel var7f1b5598
.word 0x3d4ccccd
glabel var7f1b559c
.word 0x3d4ccccd
.text
/* f125c7c: 27bdfc58 */ addiu $sp,$sp,-936
/* f125c80: afbf0074 */ sw $ra,0x74($sp)
/* f125c84: afbe0070 */ sw $s8,0x70($sp)
/* f125c88: afb7006c */ sw $s7,0x6c($sp)
/* f125c8c: afb60068 */ sw $s6,0x68($sp)
/* f125c90: afb50064 */ sw $s5,0x64($sp)
/* f125c94: afb40060 */ sw $s4,0x60($sp)
/* f125c98: afb3005c */ sw $s3,0x5c($sp)
/* f125c9c: afb20058 */ sw $s2,0x58($sp)
/* f125ca0: afb10054 */ sw $s1,0x54($sp)
/* f125ca4: afb00050 */ sw $s0,0x50($sp)
/* f125ca8: f7be0048 */ sdc1 $f30,0x48($sp)
/* f125cac: f7bc0040 */ sdc1 $f28,0x40($sp)
/* f125cb0: f7ba0038 */ sdc1 $f26,0x38($sp)
/* f125cb4: f7b80030 */ sdc1 $f24,0x30($sp)
/* f125cb8: f7b60028 */ sdc1 $f22,0x28($sp)
/* f125cbc: f7b40020 */ sdc1 $f20,0x20($sp)
/* f125cc0: 8c8e0004 */ lw $t6,0x4($a0)
/* f125cc4: 3c088008 */ lui $t0,0x8008
/* f125cc8: 25080d18 */ addiu $t0,$t0,0xd18
/* f125ccc: afae03a0 */ sw $t6,0x3a0($sp)
/* f125cd0: 81d803cc */ lb $t8,0x3cc($t6)
/* f125cd4: 3c1e800a */ lui $s8,0x800a
/* f125cd8: 27dee6c0 */ addiu $s8,$s8,-6464
/* f125cdc: 0018c880 */ sll $t9,$t8,0x2
/* f125ce0: 0338c823 */ subu $t9,$t9,$t8
/* f125ce4: 0019c880 */ sll $t9,$t9,0x2
/* f125ce8: 0338c823 */ subu $t9,$t9,$t8
/* f125cec: 0019c880 */ sll $t9,$t9,0x2
/* f125cf0: 03284821 */ addu $t1,$t9,$t0
/* f125cf4: afa9039c */ sw $t1,0x39c($sp)
/* f125cf8: 85c203c8 */ lh $v0,0x3c8($t6)
/* f125cfc: 8fcb0038 */ lw $t3,0x38($s8)
/* f125d00: 0080b825 */ or $s7,$a0,$zero
/* f125d04: 284a0001 */ slti $t2,$v0,0x1
/* f125d08: 19600286 */ blez $t3,.NB0f126724
/* f125d0c: afaa0194 */ sw $t2,0x194($sp)
/* f125d10: 4480e000 */ mtc1 $zero,$f28
/* f125d14: c5240028 */ lwc1 $f4,0x28($t1)
/* f125d18: 461c203e */ c.le.s $f4,$f28
/* f125d1c: 00000000 */ sll $zero,$zero,0x0
/* f125d20: 45030281 */ bc1tl .NB0f126728
/* f125d24: 8fbf0074 */ lw $ra,0x74($sp)
/* f125d28: 11400006 */ beqz $t2,.NB0f125d44
/* f125d2c: 8fb9039c */ lw $t9,0x39c($sp)
/* f125d30: 8538001c */ lh $t8,0x1c($t1)
/* f125d34: c53a0018 */ lwc1 $f26,0x18($t1)
/* f125d38: 44983000 */ mtc1 $t8,$f6
/* f125d3c: 10000011 */ beqz $zero,.NB0f125d84
/* f125d40: 46803320 */ cvt.s.w $f12,$f6
.NB0f125d44:
/* f125d44: 44822000 */ mtc1 $v0,$f4
/* f125d48: c7200014 */ lwc1 $f0,0x14($t9)
/* f125d4c: c7220018 */ lwc1 $f2,0x18($t9)
/* f125d50: 8728001c */ lh $t0,0x1c($t9)
/* f125d54: 468021a0 */ cvt.s.w $f6,$f4
/* f125d58: 44884000 */ mtc1 $t0,$f8
/* f125d5c: 46001281 */ sub.s $f10,$f2,$f0
/* f125d60: 46804320 */ cvt.s.w $f12,$f8
/* f125d64: 46065202 */ mul.s $f8,$f10,$f6
/* f125d68: 460c4103 */ div.s $f4,$f8,$f12
/* f125d6c: 46040680 */ add.s $f26,$f0,$f4
/* f125d70: 461a103c */ c.lt.s $f2,$f26
/* f125d74: 00000000 */ sll $zero,$zero,0x0
/* f125d78: 45020003 */ bc1fl .NB0f125d88
/* f125d7c: 8fa9039c */ lw $t1,0x39c($sp)
/* f125d80: 46001686 */ mov.s $f26,$f2
.NB0f125d84:
/* f125d84: 8fa9039c */ lw $t1,0x39c($sp)
.NB0f125d88:
/* f125d88: 3c0140e0 */ lui $at,0x40e0
/* f125d8c: 44815000 */ mtc1 $at,$f10
/* f125d90: c5260020 */ lwc1 $f6,0x20($t1)
/* f125d94: 46065202 */ mul.s $f8,$f10,$f6
/* f125d98: 46086100 */ add.s $f4,$f12,$f8
/* f125d9c: 4600228d */ trunc.w.s $f10,$f4
/* f125da0: 440a5000 */ mfc1 $t2,$f10
/* f125da4: 00000000 */ sll $zero,$zero,0x0
/* f125da8: 0142082a */ slt $at,$t2,$v0
/* f125dac: 5420025e */ bnezl $at,.NB0f126728
/* f125db0: 8fbf0074 */ lw $ra,0x74($sp)
/* f125db4: 86e20028 */ lh $v0,0x28($s7)
/* f125db8: 2401ffff */ addiu $at,$zero,-1
/* f125dbc: 02e0b025 */ or $s6,$s7,$zero
/* f125dc0: 50410015 */ beql $v0,$at,.NB0f125e18
/* f125dc4: 2401ffff */ addiu $at,$zero,-1
.NB0f125dc8:
/* f125dc8: 0c004d84 */ jal 0x13610
/* f125dcc: 00000000 */ sll $zero,$zero,0x0
/* f125dd0: 304b07ff */ andi $t3,$v0,0x7ff
/* f125dd4: 2d6100f1 */ sltiu $at,$t3,0xf1
/* f125dd8: 10200008 */ beqz $at,.NB0f125dfc
/* f125ddc: 8fac039c */ lw $t4,0x39c($sp)
/* f125de0: c5860000 */ lwc1 $f6,0x0($t4)
/* f125de4: 86c40028 */ lh $a0,0x28($s6)
/* f125de8: 240600ff */ addiu $a2,$zero,0xff
/* f125dec: 4600320d */ trunc.w.s $f8,$f6
/* f125df0: 44054000 */ mfc1 $a1,$f8
/* f125df4: 0fc01035 */ jal 0xf0040d4
/* f125df8: 00000000 */ sll $zero,$zero,0x0
.NB0f125dfc:
/* f125dfc: 86ce002a */ lh $t6,0x2a($s6)
/* f125e00: 2401ffff */ addiu $at,$zero,-1
/* f125e04: 26d60002 */ addiu $s6,$s6,0x2
/* f125e08: 15c1ffef */ bne $t6,$at,.NB0f125dc8
/* f125e0c: 00000000 */ sll $zero,$zero,0x0
/* f125e10: 86e20028 */ lh $v0,0x28($s7)
/* f125e14: 2401ffff */ addiu $at,$zero,-1
.NB0f125e18:
/* f125e18: 10410049 */ beq $v0,$at,.NB0f125f40
/* f125e1c: 02e0b025 */ or $s6,$s7,$zero
/* f125e20: 86e20028 */ lh $v0,0x28($s7)
/* f125e24: 27b50158 */ addiu $s5,$sp,0x158
/* f125e28: 27b4014c */ addiu $s4,$sp,0x14c
/* f125e2c: 27b30164 */ addiu $s3,$sp,0x164
.NB0f125e30:
/* f125e30: 1040003e */ beqz $v0,.NB0f125f2c
/* f125e34: 00408825 */ or $s1,$v0,$zero
/* f125e38: 0002c8c0 */ sll $t9,$v0,0x3
/* f125e3c: 0322c821 */ addu $t9,$t9,$v0
/* f125e40: 3c09800b */ lui $t1,0x800b
/* f125e44: 8d299444 */ lw $t1,-0x6bbc($t1)
/* f125e48: 0019c880 */ sll $t9,$t9,0x2
/* f125e4c: 3c18800b */ lui $t8,0x800b
/* f125e50: 00027880 */ sll $t7,$v0,0x2
/* f125e54: 8f1890a8 */ lw $t8,-0x6f58($t8)
/* f125e58: 0322c823 */ subu $t9,$t9,$v0
/* f125e5c: 01e27821 */ addu $t7,$t7,$v0
/* f125e60: 000f7880 */ sll $t7,$t7,0x2
/* f125e64: 0019c880 */ sll $t9,$t9,0x2
/* f125e68: 012f1021 */ addu $v0,$t1,$t7
/* f125e6c: 03194021 */ addu $t0,$t8,$t9
/* f125e70: 81120008 */ lb $s2,0x8($t0)
/* f125e74: c6f40008 */ lwc1 $f20,0x8($s7)
/* f125e78: c6f6000c */ lwc1 $f22,0xc($s7)
/* f125e7c: c6f80010 */ lwc1 $f24,0x10($s7)
/* f125e80: c4440004 */ lwc1 $f4,0x4($v0)
/* f125e84: c44a0008 */ lwc1 $f10,0x8($v0)
/* f125e88: c446000c */ lwc1 $f6,0xc($v0)
/* f125e8c: 00008025 */ or $s0,$zero,$zero
/* f125e90: 4604a501 */ sub.s $f20,$f20,$f4
/* f125e94: 460ab581 */ sub.s $f22,$f22,$f10
/* f125e98: 1a400024 */ blez $s2,.NB0f125f2c
/* f125e9c: 4606c601 */ sub.s $f24,$f24,$f6
/* f125ea0: 02202025 */ or $a0,$s1,$zero
.NB0f125ea4:
/* f125ea4: 0fc003d4 */ jal 0xf000f50
/* f125ea8: 02002825 */ or $a1,$s0,$zero
/* f125eac: 1040001c */ beqz $v0,.NB0f125f20
/* f125eb0: 02202025 */ or $a0,$s1,$zero
/* f125eb4: 0fc003e5 */ jal 0xf000f94
/* f125eb8: 02002825 */ or $a1,$s0,$zero
/* f125ebc: 10400018 */ beqz $v0,.NB0f125f20
/* f125ec0: 02202025 */ or $a0,$s1,$zero
/* f125ec4: 02002825 */ or $a1,$s0,$zero
/* f125ec8: 0fc0037f */ jal 0xf000dfc
/* f125ecc: 02603025 */ or $a2,$s3,$zero
/* f125ed0: 10400013 */ beqz $v0,.NB0f125f20
/* f125ed4: c7a80164 */ lwc1 $f8,0x164($sp)
/* f125ed8: 46144101 */ sub.s $f4,$f8,$f20
/* f125edc: c7a8016c */ lwc1 $f8,0x16c($sp)
/* f125ee0: c7aa0168 */ lwc1 $f10,0x168($sp)
/* f125ee4: e7ba0158 */ swc1 $f26,0x158($sp)
/* f125ee8: e7a4014c */ swc1 $f4,0x14c($sp)
/* f125eec: 46184101 */ sub.s $f4,$f8,$f24
/* f125ef0: e7ba015c */ swc1 $f26,0x15c($sp)
/* f125ef4: e7ba0160 */ swc1 $f26,0x160($sp)
/* f125ef8: 46165181 */ sub.s $f6,$f10,$f22
/* f125efc: e7a40154 */ swc1 $f4,0x154($sp)
/* f125f00: 02802025 */ or $a0,$s4,$zero
/* f125f04: 02a02825 */ or $a1,$s5,$zero
/* f125f08: 0fc5c81a */ jal 0xf172068
/* f125f0c: e7a60150 */ swc1 $f6,0x150($sp)
/* f125f10: 10400003 */ beqz $v0,.NB0f125f20
/* f125f14: 02202025 */ or $a0,$s1,$zero
/* f125f18: 0fc00704 */ jal 0xf001c10
/* f125f1c: 02002825 */ or $a1,$s0,$zero
.NB0f125f20:
/* f125f20: 26100001 */ addiu $s0,$s0,0x1
/* f125f24: 5612ffdf */ bnel $s0,$s2,.NB0f125ea4
/* f125f28: 02202025 */ or $a0,$s1,$zero
.NB0f125f2c:
/* f125f2c: 86c2002a */ lh $v0,0x2a($s6)
/* f125f30: 2401ffff */ addiu $at,$zero,-1
/* f125f34: 26d60002 */ addiu $s6,$s6,0x2
/* f125f38: 1441ffbd */ bne $v0,$at,.NB0f125e30
/* f125f3c: 00000000 */ sll $zero,$zero,0x0
.NB0f125f40:
/* f125f40: 27b00198 */ addiu $s0,$sp,0x198
/* f125f44: 02002825 */ or $a1,$s0,$zero
/* f125f48: 26e40028 */ addiu $a0,$s7,0x28
/* f125f4c: 0fc1947a */ jal 0xf0651e8
/* f125f50: 24060100 */ addiu $a2,$zero,0x100
/* f125f54: 87aa0198 */ lh $t2,0x198($sp)
/* f125f58: 0200a025 */ or $s4,$s0,$zero
/* f125f5c: 27ab0198 */ addiu $t3,$sp,0x198
/* f125f60: 054001f0 */ bltz $t2,.NB0f126724
/* f125f64: 3c013f80 */ lui $at,0x3f80
/* f125f68: 4481f000 */ mtc1 $at,$f30
/* f125f6c: 85620000 */ lh $v0,0x0($t3)
/* f125f70: 24160004 */ addiu $s6,$zero,0x4
/* f125f74: 24150003 */ addiu $s5,$zero,0x3
/* f125f78: 8fae03a0 */ lw $t6,0x3a0($sp)
.NB0f125f7c:
/* f125f7c: 8fcd0338 */ lw $t5,0x338($s8)
/* f125f80: 000260c0 */ sll $t4,$v0,0x3
/* f125f84: 8dd80004 */ lw $t8,0x4($t6)
/* f125f88: 01826021 */ addu $t4,$t4,$v0
/* f125f8c: 000c60c0 */ sll $t4,$t4,0x3
/* f125f90: 018d8021 */ addu $s0,$t4,$t5
/* f125f94: 521801e0 */ beql $s0,$t8,.NB0f126718
/* f125f98: 86820002 */ lh $v0,0x2($s4)
/* f125f9c: 86190002 */ lh $t9,0x2($s0)
/* f125fa0: 572001dd */ bnezl $t9,.NB0f126718
/* f125fa4: 86820002 */ lh $v0,0x2($s4)
/* f125fa8: 92020000 */ lbu $v0,0x0($s0)
/* f125fac: 24010001 */ addiu $at,$zero,0x1
/* f125fb0: 50410006 */ beql $v0,$at,.NB0f125fcc
/* f125fb4: c60a0008 */ lwc1 $f10,0x8($s0)
/* f125fb8: 12c20003 */ beq $s6,$v0,.NB0f125fc8
/* f125fbc: 24010002 */ addiu $at,$zero,0x2
/* f125fc0: 14410102 */ bne $v0,$at,.NB0f1263cc
/* f125fc4: 00000000 */ sll $zero,$zero,0x0
.NB0f125fc8:
/* f125fc8: c60a0008 */ lwc1 $f10,0x8($s0)
.NB0f125fcc:
/* f125fcc: c6e60008 */ lwc1 $f6,0x8($s7)
/* f125fd0: c608000c */ lwc1 $f8,0xc($s0)
/* f125fd4: c6e4000c */ lwc1 $f4,0xc($s7)
/* f125fd8: 46065501 */ sub.s $f20,$f10,$f6
/* f125fdc: c6e60010 */ lwc1 $f6,0x10($s7)
/* f125fe0: c60a0010 */ lwc1 $f10,0x10($s0)
/* f125fe4: 8e120004 */ lw $s2,0x4($s0)
/* f125fe8: 461aa03e */ c.le.s $f20,$f26
/* f125fec: 00008825 */ or $s1,$zero,$zero
/* f125ff0: 46044581 */ sub.s $f22,$f8,$f4
/* f125ff4: 45000024 */ bc1f .NB0f126088
/* f125ff8: 46065601 */ sub.s $f24,$f10,$f6
/* f125ffc: 4600d007 */ neg.s $f0,$f26
/* f126000: 4614003e */ c.le.s $f0,$f20
/* f126004: 00000000 */ sll $zero,$zero,0x0
/* f126008: 4500001f */ bc1f .NB0f126088
/* f12600c: 00000000 */ sll $zero,$zero,0x0
/* f126010: 461ab03e */ c.le.s $f22,$f26
/* f126014: 00000000 */ sll $zero,$zero,0x0
/* f126018: 4500001b */ bc1f .NB0f126088
/* f12601c: 00000000 */ sll $zero,$zero,0x0
/* f126020: 4616003e */ c.le.s $f0,$f22
/* f126024: 00000000 */ sll $zero,$zero,0x0
/* f126028: 45000017 */ bc1f .NB0f126088
/* f12602c: 00000000 */ sll $zero,$zero,0x0
/* f126030: 461ac03e */ c.le.s $f24,$f26
/* f126034: 00000000 */ sll $zero,$zero,0x0
/* f126038: 45000013 */ bc1f .NB0f126088
/* f12603c: 00000000 */ sll $zero,$zero,0x0
/* f126040: 4618003e */ c.le.s $f0,$f24
/* f126044: 02402025 */ or $a0,$s2,$zero
/* f126048: 27a50130 */ addiu $a1,$sp,0x130
/* f12604c: 4500000e */ bc1f .NB0f126088
/* f126050: 00000000 */ sll $zero,$zero,0x0
/* f126054: 0fc24252 */ jal 0xf090948
/* f126058: 27a60124 */ addiu $a2,$sp,0x124
/* f12605c: 10400009 */ beqz $v0,.NB0f126084
/* f126060: 8fa403a0 */ lw $a0,0x3a0($sp)
/* f126064: 02002825 */ or $a1,$s0,$zero
/* f126068: 27a60130 */ addiu $a2,$sp,0x130
/* f12606c: 0fc496be */ jal 0xf125af8
/* f126070: 27a70124 */ addiu $a3,$sp,0x124
/* f126074: 10400004 */ beqz $v0,.NB0f126088
/* f126078: 00000000 */ sll $zero,$zero,0x0
/* f12607c: 10000002 */ beqz $zero,.NB0f126088
/* f126080: 24110001 */ addiu $s1,$zero,0x1
.NB0f126084:
/* f126084: 24110001 */ addiu $s1,$zero,0x1
.NB0f126088:
/* f126088: 1220000c */ beqz $s1,.NB0f1260bc
/* f12608c: 00000000 */ sll $zero,$zero,0x0
/* f126090: 92080000 */ lbu $t0,0x0($s0)
/* f126094: 16c80009 */ bne $s6,$t0,.NB0f1260bc
/* f126098: 00000000 */ sll $zero,$zero,0x0
/* f12609c: 8e020004 */ lw $v0,0x4($s0)
/* f1260a0: 10400006 */ beqz $v0,.NB0f1260bc
/* f1260a4: 00000000 */ sll $zero,$zero,0x0
/* f1260a8: 9049005c */ lbu $t1,0x5c($v0)
/* f1260ac: 24010057 */ addiu $at,$zero,0x57
/* f1260b0: 15210002 */ bne $t1,$at,.NB0f1260bc
/* f1260b4: 00000000 */ sll $zero,$zero,0x0
/* f1260b8: a4400062 */ sh $zero,0x62($v0)
.NB0f1260bc:
/* f1260bc: 12200195 */ beqz $s1,.NB0f126714
/* f1260c0: 3c017f1b */ lui $at,0x7f1b
/* f1260c4: 461aa003 */ div.s $f0,$f20,$f26
/* f1260c8: 8faf039c */ lw $t7,0x39c($sp)
/* f1260cc: 8fc3029c */ lw $v1,0x29c($s8)
/* f1260d0: 8faa03a0 */ lw $t2,0x3a0($sp)
/* f1260d4: 8fae0194 */ lw $t6,0x194($sp)
/* f1260d8: c5f00028 */ lwc1 $f16,0x28($t7)
/* f1260dc: 461c003c */ c.lt.s $f0,$f28
/* f1260e0: 46000086 */ mov.s $f2,$f0
/* f1260e4: 45020003 */ bc1fl .NB0f1260f4
/* f1260e8: 461ab003 */ div.s $f0,$f22,$f26
/* f1260ec: 46000087 */ neg.s $f2,$f0
/* f1260f0: 461ab003 */ div.s $f0,$f22,$f26
.NB0f1260f4:
/* f1260f4: 4602f081 */ sub.s $f2,$f30,$f2
/* f1260f8: 461c003c */ c.lt.s $f0,$f28
/* f1260fc: 46000306 */ mov.s $f12,$f0
/* f126100: 45020003 */ bc1fl .NB0f126110
/* f126104: 461ac003 */ div.s $f0,$f24,$f26
/* f126108: 46000307 */ neg.s $f12,$f0
/* f12610c: 461ac003 */ div.s $f0,$f24,$f26
.NB0f126110:
/* f126110: 460cf301 */ sub.s $f12,$f30,$f12
/* f126114: 461c003c */ c.lt.s $f0,$f28
/* f126118: 46000386 */ mov.s $f14,$f0
/* f12611c: 45020003 */ bc1fl .NB0f12612c
/* f126120: 4602603c */ c.lt.s $f12,$f2
/* f126124: 46000387 */ neg.s $f14,$f0
/* f126128: 4602603c */ c.lt.s $f12,$f2
.NB0f12612c:
/* f12612c: 46001506 */ mov.s $f20,$f2
/* f126130: 460ef381 */ sub.s $f14,$f30,$f14
/* f126134: 45020003 */ bc1fl .NB0f126144
/* f126138: 4614703c */ c.lt.s $f14,$f20
/* f12613c: 46006506 */ mov.s $f20,$f12
/* f126140: 4614703c */ c.lt.s $f14,$f20
.NB0f126144:
/* f126144: 00000000 */ sll $zero,$zero,0x0
/* f126148: 45000002 */ bc1f .NB0f126154
/* f12614c: 00000000 */ sll $zero,$zero,0x0
/* f126150: 46007506 */ mov.s $f20,$f14
.NB0f126154:
/* f126154: c428facc */ lwc1 $f8,-0x534($at)
/* f126158: 3c017f1b */ lui $at,0x7f1b
/* f12615c: c42afad0 */ lwc1 $f10,-0x530($at)
/* f126160: 4608a102 */ mul.s $f4,$f20,$f8
/* f126164: 460a2180 */ add.s $f6,$f4,$f10
/* f126168: 46103502 */ mul.s $f20,$f6,$f16
/* f12616c: 04600008 */ bltz $v1,.NB0f126190
/* f126170: 00000000 */ sll $zero,$zero,0x0
/* f126174: 814b03ce */ lb $t3,0x3ce($t2)
/* f126178: 146b0005 */ bne $v1,$t3,.NB0f126190
/* f12617c: 00000000 */ sll $zero,$zero,0x0
/* f126180: 8e4c000c */ lw $t4,0xc($s2)
/* f126184: 318d0001 */ andi $t5,$t4,0x1
/* f126188: 55a00163 */ bnezl $t5,.NB0f126718
/* f12618c: 86820002 */ lh $v0,0x2($s4)
.NB0f126190:
/* f126190: 11c00060 */ beqz $t6,.NB0f126314
/* f126194: 02402025 */ or $a0,$s2,$zero
/* f126198: 0fc19653 */ jal 0xf06594c
/* f12619c: 02e02825 */ or $a1,$s7,$zero
/* f1261a0: 8e420040 */ lw $v0,0x40($s2)
/* f1261a4: 30581000 */ andi $t8,$v0,0x1000
/* f1261a8: 57000023 */ bnezl $t8,.NB0f126238
/* f1261ac: 00025140 */ sll $t2,$v0,0x5
/* f1261b0: 8e59000c */ lw $t9,0xc($s2)
/* f1261b4: 3c010020 */ lui $at,0x20
/* f1261b8: 34210400 */ ori $at,$at,0x400
/* f1261bc: 03214024 */ and $t0,$t9,$at
/* f1261c0: 5500001d */ bnezl $t0,.NB0f126238
/* f1261c4: 00025140 */ sll $t2,$v0,0x5
/* f1261c8: 0c004d84 */ jal 0x13610
/* f1261cc: 00000000 */ sll $zero,$zero,0x0
/* f1261d0: 44824000 */ mtc1 $v0,$f8
/* f1261d4: 02002025 */ or $a0,$s0,$zero
/* f1261d8: 04410005 */ bgez $v0,.NB0f1261f0
/* f1261dc: 46804120 */ cvt.s.w $f4,$f8
/* f1261e0: 3c014f80 */ lui $at,0x4f80
/* f1261e4: 44815000 */ mtc1 $at,$f10
/* f1261e8: 00000000 */ sll $zero,$zero,0x0
/* f1261ec: 460a2100 */ add.s $f4,$f4,$f10
.NB0f1261f0:
/* f1261f0: 3c012f80 */ lui $at,0x2f80
/* f1261f4: 44813000 */ mtc1 $at,$f6
/* f1261f8: 3c013f00 */ lui $at,0x3f00
/* f1261fc: 44815000 */ mtc1 $at,$f10
/* f126200: 46062202 */ mul.s $f8,$f4,$f6
/* f126204: 8fa903a0 */ lw $t1,0x3a0($sp)
/* f126208: 26060008 */ addiu $a2,$s0,0x8
/* f12620c: 24070022 */ addiu $a3,$zero,0x22
/* f126210: 812f03ce */ lb $t7,0x3ce($t1)
/* f126214: 460a4102 */ mul.s $f4,$f8,$f10
/* f126218: afaf0010 */ sw $t7,0x10($sp)
/* f12621c: 461e2180 */ add.s $f6,$f4,$f30
/* f126220: 46143202 */ mul.s $f8,$f6,$f20
/* f126224: 44054000 */ mfc1 $a1,$f8
/* f126228: 0fc20e40 */ jal 0xf083900
/* f12622c: 00000000 */ sll $zero,$zero,0x0
/* f126230: 8e420040 */ lw $v0,0x40($s2)
/* f126234: 00025140 */ sll $t2,$v0,0x5
.NB0f126238:
/* f126238: 05400136 */ bltz $t2,.NB0f126714
/* f12623c: 00025900 */ sll $t3,$v0,0x4
/* f126240: 05620135 */ bltzl $t3,.NB0f126718
/* f126244: 86820002 */ lh $v0,0x2($s4)
/* f126248: 8e4c0010 */ lw $t4,0x10($s2)
/* f12624c: 318d0001 */ andi $t5,$t4,0x1
/* f126250: 51a00131 */ beqzl $t5,.NB0f126718
/* f126254: 86820002 */ lh $v0,0x2($s4)
/* f126258: c60a0008 */ lwc1 $f10,0x8($s0)
/* f12625c: c6e40008 */ lwc1 $f4,0x8($s7)
/* f126260: e7bc00f8 */ swc1 $f28,0xf8($sp)
/* f126264: 46045181 */ sub.s $f6,$f10,$f4
/* f126268: e7a600f4 */ swc1 $f6,0xf4($sp)
/* f12626c: c7a600f4 */ lwc1 $f6,0xf4($sp)
/* f126270: c6ea0010 */ lwc1 $f10,0x10($s7)
/* f126274: c6080010 */ lwc1 $f8,0x10($s0)
/* f126278: 4606e032 */ c.eq.s $f28,$f6
/* f12627c: 460a4101 */ sub.s $f4,$f8,$f10
/* f126280: 45000006 */ bc1f .NB0f12629c
/* f126284: e7a400fc */ swc1 $f4,0xfc($sp)
/* f126288: c7a800fc */ lwc1 $f8,0xfc($sp)
/* f12628c: 4608e032 */ c.eq.s $f28,$f8
/* f126290: 00000000 */ sll $zero,$zero,0x0
/* f126294: 45030017 */ bc1tl .NB0f1262f4
/* f126298: 4406e000 */ mfc1 $a2,$f28
.NB0f12629c:
/* f12629c: c7aa00fc */ lwc1 $f10,0xfc($sp)
/* f1262a0: c7ae00f4 */ lwc1 $f14,0xf4($sp)
/* f1262a4: 460a5102 */ mul.s $f4,$f10,$f10
/* f1262a8: 00000000 */ sll $zero,$zero,0x0
/* f1262ac: 460e7182 */ mul.s $f6,$f14,$f14
/* f1262b0: 0c012e84 */ jal 0x4ba10
/* f1262b4: 46062300 */ add.s $f12,$f4,$f6
/* f1262b8: 4600e03c */ c.lt.s $f28,$f0
/* f1262bc: 3c014080 */ lui $at,0x4080
/* f1262c0: 4502000c */ bc1fl .NB0f1262f4
/* f1262c4: 4406e000 */ mfc1 $a2,$f28
/* f1262c8: 44814000 */ mtc1 $at,$f8
/* f1262cc: c7ae00f4 */ lwc1 $f14,0xf4($sp)
/* f1262d0: c7a400fc */ lwc1 $f4,0xfc($sp)
/* f1262d4: 4608a282 */ mul.s $f10,$f20,$f8
/* f1262d8: 46005083 */ div.s $f2,$f10,$f0
/* f1262dc: 46027382 */ mul.s $f14,$f14,$f2
/* f1262e0: 00000000 */ sll $zero,$zero,0x0
/* f1262e4: 46022182 */ mul.s $f6,$f4,$f2
/* f1262e8: e7ae00f4 */ swc1 $f14,0xf4($sp)
/* f1262ec: e7a600fc */ swc1 $f6,0xfc($sp)
/* f1262f0: 4406e000 */ mfc1 $a2,$f28
.NB0f1262f4:
/* f1262f4: 240e0001 */ addiu $t6,$zero,0x1
/* f1262f8: afae0010 */ sw $t6,0x10($sp)
/* f1262fc: 02402025 */ or $a0,$s2,$zero
/* f126300: 27a500f4 */ addiu $a1,$sp,0xf4
/* f126304: 0fc20525 */ jal 0xf081494
/* f126308: 24070001 */ addiu $a3,$zero,0x1
/* f12630c: 10000102 */ beqz $zero,.NB0f126718
/* f126310: 86820002 */ lh $v0,0x2($s4)
.NB0f126314:
/* f126314: 0fc21481 */ jal 0xf085204
/* f126318: 02402025 */ or $a0,$s2,$zero
/* f12631c: 104000fd */ beqz $v0,.NB0f126714
/* f126320: 3c017f1b */ lui $at,0x7f1b
/* f126324: c428fad4 */ lwc1 $f8,-0x52c($at)
/* f126328: c7ca004c */ lwc1 $f10,0x4c($s8)
/* f12632c: 8e580040 */ lw $t8,0x40($s2)
/* f126330: 460a4102 */ mul.s $f4,$f8,$f10
/* f126334: 33191000 */ andi $t9,$t8,0x1000
/* f126338: 4604a502 */ mul.s $f20,$f20,$f4
/* f12633c: 572000f6 */ bnezl $t9,.NB0f126718
/* f126340: 86820002 */ lh $v0,0x2($s4)
/* f126344: 8e48000c */ lw $t0,0xc($s2)
/* f126348: 3c010020 */ lui $at,0x20
/* f12634c: 34210400 */ ori $at,$at,0x400
/* f126350: 01014824 */ and $t1,$t0,$at
/* f126354: 552000f0 */ bnezl $t1,.NB0f126718
/* f126358: 86820002 */ lh $v0,0x2($s4)
/* f12635c: 0c004d84 */ jal 0x13610
/* f126360: 00000000 */ sll $zero,$zero,0x0
/* f126364: 44823000 */ mtc1 $v0,$f6
/* f126368: 02002025 */ or $a0,$s0,$zero
/* f12636c: 04410005 */ bgez $v0,.NB0f126384
/* f126370: 46803220 */ cvt.s.w $f8,$f6
/* f126374: 3c014f80 */ lui $at,0x4f80
/* f126378: 44815000 */ mtc1 $at,$f10
/* f12637c: 00000000 */ sll $zero,$zero,0x0
/* f126380: 460a4200 */ add.s $f8,$f8,$f10
.NB0f126384:
/* f126384: 3c012f80 */ lui $at,0x2f80
/* f126388: 44812000 */ mtc1 $at,$f4
/* f12638c: 3c013f00 */ lui $at,0x3f00
/* f126390: 44815000 */ mtc1 $at,$f10
/* f126394: 46044182 */ mul.s $f6,$f8,$f4
/* f126398: 8faf03a0 */ lw $t7,0x3a0($sp)
/* f12639c: 26060008 */ addiu $a2,$s0,0x8
/* f1263a0: 24070022 */ addiu $a3,$zero,0x22
/* f1263a4: 81ea03ce */ lb $t2,0x3ce($t7)
/* f1263a8: 460a3202 */ mul.s $f8,$f6,$f10
/* f1263ac: afaa0010 */ sw $t2,0x10($sp)
/* f1263b0: 461e4100 */ add.s $f4,$f8,$f30
/* f1263b4: 46142182 */ mul.s $f6,$f4,$f20
/* f1263b8: 44053000 */ mfc1 $a1,$f6
/* f1263bc: 0fc20e40 */ jal 0xf083900
/* f1263c0: 00000000 */ sll $zero,$zero,0x0
/* f1263c4: 100000d4 */ beqz $zero,.NB0f126718
/* f1263c8: 86820002 */ lh $v0,0x2($s4)
.NB0f1263cc:
/* f1263cc: 12a20003 */ beq $s5,$v0,.NB0f1263dc
/* f1263d0: 24010006 */ addiu $at,$zero,0x6
/* f1263d4: 544100d0 */ bnel $v0,$at,.NB0f126718
/* f1263d8: 86820002 */ lh $v0,0x2($s4)
.NB0f1263dc:
/* f1263dc: c60a0008 */ lwc1 $f10,0x8($s0)
/* f1263e0: c6e80008 */ lwc1 $f8,0x8($s7)
/* f1263e4: c604000c */ lwc1 $f4,0xc($s0)
/* f1263e8: c6e6000c */ lwc1 $f6,0xc($s7)
/* f1263ec: 46085581 */ sub.s $f22,$f10,$f8
/* f1263f0: c6e80010 */ lwc1 $f8,0x10($s7)
/* f1263f4: c60a0010 */ lwc1 $f10,0x10($s0)
/* f1263f8: 00008825 */ or $s1,$zero,$zero
/* f1263fc: 461ab03e */ c.le.s $f22,$f26
/* f126400: 46062501 */ sub.s $f20,$f4,$f6
/* f126404: 4500003d */ bc1f .NB0f1264fc
/* f126408: 46085601 */ sub.s $f24,$f10,$f8
/* f12640c: 4600d007 */ neg.s $f0,$f26
/* f126410: 4616003e */ c.le.s $f0,$f22
/* f126414: 00000000 */ sll $zero,$zero,0x0
/* f126418: 45000038 */ bc1f .NB0f1264fc
/* f12641c: 00000000 */ sll $zero,$zero,0x0
/* f126420: 461aa03e */ c.le.s $f20,$f26
/* f126424: 00000000 */ sll $zero,$zero,0x0
/* f126428: 45000034 */ bc1f .NB0f1264fc
/* f12642c: 00000000 */ sll $zero,$zero,0x0
/* f126430: 4614003e */ c.le.s $f0,$f20
/* f126434: 00000000 */ sll $zero,$zero,0x0
/* f126438: 45000030 */ bc1f .NB0f1264fc
/* f12643c: 00000000 */ sll $zero,$zero,0x0
/* f126440: 461ac03e */ c.le.s $f24,$f26
/* f126444: 00000000 */ sll $zero,$zero,0x0
/* f126448: 4500002c */ bc1f .NB0f1264fc
/* f12644c: 00000000 */ sll $zero,$zero,0x0
/* f126450: 4618003e */ c.le.s $f0,$f24
/* f126454: 02002025 */ or $a0,$s0,$zero
/* f126458: 27a500e0 */ addiu $a1,$sp,0xe0
/* f12645c: 27a600dc */ addiu $a2,$sp,0xdc
/* f126460: 45000026 */ bc1f .NB0f1264fc
/* f126464: 00000000 */ sll $zero,$zero,0x0
/* f126468: 0fc1951b */ jal 0xf06546c
/* f12646c: 27a700d8 */ addiu $a3,$sp,0xd8
/* f126470: 3c0141a0 */ lui $at,0x41a0
/* f126474: c7a000e0 */ lwc1 $f0,0xe0($sp)
/* f126478: 44812000 */ mtc1 $at,$f4
/* f12647c: 00000000 */ sll $zero,$zero,0x0
/* f126480: 46040001 */ sub.s $f0,$f0,$f4
/* f126484: 461c003e */ c.le.s $f0,$f28
/* f126488: e7a000e0 */ swc1 $f0,0xe0($sp)
/* f12648c: 45020003 */ bc1fl .NB0f12649c
/* f126490: c6060008 */ lwc1 $f6,0x8($s0)
/* f126494: e7bc00e0 */ swc1 $f28,0xe0($sp)
/* f126498: c6060008 */ lwc1 $f6,0x8($s0)
.NB0f12649c:
/* f12649c: c7aa00e0 */ lwc1 $f10,0xe0($sp)
/* f1264a0: c7a400d8 */ lwc1 $f4,0xd8($sp)
/* f1264a4: 8fa403a0 */ lw $a0,0x3a0($sp)
/* f1264a8: 460a3201 */ sub.s $f8,$f6,$f10
/* f1264ac: e7a400d0 */ swc1 $f4,0xd0($sp)
/* f1264b0: 02002825 */ or $a1,$s0,$zero
/* f1264b4: 27a600cc */ addiu $a2,$sp,0xcc
/* f1264b8: e7a800cc */ swc1 $f8,0xcc($sp)
/* f1264bc: c6060010 */ lwc1 $f6,0x10($s0)
/* f1264c0: 27a700c0 */ addiu $a3,$sp,0xc0
/* f1264c4: 460a3201 */ sub.s $f8,$f6,$f10
/* f1264c8: e7a800d4 */ swc1 $f8,0xd4($sp)
/* f1264cc: c6040008 */ lwc1 $f4,0x8($s0)
/* f1264d0: c7a800dc */ lwc1 $f8,0xdc($sp)
/* f1264d4: 460a2180 */ add.s $f6,$f4,$f10
/* f1264d8: e7a800c4 */ swc1 $f8,0xc4($sp)
/* f1264dc: e7a600c0 */ swc1 $f6,0xc0($sp)
/* f1264e0: c6040010 */ lwc1 $f4,0x10($s0)
/* f1264e4: 460a2180 */ add.s $f6,$f4,$f10
/* f1264e8: 0fc496be */ jal 0xf125af8
/* f1264ec: e7a600c8 */ swc1 $f6,0xc8($sp)
/* f1264f0: 10400002 */ beqz $v0,.NB0f1264fc
/* f1264f4: 00000000 */ sll $zero,$zero,0x0
/* f1264f8: 24110001 */ addiu $s1,$zero,0x1
.NB0f1264fc:
/* f1264fc: 52200086 */ beqzl $s1,.NB0f126718
/* f126500: 86820002 */ lh $v0,0x2($s4)
/* f126504: 461ab083 */ div.s $f2,$f22,$f26
/* f126508: 3c0c8008 */ lui $t4,0x8008
/* f12650c: 258c1190 */ addiu $t4,$t4,0x1190
/* f126510: 8d810000 */ lw $at,0x0($t4)
/* f126514: 27ab00a0 */ addiu $t3,$sp,0xa0
/* f126518: 8d8e0004 */ lw $t6,0x4($t4)
/* f12651c: ad610000 */ sw $at,0x0($t3)
/* f126520: 8d810008 */ lw $at,0x8($t4)
/* f126524: ad6e0004 */ sw $t6,0x4($t3)
/* f126528: 00008825 */ or $s1,$zero,$zero
/* f12652c: ad610008 */ sw $at,0x8($t3)
/* f126530: 8e120004 */ lw $s2,0x4($s0)
/* f126534: 26f30008 */ addiu $s3,$s7,0x8
/* f126538: 461aa383 */ div.s $f14,$f20,$f26
/* f12653c: 46001006 */ mov.s $f0,$f2
/* f126540: 461c103c */ c.lt.s $f2,$f28
/* f126544: 461ac483 */ div.s $f18,$f24,$f26
/* f126548: 46007306 */ mov.s $f12,$f14
/* f12654c: 45000002 */ bc1f .NB0f126558
/* f126550: 46009406 */ mov.s $f16,$f18
/* f126554: 46001007 */ neg.s $f0,$f2
.NB0f126558:
/* f126558: 461c703c */ c.lt.s $f14,$f28
/* f12655c: 4600f501 */ sub.s $f20,$f30,$f0
/* f126560: 45020003 */ bc1fl .NB0f126570
/* f126564: 461c903c */ c.lt.s $f18,$f28
/* f126568: 46007307 */ neg.s $f12,$f14
/* f12656c: 461c903c */ c.lt.s $f18,$f28
.NB0f126570:
/* f126570: 460cf301 */ sub.s $f12,$f30,$f12
/* f126574: 45020003 */ bc1fl .NB0f126584
/* f126578: 4614603c */ c.lt.s $f12,$f20
/* f12657c: 46009407 */ neg.s $f16,$f18
/* f126580: 4614603c */ c.lt.s $f12,$f20
.NB0f126584:
/* f126584: 4610f401 */ sub.s $f16,$f30,$f16
/* f126588: 45020003 */ bc1fl .NB0f126598
/* f12658c: 4614803c */ c.lt.s $f16,$f20
/* f126590: 46006506 */ mov.s $f20,$f12
/* f126594: 4614803c */ c.lt.s $f16,$f20
.NB0f126598:
/* f126598: 00000000 */ sll $zero,$zero,0x0
/* f12659c: 45000002 */ bc1f .NB0f1265a8
/* f1265a0: 00000000 */ sll $zero,$zero,0x0
/* f1265a4: 46008506 */ mov.s $f20,$f16
.NB0f1265a8:
/* f1265a8: 4614a502 */ mul.s $f20,$f20,$f20
/* f1265ac: 8fb8039c */ lw $t8,0x39c($sp)
/* f1265b0: 3c014100 */ lui $at,0x4100
/* f1265b4: 44815000 */ mtc1 $at,$f10
/* f1265b8: c7080028 */ lwc1 $f8,0x28($t8)
/* f1265bc: 8fb90194 */ lw $t9,0x194($sp)
/* f1265c0: 3c017f1b */ lui $at,0x7f1b
/* f1265c4: 46144102 */ mul.s $f4,$f8,$f20
/* f1265c8: 00000000 */ sll $zero,$zero,0x0
/* f1265cc: 460a2502 */ mul.s $f20,$f4,$f10
/* f1265d0: 1320001a */ beqz $t9,.NB0f12663c
/* f1265d4: 00000000 */ sll $zero,$zero,0x0
/* f1265d8: 461cb032 */ c.eq.s $f22,$f28
/* f1265dc: 00000000 */ sll $zero,$zero,0x0
/* f1265e0: 45000005 */ bc1f .NB0f1265f8
/* f1265e4: 00000000 */ sll $zero,$zero,0x0
/* f1265e8: 461cc032 */ c.eq.s $f24,$f28
/* f1265ec: 00000000 */ sll $zero,$zero,0x0
/* f1265f0: 45030019 */ bc1tl .NB0f126658
/* f1265f4: 8fc80318 */ lw $t0,0x318($s8)
.NB0f1265f8:
/* f1265f8: 4616b182 */ mul.s $f6,$f22,$f22
/* f1265fc: 00000000 */ sll $zero,$zero,0x0
/* f126600: 4618c202 */ mul.s $f8,$f24,$f24
/* f126604: 0c012e84 */ jal 0x4ba10
/* f126608: 46083300 */ add.s $f12,$f6,$f8
/* f12660c: 4600e03c */ c.lt.s $f28,$f0
/* f126610: 00000000 */ sll $zero,$zero,0x0
/* f126614: 45020010 */ bc1fl .NB0f126658
/* f126618: 8fc80318 */ lw $t0,0x318($s8)
/* f12661c: 4600f083 */ div.s $f2,$f30,$f0
/* f126620: e7bc00a4 */ swc1 $f28,0xa4($sp)
/* f126624: 4602b582 */ mul.s $f22,$f22,$f2
/* f126628: 00000000 */ sll $zero,$zero,0x0
/* f12662c: 4602c602 */ mul.s $f24,$f24,$f2
/* f126630: e7b600a0 */ swc1 $f22,0xa0($sp)
/* f126634: 10000007 */ beqz $zero,.NB0f126654
/* f126638: e7b800a8 */ swc1 $f24,0xa8($sp)
.NB0f12663c:
/* f12663c: c424fad8 */ lwc1 $f4,-0x528($at)
/* f126640: c7ca004c */ lwc1 $f10,0x4c($s8)
/* f126644: 460a2182 */ mul.s $f6,$f4,$f10
/* f126648: 00000000 */ sll $zero,$zero,0x0
/* f12664c: 4606a502 */ mul.s $f20,$f20,$f6
/* f126650: 00000000 */ sll $zero,$zero,0x0
.NB0f126654:
/* f126654: 8fc80318 */ lw $t0,0x318($s8)
.NB0f126658:
/* f126658: 8fa903a0 */ lw $t1,0x3a0($sp)
/* f12665c: 8faf03a0 */ lw $t7,0x3a0($sp)
/* f126660: 51000008 */ beqzl $t0,.NB0f126684
/* f126664: 81e203ce */ lb $v0,0x3ce($t7)
/* f126668: 0fc61c91 */ jal 0xf187244
/* f12666c: 812403ce */ lb $a0,0x3ce($t1)
/* f126670: 5040001a */ beqzl $v0,.NB0f1266dc
/* f126674: 4405a000 */ mfc1 $a1,$f20
/* f126678: 10000017 */ beqz $zero,.NB0f1266d8
/* f12667c: 8c51001c */ lw $s1,0x1c($v0)
/* f126680: 81e203ce */ lb $v0,0x3ce($t7)
.NB0f126684:
/* f126684: 8fca0294 */ lw $t2,0x294($s8)
/* f126688: 55420005 */ bnel $t2,$v0,.NB0f1266a0
/* f12668c: 8fc30298 */ lw $v1,0x298($s8)
/* f126690: 8fcd02a0 */ lw $t5,0x2a0($s8)
/* f126694: 10000010 */ beqz $zero,.NB0f1266d8
/* f126698: 8db100bc */ lw $s1,0xbc($t5)
/* f12669c: 8fc30298 */ lw $v1,0x298($s8)
.NB0f1266a0:
/* f1266a0: 04620007 */ bltzl $v1,.NB0f1266c0
/* f1266a4: 8fc3029c */ lw $v1,0x29c($s8)
/* f1266a8: 54620005 */ bnel $v1,$v0,.NB0f1266c0
/* f1266ac: 8fc3029c */ lw $v1,0x29c($s8)
/* f1266b0: 8fcb02a4 */ lw $t3,0x2a4($s8)
/* f1266b4: 10000008 */ beqz $zero,.NB0f1266d8
/* f1266b8: 8d7100bc */ lw $s1,0xbc($t3)
/* f1266bc: 8fc3029c */ lw $v1,0x29c($s8)
.NB0f1266c0:
/* f1266c0: 04620006 */ bltzl $v1,.NB0f1266dc
/* f1266c4: 4405a000 */ mfc1 $a1,$f20
/* f1266c8: 54620004 */ bnel $v1,$v0,.NB0f1266dc
/* f1266cc: 4405a000 */ mfc1 $a1,$f20
/* f1266d0: 8fcc02a8 */ lw $t4,0x2a8($s8)
/* f1266d4: 8d9100bc */ lw $s1,0xbc($t4)
.NB0f1266d8:
/* f1266d8: 4405a000 */ mfc1 $a1,$f20
.NB0f1266dc:
/* f1266dc: 02402025 */ or $a0,$s2,$zero
/* f1266e0: 27a600a0 */ addiu $a2,$sp,0xa0
/* f1266e4: 02203825 */ or $a3,$s1,$zero
/* f1266e8: 0fc0cf46 */ jal 0xf033d18
/* f1266ec: afb30010 */ sw $s3,0x10($sp)
/* f1266f0: 920e0000 */ lbu $t6,0x0($s0)
/* f1266f4: 8fb80194 */ lw $t8,0x194($sp)
/* f1266f8: 56ae0007 */ bnel $s5,$t6,.NB0f126718
/* f1266fc: 86820002 */ lh $v0,0x2($s4)
/* f126700: 17000004 */ bnez $t8,.NB0f126714
/* f126704: 02402025 */ or $a0,$s2,$zero
/* f126708: 4406d000 */ mfc1 $a2,$f26
/* f12670c: 0fc09ac4 */ jal 0xf026b10
/* f126710: 02602825 */ or $a1,$s3,$zero
.NB0f126714:
/* f126714: 86820002 */ lh $v0,0x2($s4)
.NB0f126718:
/* f126718: 26940002 */ addiu $s4,$s4,0x2
/* f12671c: 0443fe17 */ bgezl $v0,.NB0f125f7c
/* f126720: 8fae03a0 */ lw $t6,0x3a0($sp)
.NB0f126724:
/* f126724: 8fbf0074 */ lw $ra,0x74($sp)
.NB0f126728:
/* f126728: d7b40020 */ ldc1 $f20,0x20($sp)
/* f12672c: d7b60028 */ ldc1 $f22,0x28($sp)
/* f126730: d7b80030 */ ldc1 $f24,0x30($sp)
/* f126734: d7ba0038 */ ldc1 $f26,0x38($sp)
/* f126738: d7bc0040 */ ldc1 $f28,0x40($sp)
/* f12673c: d7be0048 */ ldc1 $f30,0x48($sp)
/* f126740: 8fb00050 */ lw $s0,0x50($sp)
/* f126744: 8fb10054 */ lw $s1,0x54($sp)
/* f126748: 8fb20058 */ lw $s2,0x58($sp)
/* f12674c: 8fb3005c */ lw $s3,0x5c($sp)
/* f126750: 8fb40060 */ lw $s4,0x60($sp)
/* f126754: 8fb50064 */ lw $s5,0x64($sp)
/* f126758: 8fb60068 */ lw $s6,0x68($sp)
/* f12675c: 8fb7006c */ lw $s7,0x6c($sp)
/* f126760: 8fbe0070 */ lw $s8,0x70($sp)
/* f126764: 03e00008 */ jr $ra
/* f126768: 27bd03a8 */ addiu $sp,$sp,0x3a8
);
#endif
#if VERSION >= VERSION_PAL_FINAL
+188
View File
@@ -4078,6 +4078,7 @@ u32 func0f166ea8(u32 *filetableaddr)
return 0;
}
#if VERSION >= VERSION_NTSC_1_0
void func0f166eb4(void *dst, u32 scratchlen, u32 *romaddrptr, struct fileinfo *info)
{
u32 romsize = fileGetRomSizeByTableAddress(romaddrptr);
@@ -4099,6 +4100,96 @@ void func0f166eb4(void *dst, u32 scratchlen, u32 *romaddrptr, struct fileinfo *i
}
}
}
#else
GLOBAL_ASM(
glabel func0f166eb4
/* f1616b4: 27bdeb20 */ addiu $sp,$sp,-5344
/* f1616b8: afbf003c */ sw $ra,0x3c($sp)
/* f1616bc: afb00038 */ sw $s0,0x38($sp)
/* f1616c0: afa414e0 */ sw $a0,0x14e0($sp)
/* f1616c4: 00a08025 */ or $s0,$a1,$zero
/* f1616c8: afa614e8 */ sw $a2,0x14e8($sp)
/* f1616cc: afa714ec */ sw $a3,0x14ec($sp)
/* f1616d0: 0fc58595 */ jal 0xf161654
/* f1616d4: 00c02025 */ or $a0,$a2,$zero
/* f1616d8: 8fa714e0 */ lw $a3,0x14e0($sp)
/* f1616dc: 8fa914e8 */ lw $t1,0x14e8($sp)
/* f1616e0: 16000006 */ bnez $s0,.NB0f1616fc
/* f1616e4: 00403025 */ or $a2,$v0,$zero
/* f1616e8: 00e02025 */ or $a0,$a3,$zero
/* f1616ec: 0c003664 */ jal 0xd990
/* f1616f0: 8d250000 */ lw $a1,0x0($t1)
/* f1616f4: 1000003b */ beqz $zero,.NB0f1617e4
/* f1616f8: 8fbf003c */ lw $ra,0x3c($sp)
.NB0f1616fc:
/* f1616fc: 2408fff8 */ addiu $t0,$zero,-8
/* f161700: 244e0007 */ addiu $t6,$v0,0x7
/* f161704: 01c87824 */ and $t7,$t6,$t0
/* f161708: 00f01821 */ addu $v1,$a3,$s0
/* f16170c: 006fc023 */ subu $t8,$v1,$t7
/* f161710: 0307c823 */ subu $t9,$t8,$a3
/* f161714: 2f210008 */ sltiu $at,$t9,0x8
/* f161718: 10200004 */ beqz $at,.NB0f16172c
/* f16171c: 24cb0007 */ addiu $t3,$a2,0x7
/* f161720: 8faa14ec */ lw $t2,0x14ec($sp)
/* f161724: 1000002e */ beqz $zero,.NB0f1617e0
/* f161728: ad400000 */ sw $zero,0x0($t2)
.NB0f16172c:
/* f16172c: 01686024 */ and $t4,$t3,$t0
/* f161730: 006c8023 */ subu $s0,$v1,$t4
/* f161734: 02002025 */ or $a0,$s0,$zero
/* f161738: 0c003664 */ jal 0xd990
/* f16173c: 8d250000 */ lw $a1,0x0($t1)
/* f161740: 8fa514e0 */ lw $a1,0x14e0($sp)
/* f161744: 02002025 */ or $a0,$s0,$zero
/* f161748: 0c001da4 */ jal 0x7690
/* f16174c: 27a600dc */ addiu $a2,$sp,0xdc
/* f161750: 1440001e */ bnez $v0,.NB0f1617cc
/* f161754: 00401825 */ or $v1,$v0,$zero
/* f161758: 920d0000 */ lbu $t5,0x0($s0)
/* f16175c: 3c057f1b */ lui $a1,0x7f1b
/* f161760: 3c067f1b */ lui $a2,0x7f1b
/* f161764: afad0010 */ sw $t5,0x10($sp)
/* f161768: 920e0001 */ lbu $t6,0x1($s0)
/* f16176c: 24c61d78 */ addiu $a2,$a2,0x1d78
/* f161770: 24a51d40 */ addiu $a1,$a1,0x1d40
/* f161774: afae0014 */ sw $t6,0x14($sp)
/* f161778: 920f0002 */ lbu $t7,0x2($s0)
/* f16177c: 27a40054 */ addiu $a0,$sp,0x54
/* f161780: 240700cc */ addiu $a3,$zero,0xcc
/* f161784: afaf0018 */ sw $t7,0x18($sp)
/* f161788: 92180003 */ lbu $t8,0x3($s0)
/* f16178c: afb8001c */ sw $t8,0x1c($sp)
/* f161790: 92190004 */ lbu $t9,0x4($s0)
/* f161794: afb90020 */ sw $t9,0x20($sp)
/* f161798: 920a0005 */ lbu $t2,0x5($s0)
/* f16179c: afaa0024 */ sw $t2,0x24($sp)
/* f1617a0: 920b0006 */ lbu $t3,0x6($s0)
/* f1617a4: afab0028 */ sw $t3,0x28($sp)
/* f1617a8: 920c0007 */ lbu $t4,0x7($s0)
/* f1617ac: afa200d4 */ sw $v0,0xd4($sp)
/* f1617b0: 0c004fc1 */ jal 0x13f04
/* f1617b4: afac002c */ sw $t4,0x2c($sp)
/* f1617b8: 0c003074 */ jal 0xc1d0
/* f1617bc: 27a40054 */ addiu $a0,$sp,0x54
/* f1617c0: 240d0045 */ addiu $t5,$zero,0x45
/* f1617c4: 8fa300d4 */ lw $v1,0xd4($sp)
/* f1617c8: a00d0000 */ sb $t5,0x0($zero)
.NB0f1617cc:
/* f1617cc: 8fb814ec */ lw $t8,0x14ec($sp)
/* f1617d0: 2463000f */ addiu $v1,$v1,0xf
/* f1617d4: 346e000f */ ori $t6,$v1,0xf
/* f1617d8: 39cf000f */ xori $t7,$t6,0xf
/* f1617dc: af0f0000 */ sw $t7,0x0($t8)
.NB0f1617e0:
/* f1617e0: 8fbf003c */ lw $ra,0x3c($sp)
.NB0f1617e4:
/* f1617e4: 8fb00038 */ lw $s0,0x38($sp)
/* f1617e8: 27bd14e0 */ addiu $sp,$sp,0x14e0
/* f1617ec: 03e00008 */ jr $ra
/* f1617f0: 00000000 */ sll $zero,$zero,0x0
);
#endif
GLOBAL_ASM(
glabel func0f166f74
@@ -4157,6 +4248,7 @@ void func0f166ff0(u16 filenum, void *memaddr, s32 offset, u32 len)
}
}
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel fileGetInflatedLength
/* f167054: 27bdff78 */ addiu $sp,$sp,-136
@@ -4206,6 +4298,102 @@ glabel fileGetInflatedLength
/* f1670f4: 03e00008 */ jr $ra
/* f1670f8: 27bd0088 */ addiu $sp,$sp,0x88
);
#else
GLOBAL_ASM(
glabel fileGetInflatedLength
/* f1618d4: 27bdfeb8 */ addiu $sp,$sp,-328
/* f1618d8: 3c0f8008 */ lui $t7,0x8008
/* f1618dc: 25ef48c0 */ addiu $t7,$t7,0x48c0
/* f1618e0: 00047080 */ sll $t6,$a0,0x2
/* f1618e4: afbf005c */ sw $ra,0x5c($sp)
/* f1618e8: afb00058 */ sw $s0,0x58($sp)
/* f1618ec: 01cf2021 */ addu $a0,$t6,$t7
/* f1618f0: 8c850000 */ lw $a1,0x0($a0)
/* f1618f4: 27b00104 */ addiu $s0,$sp,0x104
/* f1618f8: 2401fff0 */ addiu $at,$zero,-16
/* f1618fc: 14a0000c */ bnez $a1,.NB0f161930
/* f161900: 24060040 */ addiu $a2,$zero,0x40
/* f161904: 0fc585aa */ jal 0xf1616a8
/* f161908: 00000000 */ sll $zero,$zero,0x0
/* f16190c: 27b00104 */ addiu $s0,$sp,0x104
/* f161910: 2401fff0 */ addiu $at,$zero,-16
/* f161914: 02012824 */ and $a1,$s0,$at
/* f161918: 00a08025 */ or $s0,$a1,$zero
/* f16191c: 00402025 */ or $a0,$v0,$zero
/* f161920: 0fc5c2fe */ jal 0xf170bf8
/* f161924: 24060010 */ addiu $a2,$zero,0x10
/* f161928: 10000004 */ beqz $zero,.NB0f16193c
/* f16192c: 00000000 */ sll $zero,$zero,0x0
.NB0f161930:
/* f161930: 02012024 */ and $a0,$s0,$at
/* f161934: 0c003664 */ jal 0xd990
/* f161938: 00808025 */ or $s0,$a0,$zero
.NB0f16193c:
/* f16193c: 0c0022df */ jal 0x8b7c
/* f161940: 02002025 */ or $a0,$s0,$zero
/* f161944: 5040000a */ beqzl $v0,.NB0f161970
/* f161948: 920e0000 */ lbu $t6,0x0($s0)
/* f16194c: 92090002 */ lbu $t1,0x2($s0)
/* f161950: 92080004 */ lbu $t0,0x4($s0)
/* f161954: 920c0003 */ lbu $t4,0x3($s0)
/* f161958: 00095400 */ sll $t2,$t1,0x10
/* f16195c: 010a5825 */ or $t3,$t0,$t2
/* f161960: 000c6a00 */ sll $t5,$t4,0x8
/* f161964: 1000002d */ beqz $zero,.NB0f161a1c
/* f161968: 016d1025 */ or $v0,$t3,$t5
/* f16196c: 920e0000 */ lbu $t6,0x0($s0)
.NB0f161970:
/* f161970: 3c057f1b */ lui $a1,0x7f1b
/* f161974: 3c067f1b */ lui $a2,0x7f1b
/* f161978: afae0010 */ sw $t6,0x10($sp)
/* f16197c: 920f0001 */ lbu $t7,0x1($s0)
/* f161980: 24c61dd8 */ addiu $a2,$a2,0x1dd8
/* f161984: 24a51d80 */ addiu $a1,$a1,0x1d80
/* f161988: afaf0014 */ sw $t7,0x14($sp)
/* f16198c: 92180002 */ lbu $t8,0x2($s0)
/* f161990: 27a40070 */ addiu $a0,$sp,0x70
/* f161994: 240701be */ addiu $a3,$zero,0x1be
/* f161998: afb80018 */ sw $t8,0x18($sp)
/* f16199c: 92190003 */ lbu $t9,0x3($s0)
/* f1619a0: afb9001c */ sw $t9,0x1c($sp)
/* f1619a4: 92090004 */ lbu $t1,0x4($s0)
/* f1619a8: afa90020 */ sw $t1,0x20($sp)
/* f1619ac: 92080005 */ lbu $t0,0x5($s0)
/* f1619b0: afa80024 */ sw $t0,0x24($sp)
/* f1619b4: 920a0006 */ lbu $t2,0x6($s0)
/* f1619b8: afaa0028 */ sw $t2,0x28($sp)
/* f1619bc: 920c0007 */ lbu $t4,0x7($s0)
/* f1619c0: afac002c */ sw $t4,0x2c($sp)
/* f1619c4: 920b0008 */ lbu $t3,0x8($s0)
/* f1619c8: afab0030 */ sw $t3,0x30($sp)
/* f1619cc: 920d0009 */ lbu $t5,0x9($s0)
/* f1619d0: afad0034 */ sw $t5,0x34($sp)
/* f1619d4: 920e000a */ lbu $t6,0xa($s0)
/* f1619d8: afae0038 */ sw $t6,0x38($sp)
/* f1619dc: 920f000b */ lbu $t7,0xb($s0)
/* f1619e0: afaf003c */ sw $t7,0x3c($sp)
/* f1619e4: 9218000c */ lbu $t8,0xc($s0)
/* f1619e8: afb80040 */ sw $t8,0x40($sp)
/* f1619ec: 9219000d */ lbu $t9,0xd($s0)
/* f1619f0: afb90044 */ sw $t9,0x44($sp)
/* f1619f4: 9209000e */ lbu $t1,0xe($s0)
/* f1619f8: afa90048 */ sw $t1,0x48($sp)
/* f1619fc: 9208000f */ lbu $t0,0xf($s0)
/* f161a00: 0c004fc1 */ jal 0x13f04
/* f161a04: afa8004c */ sw $t0,0x4c($sp)
/* f161a08: 0c003074 */ jal 0xc1d0
/* f161a0c: 27a40070 */ addiu $a0,$sp,0x70
/* f161a10: 240a0045 */ addiu $t2,$zero,0x45
/* f161a14: a00a0000 */ sb $t2,0x0($zero)
/* f161a18: 00001025 */ or $v0,$zero,$zero
.NB0f161a1c:
/* f161a1c: 8fbf005c */ lw $ra,0x5c($sp)
/* f161a20: 8fb00058 */ lw $s0,0x58($sp)
/* f161a24: 27bd0148 */ addiu $sp,$sp,0x148
/* f161a28: 03e00008 */ jr $ra
/* f161a2c: 00000000 */ sll $zero,$zero,0x0
);
#endif
//u32 fileGetInflatedLength(u32 filenum)
//{
+511 -2
View File
@@ -380,7 +380,7 @@ glabel func0f0061dc
/* f00650c: 03e00008 */ jr $ra
/* f006510: 27bd0078 */ addiu $sp,$sp,0x78
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f0061dc
/* f0061dc: 27bdff88 */ addiu $sp,$sp,-120
@@ -616,6 +616,240 @@ glabel func0f0061dc
/* f006518: 03e00008 */ jr $ra
/* f00651c: 27bd0078 */ addiu $sp,$sp,0x78
);
#else
GLOBAL_ASM(
glabel func0f0061dc
/* f005f2c: 27bdff88 */ addiu $sp,$sp,-120
/* f005f30: afbf004c */ sw $ra,0x4c($sp)
/* f005f34: afb10048 */ sw $s1,0x48($sp)
/* f005f38: 00808825 */ or $s1,$a0,$zero
/* f005f3c: 0fc466d2 */ jal 0xf119b48
/* f005f40: afb00044 */ sw $s0,0x44($sp)
/* f005f44: 104000c3 */ beqz $v0,.NB0f006254
/* f005f48: 24010001 */ addiu $at,$zero,0x1
/* f005f4c: 3c02800a */ lui $v0,0x800a
/* f005f50: 2442e6c0 */ addiu $v0,$v0,-6464
/* f005f54: 8c4e006c */ lw $t6,0x6c($v0)
/* f005f58: 00002825 */ or $a1,$zero,$zero
/* f005f5c: 00001825 */ or $v1,$zero,$zero
/* f005f60: 11c00003 */ beqz $t6,.NB0f005f70
/* f005f64: 00002025 */ or $a0,$zero,$zero
/* f005f68: 10000001 */ beqz $zero,.NB0f005f70
/* f005f6c: 24050001 */ addiu $a1,$zero,0x1
.NB0f005f70:
/* f005f70: 8c4f0068 */ lw $t7,0x68($v0)
/* f005f74: 11e00003 */ beqz $t7,.NB0f005f84
/* f005f78: 00000000 */ sll $zero,$zero,0x0
/* f005f7c: 10000001 */ beqz $zero,.NB0f005f84
/* f005f80: 24030001 */ addiu $v1,$zero,0x1
.NB0f005f84:
/* f005f84: 8c580064 */ lw $t8,0x64($v0)
/* f005f88: 13000003 */ beqz $t8,.NB0f005f98
/* f005f8c: 00000000 */ sll $zero,$zero,0x0
/* f005f90: 10000001 */ beqz $zero,.NB0f005f98
/* f005f94: 24040001 */ addiu $a0,$zero,0x1
.NB0f005f98:
/* f005f98: 8c590070 */ lw $t9,0x70($v0)
/* f005f9c: 00001025 */ or $v0,$zero,$zero
/* f005fa0: 13200003 */ beqz $t9,.NB0f005fb0
/* f005fa4: 00000000 */ sll $zero,$zero,0x0
/* f005fa8: 10000001 */ beqz $zero,.NB0f005fb0
/* f005fac: 24020001 */ addiu $v0,$zero,0x1
.NB0f005fb0:
/* f005fb0: 00444021 */ addu $t0,$v0,$a0
/* f005fb4: 01034821 */ addu $t1,$t0,$v1
/* f005fb8: 01255021 */ addu $t2,$t1,$a1
/* f005fbc: 554100a6 */ bnel $t2,$at,.NB0f006258
/* f005fc0: 8fbf004c */ lw $ra,0x4c($sp)
/* f005fc4: 122000a3 */ beqz $s1,.NB0f006254
/* f005fc8: 240bffff */ addiu $t3,$zero,-1
/* f005fcc: 8e220020 */ lw $v0,0x20($s1)
/* f005fd0: 44802000 */ mtc1 $zero,$f4
/* f005fd4: a2200190 */ sb $zero,0x190($s1)
/* f005fd8: ae2b019c */ sw $t3,0x19c($s1)
/* f005fdc: 1040009d */ beqz $v0,.NB0f006254
/* f005fe0: e6240194 */ swc1 $f4,0x194($s1)
/* f005fe4: 8c440020 */ lw $a0,0x20($v0)
/* f005fe8: 5080009b */ beqzl $a0,.NB0f006258
/* f005fec: 8fbf004c */ lw $ra,0x4c($sp)
/* f005ff0: c626018c */ lwc1 $f6,0x18c($s1)
/* f005ff4: 3c038006 */ lui $v1,0x8006
/* f005ff8: 24633ab0 */ addiu $v1,$v1,0x3ab0
/* f005ffc: e7a60070 */ swc1 $f6,0x70($sp)
/* f006000: c480000c */ lwc1 $f0,0xc($a0)
/* f006004: 00008025 */ or $s0,$zero,$zero
/* f006008: e620018c */ swc1 $f0,0x18c($s1)
/* f00600c: e7a0006c */ swc1 $f0,0x6c($sp)
.NB0f006010:
/* f006010: 8e240020 */ lw $a0,0x20($s1)
/* f006014: 0c00786f */ jal 0x1e1bc
/* f006018: afa30050 */ sw $v1,0x50($sp)
/* f00601c: 8fa30050 */ lw $v1,0x50($sp)
/* f006020: 24010023 */ addiu $at,$zero,0x23
/* f006024: 94640000 */ lhu $a0,0x0($v1)
/* f006028: 54440088 */ bnel $v0,$a0,.NB0f00624c
/* f00602c: 26100001 */ addiu $s0,$s0,0x1
/* f006030: 12200003 */ beqz $s1,.NB0f006040
/* f006034: 24010001 */ addiu $at,$zero,0x1
/* f006038: 10000002 */ beqz $zero,.NB0f006044
/* f00603c: 922202fe */ lbu $v0,0x2fe($s1)
.NB0f006040:
/* f006040: 00001025 */ or $v0,$zero,$zero
.NB0f006044:
/* f006044: 14410034 */ bne $v0,$at,.NB0f006118
/* f006048: 02002825 */ or $a1,$s0,$zero
/* f00604c: 24010394 */ addiu $at,$zero,0x394
/* f006050: 14810031 */ bne $a0,$at,.NB0f006118
/* f006054: c7a8006c */ lwc1 $f8,0x6c($sp)
/* f006058: 3c014000 */ lui $at,0x4000
/* f00605c: 44810000 */ mtc1 $at,$f0
/* f006060: 3c014188 */ lui $at,0x4188
/* f006064: c7aa0070 */ lwc1 $f10,0x70($sp)
/* f006068: 4608003e */ c.le.s $f0,$f8
/* f00606c: c7b0006c */ lwc1 $f16,0x6c($sp)
/* f006070: 45020006 */ bc1fl .NB0f00608c
/* f006074: 44810000 */ mtc1 $at,$f0
/* f006078: 4600503c */ c.lt.s $f10,$f0
/* f00607c: 00000000 */ sll $zero,$zero,0x0
/* f006080: 4503000c */ bc1tl .NB0f0060b4
/* f006084: 240c0001 */ addiu $t4,$zero,0x1
/* f006088: 44810000 */ mtc1 $at,$f0
.NB0f00608c:
/* f00608c: 3c014120 */ lui $at,0x4120
/* f006090: c7b20070 */ lwc1 $f18,0x70($sp)
/* f006094: 4610003e */ c.le.s $f0,$f16
/* f006098: c7a4006c */ lwc1 $f4,0x6c($sp)
/* f00609c: 45020008 */ bc1fl .NB0f0060c0
/* f0060a0: 44810000 */ mtc1 $at,$f0
/* f0060a4: 4600903c */ c.lt.s $f18,$f0
/* f0060a8: 00000000 */ sll $zero,$zero,0x0
/* f0060ac: 45000003 */ bc1f .NB0f0060bc
/* f0060b0: 240c0001 */ addiu $t4,$zero,0x1
.NB0f0060b4:
/* f0060b4: 1000003e */ beqz $zero,.NB0f0061b0
/* f0060b8: a22c0190 */ sb $t4,0x190($s1)
.NB0f0060bc:
/* f0060bc: 44810000 */ mtc1 $at,$f0
.NB0f0060c0:
/* f0060c0: 3c0141c8 */ lui $at,0x41c8
/* f0060c4: c7a60070 */ lwc1 $f6,0x70($sp)
/* f0060c8: 4604003e */ c.le.s $f0,$f4
/* f0060cc: c7a8006c */ lwc1 $f8,0x6c($sp)
/* f0060d0: 45020006 */ bc1fl .NB0f0060ec
/* f0060d4: 44810000 */ mtc1 $at,$f0
/* f0060d8: 4600303c */ c.lt.s $f6,$f0
/* f0060dc: 00000000 */ sll $zero,$zero,0x0
/* f0060e0: 4503000b */ bc1tl .NB0f006110
/* f0060e4: 240d0002 */ addiu $t5,$zero,0x2
/* f0060e8: 44810000 */ mtc1 $at,$f0
.NB0f0060ec:
/* f0060ec: c7aa0070 */ lwc1 $f10,0x70($sp)
/* f0060f0: 4608003e */ c.le.s $f0,$f8
/* f0060f4: 00000000 */ sll $zero,$zero,0x0
/* f0060f8: 4500002d */ bc1f .NB0f0061b0
/* f0060fc: 00000000 */ sll $zero,$zero,0x0
/* f006100: 4600503c */ c.lt.s $f10,$f0
/* f006104: 00000000 */ sll $zero,$zero,0x0
/* f006108: 45000029 */ bc1f .NB0f0061b0
/* f00610c: 240d0002 */ addiu $t5,$zero,0x2
.NB0f006110:
/* f006110: 10000027 */ beqz $zero,.NB0f0061b0
/* f006114: a22d0190 */ sb $t5,0x190($s1)
.NB0f006118:
/* f006118: 906e0002 */ lbu $t6,0x2($v1)
/* f00611c: c7a4006c */ lwc1 $f4,0x6c($sp)
/* f006120: 3c014f80 */ lui $at,0x4f80
/* f006124: 448e8000 */ mtc1 $t6,$f16
/* f006128: c7a60070 */ lwc1 $f6,0x70($sp)
/* f00612c: 05c10004 */ bgez $t6,.NB0f006140
/* f006130: 46808020 */ cvt.s.w $f0,$f16
/* f006134: 44819000 */ mtc1 $at,$f18
/* f006138: 00000000 */ sll $zero,$zero,0x0
/* f00613c: 46120000 */ add.s $f0,$f0,$f18
.NB0f006140:
/* f006140: 4604003e */ c.le.s $f0,$f4
/* f006144: c7b0006c */ lwc1 $f16,0x6c($sp)
/* f006148: 45020008 */ bc1fl .NB0f00616c
/* f00614c: 90780003 */ lbu $t8,0x3($v1)
/* f006150: 4600303c */ c.lt.s $f6,$f0
/* f006154: 240f0001 */ addiu $t7,$zero,0x1
/* f006158: 45020004 */ bc1fl .NB0f00616c
/* f00615c: 90780003 */ lbu $t8,0x3($v1)
/* f006160: 10000013 */ beqz $zero,.NB0f0061b0
/* f006164: a22f0190 */ sb $t7,0x190($s1)
/* f006168: 90780003 */ lbu $t8,0x3($v1)
.NB0f00616c:
/* f00616c: 3c014f80 */ lui $at,0x4f80
/* f006170: c7b20070 */ lwc1 $f18,0x70($sp)
/* f006174: 44984000 */ mtc1 $t8,$f8
/* f006178: 07010004 */ bgez $t8,.NB0f00618c
/* f00617c: 46804020 */ cvt.s.w $f0,$f8
/* f006180: 44815000 */ mtc1 $at,$f10
/* f006184: 00000000 */ sll $zero,$zero,0x0
/* f006188: 460a0000 */ add.s $f0,$f0,$f10
.NB0f00618c:
/* f00618c: 4610003e */ c.le.s $f0,$f16
/* f006190: 00000000 */ sll $zero,$zero,0x0
/* f006194: 45000006 */ bc1f .NB0f0061b0
/* f006198: 00000000 */ sll $zero,$zero,0x0
/* f00619c: 4600903c */ c.lt.s $f18,$f0
/* f0061a0: 24190002 */ addiu $t9,$zero,0x2
/* f0061a4: 45000002 */ bc1f .NB0f0061b0
/* f0061a8: 00000000 */ sll $zero,$zero,0x0
/* f0061ac: a2390190 */ sb $t9,0x190($s1)
.NB0f0061b0:
/* f0061b0: 0fc01771 */ jal 0xf005dc4
/* f0061b4: 02202025 */ or $a0,$s1,$zero
/* f0061b8: 2401ffff */ addiu $at,$zero,-1
/* f0061bc: 5041001a */ beql $v0,$at,.NB0f006228
/* f0061c0: 8e2c0020 */ lw $t4,0x20($s1)
/* f0061c4: 82280190 */ lb $t0,0x190($s1)
/* f0061c8: 3c01bf80 */ lui $at,0xbf80
/* f0061cc: 00002025 */ or $a0,$zero,$zero
/* f0061d0: 11000014 */ beqz $t0,.NB0f006224
/* f0061d4: 00023400 */ sll $a2,$v0,0x10
/* f0061d8: 8e25001c */ lw $a1,0x1c($s1)
/* f0061dc: 44810000 */ mtc1 $at,$f0
/* f0061e0: 00064c03 */ sra $t1,$a2,0x10
/* f0061e4: 240affff */ addiu $t2,$zero,-1
/* f0061e8: 240bffff */ addiu $t3,$zero,-1
/* f0061ec: afab002c */ sw $t3,0x2c($sp)
/* f0061f0: afaa0010 */ sw $t2,0x10($sp)
/* f0061f4: 01203025 */ or $a2,$t1,$zero
/* f0061f8: afa00028 */ sw $zero,0x28($sp)
/* f0061fc: afa00020 */ sw $zero,0x20($sp)
/* f006200: afa0001c */ sw $zero,0x1c($sp)
/* f006204: afa00018 */ sw $zero,0x18($sp)
/* f006208: afa00014 */ sw $zero,0x14($sp)
/* f00620c: 2407ffff */ addiu $a3,$zero,-1
/* f006210: e7a00024 */ swc1 $f0,0x24($sp)
/* f006214: e7a00030 */ swc1 $f0,0x30($sp)
/* f006218: e7a00034 */ swc1 $f0,0x34($sp)
/* f00621c: 0fc24762 */ jal 0xf091d88
/* f006220: e7a00038 */ swc1 $f0,0x38($sp)
.NB0f006224:
/* f006224: 8e2c0020 */ lw $t4,0x20($s1)
.NB0f006228:
/* f006228: ae30019c */ sw $s0,0x19c($s1)
/* f00622c: 3c013e80 */ lui $at,0x3e80
/* f006230: 8d8d0020 */ lw $t5,0x20($t4)
/* f006234: 44813000 */ mtc1 $at,$f6
/* f006238: c5a4001c */ lwc1 $f4,0x1c($t5)
/* f00623c: 46062202 */ mul.s $f8,$f4,$f6
/* f006240: 10000004 */ beqz $zero,.NB0f006254
/* f006244: e6280198 */ swc1 $f8,0x198($s1)
/* f006248: 26100001 */ addiu $s0,$s0,0x1
.NB0f00624c:
/* f00624c: 1601ff70 */ bne $s0,$at,.NB0f006010
/* f006250: 24630004 */ addiu $v1,$v1,0x4
.NB0f006254:
/* f006254: 8fbf004c */ lw $ra,0x4c($sp)
.NB0f006258:
/* f006258: 8fb00044 */ lw $s0,0x44($sp)
/* f00625c: 8fb10048 */ lw $s1,0x48($sp)
/* f006260: 03e00008 */ jr $ra
/* f006264: 27bd0078 */ addiu $sp,$sp,0x78
);
#endif
// Mismatch: load of 10.0f into $at is swapped with load of prevframe from stack
@@ -946,7 +1180,7 @@ glabel var7f1a7e6c
/* f0068e4: 03e00008 */ jr $ra
/* f0068e8: 00000000 */ nop
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f006520
.late_rodata
@@ -1223,4 +1457,279 @@ glabel var7f1a7e6c
/* f0068f8: 03e00008 */ jr $ra
/* f0068fc: 00000000 */ nop
);
#else
GLOBAL_ASM(
glabel func0f006520
.late_rodata
glabel var7f1a7e6c
.word 0x4a371b00
.text
/* f006268: 3c05800a */ lui $a1,0x800a
/* f00626c: 24a5e6c0 */ addiu $a1,$a1,-6464
/* f006270: 8cae0284 */ lw $t6,0x284($a1)
/* f006274: 27bdffa0 */ addiu $sp,$sp,-96
/* f006278: afbf004c */ sw $ra,0x4c($sp)
/* f00627c: afb00048 */ sw $s0,0x48($sp)
/* f006280: 8dc700bc */ lw $a3,0xbc($t6)
/* f006284: 00808025 */ or $s0,$a0,$zero
/* f006288: 0fc466d2 */ jal 0xf119b48
/* f00628c: afa70050 */ sw $a3,0x50($sp)
/* f006290: 3c05800a */ lui $a1,0x800a
/* f006294: 24a5e6c0 */ addiu $a1,$a1,-6464
/* f006298: 104000e4 */ beqz $v0,.NB0f00662c
/* f00629c: 8fa70050 */ lw $a3,0x50($sp)
/* f0062a0: 8caf006c */ lw $t7,0x6c($a1)
/* f0062a4: 24080001 */ addiu $t0,$zero,0x1
/* f0062a8: 00003025 */ or $a2,$zero,$zero
/* f0062ac: 11e00003 */ beqz $t7,.NB0f0062bc
/* f0062b0: 00001825 */ or $v1,$zero,$zero
/* f0062b4: 10000001 */ beqz $zero,.NB0f0062bc
/* f0062b8: 24060001 */ addiu $a2,$zero,0x1
.NB0f0062bc:
/* f0062bc: 8cb80068 */ lw $t8,0x68($a1)
/* f0062c0: 00002025 */ or $a0,$zero,$zero
/* f0062c4: 00001025 */ or $v0,$zero,$zero
/* f0062c8: 13000003 */ beqz $t8,.NB0f0062d8
/* f0062cc: 00000000 */ sll $zero,$zero,0x0
/* f0062d0: 10000001 */ beqz $zero,.NB0f0062d8
/* f0062d4: 24030001 */ addiu $v1,$zero,0x1
.NB0f0062d8:
/* f0062d8: 8cb90064 */ lw $t9,0x64($a1)
/* f0062dc: 13200003 */ beqz $t9,.NB0f0062ec
/* f0062e0: 00000000 */ sll $zero,$zero,0x0
/* f0062e4: 10000001 */ beqz $zero,.NB0f0062ec
/* f0062e8: 24040001 */ addiu $a0,$zero,0x1
.NB0f0062ec:
/* f0062ec: 8ca90070 */ lw $t1,0x70($a1)
/* f0062f0: 11200003 */ beqz $t1,.NB0f006300
/* f0062f4: 00000000 */ sll $zero,$zero,0x0
/* f0062f8: 10000001 */ beqz $zero,.NB0f006300
/* f0062fc: 24020001 */ addiu $v0,$zero,0x1
.NB0f006300:
/* f006300: 00445021 */ addu $t2,$v0,$a0
/* f006304: 01435821 */ addu $t3,$t2,$v1
/* f006308: 01666021 */ addu $t4,$t3,$a2
/* f00630c: 550c00c8 */ bnel $t0,$t4,.NB0f006630
/* f006310: 8fbf004c */ lw $ra,0x4c($sp)
/* f006314: 8e0d019c */ lw $t5,0x19c($s0)
/* f006318: 05a200c5 */ bltzl $t5,.NB0f006630
/* f00631c: 8fbf004c */ lw $ra,0x4c($sp)
/* f006320: 8cae0034 */ lw $t6,0x34($a1)
/* f006324: c6080198 */ lwc1 $f8,0x198($s0)
/* f006328: c6120194 */ lwc1 $f18,0x194($s0)
/* f00632c: 448e2000 */ mtc1 $t6,$f4
/* f006330: 8e02001c */ lw $v0,0x1c($s0)
/* f006334: 3c01437a */ lui $at,0x437a
/* f006338: 468021a0 */ cvt.s.w $f6,$f4
/* f00633c: 46083282 */ mul.s $f10,$f6,$f8
/* f006340: 460a9100 */ add.s $f4,$f18,$f10
/* f006344: 104000b9 */ beqz $v0,.NB0f00662c
/* f006348: e6040194 */ swc1 $f4,0x194($s0)
/* f00634c: c4f2000c */ lwc1 $f18,0xc($a3)
/* f006350: c44a000c */ lwc1 $f10,0xc($v0)
/* f006354: 44802000 */ mtc1 $zero,$f4
/* f006358: c4e60008 */ lwc1 $f6,0x8($a3)
/* f00635c: 460a9001 */ sub.s $f0,$f18,$f10
/* f006360: c4480008 */ lwc1 $f8,0x8($v0)
/* f006364: 44819000 */ mtc1 $at,$f18
/* f006368: 4604003c */ c.lt.s $f0,$f4
/* f00636c: 46083081 */ sub.s $f2,$f6,$f8
/* f006370: 45020003 */ bc1fl .NB0f006380
/* f006374: 4612003c */ c.lt.s $f0,$f18
/* f006378: 46000007 */ neg.s $f0,$f0
/* f00637c: 4612003c */ c.lt.s $f0,$f18
.NB0f006380:
/* f006380: c4e60010 */ lwc1 $f6,0x10($a3)
/* f006384: c4480010 */ lwc1 $f8,0x10($v0)
/* f006388: c60e0194 */ lwc1 $f14,0x194($s0)
/* f00638c: 8e05019c */ lw $a1,0x19c($s0)
/* f006390: c610018c */ lwc1 $f16,0x18c($s0)
/* f006394: a2000190 */ sb $zero,0x190($s0)
/* f006398: e60e018c */ swc1 $f14,0x18c($s0)
/* f00639c: 46083301 */ sub.s $f12,$f6,$f8
/* f0063a0: 45000088 */ bc1f .NB0f0065c4
/* f0063a4: afa5005c */ sw $a1,0x5c($sp)
/* f0063a8: 46021282 */ mul.s $f10,$f2,$f2
/* f0063ac: 3c017f1a */ lui $at,0x7f1a
/* f0063b0: c4281b0c */ lwc1 $f8,0x1b0c($at)
/* f0063b4: 460c6102 */ mul.s $f4,$f12,$f12
/* f0063b8: afa5005c */ sw $a1,0x5c($sp)
/* f0063bc: 02002025 */ or $a0,$s0,$zero
/* f0063c0: 46045180 */ add.s $f6,$f10,$f4
/* f0063c4: 4608303c */ c.lt.s $f6,$f8
/* f0063c8: 00000000 */ sll $zero,$zero,0x0
/* f0063cc: 4502007e */ bc1fl .NB0f0065c8
/* f0063d0: 8fa5005c */ lw $a1,0x5c($sp)
/* f0063d4: 12000003 */ beqz $s0,.NB0f0063e4
/* f0063d8: 00001025 */ or $v0,$zero,$zero
/* f0063dc: 10000001 */ beqz $zero,.NB0f0063e4
/* f0063e0: 920202fe */ lbu $v0,0x2fe($s0)
.NB0f0063e4:
/* f0063e4: 14480033 */ bne $v0,$t0,.NB0f0064b4
/* f0063e8: 00057880 */ sll $t7,$a1,0x2
/* f0063ec: 3c188006 */ lui $t8,0x8006
/* f0063f0: 030fc021 */ addu $t8,$t8,$t7
/* f0063f4: 97183ab0 */ lhu $t8,0x3ab0($t8)
/* f0063f8: 24010394 */ addiu $at,$zero,0x394
/* f0063fc: 1701002d */ bne $t8,$at,.NB0f0064b4
/* f006400: 3c014000 */ lui $at,0x4000
/* f006404: 44810000 */ mtc1 $at,$f0
/* f006408: 3c014188 */ lui $at,0x4188
/* f00640c: 460e003e */ c.le.s $f0,$f14
/* f006410: 00000000 */ sll $zero,$zero,0x0
/* f006414: 45020006 */ bc1fl .NB0f006430
/* f006418: 44810000 */ mtc1 $at,$f0
/* f00641c: 4600803c */ c.lt.s $f16,$f0
/* f006420: 00000000 */ sll $zero,$zero,0x0
/* f006424: 4501000b */ bc1t .NB0f006454
/* f006428: 00000000 */ sll $zero,$zero,0x0
/* f00642c: 44810000 */ mtc1 $at,$f0
.NB0f006430:
/* f006430: 3c014120 */ lui $at,0x4120
/* f006434: 460e003e */ c.le.s $f0,$f14
/* f006438: 00000000 */ sll $zero,$zero,0x0
/* f00643c: 45020008 */ bc1fl .NB0f006460
/* f006440: 44810000 */ mtc1 $at,$f0
/* f006444: 4600803c */ c.lt.s $f16,$f0
/* f006448: 00000000 */ sll $zero,$zero,0x0
/* f00644c: 45020004 */ bc1fl .NB0f006460
/* f006450: 44810000 */ mtc1 $at,$f0
.NB0f006454:
/* f006454: 1000003e */ beqz $zero,.NB0f006550
/* f006458: a2080190 */ sb $t0,0x190($s0)
/* f00645c: 44810000 */ mtc1 $at,$f0
.NB0f006460:
/* f006460: 3c0141c8 */ lui $at,0x41c8
/* f006464: 460e003e */ c.le.s $f0,$f14
/* f006468: 00000000 */ sll $zero,$zero,0x0
/* f00646c: 45020006 */ bc1fl .NB0f006488
/* f006470: 44810000 */ mtc1 $at,$f0
/* f006474: 4600803c */ c.lt.s $f16,$f0
/* f006478: 00000000 */ sll $zero,$zero,0x0
/* f00647c: 4503000b */ bc1tl .NB0f0064ac
/* f006480: 24190002 */ addiu $t9,$zero,0x2
/* f006484: 44810000 */ mtc1 $at,$f0
.NB0f006488:
/* f006488: 00000000 */ sll $zero,$zero,0x0
/* f00648c: 460e003e */ c.le.s $f0,$f14
/* f006490: 00000000 */ sll $zero,$zero,0x0
/* f006494: 4500002e */ bc1f .NB0f006550
/* f006498: 00000000 */ sll $zero,$zero,0x0
/* f00649c: 4600803c */ c.lt.s $f16,$f0
/* f0064a0: 00000000 */ sll $zero,$zero,0x0
/* f0064a4: 4500002a */ bc1f .NB0f006550
/* f0064a8: 24190002 */ addiu $t9,$zero,0x2
.NB0f0064ac:
/* f0064ac: 10000028 */ beqz $zero,.NB0f006550
/* f0064b0: a2190190 */ sb $t9,0x190($s0)
.NB0f0064b4:
/* f0064b4: 3c0a8006 */ lui $t2,0x8006
/* f0064b8: 254a3ab0 */ addiu $t2,$t2,0x3ab0
/* f0064bc: 00054880 */ sll $t1,$a1,0x2
/* f0064c0: 012a1021 */ addu $v0,$t1,$t2
/* f0064c4: 904b0002 */ lbu $t3,0x2($v0)
/* f0064c8: 3c014f80 */ lui $at,0x4f80
/* f0064cc: 448b9000 */ mtc1 $t3,$f18
/* f0064d0: 05610004 */ bgez $t3,.NB0f0064e4
/* f0064d4: 46809020 */ cvt.s.w $f0,$f18
/* f0064d8: 44815000 */ mtc1 $at,$f10
/* f0064dc: 00000000 */ sll $zero,$zero,0x0
/* f0064e0: 460a0000 */ add.s $f0,$f0,$f10
.NB0f0064e4:
/* f0064e4: 460e003e */ c.le.s $f0,$f14
/* f0064e8: 00000000 */ sll $zero,$zero,0x0
/* f0064ec: 45020008 */ bc1fl .NB0f006510
/* f0064f0: 904c0003 */ lbu $t4,0x3($v0)
/* f0064f4: 4600803c */ c.lt.s $f16,$f0
/* f0064f8: 00000000 */ sll $zero,$zero,0x0
/* f0064fc: 45020004 */ bc1fl .NB0f006510
/* f006500: 904c0003 */ lbu $t4,0x3($v0)
/* f006504: 10000012 */ beqz $zero,.NB0f006550
/* f006508: a2080190 */ sb $t0,0x190($s0)
/* f00650c: 904c0003 */ lbu $t4,0x3($v0)
.NB0f006510:
/* f006510: 3c014f80 */ lui $at,0x4f80
/* f006514: 448c2000 */ mtc1 $t4,$f4
/* f006518: 05810004 */ bgez $t4,.NB0f00652c
/* f00651c: 46802020 */ cvt.s.w $f0,$f4
/* f006520: 44813000 */ mtc1 $at,$f6
/* f006524: 00000000 */ sll $zero,$zero,0x0
/* f006528: 46060000 */ add.s $f0,$f0,$f6
.NB0f00652c:
/* f00652c: 460e003e */ c.le.s $f0,$f14
/* f006530: 00000000 */ sll $zero,$zero,0x0
/* f006534: 45000006 */ bc1f .NB0f006550
/* f006538: 00000000 */ sll $zero,$zero,0x0
/* f00653c: 4600803c */ c.lt.s $f16,$f0
/* f006540: 240d0002 */ addiu $t5,$zero,0x2
/* f006544: 45000002 */ bc1f .NB0f006550
/* f006548: 00000000 */ sll $zero,$zero,0x0
/* f00654c: a20d0190 */ sb $t5,0x190($s0)
.NB0f006550:
/* f006550: 0fc01771 */ jal 0xf005dc4
/* f006554: afa5005c */ sw $a1,0x5c($sp)
/* f006558: 2401ffff */ addiu $at,$zero,-1
/* f00655c: 5041001a */ beql $v0,$at,.NB0f0065c8
/* f006560: 8fa5005c */ lw $a1,0x5c($sp)
/* f006564: 820e0190 */ lb $t6,0x190($s0)
/* f006568: 3c01bf80 */ lui $at,0xbf80
/* f00656c: 00002025 */ or $a0,$zero,$zero
/* f006570: 11c00014 */ beqz $t6,.NB0f0065c4
/* f006574: 00023400 */ sll $a2,$v0,0x10
/* f006578: 8e05001c */ lw $a1,0x1c($s0)
/* f00657c: 44810000 */ mtc1 $at,$f0
/* f006580: 00067c03 */ sra $t7,$a2,0x10
/* f006584: 2418ffff */ addiu $t8,$zero,-1
/* f006588: 2419ffff */ addiu $t9,$zero,-1
/* f00658c: afb9002c */ sw $t9,0x2c($sp)
/* f006590: afb80010 */ sw $t8,0x10($sp)
/* f006594: 01e03025 */ or $a2,$t7,$zero
/* f006598: afa00028 */ sw $zero,0x28($sp)
/* f00659c: afa00020 */ sw $zero,0x20($sp)
/* f0065a0: afa0001c */ sw $zero,0x1c($sp)
/* f0065a4: afa00018 */ sw $zero,0x18($sp)
/* f0065a8: afa00014 */ sw $zero,0x14($sp)
/* f0065ac: 2407ffff */ addiu $a3,$zero,-1
/* f0065b0: e7a00024 */ swc1 $f0,0x24($sp)
/* f0065b4: e7a00030 */ swc1 $f0,0x30($sp)
/* f0065b8: e7a00034 */ swc1 $f0,0x34($sp)
/* f0065bc: 0fc24762 */ jal 0xf091d88
/* f0065c0: e7a00038 */ swc1 $f0,0x38($sp)
.NB0f0065c4:
/* f0065c4: 8fa5005c */ lw $a1,0x5c($sp)
.NB0f0065c8:
/* f0065c8: 3c048006 */ lui $a0,0x8006
/* f0065cc: 00054880 */ sll $t1,$a1,0x2
/* f0065d0: 00892021 */ addu $a0,$a0,$t1
/* f0065d4: 0fc01748 */ jal 0xf005d20
/* f0065d8: 94843ab0 */ lhu $a0,0x3ab0($a0)
/* f0065dc: 1040000b */ beqz $v0,.NB0f00660c
/* f0065e0: 3c014208 */ lui $at,0x4208
/* f0065e4: 3c0141b0 */ lui $at,0x41b0
/* f0065e8: 44811000 */ mtc1 $at,$f2
/* f0065ec: c6000194 */ lwc1 $f0,0x194($s0)
/* f0065f0: 4600103c */ c.lt.s $f2,$f0
/* f0065f4: 00000000 */ sll $zero,$zero,0x0
/* f0065f8: 4502000d */ bc1fl .NB0f006630
/* f0065fc: 8fbf004c */ lw $ra,0x4c($sp)
/* f006600: 46020201 */ sub.s $f8,$f0,$f2
/* f006604: 10000009 */ beqz $zero,.NB0f00662c
/* f006608: e6080194 */ swc1 $f8,0x194($s0)
.NB0f00660c:
/* f00660c: 44811000 */ mtc1 $at,$f2
/* f006610: c6000194 */ lwc1 $f0,0x194($s0)
/* f006614: 4600103c */ c.lt.s $f2,$f0
/* f006618: 00000000 */ sll $zero,$zero,0x0
/* f00661c: 45020004 */ bc1fl .NB0f006630
/* f006620: 8fbf004c */ lw $ra,0x4c($sp)
/* f006624: 46020481 */ sub.s $f18,$f0,$f2
/* f006628: e6120194 */ swc1 $f18,0x194($s0)
.NB0f00662c:
/* f00662c: 8fbf004c */ lw $ra,0x4c($sp)
.NB0f006630:
/* f006630: 8fb00048 */ lw $s0,0x48($sp)
/* f006634: 27bd0060 */ addiu $sp,$sp,0x60
/* f006638: 03e00008 */ jr $ra
/* f00663c: 00000000 */ sll $zero,$zero,0x0
);
#endif
+22
View File
@@ -147,3 +147,25 @@ glabel func0f006ba0
/* f006bc8: 03e00008 */ jr $ra
/* f006bcc: 46001006 */ mov.s $f0,$f2
);
#if VERSION < VERSION_NTSC_1_0
f32 func0f006bd0(f32 arg0)
{
s32 ival = arg0 * 4.0f;
f32 fval = arg0 * 4.0f - (f32)(ival / 4) * 4.0f;
if (fval < 1.0f) {
return fval;
}
if (fval < 2.0f) {
return 1.0f;
}
if (fval < 3.0f) {
return 1.0f - (fval - 2.0f);
}
return 0.0f;
}
#endif
+3
View File
@@ -24,6 +24,8 @@
#include "data.h"
#include "types.h"
#if VERSION >= VERSION_NTSC_1_0
// In ntsc-bta, this function is in a different file
f32 func0f006bd0(f32 arg0)
{
s32 ival = arg0 * 4.0f;
@@ -43,3 +45,4 @@ f32 func0f006bd0(f32 arg0)
return 0.0f;
}
#endif
+19 -1
View File
@@ -907,10 +907,27 @@ void weaponAssignToHome(struct weaponobj *weapon, s32 cmdindex)
if (chr && chr->prop && chr->model) {
if (cheatIsActive(CHEAT_MARQUIS)) {
// NTSC 1.0 and newer simplifies the Marqis logic
#if VERSION >= VERSION_NTSC_1_0
weapon->base.flags &= ~OBJFLAG_DEACTIVATED;
weapon->base.flags |= OBJFLAG_20000000;
weaponLoadProjectileModels(weapon->weaponnum);
func0f08b25c(weapon, chr);
#else
if (g_Vars.stagenum == STAGE_INVESTIGATION
&& coreGetDifficulty() == DIFF_PA
&& weapon->weaponnum == WEAPON_K7AVENGER) {
weaponLoadProjectileModels(weapon->weaponnum);
func0f08b25c(weapon, chr);
} else if (g_Vars.stagenum == STAGE_ATTACKSHIP) {
weapon->base.flags &= ~OBJFLAG_DEACTIVATED;
weapon->base.flags |= OBJFLAG_20000000;
weaponLoadProjectileModels(weapon->weaponnum);
func0f08b25c(weapon, chr);
} else {
weapon->weaponnum = WEAPON_NONE;
}
#endif
} else {
if (cheatIsActive(CHEAT_ENEMYROCKETS)) {
switch (weapon->weaponnum) {
@@ -951,7 +968,8 @@ void weaponAssignToHome(struct weaponobj *weapon, s32 cmdindex)
break;
case WEAPON_K7AVENGER:
// Don't replace the K7 guard's weapon in Investigation
// because it would make an objective impossible
// because it would make an objective impossible.
// @bug: It's still replaced on PD mode difficulty.
if (g_Vars.stagenum != STAGE_INVESTIGATION || coreGetDifficulty() != DIFF_PA) {
weapon->weaponnum = WEAPON_ROCKETLAUNCHER;
weapon->base.modelnum = MODEL_CHRDYROCKET;
+814 -1
View File
@@ -1280,7 +1280,7 @@ glabel var7f1a827c
/* f012468: 03e00008 */ jr $ra
/* f01246c: 27bd00a8 */ addiu $sp,$sp,0xa8
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel currentPlayerInit
.late_rodata
@@ -2101,6 +2101,819 @@ glabel var7f1a827c
/* f012444: 03e00008 */ jr $ra
/* f012448: 27bd00a8 */ addiu $sp,$sp,0xa8
);
#else
GLOBAL_ASM(
glabel currentPlayerInit
.late_rodata
glabel var7f1a8240
.word currentPlayerInit+0x150 # f011a44
glabel var7f1a8244
.word currentPlayerInit+0x19c # f011a90
glabel var7f1a8248
.word currentPlayerInit+0x244 # f011b38
glabel var7f1a824c
.word currentPlayerInit+0x274 # f011b68
glabel var7f1a8250
.word currentPlayerInit+0x27c # f011b70
glabel var7f1a8254
.word currentPlayerInit+0x284 # f011b78
glabel var7f1a8258
.word currentPlayerInit+0x298 # f011b8c
glabel var7f1a825c
.word currentPlayerInit+0x2a0 # f011b94
glabel var7f1a8260
.word currentPlayerInit+0x33c # f011c30
glabel var7f1a8264
.word currentPlayerInit+0x18c # f011a80
glabel var7f1a8268
.word currentPlayerInit+0x18c # f011a80
glabel var7f1a826c
.word currentPlayerInit+0x194 # f011a88
glabel var7f1a8270
.word 0x40c907a9
glabel var7f1a8274
.word 0x40c907a9
glabel var7f1a8278
.word 0x40c907a9
glabel var7f1a827c
.word 0x40c907a9
.text
/* f011634: 27bdff58 */ addiu $sp,$sp,-168
/* f011638: 3c0f8006 */ lui $t7,0x8006
/* f01163c: afbf0034 */ sw $ra,0x34($sp)
/* f011640: afb10030 */ sw $s1,0x30($sp)
/* f011644: afb0002c */ sw $s0,0x2c($sp)
/* f011648: 25ef48b4 */ addiu $t7,$t7,0x48b4
/* f01164c: 8de10000 */ lw $at,0x0($t7)
/* f011650: 27ae009c */ addiu $t6,$sp,0x9c
/* f011654: 8de90004 */ lw $t1,0x4($t7)
/* f011658: adc10000 */ sw $at,0x0($t6)
/* f01165c: 8de10008 */ lw $at,0x8($t7)
/* f011660: adc90004 */ sw $t1,0x4($t6)
/* f011664: 44802000 */ mtc1 $zero,$f4
/* f011668: adc10008 */ sw $at,0x8($t6)
/* f01166c: 3c10800a */ lui $s0,0x800a
/* f011670: afa00080 */ sw $zero,0x80($sp)
/* f011674: 8e10176c */ lw $s0,0x176c($s0)
/* f011678: a3a0007b */ sb $zero,0x7b($sp)
/* f01167c: 0fc2e831 */ jal 0xf0ba0c4
/* f011680: e7a40088 */ swc1 $f4,0x88($sp)
/* f011684: 0fc621c6 */ jal 0xf188718
/* f011688: 00000000 */ sll $zero,$zero,0x0
/* f01168c: 3c018007 */ lui $at,0x8007
/* f011690: ac202e24 */ sw $zero,0x2e24($at)
/* f011694: 3c01800a */ lui $at,0x800a
/* f011698: ac202600 */ sw $zero,0x2600($at)
/* f01169c: 24030001 */ addiu $v1,$zero,0x1
/* f0116a0: 3c018007 */ lui $at,0x8007
/* f0116a4: ac232dec */ sw $v1,0x2dec($at)
/* f0116a8: 3c018007 */ lui $at,0x8007
/* f0116ac: ac202df8 */ sw $zero,0x2df8($at)
/* f0116b0: 3c018007 */ lui $at,0x8007
/* f0116b4: ac202dfc */ sw $zero,0x2dfc($at)
/* f0116b8: 3c11800a */ lui $s1,0x800a
/* f0116bc: 3c018007 */ lui $at,0x8007
/* f0116c0: 2631e6c0 */ addiu $s1,$s1,-6464
/* f0116c4: ac202e00 */ sw $zero,0x2e00($at)
/* f0116c8: 8e2a0284 */ lw $t2,0x284($s1)
/* f0116cc: 3c01800a */ lui $at,0x800a
/* f0116d0: 3c028007 */ lui $v0,0x8007
/* f0116d4: ad401bf0 */ sw $zero,0x1bf0($t2)
/* f0116d8: ac202648 */ sw $zero,0x2648($at)
/* f0116dc: 8e2b0284 */ lw $t3,0x284($s1)
/* f0116e0: 24422e10 */ addiu $v0,$v0,0x2e10
/* f0116e4: 3c018007 */ lui $at,0x8007
/* f0116e8: ad601b78 */ sw $zero,0x1b78($t3)
/* f0116ec: 8e2c0284 */ lw $t4,0x284($s1)
/* f0116f0: 00002025 */ or $a0,$zero,$zero
/* f0116f4: ad801bd4 */ sw $zero,0x1bd4($t4)
/* f0116f8: ac430000 */ sw $v1,0x0($v0)
/* f0116fc: ac430004 */ sw $v1,0x4($v0)
/* f011700: ac430008 */ sw $v1,0x8($v0)
/* f011704: ac43000c */ sw $v1,0xc($v0)
/* f011708: 0fc2dcc6 */ jal 0xf0b7318
/* f01170c: ac202e20 */ sw $zero,0x2e20($at)
/* f011710: 3c018007 */ lui $at,0x8007
/* f011714: ac202e04 */ sw $zero,0x2e04($at)
/* f011718: 3c018007 */ lui $at,0x8007
/* f01171c: ac202e08 */ sw $zero,0x2e08($at)
/* f011720: 3c018007 */ lui $at,0x8007
/* f011724: ac202e0c */ sw $zero,0x2e0c($at)
/* f011728: 8e2d0284 */ lw $t5,0x284($s1)
/* f01172c: 44803000 */ mtc1 $zero,$f6
/* f011730: 3c01800a */ lui $at,0x800a
/* f011734: ada01b7c */ sw $zero,0x1b7c($t5)
/* f011738: 8e390284 */ lw $t9,0x284($s1)
/* f01173c: e7261b80 */ swc1 $f6,0x1b80($t9)
/* f011740: 8e380284 */ lw $t8,0x284($s1)
/* f011744: af001b88 */ sw $zero,0x1b88($t8)
/* f011748: ac2025b4 */ sw $zero,0x25b4($at)
/* f01174c: 3c01800a */ lui $at,0x800a
/* f011750: 120000a1 */ beqz $s0,.NB0f0119d8
/* f011754: ac2025b0 */ sw $zero,0x25b0($at)
/* f011758: 8e020000 */ lw $v0,0x0($s0)
/* f01175c: 2401000c */ addiu $at,$zero,0xc
/* f011760: 1041009d */ beq $v0,$at,.NB0f0119d8
/* f011764: 2c41000c */ sltiu $at,$v0,0xc
.NB0f011768:
/* f011768: 10200096 */ beqz $at,.NB0f0119c4
/* f01176c: 00027080 */ sll $t6,$v0,0x2
/* f011770: 3c017f1a */ lui $at,0x7f1a
/* f011774: 002e0821 */ addu $at,$at,$t6
/* f011778: 8c2e1ee0 */ lw $t6,0x1ee0($at)
/* f01177c: 01c00008 */ jr $t6
/* f011780: 00000000 */ sll $zero,$zero,0x0
/* f011784: 8e0f0008 */ lw $t7,0x8($s0)
/* f011788: 3c02800a */ lui $v0,0x800a
/* f01178c: 15e0000a */ bnez $t7,.NB0f0117b8
/* f011790: 00000000 */ sll $zero,$zero,0x0
/* f011794: 8c422648 */ lw $v0,0x2648($v0)
/* f011798: 8e090004 */ lw $t1,0x4($s0)
/* f01179c: 3c01800a */ lui $at,0x800a
/* f0117a0: 00025040 */ sll $t2,$v0,0x1
/* f0117a4: 002a0821 */ addu $at,$at,$t2
/* f0117a8: a4292618 */ sh $t1,0x2618($at)
/* f0117ac: 3c01800a */ lui $at,0x800a
/* f0117b0: 244b0001 */ addiu $t3,$v0,0x1
/* f0117b4: ac2b2648 */ sw $t3,0x2648($at)
.NB0f0117b8:
/* f0117b8: 10000083 */ beqz $zero,.NB0f0119c8
/* f0117bc: 2610000c */ addiu $s0,$s0,0xc
/* f0117c0: 10000081 */ beqz $zero,.NB0f0119c8
/* f0117c4: 2610000c */ addiu $s0,$s0,0xc
/* f0117c8: 1000007f */ beqz $zero,.NB0f0119c8
/* f0117cc: 26100008 */ addiu $s0,$s0,0x8
/* f0117d0: 8e0c000c */ lw $t4,0xc($s0)
/* f0117d4: 15800026 */ bnez $t4,.NB0f011870
/* f0117d8: 00000000 */ sll $zero,$zero,0x0
/* f0117dc: 8e2d02a8 */ lw $t5,0x2a8($s1)
/* f0117e0: 8e390284 */ lw $t9,0x284($s1)
/* f0117e4: 11b90022 */ beq $t5,$t9,.NB0f011870
/* f0117e8: 00000000 */ sll $zero,$zero,0x0
/* f0117ec: 0fc044a8 */ jal 0xf0112a0
/* f0117f0: 8e040004 */ lw $a0,0x4($s0)
/* f0117f4: 8e040008 */ lw $a0,0x8($s0)
/* f0117f8: 04800008 */ bltz $a0,.NB0f01181c
/* f0117fc: 00000000 */ sll $zero,$zero,0x0
/* f011800: 0fc044a8 */ jal 0xf0112a0
/* f011804: 00000000 */ sll $zero,$zero,0x0
/* f011808: 8e040004 */ lw $a0,0x4($s0)
/* f01180c: 0fc430a2 */ jal 0xf10c288
/* f011810: 8e050008 */ lw $a1,0x8($s0)
/* f011814: 10000004 */ beqz $zero,.NB0f011828
/* f011818: 8fb80080 */ lw $t8,0x80($sp)
.NB0f01181c:
/* f01181c: 0fc4307a */ jal 0xf10c1e8
/* f011820: 8e040004 */ lw $a0,0x4($s0)
/* f011824: 8fb80080 */ lw $t8,0x80($sp)
.NB0f011828:
/* f011828: 240a0001 */ addiu $t2,$zero,0x1
/* f01182c: 5700000c */ bnezl $t8,.NB0f011860
/* f011830: 8e090004 */ lw $t1,0x4($s0)
/* f011834: 8e0e0004 */ lw $t6,0x4($s0)
/* f011838: 3c01800a */ lui $at,0x800a
/* f01183c: 240f0001 */ addiu $t7,$zero,0x1
/* f011840: ac2e25b0 */ sw $t6,0x25b0($at)
/* f011844: 8e040008 */ lw $a0,0x8($s0)
/* f011848: afaf0080 */ sw $t7,0x80($sp)
/* f01184c: 3c01800a */ lui $at,0x800a
/* f011850: 04820003 */ bltzl $a0,.NB0f011860
/* f011854: 8e090004 */ lw $t1,0x4($s0)
/* f011858: ac2425b4 */ sw $a0,0x25b4($at)
/* f01185c: 8e090004 */ lw $t1,0x4($s0)
.NB0f011860:
/* f011860: 2401002e */ addiu $at,$zero,0x2e
/* f011864: 15210002 */ bne $t1,$at,.NB0f011870
/* f011868: 00000000 */ sll $zero,$zero,0x0
/* f01186c: a3aa007b */ sb $t2,0x7b($sp)
.NB0f011870:
/* f011870: 10000055 */ beqz $zero,.NB0f0119c8
/* f011874: 26100010 */ addiu $s0,$s0,0x10
/* f011878: 8e0b000c */ lw $t3,0xc($s0)
/* f01187c: 15600008 */ bnez $t3,.NB0f0118a0
/* f011880: 00000000 */ sll $zero,$zero,0x0
/* f011884: 8e2c02a8 */ lw $t4,0x2a8($s1)
/* f011888: 8e2d0284 */ lw $t5,0x284($s1)
/* f01188c: 118d0004 */ beq $t4,$t5,.NB0f0118a0
/* f011890: 00000000 */ sll $zero,$zero,0x0
/* f011894: 8e040004 */ lw $a0,0x4($s0)
/* f011898: 0fc29cf2 */ jal 0xf0a73c8
/* f01189c: 8e050008 */ lw $a1,0x8($s0)
.NB0f0118a0:
/* f0118a0: 10000049 */ beqz $zero,.NB0f0119c8
/* f0118a4: 26100010 */ addiu $s0,$s0,0x10
/* f0118a8: 10000047 */ beqz $zero,.NB0f0119c8
/* f0118ac: 26100020 */ addiu $s0,$s0,0x20
/* f0118b0: 10000045 */ beqz $zero,.NB0f0119c8
/* f0118b4: 26100008 */ addiu $s0,$s0,0x8
/* f0118b8: 8e190004 */ lw $t9,0x4($s0)
/* f0118bc: 8e380284 */ lw $t8,0x284($s1)
/* f0118c0: 26100008 */ addiu $s0,$s0,0x8
/* f0118c4: 10000040 */ beqz $zero,.NB0f0119c8
/* f0118c8: af190324 */ sw $t9,0x324($t8)
/* f0118cc: 1000003e */ beqz $zero,.NB0f0119c8
/* f0118d0: 26100028 */ addiu $s0,$s0,0x28
/* f0118d4: 44804000 */ mtc1 $zero,$f8
/* f0118d8: 8e2e0284 */ lw $t6,0x284($s1)
/* f0118dc: 2401003c */ addiu $at,$zero,0x3c
/* f0118e0: e5c81b80 */ swc1 $f8,0x1b80($t6)
/* f0118e4: 8e040008 */ lw $a0,0x8($s0)
/* f0118e8: 5880000f */ blezl $a0,.NB0f011928
/* f0118ec: 8e030004 */ lw $v1,0x4($s0)
/* f0118f0: 0081001a */ div $zero,$a0,$at
/* f0118f4: 00007810 */ mfhi $t7
/* f0118f8: 000f48c0 */ sll $t1,$t7,0x3
/* f0118fc: 012f4823 */ subu $t1,$t1,$t7
/* f011900: 00094940 */ sll $t1,$t1,0x5
/* f011904: 012f4821 */ addu $t1,$t1,$t7
/* f011908: 00094900 */ sll $t1,$t1,0x4
/* f01190c: 44898000 */ mtc1 $t1,$f16
/* f011910: 8e220284 */ lw $v0,0x284($s1)
/* f011914: 468084a0 */ cvt.s.w $f18,$f16
/* f011918: c44a1b80 */ lwc1 $f10,0x1b80($v0)
/* f01191c: 46125100 */ add.s $f4,$f10,$f18
/* f011920: e4441b80 */ swc1 $f4,0x1b80($v0)
/* f011924: 8e030004 */ lw $v1,0x4($s0)
.NB0f011928:
/* f011928: 2401000c */ addiu $at,$zero,0xc
/* f01192c: 1860000e */ blez $v1,.NB0f011968
/* f011930: 00000000 */ sll $zero,$zero,0x0
/* f011934: 0061001a */ div $zero,$v1,$at
/* f011938: 00005010 */ mfhi $t2
/* f01193c: 3c010003 */ lui $at,0x3
/* f011940: 34214bc0 */ ori $at,$at,0x4bc0
/* f011944: 01410019 */ multu $t2,$at
/* f011948: 8e220284 */ lw $v0,0x284($s1)
/* f01194c: c4461b80 */ lwc1 $f6,0x1b80($v0)
/* f011950: 00005812 */ mflo $t3
/* f011954: 448b4000 */ mtc1 $t3,$f8
/* f011958: 00000000 */ sll $zero,$zero,0x0
/* f01195c: 46804420 */ cvt.s.w $f16,$f8
/* f011960: 46103280 */ add.s $f10,$f6,$f16
/* f011964: e44a1b80 */ swc1 $f10,0x1b80($v0)
.NB0f011968:
/* f011968: 10000017 */ beqz $zero,.NB0f0119c8
/* f01196c: 2610000c */ addiu $s0,$s0,0xc
/* f011970: 3c0c800a */ lui $t4,0x800a
/* f011974: 8d8c1780 */ lw $t4,0x1780($t4)
/* f011978: 8e0d0004 */ lw $t5,0x4($s0)
/* f01197c: 3c018007 */ lui $at,0x8007
/* f011980: 018d1021 */ addu $v0,$t4,$t5
/* f011984: ac222e00 */ sw $v0,0x2e00($at)
/* f011988: 94590000 */ lhu $t9,0x0($v0)
/* f01198c: 57200005 */ bnezl $t9,.NB0f0119a4
/* f011990: 944e000c */ lhu $t6,0xc($v0)
/* f011994: 94580002 */ lhu $t8,0x2($v0)
/* f011998: 13000008 */ beqz $t8,.NB0f0119bc
/* f01199c: 00000000 */ sll $zero,$zero,0x0
/* f0119a0: 944e000c */ lhu $t6,0xc($v0)
.NB0f0119a4:
/* f0119a4: 2442000c */ addiu $v0,$v0,0xc
/* f0119a8: 55c0fffe */ bnezl $t6,.NB0f0119a4
/* f0119ac: 944e000c */ lhu $t6,0xc($v0)
/* f0119b0: 944f0002 */ lhu $t7,0x2($v0)
/* f0119b4: 55e0fffb */ bnezl $t7,.NB0f0119a4
/* f0119b8: 944e000c */ lhu $t6,0xc($v0)
.NB0f0119bc:
/* f0119bc: 10000002 */ beqz $zero,.NB0f0119c8
/* f0119c0: 26100008 */ addiu $s0,$s0,0x8
.NB0f0119c4:
/* f0119c4: 26100004 */ addiu $s0,$s0,0x4
.NB0f0119c8:
/* f0119c8: 8e020000 */ lw $v0,0x0($s0)
/* f0119cc: 2401000c */ addiu $at,$zero,0xc
/* f0119d0: 5441ff65 */ bnel $v0,$at,.NB0f011768
/* f0119d4: 2c41000c */ sltiu $at,$v0,0xc
.NB0f0119d8:
/* f0119d8: 0fc4307a */ jal 0xf10c1e8
/* f0119dc: 24040001 */ addiu $a0,$zero,0x1
/* f0119e0: 0fc40ab9 */ jal 0xf102ae4
/* f0119e4: 24040008 */ addiu $a0,$zero,0x8
/* f0119e8: 10400006 */ beqz $v0,.NB0f011a04
/* f0119ec: 00000000 */ sll $zero,$zero,0x0
/* f0119f0: 0fc4307a */ jal 0xf10c1e8
/* f0119f4: 24040009 */ addiu $a0,$zero,0x9
/* f0119f8: 2404000a */ addiu $a0,$zero,0xa
/* f0119fc: 0fc29cf2 */ jal 0xf0a73c8
/* f011a00: 24050050 */ addiu $a1,$zero,0x50
.NB0f011a04:
/* f011a04: 0fc40ab9 */ jal 0xf102ae4
/* f011a08: 24040009 */ addiu $a0,$zero,0x9
/* f011a0c: 10400006 */ beqz $v0,.NB0f011a28
/* f011a10: 00000000 */ sll $zero,$zero,0x0
/* f011a14: 0fc4307a */ jal 0xf10c1e8
/* f011a18: 24040016 */ addiu $a0,$zero,0x16
/* f011a1c: 24040006 */ addiu $a0,$zero,0x6
/* f011a20: 0fc29cf2 */ jal 0xf0a73c8
/* f011a24: 24050050 */ addiu $a1,$zero,0x50
.NB0f011a28:
/* f011a28: 0fc40ab9 */ jal 0xf102ae4
/* f011a2c: 24040001 */ addiu $a0,$zero,0x1
/* f011a30: 10400006 */ beqz $v0,.NB0f011a4c
/* f011a34: 00000000 */ sll $zero,$zero,0x0
/* f011a38: 0fc4307a */ jal 0xf10c1e8
/* f011a3c: 24040031 */ addiu $a0,$zero,0x31
/* f011a40: 24040014 */ addiu $a0,$zero,0x14
/* f011a44: 0fc29cf2 */ jal 0xf0a73c8
/* f011a48: 24051c20 */ addiu $a1,$zero,0x1c20
.NB0f011a4c:
/* f011a4c: 0fc40ab9 */ jal 0xf102ae4
/* f011a50: 24040015 */ addiu $a0,$zero,0x15
/* f011a54: 10400003 */ beqz $v0,.NB0f011a64
/* f011a58: 00000000 */ sll $zero,$zero,0x0
/* f011a5c: 0fc4307a */ jal 0xf10c1e8
/* f011a60: 2404002d */ addiu $a0,$zero,0x2d
.NB0f011a64:
/* f011a64: 0fc40ab9 */ jal 0xf102ae4
/* f011a68: 2404001a */ addiu $a0,$zero,0x1a
/* f011a6c: 10400003 */ beqz $v0,.NB0f011a7c
/* f011a70: 00000000 */ sll $zero,$zero,0x0
/* f011a74: 0fc4307a */ jal 0xf10c1e8
/* f011a78: 24040037 */ addiu $a0,$zero,0x37
.NB0f011a7c:
/* f011a7c: 0fc40ab9 */ jal 0xf102ae4
/* f011a80: 2404001b */ addiu $a0,$zero,0x1b
/* f011a84: 10400006 */ beqz $v0,.NB0f011aa0
/* f011a88: 00000000 */ sll $zero,$zero,0x0
/* f011a8c: 0fc4307a */ jal 0xf10c1e8
/* f011a90: 24040018 */ addiu $a0,$zero,0x18
/* f011a94: 24040008 */ addiu $a0,$zero,0x8
/* f011a98: 0fc29cf2 */ jal 0xf0a73c8
/* f011a9c: 2405000a */ addiu $a1,$zero,0xa
.NB0f011aa0:
/* f011aa0: 0fc40ab9 */ jal 0xf102ae4
/* f011aa4: 2404001c */ addiu $a0,$zero,0x1c
/* f011aa8: 10400006 */ beqz $v0,.NB0f011ac4
/* f011aac: 00000000 */ sll $zero,$zero,0x0
/* f011ab0: 0fc4307a */ jal 0xf10c1e8
/* f011ab4: 24040015 */ addiu $a0,$zero,0x15
/* f011ab8: 24040004 */ addiu $a0,$zero,0x4
/* f011abc: 0fc29cf2 */ jal 0xf0a73c8
/* f011ac0: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011ac4:
/* f011ac4: 0fc40ab9 */ jal 0xf102ae4
/* f011ac8: 2404001d */ addiu $a0,$zero,0x1d
/* f011acc: 10400003 */ beqz $v0,.NB0f011adc
/* f011ad0: 00000000 */ sll $zero,$zero,0x0
/* f011ad4: 0fc4307a */ jal 0xf10c1e8
/* f011ad8: 2404002f */ addiu $a0,$zero,0x2f
.NB0f011adc:
/* f011adc: 0fc40ab9 */ jal 0xf102ae4
/* f011ae0: 2404001e */ addiu $a0,$zero,0x1e
/* f011ae4: 10400009 */ beqz $v0,.NB0f011b0c
/* f011ae8: 00000000 */ sll $zero,$zero,0x0
/* f011aec: 0fc4307a */ jal 0xf10c1e8
/* f011af0: 24040012 */ addiu $a0,$zero,0x12
/* f011af4: 24040004 */ addiu $a0,$zero,0x4
/* f011af8: 0fc29cf2 */ jal 0xf0a73c8
/* f011afc: 240500c8 */ addiu $a1,$zero,0xc8
/* f011b00: 2404000b */ addiu $a0,$zero,0xb
/* f011b04: 0fc29cf2 */ jal 0xf0a73c8
/* f011b08: 24050014 */ addiu $a1,$zero,0x14
.NB0f011b0c:
/* f011b0c: 0fc40ab9 */ jal 0xf102ae4
/* f011b10: 2404001f */ addiu $a0,$zero,0x1f
/* f011b14: 10400006 */ beqz $v0,.NB0f011b30
/* f011b18: 00000000 */ sll $zero,$zero,0x0
/* f011b1c: 0fc4307a */ jal 0xf10c1e8
/* f011b20: 2404000e */ addiu $a0,$zero,0xe
/* f011b24: 24040002 */ addiu $a0,$zero,0x2
/* f011b28: 0fc29cf2 */ jal 0xf0a73c8
/* f011b2c: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011b30:
/* f011b30: 0fc40ab9 */ jal 0xf102ae4
/* f011b34: 24040020 */ addiu $a0,$zero,0x20
/* f011b38: 10400006 */ beqz $v0,.NB0f011b54
/* f011b3c: 00000000 */ sll $zero,$zero,0x0
/* f011b40: 0fc4307a */ jal 0xf10c1e8
/* f011b44: 24040007 */ addiu $a0,$zero,0x7
/* f011b48: 24040001 */ addiu $a0,$zero,0x1
/* f011b4c: 0fc29cf2 */ jal 0xf0a73c8
/* f011b50: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011b54:
/* f011b54: 0fc40ab9 */ jal 0xf102ae4
/* f011b58: 24040021 */ addiu $a0,$zero,0x21
/* f011b5c: 10400006 */ beqz $v0,.NB0f011b78
/* f011b60: 00000000 */ sll $zero,$zero,0x0
/* f011b64: 0fc4307a */ jal 0xf10c1e8
/* f011b68: 2404002c */ addiu $a0,$zero,0x2c
/* f011b6c: 24040016 */ addiu $a0,$zero,0x16
/* f011b70: 0fc29cf2 */ jal 0xf0a73c8
/* f011b74: 24050004 */ addiu $a1,$zero,0x4
.NB0f011b78:
/* f011b78: 0fc40ab9 */ jal 0xf102ae4
/* f011b7c: 24040022 */ addiu $a0,$zero,0x22
/* f011b80: 10400006 */ beqz $v0,.NB0f011b9c
/* f011b84: 00000000 */ sll $zero,$zero,0x0
/* f011b88: 0fc4307a */ jal 0xf10c1e8
/* f011b8c: 24040024 */ addiu $a0,$zero,0x24
/* f011b90: 24040001 */ addiu $a0,$zero,0x1
/* f011b94: 0fc29cf2 */ jal 0xf0a73c8
/* f011b98: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011b9c:
/* f011b9c: 0fc40ab9 */ jal 0xf102ae4
/* f011ba0: 24040023 */ addiu $a0,$zero,0x23
/* f011ba4: 10400006 */ beqz $v0,.NB0f011bc0
/* f011ba8: 00000000 */ sll $zero,$zero,0x0
/* f011bac: 0fc4307a */ jal 0xf10c1e8
/* f011bb0: 24040025 */ addiu $a0,$zero,0x25
/* f011bb4: 24040004 */ addiu $a0,$zero,0x4
/* f011bb8: 0fc29cf2 */ jal 0xf0a73c8
/* f011bbc: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011bc0:
/* f011bc0: 0fc40ab9 */ jal 0xf102ae4
/* f011bc4: 24040024 */ addiu $a0,$zero,0x24
/* f011bc8: 10400006 */ beqz $v0,.NB0f011be4
/* f011bcc: 00000000 */ sll $zero,$zero,0x0
/* f011bd0: 0fc4307a */ jal 0xf10c1e8
/* f011bd4: 24040026 */ addiu $a0,$zero,0x26
/* f011bd8: 24040002 */ addiu $a0,$zero,0x2
/* f011bdc: 0fc29cf2 */ jal 0xf0a73c8
/* f011be0: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011be4:
/* f011be4: 0fc40ab9 */ jal 0xf102ae4
/* f011be8: 24040025 */ addiu $a0,$zero,0x25
/* f011bec: 10400006 */ beqz $v0,.NB0f011c08
/* f011bf0: 00000000 */ sll $zero,$zero,0x0
/* f011bf4: 0fc4307a */ jal 0xf10c1e8
/* f011bf8: 24040027 */ addiu $a0,$zero,0x27
/* f011bfc: 24040004 */ addiu $a0,$zero,0x4
/* f011c00: 0fc29cf2 */ jal 0xf0a73c8
/* f011c04: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011c08:
/* f011c08: 0fc40ab9 */ jal 0xf102ae4
/* f011c0c: 24040026 */ addiu $a0,$zero,0x26
/* f011c10: 10400006 */ beqz $v0,.NB0f011c2c
/* f011c14: 00000000 */ sll $zero,$zero,0x0
/* f011c18: 0fc4307a */ jal 0xf10c1e8
/* f011c1c: 24040028 */ addiu $a0,$zero,0x28
/* f011c20: 24040002 */ addiu $a0,$zero,0x2
/* f011c24: 0fc29cf2 */ jal 0xf0a73c8
/* f011c28: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011c2c:
/* f011c2c: 0fc40ab9 */ jal 0xf102ae4
/* f011c30: 24040027 */ addiu $a0,$zero,0x27
/* f011c34: 10400006 */ beqz $v0,.NB0f011c50
/* f011c38: 00000000 */ sll $zero,$zero,0x0
/* f011c3c: 0fc4307a */ jal 0xf10c1e8
/* f011c40: 24040029 */ addiu $a0,$zero,0x29
/* f011c44: 24040002 */ addiu $a0,$zero,0x2
/* f011c48: 0fc29cf2 */ jal 0xf0a73c8
/* f011c4c: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011c50:
/* f011c50: 0fc40ab9 */ jal 0xf102ae4
/* f011c54: 24040028 */ addiu $a0,$zero,0x28
/* f011c58: 10400006 */ beqz $v0,.NB0f011c74
/* f011c5c: 00000000 */ sll $zero,$zero,0x0
/* f011c60: 0fc4307a */ jal 0xf10c1e8
/* f011c64: 2404002a */ addiu $a0,$zero,0x2a
/* f011c68: 24040004 */ addiu $a0,$zero,0x4
/* f011c6c: 0fc29cf2 */ jal 0xf0a73c8
/* f011c70: 240500c8 */ addiu $a1,$zero,0xc8
.NB0f011c74:
/* f011c74: 0fc40ab9 */ jal 0xf102ae4
/* f011c78: 24040029 */ addiu $a0,$zero,0x29
/* f011c7c: 50400007 */ beqzl $v0,.NB0f011c9c
/* f011c80: 8fa90080 */ lw $t1,0x80($sp)
/* f011c84: 0fc4307a */ jal 0xf10c1e8
/* f011c88: 2404002b */ addiu $a0,$zero,0x2b
/* f011c8c: 24040002 */ addiu $a0,$zero,0x2
/* f011c90: 0fc29cf2 */ jal 0xf0a73c8
/* f011c94: 240500c8 */ addiu $a1,$zero,0xc8
/* f011c98: 8fa90080 */ lw $t1,0x80($sp)
.NB0f011c9c:
/* f011c9c: 15200003 */ bnez $t1,.NB0f011cac
/* f011ca0: 240a0001 */ addiu $t2,$zero,0x1
/* f011ca4: 3c01800a */ lui $at,0x800a
/* f011ca8: ac2a25b0 */ sw $t2,0x25b0($at)
.NB0f011cac:
/* f011cac: 0fc17d86 */ jal 0xf05f618
/* f011cb0: 00000000 */ sll $zero,$zero,0x0
/* f011cb4: 8e2b0284 */ lw $t3,0x284($s1)
/* f011cb8: 24190006 */ addiu $t9,$zero,0x6
/* f011cbc: ad6200bc */ sw $v0,0xbc($t3)
/* f011cc0: 8e2c0284 */ lw $t4,0x284($s1)
/* f011cc4: 8d8d00bc */ lw $t5,0xbc($t4)
/* f011cc8: ada00004 */ sw $zero,0x4($t5)
/* f011ccc: 8e380284 */ lw $t8,0x284($s1)
/* f011cd0: 8f0e00bc */ lw $t6,0xbc($t8)
/* f011cd4: a1d90000 */ sb $t9,0x0($t6)
/* f011cd8: 8e2f0284 */ lw $t7,0x284($s1)
/* f011cdc: 0fc17ddf */ jal 0xf05f77c
/* f011ce0: 8de400bc */ lw $a0,0xbc($t7)
/* f011ce4: 8e290284 */ lw $t1,0x284($s1)
/* f011ce8: 0fc17d6c */ jal 0xf05f5b0
/* f011cec: 8d2400bc */ lw $a0,0xbc($t1)
/* f011cf0: 8e2a0284 */ lw $t2,0x284($s1)
/* f011cf4: 00002825 */ or $a1,$zero,$zero
/* f011cf8: 0fc0806b */ jal 0xf0201ac
/* f011cfc: 8d4400bc */ lw $a0,0xbc($t2)
/* f011d00: 8e2b0298 */ lw $t3,0x298($s1)
/* f011d04: 05620008 */ bltzl $t3,.NB0f011d28
/* f011d08: 8e2e029c */ lw $t6,0x29c($s1)
/* f011d0c: 8e2d0284 */ lw $t5,0x284($s1)
/* f011d10: 240c0010 */ addiu $t4,$zero,0x10
/* f011d14: 8db800bc */ lw $t8,0xbc($t5)
/* f011d18: 8f190004 */ lw $t9,0x4($t8)
/* f011d1c: 10000029 */ beqz $zero,.NB0f011dc4
/* f011d20: a32c0125 */ sb $t4,0x125($t9)
/* f011d24: 8e2e029c */ lw $t6,0x29c($s1)
.NB0f011d28:
/* f011d28: 05c20010 */ bltzl $t6,.NB0f011d6c
/* f011d2c: 8e390314 */ lw $t9,0x314($s1)
/* f011d30: 8e220284 */ lw $v0,0x284($s1)
/* f011d34: 8e2f02a0 */ lw $t7,0x2a0($s1)
/* f011d38: 55e20007 */ bnel $t7,$v0,.NB0f011d58
/* f011d3c: 8c5800bc */ lw $t8,0xbc($v0)
/* f011d40: 8c4a00bc */ lw $t2,0xbc($v0)
/* f011d44: 24090010 */ addiu $t1,$zero,0x10
/* f011d48: 8d4b0004 */ lw $t3,0x4($t2)
/* f011d4c: 1000001d */ beqz $zero,.NB0f011dc4
/* f011d50: a1690125 */ sb $t1,0x125($t3)
/* f011d54: 8c5800bc */ lw $t8,0xbc($v0)
.NB0f011d58:
/* f011d58: 240d0002 */ addiu $t5,$zero,0x2
/* f011d5c: 8f0c0004 */ lw $t4,0x4($t8)
/* f011d60: 10000018 */ beqz $zero,.NB0f011dc4
/* f011d64: a18d0125 */ sb $t5,0x125($t4)
/* f011d68: 8e390314 */ lw $t9,0x314($s1)
.NB0f011d6c:
/* f011d6c: 53200011 */ beqzl $t9,.NB0f011db4
/* f011d70: 8e2f0284 */ lw $t7,0x284($s1)
/* f011d74: 8e2e0288 */ lw $t6,0x288($s1)
/* f011d78: 8e2d0284 */ lw $t5,0x284($s1)
/* f011d7c: 3c09800b */ lui $t1,0x800b
/* f011d80: 8dcf0070 */ lw $t7,0x70($t6)
/* f011d84: 8dac00bc */ lw $t4,0xbc($t5)
/* f011d88: 240b0001 */ addiu $t3,$zero,0x1
/* f011d8c: 000f5080 */ sll $t2,$t7,0x2
/* f011d90: 014f5021 */ addu $t2,$t2,$t7
/* f011d94: 000a5140 */ sll $t2,$t2,0x5
/* f011d98: 012a4821 */ addu $t1,$t1,$t2
/* f011d9c: 91291079 */ lbu $t1,0x1079($t1)
/* f011da0: 8d990004 */ lw $t9,0x4($t4)
/* f011da4: 012bc004 */ sllv $t8,$t3,$t1
/* f011da8: 10000006 */ beqz $zero,.NB0f011dc4
/* f011dac: a3380125 */ sb $t8,0x125($t9)
/* f011db0: 8e2f0284 */ lw $t7,0x284($s1)
.NB0f011db4:
/* f011db4: 240e0010 */ addiu $t6,$zero,0x10
/* f011db8: 8dea00bc */ lw $t2,0xbc($t7)
/* f011dbc: 8d4b0004 */ lw $t3,0x4($t2)
/* f011dc0: a16e0125 */ sb $t6,0x125($t3)
.NB0f011dc4:
/* f011dc4: 93a9007b */ lbu $t1,0x7b($sp)
/* f011dc8: 11200003 */ beqz $t1,.NB0f011dd8
/* f011dcc: 00000000 */ sll $zero,$zero,0x0
/* f011dd0: 0fc044dc */ jal 0xf011370
/* f011dd4: 00000000 */ sll $zero,$zero,0x0
.NB0f011dd8:
/* f011dd8: 3c0d800a */ lui $t5,0x800a
/* f011ddc: 8dad2648 */ lw $t5,0x2648($t5)
/* f011de0: 59a0002f */ blezl $t5,.NB0f011ea0
/* f011de4: 8e220284 */ lw $v0,0x284($s1)
/* f011de8: 8e2c0298 */ lw $t4,0x298($s1)
/* f011dec: 3c0141f0 */ lui $at,0x41f0
/* f011df0: 27a5009c */ addiu $a1,$sp,0x9c
/* f011df4: 0580000a */ bltz $t4,.NB0f011e20
/* f011df8: 27a6008c */ addiu $a2,$sp,0x8c
/* f011dfc: 8e380284 */ lw $t8,0x284($s1)
/* f011e00: 44816000 */ mtc1 $at,$f12
/* f011e04: 0fc60179 */ jal 0xf1805e4
/* f011e08: 8f0700bc */ lw $a3,0xbc($t8)
/* f011e0c: 3c017f1a */ lui $at,0x7f1a
/* f011e10: c4321f10 */ lwc1 $f18,0x1f10($at)
/* f011e14: 46009101 */ sub.s $f4,$f18,$f0
/* f011e18: 10000020 */ beqz $zero,.NB0f011e9c
/* f011e1c: e7a40088 */ swc1 $f4,0x88($sp)
.NB0f011e20:
/* f011e20: 8e39029c */ lw $t9,0x29c($s1)
/* f011e24: 3c0141f0 */ lui $at,0x41f0
/* f011e28: 27a5009c */ addiu $a1,$sp,0x9c
/* f011e2c: 0720000c */ bltz $t9,.NB0f011e60
/* f011e30: 27a6008c */ addiu $a2,$sp,0x8c
/* f011e34: 8e2f0284 */ lw $t7,0x284($s1)
/* f011e38: 44816000 */ mtc1 $at,$f12
/* f011e3c: 27a5009c */ addiu $a1,$sp,0x9c
/* f011e40: 27a6008c */ addiu $a2,$sp,0x8c
/* f011e44: 0fc60179 */ jal 0xf1805e4
/* f011e48: 8de700bc */ lw $a3,0xbc($t7)
/* f011e4c: 3c017f1a */ lui $at,0x7f1a
/* f011e50: c4281f14 */ lwc1 $f8,0x1f14($at)
/* f011e54: 46004181 */ sub.s $f6,$f8,$f0
/* f011e58: 10000010 */ beqz $zero,.NB0f011e9c
/* f011e5c: e7a60088 */ swc1 $f6,0x88($sp)
.NB0f011e60:
/* f011e60: 8e2a0314 */ lw $t2,0x314($s1)
/* f011e64: 240e0001 */ addiu $t6,$zero,0x1
/* f011e68: 3c01800a */ lui $at,0x800a
/* f011e6c: 55400003 */ bnezl $t2,.NB0f011e7c
/* f011e70: 8e2b0284 */ lw $t3,0x284($s1)
/* f011e74: ac2e2648 */ sw $t6,0x2648($at)
/* f011e78: 8e2b0284 */ lw $t3,0x284($s1)
.NB0f011e7c:
/* f011e7c: 3c0141f0 */ lui $at,0x41f0
/* f011e80: 44816000 */ mtc1 $at,$f12
/* f011e84: 0fc60179 */ jal 0xf1805e4
/* f011e88: 8d6700bc */ lw $a3,0xbc($t3)
/* f011e8c: 3c017f1a */ lui $at,0x7f1a
/* f011e90: c4301f18 */ lwc1 $f16,0x1f18($at)
/* f011e94: 46008281 */ sub.s $f10,$f16,$f0
/* f011e98: e7aa0088 */ swc1 $f10,0x88($sp)
.NB0f011e9c:
/* f011e9c: 8e220284 */ lw $v0,0x284($s1)
.NB0f011ea0:
/* f011ea0: 27a4009c */ addiu $a0,$sp,0x9c
/* f011ea4: 3c0541f0 */ lui $a1,0x41f0
/* f011ea8: 2449161e */ addiu $t1,$v0,0x161e
/* f011eac: 244d161c */ addiu $t5,$v0,0x161c
/* f011eb0: 244c19b0 */ addiu $t4,$v0,0x19b0
/* f011eb4: afac0018 */ sw $t4,0x18($sp)
/* f011eb8: afad0014 */ sw $t5,0x14($sp)
/* f011ebc: afa90010 */ sw $t1,0x10($sp)
/* f011ec0: 27a6008c */ addiu $a2,$sp,0x8c
/* f011ec4: afa0001c */ sw $zero,0x1c($sp)
/* f011ec8: afa00020 */ sw $zero,0x20($sp)
/* f011ecc: 0c00ad7e */ jal 0x2b5f8
/* f011ed0: 2447161a */ addiu $a3,$v0,0x161a
/* f011ed4: 8e220284 */ lw $v0,0x284($s1)
/* f011ed8: 3c0143b4 */ lui $at,0x43b4
/* f011edc: 44813000 */ mtc1 $at,$f6
/* f011ee0: c45219c4 */ lwc1 $f18,0x19c4($v0)
/* f011ee4: 3c017f1a */ lui $at,0x7f1a
/* f011ee8: 27a5009c */ addiu $a1,$sp,0x9c
/* f011eec: 46009100 */ add.s $f4,$f18,$f0
/* f011ef0: e7a400a0 */ swc1 $f4,0xa0($sp)
/* f011ef4: e4400074 */ swc1 $f0,0x74($v0)
/* f011ef8: 8e380284 */ lw $t8,0x284($s1)
/* f011efc: e7000078 */ swc1 $f0,0x78($t8)
/* f011f00: c7a80088 */ lwc1 $f8,0x88($sp)
/* f011f04: c42a1f1c */ lwc1 $f10,0x1f1c($at)
/* f011f08: 8e390284 */ lw $t9,0x284($s1)
/* f011f0c: 46064402 */ mul.s $f16,$f8,$f6
/* f011f10: 460a8483 */ div.s $f18,$f16,$f10
/* f011f14: e7320144 */ swc1 $f18,0x144($t9)
/* f011f18: 8e240284 */ lw $a0,0x284($s1)
/* f011f1c: 0fc2d8ae */ jal 0xf0b62b8
/* f011f20: 2484036c */ addiu $a0,$a0,0x36c
/* f011f24: 0c006d55 */ jal 0x1b554
/* f011f28: c7ac0088 */ lwc1 $f12,0x88($sp)
/* f011f2c: 8e2f0284 */ lw $t7,0x284($s1)
/* f011f30: 46000107 */ neg.s $f4,$f0
/* f011f34: 44804000 */ mtc1 $zero,$f8
/* f011f38: e5e4036c */ swc1 $f4,0x36c($t7)
/* f011f3c: 8e2a0284 */ lw $t2,0x284($s1)
/* f011f40: e5480370 */ swc1 $f8,0x370($t2)
/* f011f44: 0c006d52 */ jal 0x1b548
/* f011f48: c7ac0088 */ lwc1 $f12,0x88($sp)
/* f011f4c: 8e2e0284 */ lw $t6,0x284($s1)
/* f011f50: e5c00374 */ swc1 $f0,0x374($t6)
/* f011f54: 8e2b0284 */ lw $t3,0x284($s1)
/* f011f58: c7a2009c */ lwc1 $f2,0x9c($sp)
/* f011f5c: e5620310 */ swc1 $f2,0x310($t3)
/* f011f60: 8e290284 */ lw $t1,0x284($s1)
/* f011f64: 8d2d00bc */ lw $t5,0xbc($t1)
/* f011f68: e5a20008 */ swc1 $f2,0x8($t5)
/* f011f6c: 8e2c0284 */ lw $t4,0x284($s1)
/* f011f70: c7a200a0 */ lwc1 $f2,0xa0($sp)
/* f011f74: e5820314 */ swc1 $f2,0x314($t4)
/* f011f78: 8e380284 */ lw $t8,0x284($s1)
/* f011f7c: 8f1900bc */ lw $t9,0xbc($t8)
/* f011f80: e722000c */ swc1 $f2,0xc($t9)
/* f011f84: 8e2f0284 */ lw $t7,0x284($s1)
/* f011f88: c7a200a4 */ lwc1 $f2,0xa4($sp)
/* f011f8c: e5e20318 */ swc1 $f2,0x318($t7)
/* f011f90: 8e2a0284 */ lw $t2,0x284($s1)
/* f011f94: 8d4e00bc */ lw $t6,0xbc($t2)
/* f011f98: e5c20010 */ swc1 $f2,0x10($t6)
/* f011f9c: 8e2b0284 */ lw $t3,0x284($s1)
/* f011fa0: 0fc193ab */ jal 0xf064eac
/* f011fa4: 8d6400bc */ lw $a0,0xbc($t3)
/* f011fa8: 8e2d0284 */ lw $t5,0x284($s1)
/* f011fac: 87a9008c */ lh $t1,0x8c($sp)
/* f011fb0: 2418ffff */ addiu $t8,$zero,-1
/* f011fb4: 8dac00bc */ lw $t4,0xbc($t5)
/* f011fb8: 27a4009c */ addiu $a0,$sp,0x9c
/* f011fbc: a5890028 */ sh $t1,0x28($t4)
/* f011fc0: 8e390284 */ lw $t9,0x284($s1)
/* f011fc4: 8f2f00bc */ lw $t7,0xbc($t9)
/* f011fc8: a5f8002a */ sh $t8,0x2a($t7)
/* f011fcc: 8e220284 */ lw $v0,0x284($s1)
/* f011fd0: 87a7008c */ lh $a3,0x8c($sp)
/* f011fd4: 24450394 */ addiu $a1,$v0,0x394
/* f011fd8: 0fc2fdfb */ jal 0xf0bf7ec
/* f011fdc: 24460388 */ addiu $a2,$v0,0x388
/* f011fe0: 0fc0786c */ jal 0xf01e1b0
/* f011fe4: 00000000 */ sll $zero,$zero,0x0
/* f011fe8: 18400026 */ blez $v0,.NB0f012084
/* f011fec: 00402025 */ or $a0,$v0,$zero
/* f011ff0: 000428c0 */ sll $a1,$a0,0x3
/* f011ff4: 00a42823 */ subu $a1,$a1,$a0
/* f011ff8: 00052880 */ sll $a1,$a1,0x2
/* f011ffc: 00a42823 */ subu $a1,$a1,$a0
/* f012000: 00052880 */ sll $a1,$a1,0x2
/* f012004: 00a42821 */ addu $a1,$a1,$a0
/* f012008: 3c068006 */ lui $a2,0x8006
/* f01200c: 24c64e98 */ addiu $a2,$a2,0x4e98
/* f012010: 000528c0 */ sll $a1,$a1,0x3
/* f012014: 00001025 */ or $v0,$zero,$zero
/* f012018: 24080048 */ addiu $t0,$zero,0x48
/* f01201c: 2407fffe */ addiu $a3,$zero,-2
/* f012020: 8cca0000 */ lw $t2,0x0($a2)
.NB0f012024:
/* f012024: 004a1821 */ addu $v1,$v0,$t2
/* f012028: 846e017e */ lh $t6,0x17e($v1)
/* f01202c: 24420368 */ addiu $v0,$v0,0x368
/* f012030: 54ee0012 */ bnel $a3,$t6,.NB0f01207c
/* f012034: 0045082a */ slt $at,$v0,$a1
/* f012038: 8e2b0284 */ lw $t3,0x284($s1)
/* f01203c: 8e290338 */ lw $t1,0x338($s1)
/* f012040: 8d6d00bc */ lw $t5,0xbc($t3)
/* f012044: 01a96023 */ subu $t4,$t5,$t1
/* f012048: 0188001a */ div $zero,$t4,$t0
/* f01204c: 0000c812 */ mflo $t9
/* f012050: a479017e */ sh $t9,0x17e($v1)
/* f012054: 15000002 */ bnez $t0,.NB0f012060
/* f012058: 00000000 */ sll $zero,$zero,0x0
/* f01205c: 0007000d */ break 0x7
.NB0f012060:
/* f012060: 2401ffff */ addiu $at,$zero,-1
/* f012064: 15010004 */ bne $t0,$at,.NB0f012078
/* f012068: 3c018000 */ lui $at,0x8000
/* f01206c: 15810002 */ bne $t4,$at,.NB0f012078
/* f012070: 00000000 */ sll $zero,$zero,0x0
/* f012074: 0006000d */ break 0x6
.NB0f012078:
/* f012078: 0045082a */ slt $at,$v0,$a1
.NB0f01207c:
/* f01207c: 5420ffe9 */ bnezl $at,.NB0f012024
/* f012080: 8cca0000 */ lw $t2,0x0($a2)
.NB0f012084:
/* f012084: 0fc3243d */ jal 0xf0c90f4
/* f012088: 8e240284 */ lw $a0,0x284($s1)
/* f01208c: 8e380318 */ lw $t8,0x318($s1)
/* f012090: 13000005 */ beqz $t8,.NB0f0120a8
/* f012094: 00000000 */ sll $zero,$zero,0x0
/* f012098: 0fc2dcd4 */ jal 0xf0b7350
/* f01209c: 00000000 */ sll $zero,$zero,0x0
/* f0120a0: 10000003 */ beqz $zero,.NB0f0120b0
/* f0120a4: 00000000 */ sll $zero,$zero,0x0
.NB0f0120a8:
/* f0120a8: 0fc2ddbf */ jal 0xf0b76fc
/* f0120ac: 00000000 */ sll $zero,$zero,0x0
.NB0f0120b0:
/* f0120b0: 3c048007 */ lui $a0,0x8007
/* f0120b4: 24842e28 */ addiu $a0,$a0,0x2e28
/* f0120b8: 00007840 */ sll $t7,$zero,0x1
/* f0120bc: 008f5021 */ addu $t2,$a0,$t7
/* f0120c0: 854e0000 */ lh $t6,0x0($t2)
/* f0120c4: 3c038007 */ lui $v1,0x8007
/* f0120c8: 24632e3c */ addiu $v1,$v1,0x2e3c
/* f0120cc: ac600000 */ sw $zero,0x0($v1)
/* f0120d0: 19c00009 */ blez $t6,.NB0f0120f8
/* f0120d4: 00001025 */ or $v0,$zero,$zero
/* f0120d8: 244b0001 */ addiu $t3,$v0,0x1
.NB0f0120dc:
/* f0120dc: 000b6840 */ sll $t5,$t3,0x1
/* f0120e0: 008d4821 */ addu $t1,$a0,$t5
/* f0120e4: 852c0000 */ lh $t4,0x0($t1)
/* f0120e8: ac6b0000 */ sw $t3,0x0($v1)
/* f0120ec: 01601025 */ or $v0,$t3,$zero
/* f0120f0: 5d80fffa */ bgtzl $t4,.NB0f0120dc
/* f0120f4: 244b0001 */ addiu $t3,$v0,0x1
.NB0f0120f8:
/* f0120f8: 8e390284 */ lw $t9,0x284($s1)
/* f0120fc: 3c02800a */ lui $v0,0x800a
/* f012100: 3c03800a */ lui $v1,0x800a
/* f012104: af201b84 */ sw $zero,0x1b84($t9)
/* f012108: 8e380284 */ lw $t8,0x284($s1)
/* f01210c: 2463e6d0 */ addiu $v1,$v1,-6448
/* f012110: 2442e6c0 */ addiu $v0,$v0,-6464
/* f012114: af0000e0 */ sw $zero,0xe0($t8)
.NB0f012118:
/* f012118: 24420004 */ addiu $v0,$v0,0x4
/* f01211c: 1443fffe */ bne $v0,$v1,.NB0f012118
/* f012120: ac4004b4 */ sw $zero,0x4b4($v0)
/* f012124: 27a40048 */ addiu $a0,$sp,0x48
/* f012128: 27a50044 */ addiu $a1,$sp,0x44
/* f01212c: 0fc2d911 */ jal 0xf0b6444
/* f012130: 00003025 */ or $a2,$zero,$zero
/* f012134: 8e2a0284 */ lw $t2,0x284($s1)
/* f012138: 8faf0048 */ lw $t7,0x48($sp)
/* f01213c: 8d4e00bc */ lw $t6,0xbc($t2)
/* f012140: 8dcb0004 */ lw $t3,0x4($t6)
/* f012144: a56f0010 */ sh $t7,0x10($t3)
/* f012148: 8e290284 */ lw $t1,0x284($s1)
/* f01214c: 8fad0044 */ lw $t5,0x44($sp)
/* f012150: 8d2c00bc */ lw $t4,0xbc($t1)
/* f012154: 8d990004 */ lw $t9,0x4($t4)
/* f012158: a32d0006 */ sb $t5,0x6($t9)
/* f01215c: 8fbf0034 */ lw $ra,0x34($sp)
/* f012160: 8fb10030 */ lw $s1,0x30($sp)
/* f012164: 8fb0002c */ lw $s0,0x2c($sp)
/* f012168: 03e00008 */ jr $ra
/* f01216c: 27bd00a8 */ addiu $sp,$sp,0xa8
);
#endif
// regalloc
+3 -1
View File
@@ -280,10 +280,12 @@ void aibotAllocate(s32 chrnum, s32 aibotnum)
aibot->unk2cc = 0;
aibot->unk2d0 = random();
aibot->unk2d4 = random() * (1.0f / U32_MAX);
aibot->unk078 = 0;
aibot->cheap = false;
#if VERSION >= VERSION_NTSC_1_0
aibot->unk078 = 0;
aibot->unk050 = 0;
aibot->unk09d = 0;
#endif
} else {
g_MpSimulantChrs[--g_NumMpSimulantChrs] = NULL;
return;
+1769 -1
View File
File diff suppressed because it is too large. Load diff
+5
View File
@@ -1106,7 +1106,12 @@ struct prop *propAllocateEyespy(struct pad *pad, s16 room)
chr->chrheight = 200;
func0f02e9a0(chr, 0);
chr->chrflags |= CHRCFLAG_HIDDEN;
#if VERSION >= VERSION_NTSC_1_0
chr->hidden2 |= CHRH2FLAG_0040;
#else
chr->hidden |= CHRHFLAG_00000200;
#endif
return prop;
}
+119
View File
@@ -15,6 +15,12 @@ u8 *g_GeCreditsData;
u32 setupGetCommandLength(u32 *cmd)
{
#if VERSION < VERSION_NTSC_1_0
static u32 crash1;
func0000db30("crash1", &crash1);
#endif
switch ((u8)cmd[0]) {
case OBJTYPE_CHR: return 11;
case OBJTYPE_DOOR: return 55;
@@ -74,6 +80,12 @@ u32 setupGetCommandLength(u32 *cmd)
case OBJTYPE_ESCASTEP: return 27;
}
#if VERSION < VERSION_NTSC_1_0
if (crash1) {
*(u8 *)0 = 69;
}
#endif
return 1;
}
@@ -365,6 +377,7 @@ struct defaultobj *setupCommandGetObject(u32 cmdindex)
return (struct defaultobj *)cmd;
}
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f092484
/* f092484: 27bdffc0 */ addiu $sp,$sp,-64
@@ -474,3 +487,109 @@ glabel func0f092484
/* f092608: 03e00008 */ jr $ra
/* f09260c: 27bd0040 */ addiu $sp,$sp,0x40
);
#else
GLOBAL_ASM(
glabel func0f092484
/* f090ac8: 27bdffc0 */ addiu $sp,$sp,-64
/* f090acc: afb00018 */ sw $s0,0x18($sp)
/* f090ad0: 3c10800a */ lui $s0,0x800a
/* f090ad4: 8e101770 */ lw $s0,0x1770($s0)
/* f090ad8: afbe0038 */ sw $s8,0x38($sp)
/* f090adc: afb70034 */ sw $s7,0x34($sp)
/* f090ae0: afb30024 */ sw $s3,0x24($sp)
/* f090ae4: afb20020 */ sw $s2,0x20($sp)
/* f090ae8: 0080b825 */ or $s7,$a0,$zero
/* f090aec: 00e0f025 */ or $s8,$a3,$zero
/* f090af0: afbf003c */ sw $ra,0x3c($sp)
/* f090af4: afb60030 */ sw $s6,0x30($sp)
/* f090af8: afb5002c */ sw $s5,0x2c($sp)
/* f090afc: afb40028 */ sw $s4,0x28($sp)
/* f090b00: afb1001c */ sw $s1,0x1c($sp)
/* f090b04: afa50044 */ sw $a1,0x44($sp)
/* f090b08: afa60048 */ sw $a2,0x48($sp)
/* f090b0c: 00009025 */ or $s2,$zero,$zero
/* f090b10: 12000039 */ beqz $s0,.NB0f090bf8
/* f090b14: 00009825 */ or $s3,$zero,$zero
/* f090b18: 92030003 */ lbu $v1,0x3($s0)
/* f090b1c: 24010034 */ addiu $at,$zero,0x34
/* f090b20: 309400ff */ andi $s4,$a0,0xff
/* f090b24: 10610034 */ beq $v1,$at,.NB0f090bf8
/* f090b28: 24160008 */ addiu $s6,$zero,0x8
/* f090b2c: 8fb50054 */ lw $s5,0x54($sp)
/* f090b30: 8fb10050 */ lw $s1,0x50($sp)
.NB0f090b34:
/* f090b34: 16830028 */ bne $s4,$v1,.NB0f090bd8
/* f090b38: 00000000 */ sll $zero,$zero,0x0
/* f090b3c: 8e020014 */ lw $v0,0x14($s0)
/* f090b40: 14400007 */ bnez $v0,.NB0f090b60
/* f090b44: 00000000 */ sll $zero,$zero,0x0
/* f090b48: 17c00023 */ bnez $s8,.NB0f090bd8
/* f090b4c: 00000000 */ sll $zero,$zero,0x0
/* f090b50: 16200021 */ bnez $s1,.NB0f090bd8
/* f090b54: 00000000 */ sll $zero,$zero,0x0
/* f090b58: 1000002c */ beqz $zero,.NB0f090c0c
/* f090b5c: 02001025 */ or $v0,$s0,$zero
.NB0f090b60:
/* f090b60: 12f6001d */ beq $s7,$s6,.NB0f090bd8
/* f090b64: 00000000 */ sll $zero,$zero,0x0
/* f090b68: 8e0e0040 */ lw $t6,0x40($s0)
/* f090b6c: 31cf0080 */ andi $t7,$t6,0x80
/* f090b70: 15e00019 */ bnez $t7,.NB0f090bd8
/* f090b74: 00000000 */ sll $zero,$zero,0x0
/* f090b78: 92180002 */ lbu $t8,0x2($s0)
/* f090b7c: 33190004 */ andi $t9,$t8,0x4
/* f090b80: 17200015 */ bnez $t9,.NB0f090bd8
/* f090b84: 00000000 */ sll $zero,$zero,0x0
/* f090b88: 8c480018 */ lw $t0,0x18($v0)
/* f090b8c: 15000012 */ bnez $t0,.NB0f090bd8
/* f090b90: 00000000 */ sll $zero,$zero,0x0
/* f090b94: 12200005 */ beqz $s1,.NB0f090bac
/* f090b98: 02a02825 */ or $a1,$s5,$zero
/* f090b9c: 0fc2c18c */ jal 0xf0b0630
/* f090ba0: 8e040018 */ lw $a0,0x18($s0)
/* f090ba4: 1040000c */ beqz $v0,.NB0f090bd8
/* f090ba8: 00000000 */ sll $zero,$zero,0x0
.NB0f090bac:
/* f090bac: 16400007 */ bnez $s2,.NB0f090bcc
/* f090bb0: 00000000 */ sll $zero,$zero,0x0
/* f090bb4: 8e090014 */ lw $t1,0x14($s0)
/* f090bb8: 912a0001 */ lbu $t2,0x1($t1)
/* f090bbc: 314b00c2 */ andi $t3,$t2,0xc2
/* f090bc0: 15600002 */ bnez $t3,.NB0f090bcc
/* f090bc4: 00000000 */ sll $zero,$zero,0x0
/* f090bc8: 02009025 */ or $s2,$s0,$zero
.NB0f090bcc:
/* f090bcc: 16600002 */ bnez $s3,.NB0f090bd8
/* f090bd0: 00000000 */ sll $zero,$zero,0x0
/* f090bd4: 02009825 */ or $s3,$s0,$zero
.NB0f090bd8:
/* f090bd8: 0fc24104 */ jal 0xf090410
/* f090bdc: 02002025 */ or $a0,$s0,$zero
/* f090be0: 00026080 */ sll $t4,$v0,0x2
/* f090be4: 01908021 */ addu $s0,$t4,$s0
/* f090be8: 92030003 */ lbu $v1,0x3($s0)
/* f090bec: 24010034 */ addiu $at,$zero,0x34
/* f090bf0: 1461ffd0 */ bne $v1,$at,.NB0f090b34
/* f090bf4: 00000000 */ sll $zero,$zero,0x0
.NB0f090bf8:
/* f090bf8: 8fad0044 */ lw $t5,0x44($sp)
/* f090bfc: 00001025 */ or $v0,$zero,$zero
/* f090c00: adb20000 */ sw $s2,0x0($t5)
/* f090c04: 8fae0048 */ lw $t6,0x48($sp)
/* f090c08: add30000 */ sw $s3,0x0($t6)
.NB0f090c0c:
/* f090c0c: 8fbf003c */ lw $ra,0x3c($sp)
/* f090c10: 8fb00018 */ lw $s0,0x18($sp)
/* f090c14: 8fb1001c */ lw $s1,0x1c($sp)
/* f090c18: 8fb20020 */ lw $s2,0x20($sp)
/* f090c1c: 8fb30024 */ lw $s3,0x24($sp)
/* f090c20: 8fb40028 */ lw $s4,0x28($sp)
/* f090c24: 8fb5002c */ lw $s5,0x2c($sp)
/* f090c28: 8fb60030 */ lw $s6,0x30($sp)
/* f090c2c: 8fb70034 */ lw $s7,0x34($sp)
/* f090c30: 8fbe0038 */ lw $s8,0x38($sp)
/* f090c34: 03e00008 */ jr $ra
/* f090c38: 27bd0040 */ addiu $sp,$sp,0x40
/* f090c3c: 00000000 */ sll $zero,$zero,0x0
);
#endif
+1828 -1
View File
File diff suppressed because it is too large. Load diff
+6928 -9
View File
File diff suppressed because it is too large. Load diff
+4052 -16
View File
File diff suppressed because it is too large. Load diff
+143
View File
@@ -121,6 +121,7 @@ glabel func0f0d475c
/* f0d4798: 00000000 */ nop
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f0d479c
/* f0d479c: 27bdff68 */ addiu $sp,$sp,-152
@@ -265,6 +266,142 @@ glabel func0f0d479c
/* f0d49c0: 03e00008 */ jr $ra
/* f0d49c4: 27bd0098 */ addiu $sp,$sp,0x98
);
#else
GLOBAL_ASM(
glabel func0f0d479c
/* f0d1f3c: 27bdff70 */ addiu $sp,$sp,-144
/* f0d1f40: afbf002c */ sw $ra,0x2c($sp)
/* f0d1f44: afb10028 */ sw $s1,0x28($sp)
/* f0d1f48: 00808825 */ or $s1,$a0,$zero
/* f0d1f4c: 0fc588b6 */ jal 0xf1622d8
/* f0d1f50: afb00024 */ sw $s0,0x24($sp)
/* f0d1f54: 0fc588b6 */ jal 0xf1622d8
/* f0d1f58: afa2004c */ sw $v0,0x4c($sp)
/* f0d1f5c: 0c005dbc */ jal 0x176f0
/* f0d1f60: afa20048 */ sw $v0,0x48($sp)
/* f0d1f64: 27b00050 */ addiu $s0,$sp,0x50
/* f0d1f68: 0fc347bf */ jal 0xf0d1efc
/* f0d1f6c: 02002025 */ or $a0,$s0,$zero
/* f0d1f70: 02002025 */ or $a0,$s0,$zero
/* f0d1f74: 0c005bd1 */ jal 0x16f44
/* f0d1f78: 8fa50048 */ lw $a1,0x48($sp)
/* f0d1f7c: 0c005a28 */ jal 0x168a0
/* f0d1f80: 02002025 */ or $a0,$s0,$zero
/* f0d1f84: 0c002f77 */ jal 0xbddc
/* f0d1f88: 00000000 */ sll $zero,$zero,0x0
/* f0d1f8c: 0c002f77 */ jal 0xbddc
/* f0d1f90: a7a20030 */ sh $v0,0x30($sp)
/* f0d1f94: 0c002f7b */ jal 0xbdec
/* f0d1f98: a7a20032 */ sh $v0,0x32($sp)
/* f0d1f9c: 0c002f7b */ jal 0xbdec
/* f0d1fa0: a7a20034 */ sh $v0,0x34($sp)
/* f0d1fa4: 87ae0030 */ lh $t6,0x30($sp)
/* f0d1fa8: 87af0032 */ lh $t7,0x32($sp)
/* f0d1fac: 3c013f00 */ lui $at,0x3f00
/* f0d1fb0: 448e2000 */ mtc1 $t6,$f4
/* f0d1fb4: 448f8000 */ mtc1 $t7,$f16
/* f0d1fb8: 44810000 */ mtc1 $at,$f0
/* f0d1fbc: 468021a0 */ cvt.s.w $f6,$f4
/* f0d1fc0: 87b80034 */ lh $t8,0x34($sp)
/* f0d1fc4: 3c014120 */ lui $at,0x4120
/* f0d1fc8: 02002025 */ or $a0,$s0,$zero
/* f0d1fcc: 468084a0 */ cvt.s.w $f18,$f16
/* f0d1fd0: 46003207 */ neg.s $f8,$f6
/* f0d1fd4: 44983000 */ mtc1 $t8,$f6
/* f0d1fd8: 46004282 */ mul.s $f10,$f8,$f0
/* f0d1fdc: 00000000 */ sll $zero,$zero,0x0
/* f0d1fe0: 46009102 */ mul.s $f4,$f18,$f0
/* f0d1fe4: 44829000 */ mtc1 $v0,$f18
/* f0d1fe8: 44055000 */ mfc1 $a1,$f10
/* f0d1fec: 46803220 */ cvt.s.w $f8,$f6
/* f0d1ff0: 44062000 */ mfc1 $a2,$f4
/* f0d1ff4: 46809120 */ cvt.s.w $f4,$f18
/* f0d1ff8: 46004287 */ neg.s $f10,$f8
/* f0d1ffc: 44814000 */ mtc1 $at,$f8
/* f0d2000: 46005402 */ mul.s $f16,$f10,$f0
/* f0d2004: 3c017f1a */ lui $at,0x7f1a
/* f0d2008: c42a7f08 */ lwc1 $f10,0x7f08($at)
/* f0d200c: 46002182 */ mul.s $f6,$f4,$f0
/* f0d2010: 3c013f80 */ lui $at,0x3f80
/* f0d2014: e7a80014 */ swc1 $f8,0x14($sp)
/* f0d2018: e7aa0018 */ swc1 $f10,0x18($sp)
/* f0d201c: 44078000 */ mfc1 $a3,$f16
/* f0d2020: 44818000 */ mtc1 $at,$f16
/* f0d2024: e7a60010 */ swc1 $f6,0x10($sp)
/* f0d2028: 0c014580 */ jal 0x51600
/* f0d202c: e7b0001c */ swc1 $f16,0x1c($sp)
/* f0d2030: 02002025 */ or $a0,$s0,$zero
/* f0d2034: 0c005bd1 */ jal 0x16f44
/* f0d2038: 8fa5004c */ lw $a1,0x4c($sp)
/* f0d203c: 0c005dc5 */ jal 0x17714
/* f0d2040: 00000000 */ sll $zero,$zero,0x0
/* f0d2044: 3c190102 */ lui $t9,0x102
/* f0d2048: 37390040 */ ori $t9,$t9,0x40
/* f0d204c: 02208025 */ or $s0,$s1,$zero
/* f0d2050: ae190000 */ sw $t9,0x0($s0)
/* f0d2054: 8fa40048 */ lw $a0,0x48($sp)
/* f0d2058: 0c013100 */ jal 0x4c400
/* f0d205c: 26310008 */ addiu $s1,$s1,0x8
/* f0d2060: 3c080103 */ lui $t0,0x103
/* f0d2064: ae020004 */ sw $v0,0x4($s0)
/* f0d2068: 35080040 */ ori $t0,$t0,0x40
/* f0d206c: 02202825 */ or $a1,$s1,$zero
/* f0d2070: aca80000 */ sw $t0,0x0($a1)
/* f0d2074: afa50040 */ sw $a1,0x40($sp)
/* f0d2078: 8fa4004c */ lw $a0,0x4c($sp)
/* f0d207c: 0c013100 */ jal 0x4c400
/* f0d2080: 26310008 */ addiu $s1,$s1,0x8
/* f0d2084: 8fa50040 */ lw $a1,0x40($sp)
/* f0d2088: 3c10800a */ lui $s0,0x800a
/* f0d208c: 26102670 */ addiu $s0,$s0,0x2670
/* f0d2090: aca20004 */ sw $v0,0x4($a1)
/* f0d2094: 24030280 */ addiu $v1,$zero,0x280
/* f0d2098: 240401e0 */ addiu $a0,$zero,0x1e0
/* f0d209c: 240901ff */ addiu $t1,$zero,0x1ff
/* f0d20a0: a6030000 */ sh $v1,0x0($s0)
/* f0d20a4: a6040002 */ sh $a0,0x2($s0)
/* f0d20a8: a6030004 */ sh $v1,0x4($s0)
/* f0d20ac: a6000006 */ sh $zero,0x6($s0)
/* f0d20b0: a6030008 */ sh $v1,0x8($s0)
/* f0d20b4: a604000a */ sh $a0,0xa($s0)
/* f0d20b8: a609000c */ sh $t1,0xc($s0)
/* f0d20bc: 0c002f77 */ jal 0xbddc
/* f0d20c0: a600000e */ sh $zero,0xe($s0)
/* f0d20c4: 00025040 */ sll $t2,$v0,0x1
/* f0d20c8: 0c002f7b */ jal 0xbdec
/* f0d20cc: a60a0000 */ sh $t2,0x0($s0)
/* f0d20d0: 00025840 */ sll $t3,$v0,0x1
/* f0d20d4: 240c0001 */ addiu $t4,$zero,0x1
/* f0d20d8: a60b0002 */ sh $t3,0x2($s0)
/* f0d20dc: a60c0004 */ sh $t4,0x4($s0)
/* f0d20e0: 0c002f77 */ jal 0xbddc
/* f0d20e4: a6000006 */ sh $zero,0x6($s0)
/* f0d20e8: 00026840 */ sll $t5,$v0,0x1
/* f0d20ec: 0c002f7b */ jal 0xbdec
/* f0d20f0: a60d0008 */ sh $t5,0x8($s0)
/* f0d20f4: 00027040 */ sll $t6,$v0,0x1
/* f0d20f8: 240f01ff */ addiu $t7,$zero,0x1ff
/* f0d20fc: 02201825 */ or $v1,$s1,$zero
/* f0d2100: a60e000a */ sh $t6,0xa($s0)
/* f0d2104: a60f000c */ sh $t7,0xc($s0)
/* f0d2108: a600000e */ sh $zero,0xe($s0)
/* f0d210c: 3c180380 */ lui $t8,0x380
/* f0d2110: 37180010 */ ori $t8,$t8,0x10
/* f0d2114: 26310008 */ addiu $s1,$s1,0x8
/* f0d2118: ac780000 */ sw $t8,0x0($v1)
/* f0d211c: ac700004 */ sw $s0,0x4($v1)
/* f0d2120: 02202025 */ or $a0,$s1,$zero
/* f0d2124: 3c19e700 */ lui $t9,0xe700
/* f0d2128: ac990000 */ sw $t9,0x0($a0)
/* f0d212c: ac800004 */ sw $zero,0x4($a0)
/* f0d2130: 8fbf002c */ lw $ra,0x2c($sp)
/* f0d2134: 26220008 */ addiu $v0,$s1,0x8
/* f0d2138: 8fb10028 */ lw $s1,0x28($sp)
/* f0d213c: 8fb00024 */ lw $s0,0x24($sp)
/* f0d2140: 03e00008 */ jr $ra
/* f0d2144: 27bd0090 */ addiu $sp,$sp,0x90
);
#endif
GLOBAL_ASM(
glabel func0f0d49c8
@@ -933,6 +1070,7 @@ glabel savefileGetSomething
/* f0d535c: 00000000 */ nop
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f0d5360
/* f0d5360: 27bdfff8 */ addiu $sp,$sp,-8
@@ -978,6 +1116,7 @@ glabel func0f0d5360
/* f0d53f0: 03e00008 */ jr $ra
/* f0d53f4: 27bd0008 */ addiu $sp,$sp,0x8
);
#endif
GLOBAL_ASM(
glabel savefileGetInteger
@@ -1190,6 +1329,7 @@ glabel func0f0d564c
/* f0d568c: 00000000 */ nop
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f0d5690
/* f0d5690: 27bdfed8 */ addiu $sp,$sp,-296
@@ -1249,6 +1389,7 @@ glabel func0f0d5690
/* f0d5754: 03e00008 */ jr $ra
/* f0d5758: 27bd0128 */ addiu $sp,$sp,0x128
);
#endif
GLOBAL_ASM(
glabel func0f0d575c
@@ -1486,9 +1627,11 @@ glabel formatTime
/* f0d5a78: 27bd0068 */ addiu $sp,$sp,0x68
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f0d5a7c
/* f0d5a7c: 3c018007 */ lui $at,%hi(var80070f10)
/* f0d5a80: 03e00008 */ jr $ra
/* f0d5a84: ac200f10 */ sw $zero,%lo(var80070f10)($at)
);
#endif
+260
View File
@@ -1651,6 +1651,7 @@ glabel func0f0e1668
/* f0e1948: 27bd0078 */ addiu $sp,$sp,0x78
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f0e194c
/* f0e194c: 27bdff98 */ addiu $sp,$sp,-104
@@ -1886,6 +1887,265 @@ glabel func0f0e194c
/* f0e1ce0: 03e00008 */ jr $ra
/* f0e1ce4: 27bd0068 */ addiu $sp,$sp,0x68
);
#else
GLOBAL_ASM(
glabel func0f0e194c
/* f0ded8c: 27bdff70 */ addiu $sp,$sp,-144
/* f0ded90: afbf003c */ sw $ra,0x3c($sp)
/* f0ded94: afa40090 */ sw $a0,0x90($sp)
/* f0ded98: afb20038 */ sw $s2,0x38($sp)
/* f0ded9c: afb10034 */ sw $s1,0x34($sp)
/* f0deda0: afb00030 */ sw $s0,0x30($sp)
/* f0deda4: afa50094 */ sw $a1,0x94($sp)
/* f0deda8: afa60098 */ sw $a2,0x98($sp)
/* f0dedac: afa7009c */ sw $a3,0x9c($sp)
/* f0dedb0: 0fc588c3 */ jal 0xf16230c
/* f0dedb4: 24040007 */ addiu $a0,$zero,0x7
/* f0dedb8: 00408825 */ or $s1,$v0,$zero
/* f0dedbc: 0fc588a9 */ jal 0xf1622a4
/* f0dedc0: 24040009 */ addiu $a0,$zero,0x9
/* f0dedc4: 8fae0090 */ lw $t6,0x90($sp)
/* f0dedc8: 3c18e700 */ lui $t8,0xe700
/* f0dedcc: 00408025 */ or $s0,$v0,$zero
/* f0dedd0: 25cf0008 */ addiu $t7,$t6,0x8
/* f0dedd4: afaf0090 */ sw $t7,0x90($sp)
/* f0dedd8: adc00004 */ sw $zero,0x4($t6)
/* f0deddc: add80000 */ sw $t8,0x0($t6)
/* f0dede0: 8fb90090 */ lw $t9,0x90($sp)
/* f0dede4: 3c0fba00 */ lui $t7,0xba00
/* f0dede8: 35ef1402 */ ori $t7,$t7,0x1402
/* f0dedec: 272e0008 */ addiu $t6,$t9,0x8
/* f0dedf0: afae0090 */ sw $t6,0x90($sp)
/* f0dedf4: af200004 */ sw $zero,0x4($t9)
/* f0dedf8: af2f0000 */ sw $t7,0x0($t9)
/* f0dedfc: 8fb80090 */ lw $t8,0x90($sp)
/* f0dee00: 3c0eb900 */ lui $t6,0xb900
/* f0dee04: 35ce0002 */ ori $t6,$t6,0x2
/* f0dee08: 27190008 */ addiu $t9,$t8,0x8
/* f0dee0c: afb90090 */ sw $t9,0x90($sp)
/* f0dee10: af000004 */ sw $zero,0x4($t8)
/* f0dee14: af0e0000 */ sw $t6,0x0($t8)
/* f0dee18: 8faf0090 */ lw $t7,0x90($sp)
/* f0dee1c: 3c19fc12 */ lui $t9,0xfc12
/* f0dee20: 37397e24 */ ori $t9,$t9,0x7e24
/* f0dee24: 25f80008 */ addiu $t8,$t7,0x8
/* f0dee28: afb80090 */ sw $t8,0x90($sp)
/* f0dee2c: 240ef9fc */ addiu $t6,$zero,-1540
/* f0dee30: adee0004 */ sw $t6,0x4($t7)
/* f0dee34: adf90000 */ sw $t9,0x0($t7)
/* f0dee38: 8faf0090 */ lw $t7,0x90($sp)
/* f0dee3c: 3c19b600 */ lui $t9,0xb600
/* f0dee40: 240e3000 */ addiu $t6,$zero,0x3000
/* f0dee44: 25f80008 */ addiu $t8,$t7,0x8
/* f0dee48: afb80090 */ sw $t8,0x90($sp)
/* f0dee4c: adee0004 */ sw $t6,0x4($t7)
/* f0dee50: adf90000 */ sw $t9,0x0($t7)
/* f0dee54: 8faf0090 */ lw $t7,0x90($sp)
/* f0dee58: 3c19ba00 */ lui $t9,0xba00
/* f0dee5c: 37390c02 */ ori $t9,$t9,0xc02
/* f0dee60: 25f80008 */ addiu $t8,$t7,0x8
/* f0dee64: afb80090 */ sw $t8,0x90($sp)
/* f0dee68: 240e2000 */ addiu $t6,$zero,0x2000
/* f0dee6c: adee0004 */ sw $t6,0x4($t7)
/* f0dee70: adf90000 */ sw $t9,0x0($t7)
/* f0dee74: 240f0002 */ addiu $t7,$zero,0x2
/* f0dee78: 24180001 */ addiu $t8,$zero,0x1
/* f0dee7c: afb80014 */ sw $t8,0x14($sp)
/* f0dee80: afaf0010 */ sw $t7,0x10($sp)
/* f0dee84: afa00018 */ sw $zero,0x18($sp)
/* f0dee88: 27a40090 */ addiu $a0,$sp,0x90
/* f0dee8c: 00002825 */ or $a1,$zero,$zero
/* f0dee90: 24060002 */ addiu $a2,$zero,0x2
/* f0dee94: 0fc2c5c8 */ jal 0xf0b1720
/* f0dee98: 00003825 */ or $a3,$zero,$zero
/* f0dee9c: 8fab0094 */ lw $t3,0x94($sp)
/* f0deea0: 2404000a */ addiu $a0,$zero,0xa
/* f0deea4: 8fac0098 */ lw $t4,0x98($sp)
/* f0deea8: 01640019 */ multu $t3,$a0
/* f0deeac: 8fad009c */ lw $t5,0x9c($sp)
/* f0deeb0: 8fb90090 */ lw $t9,0x90($sp)
/* f0deeb4: 8faa00a0 */ lw $t2,0xa0($sp)
/* f0deeb8: 3c0fb900 */ lui $t7,0xb900
/* f0deebc: 272e0008 */ addiu $t6,$t9,0x8
/* f0deec0: afae0090 */ sw $t6,0x90($sp)
/* f0deec4: 3c180050 */ lui $t8,0x50
/* f0deec8: 37184240 */ ori $t8,$t8,0x4240
/* f0deecc: 35ef031d */ ori $t7,$t7,0x31d
/* f0deed0: 00002812 */ mflo $a1
/* f0deed4: af2f0000 */ sw $t7,0x0($t9)
/* f0deed8: af380004 */ sw $t8,0x4($t9)
/* f0deedc: 01840019 */ multu $t4,$a0
/* f0deee0: 03201825 */ or $v1,$t9,$zero
/* f0deee4: 014c9021 */ addu $s2,$t2,$t4
/* f0deee8: 2402fff6 */ addiu $v0,$zero,-10
/* f0deeec: a6050000 */ sh $a1,0x0($s0)
/* f0deef0: a6020004 */ sh $v0,0x4($s0)
/* f0deef4: a6020010 */ sh $v0,0x10($s0)
/* f0deef8: a6050018 */ sh $a1,0x18($s0)
/* f0deefc: a602001c */ sh $v0,0x1c($s0)
/* f0def00: a6020028 */ sh $v0,0x28($s0)
/* f0def04: 00003012 */ mflo $a2
/* f0def08: a6060002 */ sh $a2,0x2($s0)
/* f0def0c: a606000e */ sh $a2,0xe($s0)
/* f0def10: 01a40019 */ multu $t5,$a0
/* f0def14: a6050030 */ sh $a1,0x30($s0)
/* f0def18: a6020034 */ sh $v0,0x34($s0)
/* f0def1c: a6020040 */ sh $v0,0x40($s0)
/* f0def20: 240f0018 */ addiu $t7,$zero,0x18
/* f0def24: 24050008 */ addiu $a1,$zero,0x8
/* f0def28: 2418000c */ addiu $t8,$zero,0xc
/* f0def2c: 00003812 */ mflo $a3
/* f0def30: a607000c */ sh $a3,0xc($s0)
/* f0def34: 06410003 */ bgez $s2,.NB0f0def44
/* f0def38: 0012c843 */ sra $t9,$s2,0x1
/* f0def3c: 26410001 */ addiu $at,$s2,0x1
/* f0def40: 0001c843 */ sra $t9,$at,0x1
.NB0f0def44:
/* f0def44: 03240019 */ multu $t9,$a0
/* f0def48: a6070024 */ sh $a3,0x24($s0)
/* f0def4c: a607003c */ sh $a3,0x3c($s0)
/* f0def50: 03209025 */ or $s2,$t9,$zero
/* f0def54: 24190010 */ addiu $t9,$zero,0x10
/* f0def58: 00004012 */ mflo $t0
/* f0def5c: a608001a */ sh $t0,0x1a($s0)
/* f0def60: a6080026 */ sh $t0,0x26($s0)
/* f0def64: 01440019 */ multu $t2,$a0
/* f0def68: 00001812 */ mflo $v1
/* f0def6c: a6030032 */ sh $v1,0x32($s0)
/* f0def70: a603003e */ sh $v1,0x3e($s0)
/* f0def74: 8fae00a4 */ lw $t6,0xa4($sp)
/* f0def78: a20f0013 */ sb $t7,0x13($s0)
/* f0def7c: a606004a */ sh $a2,0x4a($s0)
/* f0def80: 01c40019 */ multu $t6,$a0
/* f0def84: 24040004 */ addiu $a0,$zero,0x4
/* f0def88: a204001f */ sb $a0,0x1f($s0)
/* f0def8c: a204002b */ sb $a0,0x2b($s0)
/* f0def90: 016d2021 */ addu $a0,$t3,$t5
/* f0def94: a2050037 */ sb $a1,0x37($s0)
/* f0def98: a2050043 */ sb $a1,0x43($s0)
/* f0def9c: 240e0014 */ addiu $t6,$zero,0x14
/* f0defa0: a602004c */ sh $v0,0x4c($s0)
/* f0defa4: a6080056 */ sh $t0,0x56($s0)
/* f0defa8: 00004812 */ mflo $t1
/* f0defac: a6090048 */ sh $t1,0x48($s0)
/* f0defb0: a6090054 */ sh $t1,0x54($s0)
/* f0defb4: a6020058 */ sh $v0,0x58($s0)
/* f0defb8: a6090060 */ sh $t1,0x60($s0)
/* f0defbc: a6030062 */ sh $v1,0x62($s0)
/* f0defc0: a6020064 */ sh $v0,0x64($s0)
/* f0defc4: a2000007 */ sb $zero,0x7($s0)
/* f0defc8: a218004f */ sb $t8,0x4f($s0)
/* f0defcc: a219005b */ sb $t9,0x5b($s0)
/* f0defd0: a20e0067 */ sb $t6,0x67($s0)
/* f0defd4: 04810003 */ bgez $a0,.NB0f0defe4
/* f0defd8: 00047843 */ sra $t7,$a0,0x1
/* f0defdc: 24810001 */ addiu $at,$a0,0x1
/* f0defe0: 00017843 */ sra $t7,$at,0x1
.NB0f0defe4:
/* f0defe4: 01e02025 */ or $a0,$t7,$zero
/* f0defe8: afaf0050 */ sw $t7,0x50($sp)
/* f0defec: afb20044 */ sw $s2,0x44($sp)
/* f0deff0: 02402825 */ or $a1,$s2,$zero
/* f0deff4: 0fc53a82 */ jal 0xf14ea08
/* f0deff8: 2406ffff */ addiu $a2,$zero,-1
/* f0deffc: 8fa40050 */ lw $a0,0x50($sp)
/* f0df000: 305200ff */ andi $s2,$v0,0xff
/* f0df004: 8fa50044 */ lw $a1,0x44($sp)
/* f0df008: 0fc53a82 */ jal 0xf14ea08
/* f0df00c: 2406ff7f */ addiu $a2,$zero,-129
/* f0df010: 2406ff00 */ addiu $a2,$zero,-256
/* f0df014: 36586f00 */ ori $t8,$s2,0x6f00
/* f0df018: 304300ff */ andi $v1,$v0,0xff
/* f0df01c: 3c016f6f */ lui $at,0x6f6f
/* f0df020: ae380000 */ sw $t8,0x0($s1)
/* f0df024: 34796f00 */ ori $t9,$v1,0x6f00
/* f0df028: 36453f00 */ ori $a1,$s2,0x3f00
/* f0df02c: 34216f00 */ ori $at,$at,0x6f00
/* f0df030: 03267024 */ and $t6,$t9,$a2
/* f0df034: 00a67824 */ and $t7,$a1,$a2
/* f0df038: 0241c025 */ or $t8,$s2,$at
/* f0df03c: ae390004 */ sw $t9,0x4($s1)
/* f0df040: ae250008 */ sw $a1,0x8($s1)
/* f0df044: ae26000c */ sw $a2,0xc($s1)
/* f0df048: ae2e0010 */ sw $t6,0x10($s1)
/* f0df04c: ae2f0014 */ sw $t7,0x14($s1)
/* f0df050: ae380018 */ sw $t8,0x18($s1)
/* f0df054: 8fb90090 */ lw $t9,0x90($sp)
/* f0df058: 3c0f0718 */ lui $t7,0x718
/* f0df05c: 35ef001c */ ori $t7,$t7,0x1c
/* f0df060: 272e0008 */ addiu $t6,$t9,0x8
/* f0df064: afae0090 */ sw $t6,0x90($sp)
/* f0df068: af2f0000 */ sw $t7,0x0($t9)
/* f0df06c: 02202025 */ or $a0,$s1,$zero
/* f0df070: 0c013100 */ jal 0x4c400
/* f0df074: afb90060 */ sw $t9,0x60($sp)
/* f0df078: 8fa70060 */ lw $a3,0x60($sp)
/* f0df07c: 3c0e0480 */ lui $t6,0x480
/* f0df080: 35ce006c */ ori $t6,$t6,0x6c
/* f0df084: ace20004 */ sw $v0,0x4($a3)
/* f0df088: 8fb10090 */ lw $s1,0x90($sp)
/* f0df08c: 02002025 */ or $a0,$s0,$zero
/* f0df090: 26390008 */ addiu $t9,$s1,0x8
/* f0df094: afb90090 */ sw $t9,0x90($sp)
/* f0df098: 0c013100 */ jal 0x4c400
/* f0df09c: ae2e0000 */ sw $t6,0x0($s1)
/* f0df0a0: ae220004 */ sw $v0,0x4($s1)
/* f0df0a4: 8faf0090 */ lw $t7,0x90($sp)
/* f0df0a8: 3c19b100 */ lui $t9,0xb100
/* f0df0ac: 3c0e3432 */ lui $t6,0x3432
/* f0df0b0: 25f80008 */ addiu $t8,$t7,0x8
/* f0df0b4: afb80090 */ sw $t8,0x90($sp)
/* f0df0b8: 35ce2310 */ ori $t6,$t6,0x2310
/* f0df0bc: 37395403 */ ori $t9,$t9,0x5403
/* f0df0c0: adf90000 */ sw $t9,0x0($t7)
/* f0df0c4: adee0004 */ sw $t6,0x4($t7)
/* f0df0c8: 8faf0090 */ lw $t7,0x90($sp)
/* f0df0cc: 3c0e5873 */ lui $t6,0x5873
/* f0df0d0: 3c19b100 */ lui $t9,0xb100
/* f0df0d4: 25f80008 */ addiu $t8,$t7,0x8
/* f0df0d8: afb80090 */ sw $t8,0x90($sp)
/* f0df0dc: 37393817 */ ori $t9,$t9,0x3817
/* f0df0e0: 35ce3761 */ ori $t6,$t6,0x3761
/* f0df0e4: adee0004 */ sw $t6,0x4($t7)
/* f0df0e8: adf90000 */ sw $t9,0x0($t7)
/* f0df0ec: 8fa60098 */ lw $a2,0x98($sp)
/* f0df0f0: 325000ff */ andi $s0,$s2,0xff
/* f0df0f4: 0010c882 */ srl $t9,$s0,0x2
/* f0df0f8: 240f0028 */ addiu $t7,$zero,0x28
/* f0df0fc: 240e0001 */ addiu $t6,$zero,0x1
/* f0df100: 24d80001 */ addiu $t8,$a2,0x1
/* f0df104: afb80010 */ sw $t8,0x10($sp)
/* f0df108: afae0018 */ sw $t6,0x18($sp)
/* f0df10c: afaf001c */ sw $t7,0x1c($sp)
/* f0df110: 03208025 */ or $s0,$t9,$zero
/* f0df114: afb90014 */ sw $t9,0x14($sp)
/* f0df118: afa00020 */ sw $zero,0x20($sp)
/* f0df11c: 8fa7009c */ lw $a3,0x9c($sp)
/* f0df120: 8fa50094 */ lw $a1,0x94($sp)
/* f0df124: 0fc37fce */ jal 0xf0dff38
/* f0df128: 8fa40090 */ lw $a0,0x90($sp)
/* f0df12c: 8fa600a0 */ lw $a2,0xa0($sp)
/* f0df130: 24190028 */ addiu $t9,$zero,0x28
/* f0df134: 240e0001 */ addiu $t6,$zero,0x1
/* f0df138: 24d80001 */ addiu $t8,$a2,0x1
/* f0df13c: afa20090 */ sw $v0,0x90($sp)
/* f0df140: afb80010 */ sw $t8,0x10($sp)
/* f0df144: afae0020 */ sw $t6,0x20($sp)
/* f0df148: afb9001c */ sw $t9,0x1c($sp)
/* f0df14c: 00402025 */ or $a0,$v0,$zero
/* f0df150: 8fa50094 */ lw $a1,0x94($sp)
/* f0df154: 8fa7009c */ lw $a3,0x9c($sp)
/* f0df158: afb00014 */ sw $s0,0x14($sp)
/* f0df15c: 0fc37fce */ jal 0xf0dff38
/* f0df160: afa00018 */ sw $zero,0x18($sp)
/* f0df164: 8fbf003c */ lw $ra,0x3c($sp)
/* f0df168: 8fb00030 */ lw $s0,0x30($sp)
/* f0df16c: 8fb10034 */ lw $s1,0x34($sp)
/* f0df170: 8fb20038 */ lw $s2,0x38($sp)
/* f0df174: 03e00008 */ jr $ra
/* f0df178: 27bd0090 */ addiu $sp,$sp,0x90
);
#endif
GLOBAL_ASM(
glabel func0f0e1ce8
+8120 -13
View File
File diff suppressed because it is too large. Load diff
+1427 -5
View File
File diff suppressed because it is too large. Load diff
+582 -4
View File
@@ -100,7 +100,9 @@ char *filemgrGetDeviceName(s32 index)
L_OPTIONS_114, // "Controller Pak 3"
L_OPTIONS_115, // "Controller Pak 4"
L_OPTIONS_111, // "Game Pak"
#if VERSION >= VERSION_NTSC_1_0
L_MPWEAPONS_229, // "Controller Pak Not Found"
#endif
};
if (index < ARRAYCOUNT(names)) {
@@ -394,6 +396,7 @@ char *filemgrMenuTextErrorTitle(struct menuitem *item)
return langGet(messages[8]);
}
#if VERSION >= VERSION_NTSC_1_0
char *filemgrMenuTextFileType(struct menuitem *item)
{
u16 names[] = {
@@ -425,6 +428,7 @@ char *filemgrMenuTextFileType(struct menuitem *item)
return langGet(names[0]);
}
#endif
void func0f10898c(void)
{
@@ -568,6 +572,7 @@ s32 filemgrAcknowledgeFileLostMenuHandler(s32 operation, struct menuitem *item,
return 0;
}
#if VERSION >= VERSION_NTSC_1_0
void filemgrEraseCorruptFile(void)
{
s32 value;
@@ -587,6 +592,7 @@ void filemgrEraseCorruptFile(void)
menuPushDialog(&g_FilemgrFileLostMenuDialog);
}
#endif
s32 filemgrInsertOriginalPakMenuDialog(s32 operation, struct menudialog *dialog, union handlerdata *data)
{
@@ -623,6 +629,7 @@ s32 filemgrReinsertedCancelMenuHandler(s32 operation, struct menuitem *item, uni
return 0;
}
#if VERSION >= VERSION_NTSC_1_0
char *filemgrMenuTextInsertOriginalPak(struct menuitem *item)
{
char fullbuffer[100];
@@ -649,6 +656,7 @@ char *filemgrMenuTextInsertOriginalPak(struct menuitem *item)
return g_StringPointer;
}
#endif
/**
* Context is:
@@ -683,12 +691,18 @@ void filemgrRetrySave(s32 context)
if (g_Menus[g_MpPlayerNum].unke42 < 100) {
func0f0f3704(&g_FilemgrSaveErrorMenuDialog);
} else {
#if VERSION >= VERSION_NTSC_1_0
filemgrEraseCorruptFile();
#else
// Argument is wrong/mismatching
func0f0f3704(&g_FilemgrSaveErrorMenuDialog);
#endif
}
}
}
}
#if VERSION >= VERSION_NTSC_1_0
bool fileSave(s32 arg0, bool arg1)
{
s32 errno = 0;
@@ -776,6 +790,198 @@ bool fileSave(s32 arg0, bool arg1)
return errno;
}
#else
GLOBAL_ASM(
glabel fileSave
/* f104a8c: 3c0e8007 */ lui $t6,0x8007
/* f104a90: 8dce3af0 */ lw $t6,0x3af0($t6)
/* f104a94: 3c18800a */ lui $t8,0x800a
/* f104a98: 271827c0 */ addiu $t8,$t8,0x27c0
/* f104a9c: 000e78c0 */ sll $t7,$t6,0x3
/* f104aa0: 01ee7823 */ subu $t7,$t7,$t6
/* f104aa4: 000f78c0 */ sll $t7,$t7,0x3
/* f104aa8: 01ee7823 */ subu $t7,$t7,$t6
/* f104aac: 000f7900 */ sll $t7,$t7,0x4
/* f104ab0: 01ee7823 */ subu $t7,$t7,$t6
/* f104ab4: 000f7880 */ sll $t7,$t7,0x2
/* f104ab8: 01f81021 */ addu $v0,$t7,$t8
/* f104abc: 94590dac */ lhu $t9,0xdac($v0)
/* f104ac0: 27bdffb8 */ addiu $sp,$sp,-72
/* f104ac4: 3c0c7f1b */ lui $t4,0x7f1b
/* f104ac8: 332a0001 */ andi $t2,$t9,0x1
/* f104acc: 000a582b */ sltu $t3,$zero,$t2
/* f104ad0: afbf001c */ sw $ra,0x1c($sp)
/* f104ad4: afa40048 */ sw $a0,0x48($sp)
/* f104ad8: afa5004c */ sw $a1,0x4c($sp)
/* f104adc: afab0040 */ sw $t3,0x40($sp)
/* f104ae0: 258cd258 */ addiu $t4,$t4,-11688
/* f104ae4: 8d810000 */ lw $at,0x0($t4)
/* f104ae8: 27a90030 */ addiu $t1,$sp,0x30
/* f104aec: 90480d9e */ lbu $t0,0xd9e($v0)
/* f104af0: ad210000 */ sw $at,0x0($t1)
/* f104af4: 8d8f0004 */ lw $t7,0x4($t4)
/* f104af8: 01001825 */ or $v1,$t0,$zero
/* f104afc: 00003025 */ or $a2,$zero,$zero
/* f104b00: ad2f0004 */ sw $t7,0x4($t1)
/* f104b04: 8d810008 */ lw $at,0x8($t4)
/* f104b08: 2478ff9c */ addiu $t8,$v1,-100
/* f104b0c: ad210008 */ sw $at,0x8($t1)
/* f104b10: 8d8f000c */ lw $t7,0xc($t4)
/* f104b14: 29010009 */ slti $at,$t0,0x9
/* f104b18: 14200009 */ bnez $at,.NB0f104b40
/* f104b1c: ad2f000c */ sw $t7,0xc($t1)
/* f104b20: 2f010007 */ sltiu $at,$t8,0x7
/* f104b24: 1020005d */ beqz $at,.NB0f104c9c
/* f104b28: 0018c080 */ sll $t8,$t8,0x2
/* f104b2c: 3c017f1b */ lui $at,0x7f1b
/* f104b30: 00380821 */ addu $at,$at,$t8
/* f104b34: 8c38d3e8 */ lw $t8,-0x2c18($at)
/* f104b38: 03000008 */ jr $t8
/* f104b3c: 00000000 */ sll $zero,$zero,0x0
.NB0f104b40:
/* f104b40: 2c610009 */ sltiu $at,$v1,0x9
/* f104b44: 10200055 */ beqz $at,.NB0f104c9c
/* f104b48: 0003c880 */ sll $t9,$v1,0x2
/* f104b4c: 3c017f1b */ lui $at,0x7f1b
/* f104b50: 00390821 */ addu $at,$at,$t9
/* f104b54: 8c39d404 */ lw $t9,-0x2bfc($at)
/* f104b58: 03200008 */ jr $t9
/* f104b5c: 00000000 */ sll $zero,$zero,0x0
/* f104b60: 240a0001 */ addiu $t2,$zero,0x1
/* f104b64: afaa0040 */ sw $t2,0x40($sp)
/* f104b68: 8fa40048 */ lw $a0,0x48($sp)
/* f104b6c: 8c450da4 */ lw $a1,0xda4($v0)
/* f104b70: 0fc428e0 */ jal 0xf10a380
/* f104b74: 94460daa */ lhu $a2,0xdaa($v0)
/* f104b78: 10000048 */ beqz $zero,.NB0f104c9c
/* f104b7c: 00403025 */ or $a2,$v0,$zero
/* f104b80: 8c440da0 */ lw $a0,0xda0($v0)
/* f104b84: 8fa50048 */ lw $a1,0x48($sp)
/* f104b88: 8c460da4 */ lw $a2,0xda4($v0)
/* f104b8c: 0fc61f00 */ jal 0xf187c00
/* f104b90: 94470daa */ lhu $a3,0xdaa($v0)
/* f104b94: 10000041 */ beqz $zero,.NB0f104c9c
/* f104b98: 00403025 */ or $a2,$v0,$zero
/* f104b9c: 8fa40048 */ lw $a0,0x48($sp)
/* f104ba0: 8c450da4 */ lw $a1,0xda4($v0)
/* f104ba4: 0fc62178 */ jal 0xf1885e0
/* f104ba8: 94460daa */ lhu $a2,0xdaa($v0)
/* f104bac: 240b0001 */ addiu $t3,$zero,0x1
/* f104bb0: 00403025 */ or $a2,$v0,$zero
/* f104bb4: 10000039 */ beqz $zero,.NB0f104c9c
/* f104bb8: afab0040 */ sw $t3,0x40($sp)
/* f104bbc: 00087080 */ sll $t6,$t0,0x2
/* f104bc0: afa0002c */ sw $zero,0x2c($sp)
/* f104bc4: 012e6821 */ addu $t5,$t1,$t6
/* f104bc8: 8da6ffe8 */ lw $a2,-0x18($t5)
/* f104bcc: 27ac002c */ addiu $t4,$sp,0x2c
/* f104bd0: afac0010 */ sw $t4,0x10($sp)
/* f104bd4: afa00014 */ sw $zero,0x14($sp)
/* f104bd8: 83a4004b */ lb $a0,0x4b($sp)
/* f104bdc: 8c450da4 */ lw $a1,0xda4($v0)
/* f104be0: 0fc442fb */ jal 0xf110bec
/* f104be4: 8c470da0 */ lw $a3,0xda0($v0)
/* f104be8: 3c188007 */ lui $t8,0x8007
/* f104bec: 8f183af0 */ lw $t8,0x3af0($t8)
/* f104bf0: 3c0a800a */ lui $t2,0x800a
/* f104bf4: 3c018007 */ lui $at,0x8007
/* f104bf8: 0018c8c0 */ sll $t9,$t8,0x3
/* f104bfc: 0338c823 */ subu $t9,$t9,$t8
/* f104c00: 0019c8c0 */ sll $t9,$t9,0x3
/* f104c04: 0338c823 */ subu $t9,$t9,$t8
/* f104c08: 0019c900 */ sll $t9,$t9,0x4
/* f104c0c: 0338c823 */ subu $t9,$t9,$t8
/* f104c10: 0019c880 */ sll $t9,$t9,0x2
/* f104c14: 01595021 */ addu $t2,$t2,$t9
/* f104c18: 914a355e */ lbu $t2,0x355e($t2)
/* f104c1c: 240f0001 */ addiu $t7,$zero,0x1
/* f104c20: 00403025 */ or $a2,$v0,$zero
/* f104c24: 000a5880 */ sll $t3,$t2,0x2
/* f104c28: 002b0821 */ addu $at,$at,$t3
/* f104c2c: 1000001b */ beqz $zero,.NB0f104c9c
/* f104c30: ac2f7f58 */ sw $t7,0x7f58($at)
/* f104c34: 0fc427fe */ jal 0xf109ff8
/* f104c38: 8fa40048 */ lw $a0,0x48($sp)
/* f104c3c: 10000017 */ beqz $zero,.NB0f104c9c
/* f104c40: 00403025 */ or $a2,$v0,$zero
/* f104c44: 8c440da0 */ lw $a0,0xda0($v0)
/* f104c48: 8fa50048 */ lw $a1,0x48($sp)
/* f104c4c: 8c460da4 */ lw $a2,0xda4($v0)
/* f104c50: 0fc61f31 */ jal 0xf187cc4
/* f104c54: 94470daa */ lhu $a3,0xdaa($v0)
/* f104c58: 10000010 */ beqz $zero,.NB0f104c9c
/* f104c5c: 00403025 */ or $a2,$v0,$zero
/* f104c60: 8fa40048 */ lw $a0,0x48($sp)
/* f104c64: 8c450da4 */ lw $a1,0xda4($v0)
/* f104c68: 0fc621a2 */ jal 0xf188688
/* f104c6c: 94460daa */ lhu $a2,0xdaa($v0)
/* f104c70: 1000000a */ beqz $zero,.NB0f104c9c
/* f104c74: 00403025 */ or $a2,$v0,$zero
/* f104c78: 00087080 */ sll $t6,$t0,0x2
/* f104c7c: 3c077f1b */ lui $a3,0x7f1b
/* f104c80: 00ee3821 */ addu $a3,$a3,$t6
/* f104c84: 8ce7d088 */ lw $a3,-0x2f78($a3)
/* f104c88: 83a4004b */ lb $a0,0x4b($sp)
/* f104c8c: 8c450da4 */ lw $a1,0xda4($v0)
/* f104c90: 0fc442f1 */ jal 0xf110bc4
/* f104c94: 8c460da0 */ lw $a2,0xda0($v0)
/* f104c98: 00403025 */ or $a2,$v0,$zero
.NB0f104c9c:
/* f104c9c: 14c00006 */ bnez $a2,.NB0f104cb8
/* f104ca0: 8fad004c */ lw $t5,0x4c($sp)
/* f104ca4: 11a00004 */ beqz $t5,.NB0f104cb8
/* f104ca8: 00000000 */ sll $zero,$zero,0x0
/* f104cac: 0fc3bfcf */ jal 0xf0eff3c
/* f104cb0: afa60044 */ sw $a2,0x44($sp)
/* f104cb4: 8fa60044 */ lw $a2,0x44($sp)
.NB0f104cb8:
/* f104cb8: 3c0c8007 */ lui $t4,0x8007
/* f104cbc: 8d8c3af0 */ lw $t4,0x3af0($t4)
/* f104cc0: 3c19800a */ lui $t9,0x800a
/* f104cc4: 000cc0c0 */ sll $t8,$t4,0x3
/* f104cc8: 030cc023 */ subu $t8,$t8,$t4
/* f104ccc: 0018c0c0 */ sll $t8,$t8,0x3
/* f104cd0: 030cc023 */ subu $t8,$t8,$t4
/* f104cd4: 0018c100 */ sll $t8,$t8,0x4
/* f104cd8: 030cc023 */ subu $t8,$t8,$t4
/* f104cdc: 0018c080 */ sll $t8,$t8,0x2
/* f104ce0: 0338c821 */ addu $t9,$t9,$t8
/* f104ce4: 9339355e */ lbu $t9,0x355e($t9)
/* f104ce8: 2b210064 */ slti $at,$t9,0x64
/* f104cec: 10200010 */ beqz $at,.NB0f104d30
/* f104cf0: 00000000 */ sll $zero,$zero,0x0
/* f104cf4: 54c00005 */ bnezl $a2,.NB0f104d0c
/* f104cf8: 8faa0040 */ lw $t2,0x40($sp)
/* f104cfc: 0fc41127 */ jal 0xf10449c
/* f104d00: afa60044 */ sw $a2,0x44($sp)
/* f104d04: 8fa60044 */ lw $a2,0x44($sp)
/* f104d08: 8faa0040 */ lw $t2,0x40($sp)
.NB0f104d0c:
/* f104d0c: 1140000d */ beqz $t2,.NB0f104d44
/* f104d10: 00000000 */ sll $zero,$zero,0x0
/* f104d14: 14c0000b */ bnez $a2,.NB0f104d44
/* f104d18: 3c048007 */ lui $a0,0x8007
/* f104d1c: 248469d4 */ addiu $a0,$a0,0x69d4
/* f104d20: 0fc3beda */ jal 0xf0efb68
/* f104d24: afa60044 */ sw $a2,0x44($sp)
/* f104d28: 10000006 */ beqz $zero,.NB0f104d44
/* f104d2c: 8fa60044 */ lw $a2,0x44($sp)
.NB0f104d30:
/* f104d30: 14c00004 */ bnez $a2,.NB0f104d44
/* f104d34: 00000000 */ sll $zero,$zero,0x0
/* f104d38: 0fc41127 */ jal 0xf10449c
/* f104d3c: afa60044 */ sw $a2,0x44($sp)
/* f104d40: 8fa60044 */ lw $a2,0x44($sp)
.NB0f104d44:
/* f104d44: 0fc3c058 */ jal 0xf0f0160
/* f104d48: afa60044 */ sw $a2,0x44($sp)
/* f104d4c: 8fbf001c */ lw $ra,0x1c($sp)
/* f104d50: 8fa20044 */ lw $v0,0x44($sp)
/* f104d54: 27bd0048 */ addiu $sp,$sp,0x48
/* f104d58: 03e00008 */ jr $ra
/* f104d5c: 00000000 */ sll $zero,$zero,0x0
);
#endif
const char var7f1b3074[] = "FileAttemptOperation - pak %d op %d\n";
const char var7f1b309c[] = ">> blockWrite: file:%x pak:%x\n";
@@ -825,7 +1031,12 @@ bool func0f1094e4(struct savelocation_2d8 *arg0, s32 arg1, void *arg2)
if (g_Menus[g_MpPlayerNum].unke42 < 100) {
menuPushDialog(&g_FilemgrSaveErrorMenuDialog);
} else {
#if VERSION >= VERSION_NTSC_1_0
filemgrEraseCorruptFile();
#else
// Argument is wrong/mismatching
menuPushDialog(&g_FilemgrSaveErrorMenuDialog);
#endif
}
return false;
@@ -929,7 +1140,9 @@ struct menudialog g_FilemgrSaveElsewhereMenuDialog = {
};
struct menuitem g_PakNotOriginalMenuItems[] = {
#if VERSION >= VERSION_NTSC_1_0
{ MENUITEMTYPE_LABEL, 0, 0x00000010, (u32)&filemgrMenuTextInsertOriginalPak, 0x00000000, NULL },
#endif
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_OPTIONS_365, 0x00000000, filemgrReinsertedOkMenuHandler }, // "OK"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_OPTIONS_366, 0x00000000, filemgrReinsertedCancelMenuHandler }, // "Cancel"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
@@ -984,6 +1197,7 @@ void func0f109954(s32 arg0)
}
}
#if VERSION >= VERSION_NTSC_1_0
void func0f1099a8(char *buffer, struct savelocation000 *arg1)
{
char localbuffer[20];
@@ -1003,7 +1217,9 @@ void func0f1099a8(char *buffer, struct savelocation000 *arg1)
sprintf(buffer, "%s", localbuffer);
}
#endif
#if VERSION >= VERSION_NTSC_1_0
const char var7f1b3294[] = "GETFileNameForThePurposesOfTheFileRenamingChecker: Unknown type %d\n";
void filemgrGetRenameName(char *buffer)
@@ -1049,7 +1265,9 @@ void filemgrGetRenameName(char *buffer)
break;
}
}
#endif
#if VERSION >= VERSION_NTSC_1_0
void filemgrSetRenameName(char *name)
{
switch (g_Menus[g_MpPlayerNum].unke3e) {
@@ -1080,13 +1298,12 @@ void filemgrSetRenameName(char *name)
}
const char var7f1b32dc[] = "SetFileNameForThePurposesOfTheFileRenamingChecker: Unknown type %d\n";
#endif
#if VERSION >= VERSION_NTSC_1_0
const char var7f1b3320[] = "CheckFileName: Comparing range %d-%d\n";
const char var7f1b3348[] = "Compare '%s' to '%s' = %d\n";
const char var7f1b3364[] = "OI! DUPLICATE FILE NAME! NO!\n";
const char var7f1b3384[] = "()()()()()() Writing MPLAYER\n";
const char var7f1b33a4[] = "()()()()()() Writing MGAME\n";
const char var7f1b33c0[] = "Write Attempt Made...\n";
const char var7f1b33d8[] = "decided location: %d\n";
GLOBAL_ASM(
glabel filemgrIsNameAvailable
@@ -1250,6 +1467,13 @@ glabel filemgrIsNameAvailable
/* f109ebc: 03e00008 */ jr $ra
/* f109ec0: 27bd0078 */ addiu $sp,$sp,0x78
);
#endif
#if VERSION >= VERSION_NTSC_1_0
const char var7f1b3384[] = "()()()()()() Writing MPLAYER\n";
const char var7f1b33a4[] = "()()()()()() Writing MGAME\n";
const char var7f1b33c0[] = "Write Attempt Made...\n";
const char var7f1b33d8[] = "decided location: %d\n";
void func0f109ec4(void)
{
@@ -1284,7 +1508,9 @@ void func0f109ec4(void)
}
}
}
#endif
#if VERSION >= VERSION_NTSC_1_0
s32 filemgrConfirmRenameMenuHandler(s32 operation, struct menuitem *item, union handlerdata *data)
{
char *name = data->keyboard.string;
@@ -1303,7 +1529,9 @@ s32 filemgrConfirmRenameMenuHandler(s32 operation, struct menuitem *item, union
return 0;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
s32 filemgrDuplicateRenameMenuHandler(s32 operation, struct menuitem *item, union handlerdata *data)
{
if (operation == MENUOP_SET) {
@@ -1313,7 +1541,9 @@ s32 filemgrDuplicateRenameMenuHandler(s32 operation, struct menuitem *item, unio
return 0;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
s32 filemgrDuplicateCancelMenuHandler(s32 operation, struct menuitem *item, union handlerdata *data)
{
if (operation == MENUOP_SET) {
@@ -1323,12 +1553,16 @@ s32 filemgrDuplicateCancelMenuHandler(s32 operation, struct menuitem *item, unio
return 0;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
char *filemgrMenuTextDeviceNameContainingDuplicateFile(struct menuitem *item)
{
return filemgrGetDeviceName(g_Menus[g_MpPlayerNum].device);
}
#endif
#if VERSION >= VERSION_NTSC_1_0
char *filemgrMenuTextDuplicateFileName(struct menuitem *item)
{
char buffer[32];
@@ -1338,7 +1572,9 @@ char *filemgrMenuTextDuplicateFileName(struct menuitem *item)
return g_StringPointer;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
struct menuitem g_FilemgrRenameMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPWEAPONS_239, 0x00000000, NULL }, // "Enter new file name:"
{ MENUITEMTYPE_KEYBOARD, 0, 0x00000000, 0x00000000, 0x00000000, filemgrConfirmRenameMenuHandler },
@@ -1353,7 +1589,9 @@ struct menudialog g_FilemgrRenameMenuDialog = {
0x00000080,
NULL,
};
#endif
#if VERSION >= VERSION_NTSC_1_0
struct menuitem g_FilemgrDuplicateMenuMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000030, (u32)&filemgrMenuTextDeviceNameContainingDuplicateFile, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x02000030, L_MPWEAPONS_233, 0x00000000, NULL }, // "already contains"
@@ -1373,7 +1611,9 @@ struct menudialog g_FilemgrDuplicateNameMenuDialog = {
0x00000080,
NULL,
};
#endif
#if VERSION >= VERSION_NTSC_1_0
char *filemgrMenuTextLocationName2(struct menuitem *item)
{
u16 names[] = {
@@ -1381,8 +1621,10 @@ char *filemgrMenuTextLocationName2(struct menuitem *item)
L_OPTIONS_113, // "Controller Pak 2"
L_OPTIONS_114, // "Controller Pak 3"
L_OPTIONS_115, // "Controller Pak 4"
#if VERSION >= VERSION_NTSC_1_0
L_OPTIONS_111, // "Game Pak"
L_OPTIONS_004, // ""
#endif
};
if (g_FileLists[g_Menus[g_MpPlayerNum].listnum] == NULL) {
@@ -1395,6 +1637,63 @@ char *filemgrMenuTextLocationName2(struct menuitem *item)
return langGet(names[item->param]);
}
#else
GLOBAL_ASM(
glabel filemgrMenuTextLocationName2
/* f105228: 27bdffd0 */ addiu $sp,$sp,-48
/* f10522c: 3c0e8007 */ lui $t6,0x8007
/* f105230: afbf0014 */ sw $ra,0x14($sp)
/* f105234: 25ce6bd8 */ addiu $t6,$t6,0x6bd8
/* f105238: 8dc10000 */ lw $at,0x0($t6)
/* f10523c: 27a50024 */ addiu $a1,$sp,0x24
/* f105240: 3c088007 */ lui $t0,0x8007
/* f105244: aca10000 */ sw $at,0x0($a1)
/* f105248: 8dd90004 */ lw $t9,0x4($t6)
/* f10524c: 3c0a800a */ lui $t2,0x800a
/* f105250: 3c028007 */ lui $v0,0x8007
/* f105254: acb90004 */ sw $t9,0x4($a1)
/* f105258: 8dc10008 */ lw $at,0x8($t6)
/* f10525c: aca10008 */ sw $at,0x8($a1)
/* f105260: 8d083af0 */ lw $t0,0x3af0($t0)
/* f105264: 000848c0 */ sll $t1,$t0,0x3
/* f105268: 01284823 */ subu $t1,$t1,$t0
/* f10526c: 000948c0 */ sll $t1,$t1,0x3
/* f105270: 01284823 */ subu $t1,$t1,$t0
/* f105274: 00094900 */ sll $t1,$t1,0x4
/* f105278: 01284823 */ subu $t1,$t1,$t0
/* f10527c: 00094880 */ sll $t1,$t1,0x2
/* f105280: 01495021 */ addu $t2,$t2,$t1
/* f105284: 914a355b */ lbu $t2,0x355b($t2)
/* f105288: 000a5880 */ sll $t3,$t2,0x2
/* f10528c: 004b1021 */ addu $v0,$v0,$t3
/* f105290: 8c427f60 */ lw $v0,0x7f60($v0)
/* f105294: 54400004 */ bnezl $v0,.NB0f1052a8
/* f105298: 90830001 */ lbu $v1,0x1($a0)
/* f10529c: 1000000e */ beqz $zero,.NB0f1052d8
/* f1052a0: 00001025 */ or $v0,$zero,$zero
/* f1052a4: 90830001 */ lbu $v1,0x1($a0)
.NB0f1052a8:
/* f1052a8: 00436021 */ addu $t4,$v0,$v1
/* f1052ac: 818d02d2 */ lb $t5,0x2d2($t4)
/* f1052b0: 0003c040 */ sll $t8,$v1,0x1
/* f1052b4: 00b87821 */ addu $t7,$a1,$t8
/* f1052b8: 1da00005 */ bgtz $t5,.NB0f1052d0
/* f1052bc: 00000000 */ sll $zero,$zero,0x0
/* f1052c0: 0fc5a4dd */ jal 0xf169374
/* f1052c4: 97a4002e */ lhu $a0,0x2e($sp)
/* f1052c8: 10000004 */ beqz $zero,.NB0f1052dc
/* f1052cc: 8fbf0014 */ lw $ra,0x14($sp)
.NB0f1052d0:
/* f1052d0: 0fc5a4dd */ jal 0xf169374
/* f1052d4: 95e40000 */ lhu $a0,0x0($t7)
.NB0f1052d8:
/* f1052d8: 8fbf0014 */ lw $ra,0x14($sp)
.NB0f1052dc:
/* f1052dc: 27bd0030 */ addiu $sp,$sp,0x30
/* f1052e0: 03e00008 */ jr $ra
/* f1052e4: 00000000 */ sll $zero,$zero,0x0
);
#endif
char *filemgrMenuTextSaveLocationSpaces(struct menuitem *item)
{
@@ -1418,6 +1717,158 @@ char *filemgrMenuTextSaveLocationSpaces(struct menuitem *item)
return g_StringPointer;
}
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f1053a0nb
/* f1053a0: 3c0e8007 */ lui $t6,0x8007
/* f1053a4: 8dce3af0 */ lw $t6,0x3af0($t6)
/* f1053a8: 3c18800a */ lui $t8,0x800a
/* f1053ac: 3c098007 */ lui $t1,0x8007
/* f1053b0: 000e78c0 */ sll $t7,$t6,0x3
/* f1053b4: 01ee7823 */ subu $t7,$t7,$t6
/* f1053b8: 000f78c0 */ sll $t7,$t7,0x3
/* f1053bc: 01ee7823 */ subu $t7,$t7,$t6
/* f1053c0: 000f7900 */ sll $t7,$t7,0x4
/* f1053c4: 01ee7823 */ subu $t7,$t7,$t6
/* f1053c8: 000f7880 */ sll $t7,$t7,0x2
/* f1053cc: 030fc021 */ addu $t8,$t8,$t7
/* f1053d0: 9318355b */ lbu $t8,0x355b($t8)
/* f1053d4: 25297f60 */ addiu $t1,$t1,0x7f60
/* f1053d8: 27bdffc0 */ addiu $sp,$sp,-64
/* f1053dc: 0018c880 */ sll $t9,$t8,0x2
/* f1053e0: 01395021 */ addu $t2,$t1,$t9
/* f1053e4: 8d420000 */ lw $v0,0x0($t2)
/* f1053e8: afbf0014 */ sw $ra,0x14($sp)
/* f1053ec: afa60048 */ sw $a2,0x48($sp)
/* f1053f0: 14400003 */ bnez $v0,.NB0f105400
/* f1053f4: 00a03825 */ or $a3,$a1,$zero
/* f1053f8: 1000006f */ beqz $zero,.NB0f1055b8
/* f1053fc: 00001025 */ or $v0,$zero,$zero
.NB0f105400:
/* f105400: 2401000c */ addiu $at,$zero,0xc
/* f105404: 54810009 */ bnel $a0,$at,.NB0f10542c
/* f105408: 24010006 */ addiu $at,$zero,0x6
/* f10540c: 90eb0001 */ lbu $t3,0x1($a3)
/* f105410: 004b6021 */ addu $t4,$v0,$t3
/* f105414: 818d02d2 */ lb $t5,0x2d2($t4)
/* f105418: 5da00004 */ bgtzl $t5,.NB0f10542c
/* f10541c: 24010006 */ addiu $at,$zero,0x6
/* f105420: 10000065 */ beqz $zero,.NB0f1055b8
/* f105424: 24020001 */ addiu $v0,$zero,0x1
/* f105428: 24010006 */ addiu $at,$zero,0x6
.NB0f10542c:
/* f10542c: 54810062 */ bnel $a0,$at,.NB0f1055b8
/* f105430: 00001025 */ or $v0,$zero,$zero
/* f105434: 0fc3c088 */ jal 0xf0f0220
/* f105438: afa70044 */ sw $a3,0x44($sp)
/* f10543c: 3c088007 */ lui $t0,0x8007
/* f105440: 8d083af0 */ lw $t0,0x3af0($t0)
/* f105444: 3c0f800a */ lui $t7,0x800a
/* f105448: 25ef27c0 */ addiu $t7,$t7,0x27c0
/* f10544c: 000870c0 */ sll $t6,$t0,0x3
/* f105450: 01c87023 */ subu $t6,$t6,$t0
/* f105454: 000e70c0 */ sll $t6,$t6,0x3
/* f105458: 01c87023 */ subu $t6,$t6,$t0
/* f10545c: 000e7100 */ sll $t6,$t6,0x4
/* f105460: 01c87023 */ subu $t6,$t6,$t0
/* f105464: 000e7080 */ sll $t6,$t6,0x2
/* f105468: 01cf1821 */ addu $v1,$t6,$t7
/* f10546c: 90620d9a */ lbu $v0,0xd9a($v1)
/* f105470: 3c098007 */ lui $t1,0x8007
/* f105474: 25297f60 */ addiu $t1,$t1,0x7f60
/* f105478: 14400005 */ bnez $v0,.NB0f105490
/* f10547c: 8fa70044 */ lw $a3,0x44($sp)
/* f105480: 0fc41475 */ jal 0xf1051d4
/* f105484: 90e40001 */ lbu $a0,0x1($a3)
/* f105488: 1000004b */ beqz $zero,.NB0f1055b8
/* f10548c: 00001025 */ or $v0,$zero,$zero
.NB0f105490:
/* f105490: 24010005 */ addiu $at,$zero,0x5
/* f105494: 10410047 */ beq $v0,$at,.NB0f1055b4
/* f105498: 24010006 */ addiu $at,$zero,0x6
/* f10549c: 54410016 */ bnel $v0,$at,.NB0f1054f8
/* f1054a0: 24010007 */ addiu $at,$zero,0x7
/* f1054a4: 90780d9b */ lbu $t8,0xd9b($v1)
/* f1054a8: 90eb0001 */ lbu $t3,0x1($a3)
/* f1054ac: 27a40038 */ addiu $a0,$sp,0x38
/* f1054b0: 0018c880 */ sll $t9,$t8,0x2
/* f1054b4: 01395021 */ addu $t2,$t1,$t9
/* f1054b8: 8d420000 */ lw $v0,0x0($t2)
/* f1054bc: 000b60c0 */ sll $t4,$t3,0x3
/* f1054c0: 24050003 */ addiu $a1,$zero,0x3
/* f1054c4: 004c6821 */ addu $t5,$v0,$t4
/* f1054c8: 8dae02d8 */ lw $t6,0x2d8($t5)
/* f1054cc: 01003025 */ or $a2,$t0,$zero
/* f1054d0: afae0038 */ sw $t6,0x38($sp)
/* f1054d4: 90ef0001 */ lbu $t7,0x1($a3)
/* f1054d8: 000fc0c0 */ sll $t8,$t7,0x3
/* f1054dc: 0058c821 */ addu $t9,$v0,$t8
/* f1054e0: 972a02dc */ lhu $t2,0x2dc($t9)
/* f1054e4: 0fc41358 */ jal 0xf104d60
/* f1054e8: a7aa003c */ sh $t2,0x3c($sp)
/* f1054ec: 10000032 */ beqz $zero,.NB0f1055b8
/* f1054f0: 00001025 */ or $v0,$zero,$zero
/* f1054f4: 24010007 */ addiu $at,$zero,0x7
.NB0f1054f8:
/* f1054f8: 54410016 */ bnel $v0,$at,.NB0f105554
/* f1054fc: 28410009 */ slti $at,$v0,0x9
/* f105500: 906b0d9b */ lbu $t3,0xd9b($v1)
/* f105504: 90ee0001 */ lbu $t6,0x1($a3)
/* f105508: 27a40030 */ addiu $a0,$sp,0x30
/* f10550c: 000b6080 */ sll $t4,$t3,0x2
/* f105510: 012c6821 */ addu $t5,$t1,$t4
/* f105514: 8da20000 */ lw $v0,0x0($t5)
/* f105518: 000e78c0 */ sll $t7,$t6,0x3
/* f10551c: 24050004 */ addiu $a1,$zero,0x4
/* f105520: 004fc021 */ addu $t8,$v0,$t7
/* f105524: 8f1902d8 */ lw $t9,0x2d8($t8)
/* f105528: 00003025 */ or $a2,$zero,$zero
/* f10552c: afb90030 */ sw $t9,0x30($sp)
/* f105530: 90ea0001 */ lbu $t2,0x1($a3)
/* f105534: 000a58c0 */ sll $t3,$t2,0x3
/* f105538: 004b6021 */ addu $t4,$v0,$t3
/* f10553c: 958d02dc */ lhu $t5,0x2dc($t4)
/* f105540: 0fc41358 */ jal 0xf104d60
/* f105544: a7ad0034 */ sh $t5,0x34($sp)
/* f105548: 1000001b */ beqz $zero,.NB0f1055b8
/* f10554c: 00001025 */ or $v0,$zero,$zero
/* f105550: 28410009 */ slti $at,$v0,0x9
.NB0f105554:
/* f105554: 14200015 */ bnez $at,.NB0f1055ac
/* f105558: 00000000 */ sll $zero,$zero,0x0
/* f10555c: 906e0d9b */ lbu $t6,0xd9b($v1)
/* f105560: 90f90001 */ lbu $t9,0x1($a3)
/* f105564: 27a40028 */ addiu $a0,$sp,0x28
/* f105568: 000e7880 */ sll $t7,$t6,0x2
/* f10556c: 012fc021 */ addu $t8,$t1,$t7
/* f105570: 8f020000 */ lw $v0,0x0($t8)
/* f105574: 001950c0 */ sll $t2,$t9,0x3
/* f105578: 2405ffff */ addiu $a1,$zero,-1
/* f10557c: 004a5821 */ addu $t3,$v0,$t2
/* f105580: 8d6c02d8 */ lw $t4,0x2d8($t3)
/* f105584: 00003025 */ or $a2,$zero,$zero
/* f105588: afac0028 */ sw $t4,0x28($sp)
/* f10558c: 90ed0001 */ lbu $t5,0x1($a3)
/* f105590: 000d70c0 */ sll $t6,$t5,0x3
/* f105594: 004e7821 */ addu $t7,$v0,$t6
/* f105598: 95f802dc */ lhu $t8,0x2dc($t7)
/* f10559c: 0fc41358 */ jal 0xf104d60
/* f1055a0: a7b8002c */ sh $t8,0x2c($sp)
/* f1055a4: 10000004 */ beqz $zero,.NB0f1055b8
/* f1055a8: 00001025 */ or $v0,$zero,$zero
.NB0f1055ac:
/* f1055ac: 0fc41414 */ jal 0xf105050
/* f1055b0: 90e40001 */ lbu $a0,0x1($a3)
.NB0f1055b4:
/* f1055b4: 00001025 */ or $v0,$zero,$zero
.NB0f1055b8:
/* f1055b8: 8fbf0014 */ lw $ra,0x14($sp)
/* f1055bc: 27bd0040 */ addiu $sp,$sp,0x40
/* f1055c0: 03e00008 */ jr $ra
/* f1055c4: 00000000 */ sll $zero,$zero,0x0
);
#endif
const char var7f1b33fc[] = "GOT OKed!, item->data = %d\n";
const char var7f1b3418[] = "GOT CANCELLED!\n";
const char var7f1b3428[] = "Picking Location, type %d wadtype %d wad %d\n";
@@ -1428,6 +1879,7 @@ const char var7f1b348c[] = "Switched Wads Back\n";
const char var7f1b34a0[] = "MenuClosed\n";
const char var7f1b34ac[] = "Deleting files, wad %d\n";
#if VERSION >= VERSION_NTSC_1_0
/**
* item->param is a SAVEDEVICE constant.
*/
@@ -1450,6 +1902,7 @@ s32 filemgrSelectLocationMenuHandler(s32 operation, struct menuitem *item, union
return 0;
}
#endif
s32 filemgrCancelSaveMenuHandler(s32 operation, struct menuitem *item, union handlerdata *data)
{
@@ -1475,7 +1928,9 @@ void filemgrPushSelectLocationDialog(s32 arg0, u32 arg1)
g_Menus[g_MpPlayerNum].unke3e = arg0;
g_Menus[g_MpPlayerNum].listnum = func0f110cf8(arg1);
#if VERSION >= VERSION_NTSC_1_0
func0f110da8();
#endif
menuPushDialog(&g_FilemgrSelectLocationMenuDialog);
}
@@ -1490,6 +1945,7 @@ s32 filemgrConfirmDeleteMenuHandler(s32 operation, struct menuitem *item, union
return 0;
}
#if VERSION >= VERSION_NTSC_1_0
char *filemgrMenuTextFileInUseDescription(struct menuitem *item)
{
if (menuIsDialogOpen(&g_FilemgrCopyMenuDialog)) {
@@ -1498,6 +1954,7 @@ char *filemgrMenuTextFileInUseDescription(struct menuitem *item)
return langGet(L_MPWEAPONS_160); // "Cannot delete file as it is being used."
}
#endif
Gfx *filemgrRenderPerfectHeadThumbnail(Gfx *gdl, struct menuitemrenderdata *renderdata, u32 arg2, u32 arg3)
{
@@ -1549,6 +2006,7 @@ bool filemgrIsFileInUse(struct savelocation000 *arg0)
{
s32 i;
#if VERSION >= VERSION_NTSC_1_0
if (menuIsDialogOpen(&g_FilemgrCopyMenuDialog)
&& arg0->unk00 == g_FilemgrFileToCopy.unk00
&& arg0->unk04 == g_FilemgrFileToCopy.unk04) {
@@ -1558,6 +2016,14 @@ bool filemgrIsFileInUse(struct savelocation000 *arg0)
if (menuIsDialogOpen(&g_FilemgrFileSelect4MbMenuDialog)) {
return false;
}
#else
if (g_MenuData.root == MENUROOT_FILEMGR
&& menuIsDialogOpen(&g_FilemgrCopyMenuDialog)
&& arg0->unk00 == g_FilemgrFileToCopy.unk00
&& arg0->unk04 == g_FilemgrFileToCopy.unk04) {
return true;
}
#endif
if (g_MenuData.root == MENUROOT_FILEMGR) {
return false;
@@ -1698,7 +2164,9 @@ s32 filemgrFileToCopyListMenuHandler(s32 operation, struct menuitem *item, union
g_FilemgrFileToCopy.unk00 = thing->unk00;
g_FilemgrFileToCopy.unk04 = thing->unk04;
#if VERSION >= VERSION_NTSC_1_0
func0f1099a8(g_Menus[g_MpPlayerNum].unke53, thing);
#endif
filemgrPushSelectLocationDialog(g_Menus[g_MpPlayerNum].data.filemgr.filetypeplusone, g_Menus[g_MpPlayerNum].data.filemgr.filetypeplusone - 1);
}
}
@@ -1951,6 +2419,7 @@ s32 pakSelectionMenuHandler(s32 operation, struct menuitem *item, union handlerd
return 0;
}
#if VERSION >= VERSION_NTSC_1_0
s32 pakChoosePakMenuDialog(s32 operation, struct menudialog *dialog, union handlerdata *data)
{
switch (operation) {
@@ -1979,14 +2448,114 @@ s32 pakChoosePakMenuDialog(s32 operation, struct menudialog *dialog, union handl
return 0;
}
#else
GLOBAL_ASM(
glabel pakChoosePakMenuDialog
/* f106af8: 27bdffc8 */ addiu $sp,$sp,-56
/* f106afc: 24010064 */ addiu $at,$zero,0x64
/* f106b00: afbf0034 */ sw $ra,0x34($sp)
/* f106b04: afb60030 */ sw $s6,0x30($sp)
/* f106b08: afb5002c */ sw $s5,0x2c($sp)
/* f106b0c: afb40028 */ sw $s4,0x28($sp)
/* f106b10: afb30024 */ sw $s3,0x24($sp)
/* f106b14: afb20020 */ sw $s2,0x20($sp)
/* f106b18: afb1001c */ sw $s1,0x1c($sp)
/* f106b1c: afb00018 */ sw $s0,0x18($sp)
/* f106b20: afa5003c */ sw $a1,0x3c($sp)
/* f106b24: 10810009 */ beq $a0,$at,.NB0f106b4c
/* f106b28: afa60040 */ sw $a2,0x40($sp)
/* f106b2c: 24010065 */ addiu $at,$zero,0x65
/* f106b30: 10810019 */ beq $a0,$at,.NB0f106b98
/* f106b34: 00008025 */ or $s0,$zero,$zero
/* f106b38: 24010066 */ addiu $at,$zero,0x66
/* f106b3c: 50810013 */ beql $a0,$at,.NB0f106b8c
/* f106b40: 24190001 */ addiu $t9,$zero,0x1
/* f106b44: 10000036 */ beqz $zero,.NB0f106c20
/* f106b48: 8fbf0034 */ lw $ra,0x34($sp)
.NB0f106b4c:
/* f106b4c: 0c00529c */ jal 0x14a70
/* f106b50: 24040003 */ addiu $a0,$zero,0x3
/* f106b54: 0c00529c */ jal 0x14a70
/* f106b58: 2404ffff */ addiu $a0,$zero,-1
/* f106b5c: 3c128007 */ lui $s2,0x8007
/* f106b60: 26523af0 */ addiu $s2,$s2,0x3af0
/* f106b64: 8e4e0000 */ lw $t6,0x0($s2)
/* f106b68: 24130dbc */ addiu $s3,$zero,0xdbc
/* f106b6c: 3c11800a */ lui $s1,0x800a
/* f106b70: 01d30019 */ multu $t6,$s3
/* f106b74: 263127c0 */ addiu $s1,$s1,0x27c0
/* f106b78: 00007812 */ mflo $t7
/* f106b7c: 022fc021 */ addu $t8,$s1,$t7
/* f106b80: 10000026 */ beqz $zero,.NB0f106c1c
/* f106b84: af000d80 */ sw $zero,0xd80($t8)
/* f106b88: 24190001 */ addiu $t9,$zero,0x1
.NB0f106b8c:
/* f106b8c: 3c018006 */ lui $at,0x8006
/* f106b90: 10000022 */ beqz $zero,.NB0f106c1c
/* f106b94: a0394e54 */ sb $t9,0x4e54($at)
.NB0f106b98:
/* f106b98: 3c14800a */ lui $s4,0x800a
/* f106b9c: 3c128007 */ lui $s2,0x8007
/* f106ba0: 3c11800a */ lui $s1,0x800a
/* f106ba4: 263127c0 */ addiu $s1,$s1,0x27c0
/* f106ba8: 26523af0 */ addiu $s2,$s2,0x3af0
/* f106bac: 2694e6c0 */ addiu $s4,$s4,-6464
/* f106bb0: 24160004 */ addiu $s6,$zero,0x4
/* f106bb4: 2415005b */ addiu $s5,$zero,0x5b
/* f106bb8: 24130dbc */ addiu $s3,$zero,0xdbc
/* f106bbc: 8e480000 */ lw $t0,0x0($s2)
.NB0f106bc0:
/* f106bc0: 240c0001 */ addiu $t4,$zero,0x1
/* f106bc4: 00102600 */ sll $a0,$s0,0x18
/* f106bc8: 01130019 */ multu $t0,$s3
/* f106bcc: 00004812 */ mflo $t1
/* f106bd0: 02295021 */ addu $t2,$s1,$t1
/* f106bd4: 8d4b0d80 */ lw $t3,0xd80($t2)
/* f106bd8: 020c6804 */ sllv $t5,$t4,$s0
/* f106bdc: 016d7024 */ and $t6,$t3,$t5
/* f106be0: 51c00008 */ beqzl $t6,.NB0f106c04
/* f106be4: 26100001 */ addiu $s0,$s0,0x1
/* f106be8: 8e9804b4 */ lw $t8,0x4b4($s4)
/* f106bec: 00047e03 */ sra $t7,$a0,0x18
/* f106bf0: 01e02025 */ or $a0,$t7,$zero
/* f106bf4: 03152826 */ xor $a1,$t8,$s5
/* f106bf8: 0fc44356 */ jal 0xf110d58
/* f106bfc: 2ca50001 */ sltiu $a1,$a1,0x1
/* f106c00: 26100001 */ addiu $s0,$s0,0x1
.NB0f106c04:
/* f106c04: 5616ffee */ bnel $s0,$s6,.NB0f106bc0
/* f106c08: 8e480000 */ lw $t0,0x0($s2)
/* f106c0c: 0c00529f */ jal 0x14a7c
/* f106c10: 00000000 */ sll $zero,$zero,0x0
/* f106c14: 0fc44b4a */ jal 0xf112d28
/* f106c18: 00000000 */ sll $zero,$zero,0x0
.NB0f106c1c:
/* f106c1c: 8fbf0034 */ lw $ra,0x34($sp)
.NB0f106c20:
/* f106c20: 8fb00018 */ lw $s0,0x18($sp)
/* f106c24: 8fb1001c */ lw $s1,0x1c($sp)
/* f106c28: 8fb20020 */ lw $s2,0x20($sp)
/* f106c2c: 8fb30024 */ lw $s3,0x24($sp)
/* f106c30: 8fb40028 */ lw $s4,0x28($sp)
/* f106c34: 8fb5002c */ lw $s5,0x2c($sp)
/* f106c38: 8fb60030 */ lw $s6,0x30($sp)
/* f106c3c: 27bd0038 */ addiu $sp,$sp,0x38
/* f106c40: 03e00008 */ jr $ra
/* f106c44: 00001025 */ or $v0,$zero,$zero
);
#endif
s32 filemgrOpenCopyFileMenuHandler(s32 operation, struct menuitem *item, union handlerdata *data)
{
if (operation == MENUOP_SET) {
g_Menus[g_MpPlayerNum].data.filemgr.filetypeplusone = item->param + 1;
func0f110c5c(0, item->param);
#if VERSION >= VERSION_NTSC_1_0
g_Menus[g_MpPlayerNum].listnum = 0;
#endif
g_Menus[g_MpPlayerNum].data.filemgr.isdeletingforsave = false;
menuPushDialog(&g_FilemgrCopyMenuDialog);
}
@@ -2275,6 +2844,11 @@ s32 filemgrMainMenuDialog(s32 operation, struct menudialog *dialog, union handle
case MENUOP_CLOSE:
func0f110bf8();
break;
#if VERSION < VERSION_NTSC_1_0
case MENUOP_TICK:
func0f110da8();
break;
#endif
}
return 0;
@@ -2344,6 +2918,7 @@ void pakPushPakMenuDialog(void)
g_MpPlayerNum = prevplayernum;
}
#if VERSION >= VERSION_NTSC_1_0
struct menuitem g_FilemgrSelectLocationMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_OPTIONS_368, L_OPTIONS_369, NULL }, // "Where", "Spaces"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
@@ -2366,6 +2941,7 @@ struct menudialog g_FilemgrSelectLocationMenuDialog = {
0x00000080,
NULL,
};
#endif
struct menuitem g_FilemgrConfirmDeleteMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000030, (u32)&filemgrMenuTextDeleteFileName, 0x00000000, filemgrFileNameMenuHandler },
@@ -2385,6 +2961,7 @@ struct menudialog g_FilemgrConfirmDeleteMenuDialog = {
NULL,
};
#if VERSION >= VERSION_NTSC_1_0
struct menuitem g_FilemgrFileInUseMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000030, (u32)&filemgrMenuTextDeleteFileName, 0x00000000, filemgrFileNameMenuHandler },
{ MENUITEMTYPE_LABEL, 0, 0x00000230, (u32)&filemgrMenuTextDeviceName, 0x00000000, filemgrDeviceNameMenuHandler },
@@ -2401,6 +2978,7 @@ struct menudialog g_FilemgrFileInUseMenuDialog = {
0x00000080,
NULL,
};
#endif
struct menuitem g_FilemgrDeleteMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00004010, L_OPTIONS_377, 0x00000000, NULL }, // "Select a file to delete:"
+125
View File
@@ -672,6 +672,7 @@ glabel func0f110cf8
/* f110d8c: 00000000 */ nop
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f110d90
/* f110d90: 00047880 */ sll $t7,$a0,0x2
@@ -681,7 +682,9 @@ glabel func0f110d90
/* f110da0: 03e00008 */ jr $ra
/* f110da4: ac2e2330 */ sw $t6,%lo(var800a2330)($at)
);
#endif
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f110da8
/* f110da8: 27bdffd0 */ addiu $sp,$sp,-48
@@ -800,6 +803,128 @@ glabel func0f110da8
/* f110f44: 03e00008 */ jr $ra
/* f110f48: 27bd0030 */ addiu $sp,$sp,0x30
);
#else
GLOBAL_ASM(
glabel func0f110da8
/* f10b200: 27bdffd0 */ addiu $sp,$sp,-48
/* f10b204: 3c0e8007 */ lui $t6,0x8007
/* f10b208: 8dce7f94 */ lw $t6,0x7f94($t6)
/* f10b20c: afbf002c */ sw $ra,0x2c($sp)
/* f10b210: afb40028 */ sw $s4,0x28($sp)
/* f10b214: afb30024 */ sw $s3,0x24($sp)
/* f10b218: afb20020 */ sw $s2,0x20($sp)
/* f10b21c: afb1001c */ sw $s1,0x1c($sp)
/* f10b220: 15c0000c */ bnez $t6,.NB0f10b254
/* f10b224: afb00018 */ sw $s0,0x18($sp)
/* f10b228: 3c10800a */ lui $s0,0x800a
/* f10b22c: 3c03800a */ lui $v1,0x800a
/* f10b230: 24636834 */ addiu $v1,$v1,0x6834
/* f10b234: 26106820 */ addiu $s0,$s0,0x6820
/* f10b238: 2402ffff */ addiu $v0,$zero,-1
.NB0f10b23c:
/* f10b23c: 26100004 */ addiu $s0,$s0,0x4
/* f10b240: 1603fffe */ bne $s0,$v1,.NB0f10b23c
/* f10b244: ae02fffc */ sw $v0,-0x4($s0)
/* f10b248: 240f0001 */ addiu $t7,$zero,0x1
/* f10b24c: 3c018007 */ lui $at,0x8007
/* f10b250: ac2f7f94 */ sw $t7,0x7f94($at)
.NB0f10b254:
/* f10b254: 3c10800a */ lui $s0,0x800a
/* f10b258: 26106820 */ addiu $s0,$s0,0x6820
/* f10b25c: 00009825 */ or $s3,$zero,$zero
/* f10b260: 0000a025 */ or $s4,$zero,$zero
.NB0f10b264:
/* f10b264: 00138e00 */ sll $s1,$s3,0x18
/* f10b268: 0011c603 */ sra $t8,$s1,0x18
/* f10b26c: 00182600 */ sll $a0,$t8,0x18
/* f10b270: 0004ce03 */ sra $t9,$a0,0x18
/* f10b274: 03202025 */ or $a0,$t9,$zero
/* f10b278: 0fc444e1 */ jal 0xf111384
/* f10b27c: 03008825 */ or $s1,$t8,$zero
/* f10b280: 00112600 */ sll $a0,$s1,0x18
/* f10b284: 00044603 */ sra $t0,$a0,0x18
/* f10b288: 00409025 */ or $s2,$v0,$zero
/* f10b28c: 0fc44354 */ jal 0xf110d50
/* f10b290: 01002025 */ or $a0,$t0,$zero
/* f10b294: 00112600 */ sll $a0,$s1,0x18
/* f10b298: 00044e03 */ sra $t1,$a0,0x18
/* f10b29c: 0fc442e7 */ jal 0xf110b9c
/* f10b2a0: 01202025 */ or $a0,$t1,$zero
/* f10b2a4: 10400002 */ beqz $v0,.NB0f10b2b0
/* f10b2a8: 26730001 */ addiu $s3,$s3,0x1
/* f10b2ac: 00009025 */ or $s2,$zero,$zero
.NB0f10b2b0:
/* f10b2b0: 8e0a0000 */ lw $t2,0x0($s0)
/* f10b2b4: 2a610005 */ slti $at,$s3,0x5
/* f10b2b8: 124a0003 */ beq $s2,$t2,.NB0f10b2c8
/* f10b2bc: 00000000 */ sll $zero,$zero,0x0
/* f10b2c0: 24140001 */ addiu $s4,$zero,0x1
/* f10b2c4: ae120000 */ sw $s2,0x0($s0)
.NB0f10b2c8:
/* f10b2c8: 1420ffe6 */ bnez $at,.NB0f10b264
/* f10b2cc: 26100004 */ addiu $s0,$s0,0x4
/* f10b2d0: 3c108007 */ lui $s0,0x8007
/* f10b2d4: 3c138007 */ lui $s3,0x8007
/* f10b2d8: 3c118007 */ lui $s1,0x8007
/* f10b2dc: 26317f70 */ addiu $s1,$s1,0x7f70
/* f10b2e0: 26737f70 */ addiu $s3,$s3,0x7f70
/* f10b2e4: 26107f60 */ addiu $s0,$s0,0x7f60
/* f10b2e8: 24120001 */ addiu $s2,$zero,0x1
/* f10b2ec: 8e040000 */ lw $a0,0x0($s0)
.NB0f10b2f0:
/* f10b2f0: 5080001b */ beqzl $a0,.NB0f10b360
/* f10b2f4: 26100004 */ addiu $s0,$s0,0x4
/* f10b2f8: a080030e */ sb $zero,0x30e($a0)
/* f10b2fc: 8e040000 */ lw $a0,0x0($s0)
/* f10b300: 02801825 */ or $v1,$s4,$zero
/* f10b304: 9082030c */ lbu $v0,0x30c($a0)
/* f10b308: 18400007 */ blez $v0,.NB0f10b328
/* f10b30c: 244bffff */ addiu $t3,$v0,-1
/* f10b310: a08b030c */ sb $t3,0x30c($a0)
/* f10b314: 8e040000 */ lw $a0,0x0($s0)
/* f10b318: 908c030c */ lbu $t4,0x30c($a0)
/* f10b31c: 55800003 */ bnezl $t4,.NB0f10b32c
/* f10b320: 908d030b */ lbu $t5,0x30b($a0)
/* f10b324: 02401825 */ or $v1,$s2,$zero
.NB0f10b328:
/* f10b328: 908d030b */ lbu $t5,0x30b($a0)
.NB0f10b32c:
/* f10b32c: 000d7080 */ sll $t6,$t5,0x2
/* f10b330: 022e7821 */ addu $t7,$s1,$t6
/* f10b334: 8df80000 */ lw $t8,0x0($t7)
/* f10b338: 13000002 */ beqz $t8,.NB0f10b344
/* f10b33c: 00000000 */ sll $zero,$zero,0x0
/* f10b340: 02401825 */ or $v1,$s2,$zero
.NB0f10b344:
/* f10b344: 50600006 */ beqzl $v1,.NB0f10b360
/* f10b348: 26100004 */ addiu $s0,$s0,0x4
/* f10b34c: 0fc42cea */ jal 0xf10b3a8
/* f10b350: 00000000 */ sll $zero,$zero,0x0
/* f10b354: 8e190000 */ lw $t9,0x0($s0)
/* f10b358: a332030e */ sb $s2,0x30e($t9)
/* f10b35c: 26100004 */ addiu $s0,$s0,0x4
.NB0f10b360:
/* f10b360: 0213082b */ sltu $at,$s0,$s3
/* f10b364: 5420ffe2 */ bnezl $at,.NB0f10b2f0
/* f10b368: 8e040000 */ lw $a0,0x0($s0)
/* f10b36c: 3c028007 */ lui $v0,0x8007
/* f10b370: 3c038007 */ lui $v1,0x8007
/* f10b374: 24637f80 */ addiu $v1,$v1,0x7f80
/* f10b378: 24427f70 */ addiu $v0,$v0,0x7f70
.NB0f10b37c:
/* f10b37c: 24420004 */ addiu $v0,$v0,0x4
/* f10b380: 1443fffe */ bne $v0,$v1,.NB0f10b37c
/* f10b384: ac40fffc */ sw $zero,-0x4($v0)
/* f10b388: 8fbf002c */ lw $ra,0x2c($sp)
/* f10b38c: 8fb00018 */ lw $s0,0x18($sp)
/* f10b390: 8fb1001c */ lw $s1,0x1c($sp)
/* f10b394: 8fb20020 */ lw $s2,0x20($sp)
/* f10b398: 8fb30024 */ lw $s3,0x24($sp)
/* f10b39c: 8fb40028 */ lw $s4,0x28($sp)
/* f10b3a0: 03e00008 */ jr $ra
/* f10b3a4: 27bd0030 */ addiu $sp,$sp,0x30
);
#endif
GLOBAL_ASM(
glabel func0f110f4c
+205
View File
@@ -102,6 +102,7 @@ void func0f12939c(void)
}
}
#if VERSION >= VERSION_NTSC_1_0
void *func0f12955c(s32 count, s32 index, s32 arg2, s32 arg3)
{
s32 i;
@@ -178,6 +179,210 @@ void *func0f12955c(s32 count, s32 index, s32 arg2, s32 arg3)
return NULL;
}
#else
GLOBAL_ASM(
glabel func0f12955c
/* f12419c: 00057080 */ sll $t6,$a1,0x2
/* f1241a0: 27bdff78 */ addiu $sp,$sp,-136
/* f1241a4: 01c57023 */ subu $t6,$t6,$a1
/* f1241a8: 000e7080 */ sll $t6,$t6,0x2
/* f1241ac: 01c57021 */ addu $t6,$t6,$a1
/* f1241b0: 3c0f8008 */ lui $t7,0x8008
/* f1241b4: afb1001c */ sw $s1,0x1c($sp)
/* f1241b8: 25ef0c30 */ addiu $t7,$t7,0xc30
/* f1241bc: 000e7080 */ sll $t6,$t6,0x2
/* f1241c0: 01cf8821 */ addu $s1,$t6,$t7
/* f1241c4: 8e38002c */ lw $t8,0x2c($s1)
/* f1241c8: afb5002c */ sw $s5,0x2c($sp)
/* f1241cc: afb40028 */ sw $s4,0x28($sp)
/* f1241d0: afb30024 */ sw $s3,0x24($sp)
/* f1241d4: 0304082a */ slt $at,$t8,$a0
/* f1241d8: 00809825 */ or $s3,$a0,$zero
/* f1241dc: 00c0a025 */ or $s4,$a2,$zero
/* f1241e0: 00e0a825 */ or $s5,$a3,$zero
/* f1241e4: afbf003c */ sw $ra,0x3c($sp)
/* f1241e8: afbe0038 */ sw $s8,0x38($sp)
/* f1241ec: afb70034 */ sw $s7,0x34($sp)
/* f1241f0: afb60030 */ sw $s6,0x30($sp)
/* f1241f4: afb20020 */ sw $s2,0x20($sp)
/* f1241f8: 1420003e */ bnez $at,.NB0f1242f4
/* f1241fc: afb00018 */ sw $s0,0x18($sp)
/* f124200: 8e220030 */ lw $v0,0x30($s1)
/* f124204: 00139080 */ sll $s2,$s3,0x2
/* f124208: 00002825 */ or $a1,$zero,$zero
/* f12420c: 18400039 */ blez $v0,.NB0f1242f4
/* f124210: 02539023 */ subu $s2,$s2,$s3
/* f124214: 00008025 */ or $s0,$zero,$zero
/* f124218: 8e230024 */ lw $v1,0x24($s1)
.NB0f12421c:
/* f12421c: 8479000e */ lh $t9,0xe($v1)
/* f124220: 24a50001 */ addiu $a1,$a1,0x1
/* f124224: 00a2082a */ slt $at,$a1,$v0
/* f124228: 17200030 */ bnez $t9,.NB0f1242ec
/* f12422c: 24630010 */ addiu $v1,$v1,0x10
/* f124230: 00129080 */ sll $s2,$s2,0x2
/* f124234: 2652000f */ addiu $s2,$s2,0xf
/* f124238: 3648000f */ ori $t0,$s2,0xf
/* f12423c: 3904000f */ xori $a0,$t0,0xf
/* f124240: 0c004cc9 */ jal 0x13324
/* f124244: 00809025 */ or $s2,$a0,$zero
/* f124248: 8e2a0024 */ lw $t2,0x24($s1)
/* f12424c: 00002825 */ or $a1,$zero,$zero
/* f124250: 01505821 */ addu $t3,$t2,$s0
/* f124254: ad620000 */ sw $v0,0x0($t3)
/* f124258: 8e2c0024 */ lw $t4,0x24($s1)
/* f12425c: 01901821 */ addu $v1,$t4,$s0
/* f124260: 8c640000 */ lw $a0,0x0($v1)
/* f124264: 1480000b */ bnez $a0,.NB0f124294
/* f124268: 00000000 */ sll $zero,$zero,0x0
/* f12426c: 0fc5636f */ jal 0xf158dbc
/* f124270: 02402025 */ or $a0,$s2,$zero
/* f124274: 0c004cc9 */ jal 0x13324
/* f124278: 02402025 */ or $a0,$s2,$zero
/* f12427c: 8e2d0024 */ lw $t5,0x24($s1)
/* f124280: 01b07021 */ addu $t6,$t5,$s0
/* f124284: adc20000 */ sw $v0,0x0($t6)
/* f124288: 8e2f0024 */ lw $t7,0x24($s1)
/* f12428c: 01f01821 */ addu $v1,$t7,$s0
/* f124290: 8c640000 */ lw $a0,0x0($v1)
.NB0f124294:
/* f124294: 10800013 */ beqz $a0,.NB0f1242e4
/* f124298: 00000000 */ sll $zero,$zero,0x0
/* f12429c: a473000c */ sh $s3,0xc($v1)
/* f1242a0: 8e390024 */ lw $t9,0x24($s1)
/* f1242a4: 24180001 */ addiu $t8,$zero,0x1
/* f1242a8: 03304021 */ addu $t0,$t9,$s0
/* f1242ac: a518000e */ sh $t8,0xe($t0)
/* f1242b0: 8e290024 */ lw $t1,0x24($s1)
/* f1242b4: 01305021 */ addu $t2,$t1,$s0
/* f1242b8: ad540004 */ sw $s4,0x4($t2)
/* f1242bc: 8e2b0024 */ lw $t3,0x24($s1)
/* f1242c0: 01706021 */ addu $t4,$t3,$s0
/* f1242c4: ad950008 */ sw $s5,0x8($t4)
/* f1242c8: 8e2d002c */ lw $t5,0x2c($s1)
/* f1242cc: 8e2f0024 */ lw $t7,0x24($s1)
/* f1242d0: 01b37023 */ subu $t6,$t5,$s3
/* f1242d4: ae2e002c */ sw $t6,0x2c($s1)
/* f1242d8: 01f0c821 */ addu $t9,$t7,$s0
/* f1242dc: 1000005a */ beqz $zero,.NB0f124448
/* f1242e0: 8f220000 */ lw $v0,0x0($t9)
.NB0f1242e4:
/* f1242e4: 10000058 */ beqz $zero,.NB0f124448
/* f1242e8: 00001025 */ or $v0,$zero,$zero
.NB0f1242ec:
/* f1242ec: 1420ffcb */ bnez $at,.NB0f12421c
/* f1242f0: 26100010 */ addiu $s0,$s0,0x10
.NB0f1242f4:
/* f1242f4: 0fc0786c */ jal 0xf01e1b0
/* f1242f8: 00002825 */ or $a1,$zero,$zero
/* f1242fc: 0040a825 */ or $s5,$v0,$zero
/* f124300: 18400039 */ blez $v0,.NB0f1243e8
/* f124304: 00009025 */ or $s2,$zero,$zero
/* f124308: 0002b0c0 */ sll $s6,$v0,0x3
/* f12430c: 02c2b023 */ subu $s6,$s6,$v0
/* f124310: 0016b080 */ sll $s6,$s6,0x2
/* f124314: 02c2b023 */ subu $s6,$s6,$v0
/* f124318: 0016b080 */ sll $s6,$s6,0x2
/* f12431c: 02c2b021 */ addu $s6,$s6,$v0
/* f124320: 3c178006 */ lui $s7,0x8006
/* f124324: 26f74e98 */ addiu $s7,$s7,0x4e98
/* f124328: 0016b0c0 */ sll $s6,$s6,0x3
/* f12432c: 00009825 */ or $s3,$zero,$zero
/* f124330: 241e0005 */ addiu $s8,$zero,0x5
/* f124334: 27b4005c */ addiu $s4,$sp,0x5c
/* f124338: 8ef80000 */ lw $t8,0x0($s7)
.NB0f12433c:
/* f12433c: 02788021 */ addu $s0,$s3,$t8
/* f124340: 8e080020 */ lw $t0,0x20($s0)
/* f124344: 51000025 */ beqzl $t0,.NB0f1243dc
/* f124348: 26730368 */ addiu $s3,$s3,0x368
/* f12434c: 8e02001c */ lw $v0,0x1c($s0)
/* f124350: 50400022 */ beqzl $v0,.NB0f1243dc
/* f124354: 26730368 */ addiu $s3,$s3,0x368
/* f124358: 90490001 */ lbu $t1,0x1($v0)
/* f12435c: 312a0080 */ andi $t2,$t1,0x80
/* f124360: 5540001e */ bnezl $t2,.NB0f1243dc
/* f124364: 26730368 */ addiu $s3,$s3,0x368
/* f124368: 820b0007 */ lb $t3,0x7($s0)
/* f12436c: 57cb001b */ bnel $s8,$t3,.NB0f1243dc
/* f124370: 26730368 */ addiu $s3,$s3,0x368
/* f124374: 8e0c0030 */ lw $t4,0x30($s0)
/* f124378: 2a410006 */ slti $at,$s2,0x6
/* f12437c: 55800017 */ bnezl $t4,.NB0f1243dc
/* f124380: 26730368 */ addiu $s3,$s3,0x368
/* f124384: 10200005 */ beqz $at,.NB0f12439c
/* f124388: 00126880 */ sll $t5,$s2,0x2
/* f12438c: 028d7021 */ addu $t6,$s4,$t5
/* f124390: add00000 */ sw $s0,0x0($t6)
/* f124394: 10000010 */ beqz $zero,.NB0f1243d8
/* f124398: 26520001 */ addiu $s2,$s2,0x1
.NB0f12439c:
/* f12439c: 0c004d84 */ jal 0x13610
/* f1243a0: 00000000 */ sll $zero,$zero,0x0
/* f1243a4: 0052001b */ divu $zero,$v0,$s2
/* f1243a8: 00001810 */ mfhi $v1
/* f1243ac: 00037880 */ sll $t7,$v1,0x2
/* f1243b0: 16400002 */ bnez $s2,.NB0f1243bc
/* f1243b4: 00000000 */ sll $zero,$zero,0x0
/* f1243b8: 0007000d */ break 0x7
.NB0f1243bc:
/* f1243bc: 028fc821 */ addu $t9,$s4,$t7
/* f1243c0: 00608825 */ or $s1,$v1,$zero
/* f1243c4: 0fc0f140 */ jal 0xf03c500
/* f1243c8: 8f240000 */ lw $a0,0x0($t9)
/* f1243cc: 0011c080 */ sll $t8,$s1,0x2
/* f1243d0: 02984021 */ addu $t0,$s4,$t8
/* f1243d4: ad100000 */ sw $s0,0x0($t0)
.NB0f1243d8:
/* f1243d8: 26730368 */ addiu $s3,$s3,0x368
.NB0f1243dc:
/* f1243dc: 0276082a */ slt $at,$s3,$s6
/* f1243e0: 5420ffd6 */ bnezl $at,.NB0f12433c
/* f1243e4: 8ef80000 */ lw $t8,0x0($s7)
.NB0f1243e8:
/* f1243e8: 00128843 */ sra $s1,$s2,0x1
/* f1243ec: 12200015 */ beqz $s1,.NB0f124444
/* f1243f0: 27b4005c */ addiu $s4,$sp,0x5c
.NB0f1243f4:
/* f1243f4: 0c004d84 */ jal 0x13610
/* f1243f8: 00000000 */ sll $zero,$zero,0x0
/* f1243fc: 0052001b */ divu $zero,$v0,$s2
/* f124400: 00001810 */ mfhi $v1
/* f124404: 00034880 */ sll $t1,$v1,0x2
/* f124408: 02895021 */ addu $t2,$s4,$t1
/* f12440c: 8d4b0000 */ lw $t3,0x0($t2)
/* f124410: 16400002 */ bnez $s2,.NB0f12441c
/* f124414: 00000000 */ sll $zero,$zero,0x0
/* f124418: 0007000d */ break 0x7
.NB0f12441c:
/* f12441c: 00602825 */ or $a1,$v1,$zero
/* f124420: 11600006 */ beqz $t3,.NB0f12443c
/* f124424: 00036080 */ sll $t4,$v1,0x2
/* f124428: 028c8021 */ addu $s0,$s4,$t4
/* f12442c: 0fc0f140 */ jal 0xf03c500
/* f124430: 8e040000 */ lw $a0,0x0($s0)
/* f124434: ae000000 */ sw $zero,0x0($s0)
/* f124438: 2631ffff */ addiu $s1,$s1,-1
.NB0f12443c:
/* f12443c: 1620ffed */ bnez $s1,.NB0f1243f4
/* f124440: 00000000 */ sll $zero,$zero,0x0
.NB0f124444:
/* f124444: 00001025 */ or $v0,$zero,$zero
.NB0f124448:
/* f124448: 8fbf003c */ lw $ra,0x3c($sp)
/* f12444c: 8fb00018 */ lw $s0,0x18($sp)
/* f124450: 8fb1001c */ lw $s1,0x1c($sp)
/* f124454: 8fb20020 */ lw $s2,0x20($sp)
/* f124458: 8fb30024 */ lw $s3,0x24($sp)
/* f12445c: 8fb40028 */ lw $s4,0x28($sp)
/* f124460: 8fb5002c */ lw $s5,0x2c($sp)
/* f124464: 8fb60030 */ lw $s6,0x30($sp)
/* f124468: 8fb70034 */ lw $s7,0x34($sp)
/* f12446c: 8fbe0038 */ lw $s8,0x38($sp)
/* f124470: 03e00008 */ jr $ra
/* f124474: 27bd0088 */ addiu $sp,$sp,0x88
);
#endif
void func0f129818(s32 arg0, void *arg1)
{
+2
View File
@@ -450,6 +450,7 @@ Gfx *func0f1538e4(Gfx *gdl, s32 *x1, s32 *y1, s32 *x2, s32 *y2)
return gdl;
}
#if VERSION >= VERSION_NTSC_1_0
Gfx *func0f153990(Gfx *gdl, s32 left, s32 top, s32 width, s32 height)
{
gdl = gfxSetPrimColour(gdl, 0x00000000);
@@ -460,6 +461,7 @@ Gfx *func0f153990(Gfx *gdl, s32 left, s32 top, s32 width, s32 height)
return gdl;
}
#endif
Gfx *func0f153a34(Gfx *gdl, s32 x1, s32 y1, s32 x2, s32 y2, u32 colour)
{
+429
View File
@@ -0,0 +1,429 @@
#include <ultra64.h>
#include "constants.h"
#include "game/game_0b3350.h"
#include "game/texture.h"
#include "bss.h"
#include "lib/lib_074f0.h"
#include "lib/dma.h"
#include "lib/main.h"
#include "lib/memory.h"
#include "lib/lib_4b170.h"
#include "data.h"
#include "types.h"
GLOBAL_ASM(
glabel func0f173520
/* f173520: 3c01800b */ lui $at,%hi(var800ab540)
/* f173524: ac24b540 */ sw $a0,%lo(var800ab540)($at)
/* f173528: 3c01800b */ lui $at,%hi(var800ab544)
/* f17352c: ac20b544 */ sw $zero,%lo(var800ab544)($at)
/* f173530: 3c01800b */ lui $at,%hi(var800ab548)
/* f173534: 03e00008 */ jr $ra
/* f173538: ac20b548 */ sw $zero,%lo(var800ab548)($at)
);
GLOBAL_ASM(
glabel func0f17353c
/* f17353c: 3c05800b */ lui $a1,%hi(var800ab548)
/* f173540: 24a5b548 */ addiu $a1,$a1,%lo(var800ab548)
/* f173544: 8ca30000 */ lw $v1,0x0($a1)
/* f173548: 3c07800b */ lui $a3,%hi(var800ab540)
/* f17354c: 24e7b540 */ addiu $a3,$a3,%lo(var800ab540)
/* f173550: 0064082a */ slt $at,$v1,$a0
/* f173554: 1020000f */ beqz $at,.L0f173594
/* f173558: 3c06800b */ lui $a2,%hi(var800ab544)
/* f17355c: 24c6b544 */ addiu $a2,$a2,%lo(var800ab544)
.L0f173560:
/* f173560: 8ce20000 */ lw $v0,0x0($a3)
/* f173564: 8ccf0000 */ lw $t7,0x0($a2)
/* f173568: 24690008 */ addiu $t1,$v1,0x8
/* f17356c: 904e0000 */ lbu $t6,0x0($v0)
/* f173570: 000fc200 */ sll $t8,$t7,0x8
/* f173574: 0124082a */ slt $at,$t1,$a0
/* f173578: 24480001 */ addiu $t0,$v0,0x1
/* f17357c: 01d8c825 */ or $t9,$t6,$t8
/* f173580: acd90000 */ sw $t9,0x0($a2)
/* f173584: ace80000 */ sw $t0,0x0($a3)
/* f173588: aca90000 */ sw $t1,0x0($a1)
/* f17358c: 1420fff4 */ bnez $at,.L0f173560
/* f173590: 01201825 */ or $v1,$t1,$zero
.L0f173594:
/* f173594: 3c06800b */ lui $a2,%hi(var800ab544)
/* f173598: 24c6b544 */ addiu $a2,$a2,%lo(var800ab544)
/* f17359c: 8ccb0000 */ lw $t3,0x0($a2)
/* f1735a0: 240f0001 */ addiu $t7,$zero,0x1
/* f1735a4: 00645023 */ subu $t2,$v1,$a0
/* f1735a8: 008f7004 */ sllv $t6,$t7,$a0
/* f1735ac: 25d8ffff */ addiu $t8,$t6,-1
/* f1735b0: 014b6806 */ srlv $t5,$t3,$t2
/* f1735b4: acaa0000 */ sw $t2,0x0($a1)
/* f1735b8: 03e00008 */ jr $ra
/* f1735bc: 01b81024 */ and $v0,$t5,$t8
);
GLOBAL_ASM(
glabel texturesLoadConfigs
/* f1735c0: 27bdffd8 */ addiu $sp,$sp,-40
/* f1735c4: 3c0e0200 */ lui $t6,0x200
/* f1735c8: 3c0f0200 */ lui $t7,0x200
/* f1735cc: afb1001c */ sw $s1,0x1c($sp)
/* f1735d0: 25ef0000 */ addiu $t7,$t7,0x0
/* f1735d4: 25ce0b50 */ addiu $t6,$t6,0xb50
/* f1735d8: afbf0024 */ sw $ra,0x24($sp)
/* f1735dc: 01cf8823 */ subu $s1,$t6,$t7
/* f1735e0: afb20020 */ sw $s2,0x20($sp)
/* f1735e4: afb00018 */ sw $s0,0x18($sp)
/* f1735e8: 02202025 */ or $a0,$s1,$zero
/* f1735ec: 0c0048f2 */ jal malloc
/* f1735f0: 24050004 */ addiu $a1,$zero,0x4
/* f1735f4: 3c03800b */ lui $v1,%hi(g_TextureConfigSegment)
/* f1735f8: 2463b554 */ addiu $v1,$v1,%lo(g_TextureConfigSegment)
/* f1735fc: 3c05007f */ lui $a1,%hi(_textureconfigSegmentRomStart)
/* f173600: ac620000 */ sw $v0,0x0($v1)
/* f173604: 24a5b270 */ addiu $a1,$a1,%lo(_textureconfigSegmentRomStart)
/* f173608: 00402025 */ or $a0,$v0,$zero
/* f17360c: 0c003504 */ jal dmaExec
/* f173610: 02203025 */ or $a2,$s1,$zero
/* f173614: 3c18800b */ lui $t8,%hi(g_TextureConfigSegment)
/* f173618: 8f18b554 */ lw $t8,%lo(g_TextureConfigSegment)($t8)
/* f17361c: 3c070200 */ lui $a3,0x200
/* f173620: 3c06800b */ lui $a2,%hi(var800ab550)
/* f173624: 3c080200 */ lui $t0,0x200
/* f173628: 03071023 */ subu $v0,$t8,$a3
/* f17362c: 24c6b550 */ addiu $a2,$a2,%lo(var800ab550)
/* f173630: 25080000 */ addiu $t0,$t0,0x0
/* f173634: acc20000 */ sw $v0,0x0($a2)
/* f173638: 00484821 */ addu $t1,$v0,$t0
/* f17363c: 3c01800b */ lui $at,%hi(var800ab564)
/* f173640: 3c0a0200 */ lui $t2,0x200
/* f173644: ac29b564 */ sw $t1,%lo(var800ab564)($at)
/* f173648: 254a0070 */ addiu $t2,$t2,0x70
/* f17364c: 004a5821 */ addu $t3,$v0,$t2
/* f173650: 3c01800b */ lui $at,%hi(var800ab568)
/* f173654: 3c0c0200 */ lui $t4,0x200
/* f173658: ac2bb568 */ sw $t3,%lo(var800ab568)($at)
/* f17365c: 258c00d8 */ addiu $t4,$t4,0xd8
/* f173660: 004c6821 */ addu $t5,$v0,$t4
/* f173664: 3c01800b */ lui $at,%hi(var800ab56c)
/* f173668: 3c0e0200 */ lui $t6,0x200
/* f17366c: 3c12800b */ lui $s2,%hi(var800ab570)
/* f173670: ac2db56c */ sw $t5,%lo(var800ab56c)($at)
/* f173674: 25ce0148 */ addiu $t6,$t6,0x148
/* f173678: 3c030200 */ lui $v1,0x200
/* f17367c: 2652b570 */ addiu $s2,$s2,%lo(var800ab570)
/* f173680: 004e7821 */ addu $t7,$v0,$t6
/* f173684: 246301c0 */ addiu $v1,$v1,0x1c0
/* f173688: ae4f0000 */ sw $t7,0x0($s2)
/* f17368c: 0062c021 */ addu $t8,$v1,$v0
/* f173690: 3c01800b */ lui $at,%hi(var800ab560)
/* f173694: 3c190200 */ lui $t9,0x200
/* f173698: ac38b560 */ sw $t8,%lo(var800ab560)($at)
/* f17369c: 27390298 */ addiu $t9,$t9,0x298
/* f1736a0: 00594021 */ addu $t0,$v0,$t9
/* f1736a4: 3c01800b */ lui $at,%hi(var800ab574)
/* f1736a8: 3c090200 */ lui $t1,0x200
/* f1736ac: ac28b574 */ sw $t0,%lo(var800ab574)($at)
/* f1736b0: 252902d4 */ addiu $t1,$t1,0x2d4
/* f1736b4: 00495021 */ addu $t2,$v0,$t1
/* f1736b8: 3c01800b */ lui $at,%hi(var800ab578)
/* f1736bc: 3c0b0200 */ lui $t3,0x200
/* f1736c0: ac2ab578 */ sw $t2,%lo(var800ab578)($at)
/* f1736c4: 256b02e0 */ addiu $t3,$t3,0x2e0
/* f1736c8: 004b6021 */ addu $t4,$v0,$t3
/* f1736cc: 3c01800b */ lui $at,%hi(var800ab57c)
/* f1736d0: 3c0d0200 */ lui $t5,0x200
/* f1736d4: ac2cb57c */ sw $t4,%lo(var800ab57c)($at)
/* f1736d8: 25ad02ec */ addiu $t5,$t5,0x2ec
/* f1736dc: 004d7021 */ addu $t6,$v0,$t5
/* f1736e0: 3c01800b */ lui $at,%hi(var800ab580)
/* f1736e4: 3c0f0200 */ lui $t7,0x200
/* f1736e8: ac2eb580 */ sw $t6,%lo(var800ab580)($at)
/* f1736ec: 25ef02f8 */ addiu $t7,$t7,0x2f8
/* f1736f0: 004fc021 */ addu $t8,$v0,$t7
/* f1736f4: 3c01800b */ lui $at,%hi(var800ab584)
/* f1736f8: 3c190200 */ lui $t9,0x200
/* f1736fc: ac38b584 */ sw $t8,%lo(var800ab584)($at)
/* f173700: 27390304 */ addiu $t9,$t9,0x304
/* f173704: 00594021 */ addu $t0,$v0,$t9
/* f173708: 3c01800b */ lui $at,%hi(var800ab588)
/* f17370c: 3c090200 */ lui $t1,0x200
/* f173710: ac28b588 */ sw $t0,%lo(var800ab588)($at)
/* f173714: 25290310 */ addiu $t1,$t1,0x310
/* f173718: 00495021 */ addu $t2,$v0,$t1
/* f17371c: 3c01800b */ lui $at,%hi(var800ab58c)
/* f173720: 3c0b0200 */ lui $t3,0x200
/* f173724: ac2ab58c */ sw $t2,%lo(var800ab58c)($at)
/* f173728: 256b031c */ addiu $t3,$t3,0x31c
/* f17372c: 004b6021 */ addu $t4,$v0,$t3
/* f173730: 3c01800b */ lui $at,%hi(var800ab590)
/* f173734: 3c0d0200 */ lui $t5,0x200
/* f173738: ac2cb590 */ sw $t4,%lo(var800ab590)($at)
/* f17373c: 25ad0334 */ addiu $t5,$t5,0x334
/* f173740: 004d7021 */ addu $t6,$v0,$t5
/* f173744: 3c01800b */ lui $at,%hi(var800ab594)
/* f173748: 3c0f0200 */ lui $t7,0x200
/* f17374c: ac2eb594 */ sw $t6,%lo(var800ab594)($at)
/* f173750: 25ef07b4 */ addiu $t7,$t7,0x7b4
/* f173754: 004fc021 */ addu $t8,$v0,$t7
/* f173758: 3c01800b */ lui $at,%hi(var800ab598)
/* f17375c: 3c190200 */ lui $t9,0x200
/* f173760: ac38b598 */ sw $t8,%lo(var800ab598)($at)
/* f173764: 273907d8 */ addiu $t9,$t9,0x7d8
/* f173768: 00594021 */ addu $t0,$v0,$t9
/* f17376c: 3c01800b */ lui $at,%hi(var800ab59c)
/* f173770: 3c090200 */ lui $t1,0x200
/* f173774: ac28b59c */ sw $t0,%lo(var800ab59c)($at)
/* f173778: 25290820 */ addiu $t1,$t1,0x820
/* f17377c: 00495021 */ addu $t2,$v0,$t1
/* f173780: 3c01800b */ lui $at,%hi(var800ab5a0)
/* f173784: 3c0b0200 */ lui $t3,0x200
/* f173788: ac2ab5a0 */ sw $t2,%lo(var800ab5a0)($at)
/* f17378c: 256b0898 */ addiu $t3,$t3,0x898
/* f173790: 004b6021 */ addu $t4,$v0,$t3
/* f173794: 3c01800b */ lui $at,%hi(var800ab5a4)
/* f173798: 3c0d0200 */ lui $t5,0x200
/* f17379c: ac2cb5a4 */ sw $t4,%lo(var800ab5a4)($at)
/* f1737a0: 25ad08a4 */ addiu $t5,$t5,0x8a4
/* f1737a4: 004d7021 */ addu $t6,$v0,$t5
/* f1737a8: 3c01800b */ lui $at,%hi(var800ab5a8)
/* f1737ac: 3c0f0200 */ lui $t7,0x200
/* f1737b0: ac2eb5a8 */ sw $t6,%lo(var800ab5a8)($at)
/* f1737b4: 25ef0b44 */ addiu $t7,$t7,0xb44
/* f1737b8: 004fc021 */ addu $t8,$v0,$t7
/* f1737bc: 3c01800b */ lui $at,%hi(var800ab5ac)
/* f1737c0: ac38b5ac */ sw $t8,%lo(var800ab5ac)($at)
/* f1737c4: 0223c823 */ subu $t9,$s1,$v1
/* f1737c8: 03274021 */ addu $t0,$t9,$a3
/* f1737cc: 2401000c */ addiu $at,$zero,0xc
/* f1737d0: 0101001b */ divu $zero,$t0,$at
/* f1737d4: 3c10800b */ lui $s0,%hi(var800ab558)
/* f1737d8: 00004812 */ mflo $t1
/* f1737dc: 3c01800b */ lui $at,%hi(var800ab558)
/* f1737e0: 2610b558 */ addiu $s0,$s0,%lo(var800ab558)
/* f1737e4: ac29b558 */ sw $t1,%lo(var800ab558)($at)
/* f1737e8: 8e040000 */ lw $a0,0x0($s0)
/* f1737ec: 24050004 */ addiu $a1,$zero,0x4
/* f1737f0: 00045080 */ sll $t2,$a0,0x2
/* f1737f4: 2544000f */ addiu $a0,$t2,0xf
/* f1737f8: 348b000f */ ori $t3,$a0,0xf
/* f1737fc: 0c0048f2 */ jal malloc
/* f173800: 3964000f */ xori $a0,$t3,0xf
/* f173804: 8e0d0000 */ lw $t5,0x0($s0)
/* f173808: 3c03800b */ lui $v1,%hi(var800ab55c)
/* f17380c: 2463b55c */ addiu $v1,$v1,%lo(var800ab55c)
/* f173810: ac620000 */ sw $v0,0x0($v1)
/* f173814: 19a0000c */ blez $t5,.L0f173848
/* f173818: 00008825 */ or $s1,$zero,$zero
/* f17381c: 00001025 */ or $v0,$zero,$zero
/* f173820: 8c6e0000 */ lw $t6,0x0($v1)
.L0f173824:
/* f173824: 26310001 */ addiu $s1,$s1,0x1
/* f173828: 01c27821 */ addu $t7,$t6,$v0
/* f17382c: ade00000 */ sw $zero,0x0($t7)
/* f173830: 8e180000 */ lw $t8,0x0($s0)
/* f173834: 24420004 */ addiu $v0,$v0,0x4
/* f173838: 0238082a */ slt $at,$s1,$t8
/* f17383c: 5420fff9 */ bnezl $at,.L0f173824
/* f173840: 8c6e0000 */ lw $t6,0x0($v1)
/* f173844: 00008825 */ or $s1,$zero,$zero
.L0f173848:
/* f173848: 8e590000 */ lw $t9,0x0($s2)
.L0f17384c:
/* f17384c: 001180c0 */ sll $s0,$s1,0x3
/* f173850: 00002825 */ or $a1,$zero,$zero
/* f173854: 00003025 */ or $a2,$zero,$zero
/* f173858: 0fc5cc04 */ jal func0f173010
/* f17385c: 02192021 */ addu $a0,$s0,$t9
/* f173860: 8e480000 */ lw $t0,0x0($s2)
/* f173864: 00002825 */ or $a1,$zero,$zero
/* f173868: 00003025 */ or $a2,$zero,$zero
/* f17386c: 02082021 */ addu $a0,$s0,$t0
/* f173870: 0fc5cc04 */ jal func0f173010
/* f173874: 24840004 */ addiu $a0,$a0,0x4
/* f173878: 26310001 */ addiu $s1,$s1,0x1
/* f17387c: 2a21000f */ slti $at,$s1,0xf
/* f173880: 5420fff2 */ bnezl $at,.L0f17384c
/* f173884: 8e590000 */ lw $t9,0x0($s2)
/* f173888: 3c04800b */ lui $a0,%hi(var800ab564)
/* f17388c: 8c84b564 */ lw $a0,%lo(var800ab564)($a0)
/* f173890: 00002825 */ or $a1,$zero,$zero
/* f173894: 0fc5cbd7 */ jal func0f172f5c
/* f173898: 00003025 */ or $a2,$zero,$zero
/* f17389c: 3c04800b */ lui $a0,%hi(var800ab56c)
/* f1738a0: 8c84b56c */ lw $a0,%lo(var800ab56c)($a0)
/* f1738a4: 00002825 */ or $a1,$zero,$zero
/* f1738a8: 0fc5cbd7 */ jal func0f172f5c
/* f1738ac: 00003025 */ or $a2,$zero,$zero
/* f1738b0: 0c003a61 */ jal mainGetStageNum
/* f1738b4: 00000000 */ nop
/* f1738b8: 3c098009 */ lui $t1,%hi(g_Is4Mb)
/* f1738bc: 91290af0 */ lbu $t1,%lo(g_Is4Mb)($t1)
/* f1738c0: 24010001 */ addiu $at,$zero,0x1
/* f1738c4: 15210045 */ bne $t1,$at,.L0f1739dc
/* f1738c8: 2401005a */ addiu $at,$zero,0x5a
/* f1738cc: 10410043 */ beq $v0,$at,.L0f1739dc
/* f1738d0: 24010026 */ addiu $at,$zero,0x26
/* f1738d4: 10410041 */ beq $v0,$at,.L0f1739dc
/* f1738d8: 2401005d */ addiu $at,$zero,0x5d
/* f1738dc: 1041003f */ beq $v0,$at,.L0f1739dc
/* f1738e0: 00008025 */ or $s0,$zero,$zero
.L0f1738e4:
/* f1738e4: 3c0a800b */ lui $t2,%hi(var800ab560)
/* f1738e8: 8d4ab560 */ lw $t2,%lo(var800ab560)($t2)
/* f1738ec: 0fc2ce62 */ jal func0f0b3988
/* f1738f0: 020a2021 */ addu $a0,$s0,$t2
/* f1738f4: 2610000c */ addiu $s0,$s0,0xc
/* f1738f8: 2a0100d8 */ slti $at,$s0,0xd8
/* f1738fc: 1420fff9 */ bnez $at,.L0f1738e4
/* f173900: 00000000 */ nop
/* f173904: 00008025 */ or $s0,$zero,$zero
.L0f173908:
/* f173908: 3c0b800b */ lui $t3,%hi(var800ab574)
/* f17390c: 8d6bb574 */ lw $t3,%lo(var800ab574)($t3)
/* f173910: 0fc2ce62 */ jal func0f0b3988
/* f173914: 020b2021 */ addu $a0,$s0,$t3
/* f173918: 2610000c */ addiu $s0,$s0,0xc
/* f17391c: 2a01003c */ slti $at,$s0,0x3c
/* f173920: 1420fff9 */ bnez $at,.L0f173908
/* f173924: 00000000 */ nop
/* f173928: 00008025 */ or $s0,$zero,$zero
.L0f17392c:
/* f17392c: 3c0c800b */ lui $t4,%hi(var800ab598)
/* f173930: 8d8cb598 */ lw $t4,%lo(var800ab598)($t4)
/* f173934: 0fc2ce62 */ jal func0f0b3988
/* f173938: 020c2021 */ addu $a0,$s0,$t4
/* f17393c: 2610000c */ addiu $s0,$s0,0xc
/* f173940: 2a010024 */ slti $at,$s0,0x24
/* f173944: 1420fff9 */ bnez $at,.L0f17392c
/* f173948: 00000000 */ nop
/* f17394c: 00008025 */ or $s0,$zero,$zero
.L0f173950:
/* f173950: 3c0d800b */ lui $t5,%hi(var800ab588)
/* f173954: 8dadb588 */ lw $t5,%lo(var800ab588)($t5)
/* f173958: 0fc2ce62 */ jal func0f0b3988
/* f17395c: 020d2021 */ addu $a0,$s0,$t5
/* f173960: 2610000c */ addiu $s0,$s0,0xc
/* f173964: 2a01000c */ slti $at,$s0,0xc
/* f173968: 1420fff9 */ bnez $at,.L0f173950
/* f17396c: 00000000 */ nop
/* f173970: 00008025 */ or $s0,$zero,$zero
.L0f173974:
/* f173974: 3c0e800b */ lui $t6,%hi(var800ab58c)
/* f173978: 8dceb58c */ lw $t6,%lo(var800ab58c)($t6)
/* f17397c: 0fc2ce62 */ jal func0f0b3988
/* f173980: 020e2021 */ addu $a0,$s0,$t6
/* f173984: 2610000c */ addiu $s0,$s0,0xc
/* f173988: 2a01000c */ slti $at,$s0,0xc
/* f17398c: 1420fff9 */ bnez $at,.L0f173974
/* f173990: 00000000 */ nop
/* f173994: 00008025 */ or $s0,$zero,$zero
.L0f173998:
/* f173998: 3c0f800b */ lui $t7,%hi(var800ab5ac)
/* f17399c: 8defb5ac */ lw $t7,%lo(var800ab5ac)($t7)
/* f1739a0: 0fc2ce62 */ jal func0f0b3988
/* f1739a4: 020f2021 */ addu $a0,$s0,$t7
/* f1739a8: 2610000c */ addiu $s0,$s0,0xc
/* f1739ac: 2a01000c */ slti $at,$s0,0xc
/* f1739b0: 1420fff9 */ bnez $at,.L0f173998
/* f1739b4: 00000000 */ nop
/* f1739b8: 00008025 */ or $s0,$zero,$zero
/* f1739bc: 2411000c */ addiu $s1,$zero,0xc
.L0f1739c0:
/* f1739c0: 3c18800b */ lui $t8,%hi(var800ab5a4)
/* f1739c4: 8f18b5a4 */ lw $t8,%lo(var800ab5a4)($t8)
/* f1739c8: 0fc2ce62 */ jal func0f0b3988
/* f1739cc: 02182021 */ addu $a0,$s0,$t8
/* f1739d0: 2610000c */ addiu $s0,$s0,0xc
/* f1739d4: 1611fffa */ bne $s0,$s1,.L0f1739c0
/* f1739d8: 00000000 */ nop
.L0f1739dc:
/* f1739dc: 8fbf0024 */ lw $ra,0x24($sp)
/* f1739e0: 8fb00018 */ lw $s0,0x18($sp)
/* f1739e4: 8fb1001c */ lw $s1,0x1c($sp)
/* f1739e8: 8fb20020 */ lw $s2,0x20($sp)
/* f1739ec: 03e00008 */ jr $ra
/* f1739f0: 27bd0028 */ addiu $sp,$sp,0x28
);
//extern u8 *_textureconfigSegmentRomStart;
//extern u8 *_textureconfigSegmentStart;
//extern u8 *_textureconfigSegmentEnd;
// Unfinished
//void texturesLoadConfigs(void)
//{
// s32 stage;
// u32 len = &_textureconfigSegmentEnd - &_textureconfigSegmentStart;
// s32 i;
//
// g_TextureConfigSegment = malloc(len, MEMPOOL_STAGE);
// dmaExec(g_TextureConfigSegment, &_textureconfigSegmentRomStart, len);
//
// var800ab550 = (u32)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart);
// var800ab564 = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x000); // gdl000
// var800ab568 = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x070); // gdl070
// var800ab56c = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x0d8); // gdl0d8
// var800ab570 = (u32 *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x148); // g_ExplosionTextureNums
// var800ab560 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x1c0);
// var800ab574 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x298);
// var800ab578 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2d4);
// var800ab57c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2e0);
// var800ab580 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2ec);
// var800ab584 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2f8);
// var800ab588 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x304);
// var800ab58c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x310);
// var800ab590 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x31c);
// var800ab594 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x334);
// var800ab598 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x7b4);
// var800ab59c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x7d8);
// var800ab5a0 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x820);
// var800ab5a4 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x898);
// var800ab5a8 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x8a4);
// var800ab5ac = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0xb44);
//
// var800ab558 = (len - ((u32)&_textureconfigSegmentStart + 0x1c0)) + (u32)&_textureconfigSegmentStart;
// var800ab55c = malloc(align16(var800ab558), MEMPOOL_STAGE);
//
// for (i = 0; i < var800ab558; i++) {
// var800ab55c[i].texturenum = 0;
// }
//
// for (i = 0; i < 15; i++) {
// func0f173010(&var800ab570[i * 2 + 0], 0, 0);
// func0f173010(&var800ab570[i * 2 + 1], 0, 0);
// }
//
// func0f172f5c(var800ab564, 0, 0);
// func0f172f5c(var800ab56c, 0, 0);
// stage = mainGetStageNum();
//
// if (IS4MB() && stage != STAGE_TITLE && stage != STAGE_CITRAINING && stage != STAGE_4MBMENU) {
// for (i = 0; i < 12; i++) {
// func0f0b3988(&var800ab560[i]);
// }
//
// for (i = 0; i < 5; i++) {
// func0f0b3988(&var800ab574[i]);
// }
//
// for (i = 0; i < 3; i++) {
// func0f0b3988(&var800ab598[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab588[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab58c[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab5ac[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab5a4[i]);
// }
// }
//}
+1007 -2
View File
File diff suppressed because it is too large. Load diff
+307 -1056
View File
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+478 -1
View File
@@ -97,6 +97,7 @@ bool ai0176(void)
return false;
}
#if VERSION >= VERSION_NTSC_1_0
void func0f19ab40(void)
{
if (g_Is4Mb) {
@@ -105,6 +106,65 @@ void func0f19ab40(void)
var80090afc = 0;
}
}
#else
GLOBAL_ASM(
glabel func0f19ab40
/* f194b20: 3c0e8009 */ lui $t6,0x8009
/* f194b24: 91ce30e0 */ lbu $t6,0x30e0($t6)
/* f194b28: 27bdff98 */ addiu $sp,$sp,-104
/* f194b2c: afbf0014 */ sw $ra,0x14($sp)
/* f194b30: 11c0002b */ beqz $t6,.NB0f194be0
/* f194b34: 3c0f8006 */ lui $t7,0x8006
/* f194b38: 91efe710 */ lbu $t7,-0x18f0($t7)
/* f194b3c: 240400ff */ addiu $a0,$zero,0xff
/* f194b40: 240500ff */ addiu $a1,$zero,0xff
/* f194b44: 11e00020 */ beqz $t7,.NB0f194bc8
/* f194b48: 240600ff */ addiu $a2,$zero,0xff
/* f194b4c: 0c005106 */ jal 0x14418
/* f194b50: 240700ff */ addiu $a3,$zero,0xff
/* f194b54: 00002025 */ or $a0,$zero,$zero
/* f194b58: 00002825 */ or $a1,$zero,$zero
/* f194b5c: 00003025 */ or $a2,$zero,$zero
/* f194b60: 0c005115 */ jal 0x14454
/* f194b64: 240700ff */ addiu $a3,$zero,0xff
/* f194b68: 3c057f1b */ lui $a1,0x7f1b
/* f194b6c: 3c068009 */ lui $a2,0x8009
/* f194b70: 3c078009 */ lui $a3,0x8009
/* f194b74: 8ce730ec */ lw $a3,0x30ec($a3)
/* f194b78: 8cc630e8 */ lw $a2,0x30e8($a2)
/* f194b7c: 24a53750 */ addiu $a1,$a1,0x3750
/* f194b80: 0c004fc1 */ jal 0x13f04
/* f194b84: 27a40018 */ addiu $a0,$sp,0x18
/* f194b88: 24040002 */ addiu $a0,$zero,0x2
/* f194b8c: 0c0050df */ jal 0x1437c
/* f194b90: 24050001 */ addiu $a1,$zero,0x1
/* f194b94: 0c005175 */ jal 0x145d4
/* f194b98: 27a40018 */ addiu $a0,$sp,0x18
/* f194b9c: 3c057f1b */ lui $a1,0x7f1b
/* f194ba0: 3c068009 */ lui $a2,0x8009
/* f194ba4: 8cc630e4 */ lw $a2,0x30e4($a2)
/* f194ba8: 24a53774 */ addiu $a1,$a1,0x3774
/* f194bac: 0c004fc1 */ jal 0x13f04
/* f194bb0: 27a40018 */ addiu $a0,$sp,0x18
/* f194bb4: 24040002 */ addiu $a0,$zero,0x2
/* f194bb8: 0c0050df */ jal 0x1437c
/* f194bbc: 24050002 */ addiu $a1,$zero,0x2
/* f194bc0: 0c005175 */ jal 0x145d4
/* f194bc4: 27a40018 */ addiu $a0,$sp,0x18
.NB0f194bc8:
/* f194bc8: 3c018009 */ lui $at,0x8009
/* f194bcc: ac2030e4 */ sw $zero,0x30e4($at)
/* f194bd0: 3c018009 */ lui $at,0x8009
/* f194bd4: ac2030e8 */ sw $zero,0x30e8($at)
/* f194bd8: 3c018009 */ lui $at,0x8009
/* f194bdc: ac2030ec */ sw $zero,0x30ec($at)
.NB0f194be0:
/* f194be0: 8fbf0014 */ lw $ra,0x14($sp)
/* f194be4: 27bd0068 */ addiu $sp,$sp,0x68
/* f194be8: 03e00008 */ jr $ra
/* f194bec: 00000000 */ sll $zero,$zero,0x0
);
#endif
GLOBAL_ASM(
glabel func0f19ab70
@@ -381,6 +441,7 @@ bool mpIsChallengeAvailableToAnyPlayer(s32 challengeindex)
return (g_MpChallenges[challengeindex].availability & (((g_MpSetup.chrslots & 0xf) << 1) | 1)) != 0;
}
#if VERSION >= VERSION_NTSC_1_0
void mpDetermineUnlockedFeatures(void)
{
s32 challengeindex;
@@ -535,6 +596,403 @@ void mpDetermineUnlockedFeatures(void)
}
}
}
#else
GLOBAL_ASM(
glabel mpDetermineUnlockedFeatures
/* f19505c: 27bdffc8 */ addiu $sp,$sp,-56
/* f195060: afb1001c */ sw $s1,0x1c($sp)
/* f195064: 3c118009 */ lui $s1,0x8009
/* f195068: 3c028009 */ lui $v0,0x8009
/* f19506c: afbf0034 */ sw $ra,0x34($sp)
/* f195070: afb60030 */ sw $s6,0x30($sp)
/* f195074: afb5002c */ sw $s5,0x2c($sp)
/* f195078: afb40028 */ sw $s4,0x28($sp)
/* f19507c: afb30024 */ sw $s3,0x24($sp)
/* f195080: afb20020 */ sw $s2,0x20($sp)
/* f195084: afb00018 */ sw $s0,0x18($sp)
/* f195088: 2442af34 */ addiu $v0,$v0,-20684
/* f19508c: 2631ac28 */ addiu $s1,$s1,-21464
.NB0f195090:
/* f195090: 2631001a */ addiu $s1,$s1,0x1a
/* f195094: 0222082b */ sltu $at,$s1,$v0
/* f195098: 1420fffd */ bnez $at,.NB0f195090
/* f19509c: a220ffea */ sb $zero,-0x16($s1)
/* f1950a0: 3c118009 */ lui $s1,0x8009
/* f1950a4: 0000a025 */ or $s4,$zero,$zero
/* f1950a8: 2631ac28 */ addiu $s1,$s1,-21464
/* f1950ac: 0000a825 */ or $s5,$zero,$zero
.NB0f1950b0:
/* f1950b0: 00009025 */ or $s2,$zero,$zero
/* f1950b4: 02a02025 */ or $a0,$s5,$zero
/* f1950b8: 0fc65912 */ jal 0xf196448
/* f1950bc: 24050001 */ addiu $a1,$zero,0x1
/* f1950c0: 1440000d */ bnez $v0,.NB0f1950f8
/* f1950c4: 02a02025 */ or $a0,$s5,$zero
/* f1950c8: 0fc65912 */ jal 0xf196448
/* f1950cc: 24050002 */ addiu $a1,$zero,0x2
/* f1950d0: 14400009 */ bnez $v0,.NB0f1950f8
/* f1950d4: 02a02025 */ or $a0,$s5,$zero
/* f1950d8: 0fc65912 */ jal 0xf196448
/* f1950dc: 24050003 */ addiu $a1,$zero,0x3
/* f1950e0: 14400005 */ bnez $v0,.NB0f1950f8
/* f1950e4: 02a02025 */ or $a0,$s5,$zero
/* f1950e8: 0fc65912 */ jal 0xf196448
/* f1950ec: 24050004 */ addiu $a1,$zero,0x4
/* f1950f0: 10400003 */ beqz $v0,.NB0f195100
/* f1950f4: 2aa10004 */ slti $at,$s5,0x4
.NB0f1950f8:
/* f1950f8: 10000021 */ beqz $zero,.NB0f195180
/* f1950fc: 24120001 */ addiu $s2,$zero,0x1
.NB0f195100:
/* f195100: 10200004 */ beqz $at,.NB0f195114
/* f195104: 00000000 */ sll $zero,$zero,0x0
/* f195108: 24120001 */ addiu $s2,$zero,0x1
/* f19510c: 1000001c */ beqz $zero,.NB0f195180
/* f195110: 26940001 */ addiu $s4,$s4,0x1
.NB0f195114:
/* f195114: 1aa00015 */ blez $s5,.NB0f19516c
/* f195118: 26b0ffff */ addiu $s0,$s5,-1
/* f19511c: 02002025 */ or $a0,$s0,$zero
/* f195120: 0fc65912 */ jal 0xf196448
/* f195124: 24050001 */ addiu $a1,$zero,0x1
/* f195128: 1440000d */ bnez $v0,.NB0f195160
/* f19512c: 02002025 */ or $a0,$s0,$zero
/* f195130: 0fc65912 */ jal 0xf196448
/* f195134: 24050002 */ addiu $a1,$zero,0x2
/* f195138: 14400009 */ bnez $v0,.NB0f195160
/* f19513c: 02002025 */ or $a0,$s0,$zero
/* f195140: 0fc65912 */ jal 0xf196448
/* f195144: 24050003 */ addiu $a1,$zero,0x3
/* f195148: 14400005 */ bnez $v0,.NB0f195160
/* f19514c: 02002025 */ or $a0,$s0,$zero
/* f195150: 0fc65912 */ jal 0xf196448
/* f195154: 24050004 */ addiu $a1,$zero,0x4
/* f195158: 10400004 */ beqz $v0,.NB0f19516c
/* f19515c: 00000000 */ sll $zero,$zero,0x0
.NB0f195160:
/* f195160: 24120001 */ addiu $s2,$zero,0x1
/* f195164: 10000006 */ beqz $zero,.NB0f195180
/* f195168: 26940001 */ addiu $s4,$s4,0x1
.NB0f19516c:
/* f19516c: 0fc466d5 */ jal 0xf119b54
/* f195170: 00000000 */ sll $zero,$zero,0x0
/* f195174: 50400003 */ beqzl $v0,.NB0f195184
/* f195178: 922e0004 */ lbu $t6,0x4($s1)
/* f19517c: 24120001 */ addiu $s2,$zero,0x1
.NB0f195180:
/* f195180: 922e0004 */ lbu $t6,0x4($s1)
.NB0f195184:
/* f195184: 26b50001 */ addiu $s5,$s5,0x1
/* f195188: 2aa1001e */ slti $at,$s5,0x1e
/* f19518c: 01d27825 */ or $t7,$t6,$s2
/* f195190: 2631001a */ addiu $s1,$s1,0x1a
/* f195194: 1420ffc6 */ bnez $at,.NB0f1950b0
/* f195198: a22fffea */ sb $t7,-0x16($s1)
/* f19519c: 2a810004 */ slti $at,$s4,0x4
/* f1951a0: 10200014 */ beqz $at,.NB0f1951f4
/* f1951a4: 00009825 */ or $s3,$zero,$zero
/* f1951a8: 0000c080 */ sll $t8,$zero,0x2
/* f1951ac: 0300c023 */ subu $t8,$t8,$zero
/* f1951b0: 3c198009 */ lui $t9,0x8009
/* f1951b4: 2739ac28 */ addiu $t9,$t9,-21464
/* f1951b8: 0018c0c0 */ sll $t8,$t8,0x3
/* f1951bc: 3c038009 */ lui $v1,0x8009
/* f1951c0: 2463af34 */ addiu $v1,$v1,-20684
/* f1951c4: 03198821 */ addu $s1,$t8,$t9
/* f1951c8: 92220004 */ lbu $v0,0x4($s1)
.NB0f1951cc:
/* f1951cc: 30480001 */ andi $t0,$v0,0x1
/* f1951d0: 15000003 */ bnez $t0,.NB0f1951e0
/* f1951d4: 34490001 */ ori $t1,$v0,0x1
/* f1951d8: a2290004 */ sb $t1,0x4($s1)
/* f1951dc: 26940001 */ addiu $s4,$s4,0x1
.NB0f1951e0:
/* f1951e0: 2a810004 */ slti $at,$s4,0x4
/* f1951e4: 10200003 */ beqz $at,.NB0f1951f4
/* f1951e8: 2631001a */ addiu $s1,$s1,0x1a
/* f1951ec: 5623fff7 */ bnel $s1,$v1,.NB0f1951cc
/* f1951f0: 92220004 */ lbu $v0,0x4($s1)
.NB0f1951f4:
/* f1951f4: 3c168009 */ lui $s6,0x8009
/* f1951f8: 26d6af34 */ addiu $s6,$s6,-20684
.NB0f1951fc:
/* f1951fc: 3c118009 */ lui $s1,0x8009
/* f195200: 0000a025 */ or $s4,$zero,$zero
/* f195204: 2631ac28 */ addiu $s1,$s1,-21464
/* f195208: 0000a825 */ or $s5,$zero,$zero
.NB0f19520c:
/* f19520c: 00009025 */ or $s2,$zero,$zero
/* f195210: 02602025 */ or $a0,$s3,$zero
/* f195214: 02a02825 */ or $a1,$s5,$zero
/* f195218: 0fc6593a */ jal 0xf1964e8
/* f19521c: 24060001 */ addiu $a2,$zero,0x1
/* f195220: 14400010 */ bnez $v0,.NB0f195264
/* f195224: 02602025 */ or $a0,$s3,$zero
/* f195228: 02a02825 */ or $a1,$s5,$zero
/* f19522c: 0fc6593a */ jal 0xf1964e8
/* f195230: 24060002 */ addiu $a2,$zero,0x2
/* f195234: 1440000b */ bnez $v0,.NB0f195264
/* f195238: 02602025 */ or $a0,$s3,$zero
/* f19523c: 02a02825 */ or $a1,$s5,$zero
/* f195240: 0fc6593a */ jal 0xf1964e8
/* f195244: 24060003 */ addiu $a2,$zero,0x3
/* f195248: 14400006 */ bnez $v0,.NB0f195264
/* f19524c: 02602025 */ or $a0,$s3,$zero
/* f195250: 02a02825 */ or $a1,$s5,$zero
/* f195254: 0fc6593a */ jal 0xf1964e8
/* f195258: 24060004 */ addiu $a2,$zero,0x4
/* f19525c: 10400006 */ beqz $v0,.NB0f195278
/* f195260: 2aa10004 */ slti $at,$s5,0x4
.NB0f195264:
/* f195264: 240a0002 */ addiu $t2,$zero,0x2
/* f195268: 026a9004 */ sllv $s2,$t2,$s3
/* f19526c: 324b00ff */ andi $t3,$s2,0xff
/* f195270: 10000023 */ beqz $zero,.NB0f195300
/* f195274: 01609025 */ or $s2,$t3,$zero
.NB0f195278:
/* f195278: 10200006 */ beqz $at,.NB0f195294
/* f19527c: 240c0002 */ addiu $t4,$zero,0x2
/* f195280: 026c9004 */ sllv $s2,$t4,$s3
/* f195284: 324d00ff */ andi $t5,$s2,0xff
/* f195288: 01a09025 */ or $s2,$t5,$zero
/* f19528c: 1000001c */ beqz $zero,.NB0f195300
/* f195290: 26940001 */ addiu $s4,$s4,0x1
.NB0f195294:
/* f195294: 1aa0001a */ blez $s5,.NB0f195300
/* f195298: 02602025 */ or $a0,$s3,$zero
/* f19529c: 26b0ffff */ addiu $s0,$s5,-1
/* f1952a0: 02002825 */ or $a1,$s0,$zero
/* f1952a4: 0fc6593a */ jal 0xf1964e8
/* f1952a8: 24060001 */ addiu $a2,$zero,0x1
/* f1952ac: 1440000f */ bnez $v0,.NB0f1952ec
/* f1952b0: 02602025 */ or $a0,$s3,$zero
/* f1952b4: 02002825 */ or $a1,$s0,$zero
/* f1952b8: 0fc6593a */ jal 0xf1964e8
/* f1952bc: 24060002 */ addiu $a2,$zero,0x2
/* f1952c0: 1440000a */ bnez $v0,.NB0f1952ec
/* f1952c4: 02602025 */ or $a0,$s3,$zero
/* f1952c8: 02002825 */ or $a1,$s0,$zero
/* f1952cc: 0fc6593a */ jal 0xf1964e8
/* f1952d0: 24060003 */ addiu $a2,$zero,0x3
/* f1952d4: 14400005 */ bnez $v0,.NB0f1952ec
/* f1952d8: 02602025 */ or $a0,$s3,$zero
/* f1952dc: 02002825 */ or $a1,$s0,$zero
/* f1952e0: 0fc6593a */ jal 0xf1964e8
/* f1952e4: 24060004 */ addiu $a2,$zero,0x4
/* f1952e8: 10400005 */ beqz $v0,.NB0f195300
.NB0f1952ec:
/* f1952ec: 240e0002 */ addiu $t6,$zero,0x2
/* f1952f0: 026e9004 */ sllv $s2,$t6,$s3
/* f1952f4: 324f00ff */ andi $t7,$s2,0xff
/* f1952f8: 01e09025 */ or $s2,$t7,$zero
/* f1952fc: 26940001 */ addiu $s4,$s4,0x1
.NB0f195300:
/* f195300: 92380004 */ lbu $t8,0x4($s1)
/* f195304: 26b50001 */ addiu $s5,$s5,0x1
/* f195308: 2aa1001e */ slti $at,$s5,0x1e
/* f19530c: 0312c825 */ or $t9,$t8,$s2
/* f195310: 2631001a */ addiu $s1,$s1,0x1a
/* f195314: 1420ffbd */ bnez $at,.NB0f19520c
/* f195318: a239ffea */ sb $t9,-0x16($s1)
/* f19531c: 2a810004 */ slti $at,$s4,0x4
/* f195320: 10200013 */ beqz $at,.NB0f195370
/* f195324: 00004080 */ sll $t0,$zero,0x2
/* f195328: 01004023 */ subu $t0,$t0,$zero
/* f19532c: 3c098009 */ lui $t1,0x8009
/* f195330: 2529ac28 */ addiu $t1,$t1,-21464
/* f195334: 000840c0 */ sll $t0,$t0,0x3
/* f195338: 240a0002 */ addiu $t2,$zero,0x2
/* f19533c: 026a1804 */ sllv $v1,$t2,$s3
/* f195340: 01098821 */ addu $s1,$t0,$t1
/* f195344: 92220004 */ lbu $v0,0x4($s1)
.NB0f195348:
/* f195348: 00435824 */ and $t3,$v0,$v1
/* f19534c: 15600003 */ bnez $t3,.NB0f19535c
/* f195350: 00436025 */ or $t4,$v0,$v1
/* f195354: a22c0004 */ sb $t4,0x4($s1)
/* f195358: 26940001 */ addiu $s4,$s4,0x1
.NB0f19535c:
/* f19535c: 2a810004 */ slti $at,$s4,0x4
/* f195360: 10200003 */ beqz $at,.NB0f195370
/* f195364: 2631001a */ addiu $s1,$s1,0x1a
/* f195368: 5636fff7 */ bnel $s1,$s6,.NB0f195348
/* f19536c: 92220004 */ lbu $v0,0x4($s1)
.NB0f195370:
/* f195370: 26730001 */ addiu $s3,$s3,0x1
/* f195374: 2a610004 */ slti $at,$s3,0x4
/* f195378: 1420ffa0 */ bnez $at,.NB0f1951fc
/* f19537c: 00000000 */ sll $zero,$zero,0x0
/* f195380: 3c14800b */ lui $s4,0x800b
/* f195384: 3c16800b */ lui $s6,0x800b
/* f195388: 26d61578 */ addiu $s6,$s6,0x1578
/* f19538c: 26941578 */ addiu $s4,$s4,0x1578
/* f195390: 00009825 */ or $s3,$zero,$zero
/* f195394: 24110010 */ addiu $s1,$zero,0x10
.NB0f195398:
/* f195398: 00009025 */ or $s2,$zero,$zero
/* f19539c: 0000a825 */ or $s5,$zero,$zero
.NB0f1953a0:
/* f1953a0: 0fc65406 */ jal 0xf195018
/* f1953a4: 02a02025 */ or $a0,$s5,$zero
/* f1953a8: 10400011 */ beqz $v0,.NB0f1953f0
/* f1953ac: 00156880 */ sll $t5,$s5,0x2
/* f1953b0: 01b56823 */ subu $t5,$t5,$s5
/* f1953b4: 000d6880 */ sll $t5,$t5,0x2
/* f1953b8: 01b56821 */ addu $t5,$t5,$s5
/* f1953bc: 3c0e8009 */ lui $t6,0x8009
/* f1953c0: 25ceac28 */ addiu $t6,$t6,-21464
/* f1953c4: 000d6840 */ sll $t5,$t5,0x1
/* f1953c8: 01ae1821 */ addu $v1,$t5,$t6
/* f1953cc: 00001025 */ or $v0,$zero,$zero
.NB0f1953d0:
/* f1953d0: 906f0009 */ lbu $t7,0x9($v1)
/* f1953d4: 24420001 */ addiu $v0,$v0,0x1
/* f1953d8: 36580001 */ ori $t8,$s2,0x1
/* f1953dc: 166f0002 */ bne $s3,$t7,.NB0f1953e8
/* f1953e0: 00000000 */ sll $zero,$zero,0x0
/* f1953e4: 331200ff */ andi $s2,$t8,0xff
.NB0f1953e8:
/* f1953e8: 1451fff9 */ bne $v0,$s1,.NB0f1953d0
/* f1953ec: 24630001 */ addiu $v1,$v1,0x1
.NB0f1953f0:
/* f1953f0: 26b50001 */ addiu $s5,$s5,0x1
/* f1953f4: 2aa1001e */ slti $at,$s5,0x1e
/* f1953f8: 1420ffe9 */ bnez $at,.NB0f1953a0
/* f1953fc: 00000000 */ sll $zero,$zero,0x0
/* f195400: 3c03800b */ lui $v1,0x800b
/* f195404: 24631550 */ addiu $v1,$v1,0x1550
/* f195408: 90680000 */ lbu $t0,0x0($v1)
.NB0f19540c:
/* f19540c: 24630001 */ addiu $v1,$v1,0x1
/* f195410: 36490001 */ ori $t1,$s2,0x1
/* f195414: 16680002 */ bne $s3,$t0,.NB0f195420
/* f195418: 00000000 */ sll $zero,$zero,0x0
/* f19541c: 313200ff */ andi $s2,$t1,0xff
.NB0f195420:
/* f195420: 5476fffa */ bnel $v1,$s6,.NB0f19540c
/* f195424: 90680000 */ lbu $t0,0x0($v1)
/* f195428: 0000a825 */ or $s5,$zero,$zero
/* f19542c: 00008025 */ or $s0,$zero,$zero
.NB0f195430:
/* f195430: 02002025 */ or $a0,$s0,$zero
.NB0f195434:
/* f195434: 0fc653ef */ jal 0xf194fbc
/* f195438: 02a02825 */ or $a1,$s5,$zero
/* f19543c: 10400013 */ beqz $v0,.NB0f19548c
/* f195440: 00155880 */ sll $t3,$s5,0x2
/* f195444: 01755823 */ subu $t3,$t3,$s5
/* f195448: 000b5880 */ sll $t3,$t3,0x2
/* f19544c: 01755821 */ addu $t3,$t3,$s5
/* f195450: 3c0c8009 */ lui $t4,0x8009
/* f195454: 258cac28 */ addiu $t4,$t4,-21464
/* f195458: 000b5840 */ sll $t3,$t3,0x1
/* f19545c: 016c1821 */ addu $v1,$t3,$t4
/* f195460: 00001025 */ or $v0,$zero,$zero
.NB0f195464:
/* f195464: 906d0009 */ lbu $t5,0x9($v1)
/* f195468: 240e0002 */ addiu $t6,$zero,0x2
/* f19546c: 24420001 */ addiu $v0,$v0,0x1
/* f195470: 166d0004 */ bne $s3,$t5,.NB0f195484
/* f195474: 020e7804 */ sllv $t7,$t6,$s0
/* f195478: 024f9025 */ or $s2,$s2,$t7
/* f19547c: 325800ff */ andi $t8,$s2,0xff
/* f195480: 03009025 */ or $s2,$t8,$zero
.NB0f195484:
/* f195484: 1451fff7 */ bne $v0,$s1,.NB0f195464
/* f195488: 24630001 */ addiu $v1,$v1,0x1
.NB0f19548c:
/* f19548c: 26100001 */ addiu $s0,$s0,0x1
/* f195490: 2a010004 */ slti $at,$s0,0x4
/* f195494: 5420ffe7 */ bnezl $at,.NB0f195434
/* f195498: 02002025 */ or $a0,$s0,$zero
/* f19549c: 26b50001 */ addiu $s5,$s5,0x1
/* f1954a0: 2aa1001e */ slti $at,$s5,0x1e
/* f1954a4: 5420ffe2 */ bnezl $at,.NB0f195430
/* f1954a8: 00008025 */ or $s0,$zero,$zero
/* f1954ac: 26730001 */ addiu $s3,$s3,0x1
/* f1954b0: 2a610050 */ slti $at,$s3,0x50
/* f1954b4: 26940001 */ addiu $s4,$s4,0x1
/* f1954b8: 1420ffb7 */ bnez $at,.NB0f195398
/* f1954bc: a292ffff */ sb $s2,-0x1($s4)
/* f1954c0: 0fc60bef */ jal 0xf182fbc
/* f1954c4: 00009825 */ or $s3,$zero,$zero
/* f1954c8: 1840001c */ blez $v0,.NB0f19553c
/* f1954cc: 0013c880 */ sll $t9,$s3,0x2
/* f1954d0: 0333c821 */ addu $t9,$t9,$s3
/* f1954d4: 3c088009 */ lui $t0,0x8009
/* f1954d8: 250899e8 */ addiu $t0,$t0,-26136
/* f1954dc: 0019c840 */ sll $t9,$t9,0x1
/* f1954e0: 3c11800b */ lui $s1,0x800b
/* f1954e4: 26311578 */ addiu $s1,$s1,0x1578
/* f1954e8: 03288021 */ addu $s0,$t9,$t0
/* f1954ec: 96090004 */ lhu $t1,0x4($s0)
.NB0f1954f0:
/* f1954f0: 312a007f */ andi $t2,$t1,0x7f
/* f1954f4: 5940000c */ blezl $t2,.NB0f195528
/* f1954f8: 26730001 */ addiu $s3,$s3,0x1
/* f1954fc: 0fc65b06 */ jal 0xf196c18
/* f195500: 92040000 */ lbu $a0,0x0($s0)
/* f195504: 50400008 */ beqzl $v0,.NB0f195528
/* f195508: 26730001 */ addiu $s3,$s3,0x1
/* f19550c: 960b0004 */ lhu $t3,0x4($s0)
/* f195510: 316c007f */ andi $t4,$t3,0x7f
/* f195514: 022c1021 */ addu $v0,$s1,$t4
/* f195518: 904d0000 */ lbu $t5,0x0($v0)
/* f19551c: 35ae0001 */ ori $t6,$t5,0x1
/* f195520: a04e0000 */ sb $t6,0x0($v0)
/* f195524: 26730001 */ addiu $s3,$s3,0x1
.NB0f195528:
/* f195528: 0fc60bef */ jal 0xf182fbc
/* f19552c: 2610000a */ addiu $s0,$s0,0xa
/* f195530: 0262082a */ slt $at,$s3,$v0
/* f195534: 5420ffee */ bnezl $at,.NB0f1954f0
/* f195538: 96090004 */ lhu $t1,0x4($s0)
.NB0f19553c:
/* f19553c: 0fc60e76 */ jal 0xf1839d8
/* f195540: 00000000 */ sll $zero,$zero,0x0
/* f195544: 0fc65a5e */ jal 0xf196978
/* f195548: 24040040 */ addiu $a0,$zero,0x40
/* f19554c: 14400018 */ bnez $v0,.NB0f1955b0
/* f195550: 24100004 */ addiu $s0,$zero,0x4
/* f195554: 3c11800b */ lui $s1,0x800b
/* f195558: 26311438 */ addiu $s1,$s1,0x1438
/* f19555c: 24120008 */ addiu $s2,$zero,0x8
/* f195560: 962f0016 */ lhu $t7,0x16($s1)
.NB0f195564:
/* f195564: 26180004 */ addiu $t8,$s0,0x4
/* f195568: 24190001 */ addiu $t9,$zero,0x1
/* f19556c: 03194004 */ sllv $t0,$t9,$t8
/* f195570: 01e84824 */ and $t1,$t7,$t0
/* f195574: 51200004 */ beqzl $t1,.NB0f195588
/* f195578: 26100001 */ addiu $s0,$s0,0x1
/* f19557c: 0fc61b80 */ jal 0xf186e00
/* f195580: 02002025 */ or $a0,$s0,$zero
/* f195584: 26100001 */ addiu $s0,$s0,0x1
.NB0f195588:
/* f195588: 5612fff6 */ bnel $s0,$s2,.NB0f195564
/* f19558c: 962f0016 */ lhu $t7,0x16($s1)
/* f195590: 3c02800a */ lui $v0,0x800a
/* f195594: 2442e6c0 */ addiu $v0,$v0,-6464
/* f195598: 8c4a04a4 */ lw $t2,0x4a4($v0)
/* f19559c: 240b0004 */ addiu $t3,$zero,0x4
/* f1955a0: 29410005 */ slti $at,$t2,0x5
/* f1955a4: 54200003 */ bnezl $at,.NB0f1955b4
/* f1955a8: 8fbf0034 */ lw $ra,0x34($sp)
/* f1955ac: ac4b04a4 */ sw $t3,0x4a4($v0)
.NB0f1955b0:
/* f1955b0: 8fbf0034 */ lw $ra,0x34($sp)
.NB0f1955b4:
/* f1955b4: 8fb00018 */ lw $s0,0x18($sp)
/* f1955b8: 8fb1001c */ lw $s1,0x1c($sp)
/* f1955bc: 8fb20020 */ lw $s2,0x20($sp)
/* f1955c0: 8fb30024 */ lw $s3,0x24($sp)
/* f1955c4: 8fb40028 */ lw $s4,0x28($sp)
/* f1955c8: 8fb5002c */ lw $s5,0x2c($sp)
/* f1955cc: 8fb60030 */ lw $s6,0x30($sp)
/* f1955d0: 03e00008 */ jr $ra
/* f1955d4: 27bd0038 */ addiu $sp,$sp,0x38
);
#endif
void mpPerformSanityChecks(void)
{
@@ -974,6 +1432,7 @@ void mpForceUnlockConfigFeatures(struct mpconfig *config, u8 *array, s32 len, s3
}
}
#if VERSION >= VERSION_NTSC_1_0
if (challengeindex >= 25) {
index = mpForceUnlockFeature(MPFEATURE_SIMDIFF_DARK, array, index, len);
} else if (challengeindex >= 20) {
@@ -985,6 +1444,19 @@ void mpForceUnlockConfigFeatures(struct mpconfig *config, u8 *array, s32 len, s3
if (challengeindex >= 10) {
index = mpForceUnlockFeature(MPFEATURE_8BOTS, array, index, len);
}
#else
if (challengeindex >= 10) {
index = mpForceUnlockFeature(MPFEATURE_8BOTS, array, index, len);
}
if (challengeindex >= 15) {
index = mpForceUnlockFeature(MPFEATURE_4D, array, index, len);
}
if (challengeindex >= 20) {
index = mpForceUnlockFeature(MPFEATURE_STAGE_CARPARK, array, index, len);
}
#endif
// Clear the remainder of the array
for (i = index; i < len; i++) {
@@ -1219,7 +1691,12 @@ void mpConsiderMarkingCurrentChallengeComplete(void)
{
bool result = mpIsChallengeCompleteForEndscreen();
if (g_CheatsActiveBank0 == 0 && g_CheatsActiveBank1 == 0 && result) {
#if VERSION >= VERSION_NTSC_1_0
if (g_CheatsActiveBank0 == 0 && g_CheatsActiveBank1 == 0 && result)
#else
if (result && g_CheatsActiveBank0 == 0 && g_CheatsActiveBank1 == 0)
#endif
{
u32 prevplayernum;
s32 i;
-31
View File
@@ -5,37 +5,6 @@
#include "data.h"
#include "types.h"
#if VERSION == VERSION_NTSC_BETA
// These functions don't exist in ntsc-beta, but are here temporarily
void func00013900(void)
{
}
void func00013938(void)
{
}
void func00013974(u32 value)
{
}
void contShiftPfsStates(void)
{
}
void contCheckPfs(void)
{
}
void contRecordPfsState(void)
{
}
void func000152d0(s8 playernum, s32 *arg1, s32 *arg2)
{
}
#endif
void func0f1a78b0(void)
{
// empty
+723 -1
View File
@@ -841,9 +841,13 @@ void savefileLoadDefaults(struct savefile_solo *file)
bitSetByIndex(SAVEFILEFLAG_HIRES, &file->flags, false);
bitSetByIndex(SAVEFILEFLAG_LANGFILTERON, &file->flags, false);
#if VERSION >= VERSION_NTSC_1_0
bitSetByIndex(SAVEFILEFLAG_41, &file->flags, false);
bitSetByIndex(SAVEFILEFLAG_42, &file->flags, false);
bitSetByIndex(SAVEFILEFLAG_43, &file->flags, false);
#endif
bitSetByIndex(SAVEFILEFLAG_COOPRADARON, &file->flags, true);
bitSetByIndex(SAVEFILEFLAG_COOPFRIENDLYFIRE, &file->flags, true);
bitSetByIndex(SAVEFILEFLAG_ANTIRADARON, &file->flags, true);
@@ -907,6 +911,7 @@ const u32 var7f1b3a04[] = {0x00000000};
const char var7f1b3a08[] = "tc != NULL";
const char var7f1b3a14[] = "gamefile.c";
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f10fac8
/* f10fac8: 27bdfec0 */ addiu $sp,$sp,-320
@@ -1179,6 +1184,254 @@ glabel func0f10fac8
/* f10fea4: 03e00008 */ jr $ra
/* f10fea8: 27bd0140 */ addiu $sp,$sp,0x140
);
#else
GLOBAL_ASM(
glabel func0f10fac8
/* f109ff8: 27bdfec0 */ addiu $sp,$sp,-320
/* f109ffc: 3c03800a */ lui $v1,0x800a
/* f10a000: 2463e6c0 */ addiu $v1,$v1,-6464
/* f10a004: 8c620298 */ lw $v0,0x298($v1)
/* f10a008: afb00018 */ sw $s0,0x18($sp)
/* f10a00c: 00808025 */ or $s0,$a0,$zero
/* f10a010: afbf002c */ sw $ra,0x2c($sp)
/* f10a014: afb40028 */ sw $s4,0x28($sp)
/* f10a018: afb30024 */ sw $s3,0x24($sp)
/* f10a01c: afb20020 */ sw $s2,0x20($sp)
/* f10a020: 04410005 */ bgez $v0,.NB0f10a038
/* f10a024: afb1001c */ sw $s1,0x1c($sp)
/* f10a028: 8c6e029c */ lw $t6,0x29c($v1)
/* f10a02c: 24110004 */ addiu $s1,$zero,0x4
/* f10a030: 05c00003 */ bltz $t6,.NB0f10a040
/* f10a034: 00000000 */ sll $zero,$zero,0x0
.NB0f10a038:
/* f10a038: 10000001 */ beqz $zero,.NB0f10a040
/* f10a03c: 00008825 */ or $s1,$zero,$zero
.NB0f10a040:
/* f10a040: 04410005 */ bgez $v0,.NB0f10a058
/* f10a044: 27b3004c */ addiu $s3,$sp,0x4c
/* f10a048: 8c6f029c */ lw $t7,0x29c($v1)
/* f10a04c: 24120005 */ addiu $s2,$zero,0x5
/* f10a050: 05e00003 */ bltz $t7,.NB0f10a060
/* f10a054: 00000000 */ sll $zero,$zero,0x0
.NB0f10a058:
/* f10a058: 10000001 */ beqz $zero,.NB0f10a060
/* f10a05c: 24120001 */ addiu $s2,$zero,0x1
.NB0f10a060:
/* f10a060: 060000bf */ bltz $s0,.NB0f10a360
/* f10a064: 2402ffff */ addiu $v0,$zero,-1
/* f10a068: 0fc34ad1 */ jal 0xf0d2b44
/* f10a06c: 02602025 */ or $a0,$s3,$zero
/* f10a070: 00102600 */ sll $a0,$s0,0x18
/* f10a074: 0004c603 */ sra $t8,$a0,0x18
/* f10a078: 3c05800a */ lui $a1,0x800a
/* f10a07c: 8ca567b0 */ lw $a1,0x67b0($a1)
/* f10a080: 03002025 */ or $a0,$t8,$zero
/* f10a084: 27a60050 */ addiu $a2,$sp,0x50
/* f10a088: 0fc442f1 */ jal 0xf110bc4
/* f10a08c: 00003825 */ or $a3,$zero,$zero
/* f10a090: 3c01800a */ lui $at,0x800a
/* f10a094: 144000b0 */ bnez $v0,.NB0f10a358
/* f10a098: ac2266e8 */ sw $v0,0x66e8($at)
/* f10a09c: 0fc40c5b */ jal 0xf10316c
/* f10a0a0: 00000000 */ sll $zero,$zero,0x0
/* f10a0a4: 3c05800a */ lui $a1,0x800a
/* f10a0a8: 24a566f0 */ addiu $a1,$a1,0x66f0
/* f10a0ac: 02602025 */ or $a0,$s3,$zero
/* f10a0b0: 0fc34af3 */ jal 0xf0d2bcc
/* f10a0b4: 00003025 */ or $a2,$zero,$zero
/* f10a0b8: 02602025 */ or $a0,$s3,$zero
/* f10a0bc: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a0c0: 24050005 */ addiu $a1,$zero,0x5
/* f10a0c4: 3c03800a */ lui $v1,0x800a
/* f10a0c8: 246366f0 */ addiu $v1,$v1,0x66f0
/* f10a0cc: 906a000b */ lbu $t2,0xb($v1)
/* f10a0d0: 000248c0 */ sll $t1,$v0,0x3
/* f10a0d4: 02602025 */ or $a0,$s3,$zero
/* f10a0d8: 314bff07 */ andi $t3,$t2,0xff07
/* f10a0dc: 012b6025 */ or $t4,$t1,$t3
/* f10a0e0: a06c000b */ sb $t4,0xb($v1)
/* f10a0e4: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a0e8: 24050020 */ addiu $a1,$zero,0x20
/* f10a0ec: 3c01800a */ lui $at,0x800a
/* f10a0f0: ac226700 */ sw $v0,0x6700($at)
/* f10a0f4: 02602025 */ or $a0,$s3,$zero
/* f10a0f8: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a0fc: 24050002 */ addiu $a1,$zero,0x2
/* f10a100: 3c03800a */ lui $v1,0x800a
/* f10a104: 246366f0 */ addiu $v1,$v1,0x66f0
/* f10a108: 906f000b */ lbu $t7,0xb($v1)
/* f10a10c: 304e0007 */ andi $t6,$v0,0x7
/* f10a110: 02602025 */ or $a0,$s3,$zero
/* f10a114: 31f8fff8 */ andi $t8,$t7,0xfff8
/* f10a118: 01d8c825 */ or $t9,$t6,$t8
/* f10a11c: a079000b */ sb $t9,0xb($v1)
/* f10a120: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a124: 24050005 */ addiu $a1,$zero,0x5
/* f10a128: 3c01800a */ lui $at,0x800a
/* f10a12c: a02266fc */ sb $v0,0x66fc($at)
/* f10a130: 02602025 */ or $a0,$s3,$zero
/* f10a134: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a138: 24050006 */ addiu $a1,$zero,0x6
/* f10a13c: 00022880 */ sll $a1,$v0,0x2
/* f10a140: 2ca100fc */ sltiu $at,$a1,0xfc
/* f10a144: 54200003 */ bnezl $at,.NB0f10a154
/* f10a148: 00a02025 */ or $a0,$a1,$zero
/* f10a14c: 240500ff */ addiu $a1,$zero,0xff
/* f10a150: 00a02025 */ or $a0,$a1,$zero
.NB0f10a154:
/* f10a154: 000441c0 */ sll $t0,$a0,0x7
/* f10a158: 0c003c77 */ jal 0xf1dc
/* f10a15c: 3104ffff */ andi $a0,$t0,0xffff
/* f10a160: 02602025 */ or $a0,$s3,$zero
/* f10a164: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a168: 24050006 */ addiu $a1,$zero,0x6
/* f10a16c: 00022880 */ sll $a1,$v0,0x2
/* f10a170: 2ca100fc */ sltiu $at,$a1,0xfc
/* f10a174: 54200003 */ bnezl $at,.NB0f10a184
/* f10a178: 00a02025 */ or $a0,$a1,$zero
/* f10a17c: 240500ff */ addiu $a1,$zero,0xff
/* f10a180: 00a02025 */ or $a0,$a1,$zero
.NB0f10a184:
/* f10a184: 000449c0 */ sll $t1,$a0,0x7
/* f10a188: 0fc5359a */ jal 0xf14d668
/* f10a18c: 3124ffff */ andi $a0,$t1,0xffff
/* f10a190: 02602025 */ or $a0,$s3,$zero
/* f10a194: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a198: 24050002 */ addiu $a1,$zero,0x2
/* f10a19c: 0c003e02 */ jal 0xf808
/* f10a1a0: 00402025 */ or $a0,$v0,$zero
/* f10a1a4: 02602025 */ or $a0,$s3,$zero
/* f10a1a8: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a1ac: 24050003 */ addiu $a1,$zero,0x3
/* f10a1b0: 02202025 */ or $a0,$s1,$zero
/* f10a1b4: 0fc53387 */ jal 0xf14ce1c
/* f10a1b8: 00402825 */ or $a1,$v0,$zero
/* f10a1bc: 02602025 */ or $a0,$s3,$zero
/* f10a1c0: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a1c4: 24050003 */ addiu $a1,$zero,0x3
/* f10a1c8: 02402025 */ or $a0,$s2,$zero
/* f10a1cc: 0fc53387 */ jal 0xf14ce1c
/* f10a1d0: 00402825 */ or $a1,$v0,$zero
/* f10a1d4: 3c10800a */ lui $s0,0x800a
/* f10a1d8: 3c11800a */ lui $s1,0x800a
/* f10a1dc: 263166fa */ addiu $s1,$s1,0x66fa
/* f10a1e0: 261066f0 */ addiu $s0,$s0,0x66f0
.NB0f10a1e4:
/* f10a1e4: 02602025 */ or $a0,$s3,$zero
/* f10a1e8: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a1ec: 24050008 */ addiu $a1,$zero,0x8
/* f10a1f0: 26100001 */ addiu $s0,$s0,0x1
/* f10a1f4: 0211082b */ sltu $at,$s0,$s1
/* f10a1f8: 1420fffa */ bnez $at,.NB0f10a1e4
/* f10a1fc: a2020013 */ sb $v0,0x13($s0)
/* f10a200: 02602025 */ or $a0,$s3,$zero
/* f10a204: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a208: 24050010 */ addiu $a1,$zero,0x10
/* f10a20c: 3c01800a */ lui $at,0x800a
/* f10a210: 3c14800a */ lui $s4,0x800a
/* f10a214: a422670e */ sh $v0,0x670e($at)
/* f10a218: 269466f0 */ addiu $s4,$s4,0x66f0
/* f10a21c: 24120003 */ addiu $s2,$zero,0x3
/* f10a220: 00008025 */ or $s0,$zero,$zero
.NB0f10a224:
/* f10a224: 02808825 */ or $s1,$s4,$zero
.NB0f10a228:
/* f10a228: 02602025 */ or $a0,$s3,$zero
/* f10a22c: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a230: 2405000c */ addiu $a1,$zero,0xc
/* f10a234: 26100001 */ addiu $s0,$s0,0x1
/* f10a238: 26310002 */ addiu $s1,$s1,0x2
/* f10a23c: 1612fffa */ bne $s0,$s2,.NB0f10a228
/* f10a240: a622001e */ sh $v0,0x1e($s1)
/* f10a244: 3c0c800a */ lui $t4,0x800a
/* f10a248: 258c676e */ addiu $t4,$t4,0x676e
/* f10a24c: 26940006 */ addiu $s4,$s4,0x6
/* f10a250: 028c082b */ sltu $at,$s4,$t4
/* f10a254: 5420fff3 */ bnezl $at,.NB0f10a224
/* f10a258: 00008025 */ or $s0,$zero,$zero
/* f10a25c: 00008825 */ or $s1,$zero,$zero
/* f10a260: 24120005 */ addiu $s2,$zero,0x5
/* f10a264: 24100001 */ addiu $s0,$zero,0x1
.NB0f10a268:
/* f10a268: 02602025 */ or $a0,$s3,$zero
.NB0f10a26c:
/* f10a26c: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a270: 24050001 */ addiu $a1,$zero,0x1
/* f10a274: 02202025 */ or $a0,$s1,$zero
/* f10a278: 02002825 */ or $a1,$s0,$zero
/* f10a27c: 0fc6591e */ jal 0xf196478
/* f10a280: 00403025 */ or $a2,$v0,$zero
/* f10a284: 26100001 */ addiu $s0,$s0,0x1
/* f10a288: 5612fff8 */ bnel $s0,$s2,.NB0f10a26c
/* f10a28c: 02602025 */ or $a0,$s3,$zero
/* f10a290: 26310001 */ addiu $s1,$s1,0x1
/* f10a294: 2a21001e */ slti $at,$s1,0x1e
/* f10a298: 5420fff3 */ bnezl $at,.NB0f10a268
/* f10a29c: 24100001 */ addiu $s0,$zero,0x1
/* f10a2a0: 0fc65417 */ jal 0xf19505c
/* f10a2a4: 00000000 */ sll $zero,$zero,0x0
/* f10a2a8: 3c10800a */ lui $s0,0x800a
/* f10a2ac: 3c11800a */ lui $s1,0x800a
/* f10a2b0: 263166fc */ addiu $s1,$s1,0x66fc
/* f10a2b4: 261066f0 */ addiu $s0,$s0,0x66f0
.NB0f10a2b8:
/* f10a2b8: 02602025 */ or $a0,$s3,$zero
/* f10a2bc: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a2c0: 24050015 */ addiu $a1,$zero,0x15
/* f10a2c4: 26100004 */ addiu $s0,$s0,0x4
/* f10a2c8: 0211082b */ sltu $at,$s0,$s1
/* f10a2cc: 1420fffa */ bnez $at,.NB0f10a2b8
/* f10a2d0: ae02009c */ sw $v0,0x9c($s0)
/* f10a2d4: 3c10800a */ lui $s0,0x800a
/* f10a2d8: 3c12800a */ lui $s2,0x800a
/* f10a2dc: 3c11800a */ lui $s1,0x800a
/* f10a2e0: 263166f8 */ addiu $s1,$s1,0x66f8
/* f10a2e4: 265266f9 */ addiu $s2,$s2,0x66f9
/* f10a2e8: 261066f0 */ addiu $s0,$s0,0x66f0
.NB0f10a2ec:
/* f10a2ec: 16110003 */ bne $s0,$s1,.NB0f10a2fc
/* f10a2f0: 24050008 */ addiu $a1,$zero,0x8
/* f10a2f4: 10000001 */ beqz $zero,.NB0f10a2fc
/* f10a2f8: 24050002 */ addiu $a1,$zero,0x2
.NB0f10a2fc:
/* f10a2fc: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a300: 02602025 */ or $a0,$s3,$zero
/* f10a304: 26100001 */ addiu $s0,$s0,0x1
/* f10a308: 0212082b */ sltu $at,$s0,$s2
/* f10a30c: 1420fff7 */ bnez $at,.NB0f10a2ec
/* f10a310: a20200ab */ sb $v0,0xab($s0)
/* f10a314: 3c10800a */ lui $s0,0x800a
/* f10a318: 3c11800a */ lui $s1,0x800a
/* f10a31c: 263166f4 */ addiu $s1,$s1,0x66f4
/* f10a320: 261066f0 */ addiu $s0,$s0,0x66f0
.NB0f10a324:
/* f10a324: 02602025 */ or $a0,$s3,$zero
/* f10a328: 0fc34ab8 */ jal 0xf0d2ae0
/* f10a32c: 24050008 */ addiu $a1,$zero,0x8
/* f10a330: 26100001 */ addiu $s0,$s0,0x1
/* f10a334: 1611fffb */ bne $s0,$s1,.NB0f10a324
/* f10a338: a20200b4 */ sb $v0,0xb4($s0)
/* f10a33c: 0fc34aeb */ jal 0xf0d2bac
/* f10a340: 02602025 */ or $a0,$s3,$zero
/* f10a344: 3c04800a */ lui $a0,0x800a
/* f10a348: 0fc425d9 */ jal 0xf109764
/* f10a34c: 248466f0 */ addiu $a0,$a0,0x66f0
/* f10a350: 10000003 */ beqz $zero,.NB0f10a360
/* f10a354: 00001025 */ or $v0,$zero,$zero
.NB0f10a358:
/* f10a358: 10000001 */ beqz $zero,.NB0f10a360
/* f10a35c: 2402ffff */ addiu $v0,$zero,-1
.NB0f10a360:
/* f10a360: 8fbf002c */ lw $ra,0x2c($sp)
/* f10a364: 8fb00018 */ lw $s0,0x18($sp)
/* f10a368: 8fb1001c */ lw $s1,0x1c($sp)
/* f10a36c: 8fb20020 */ lw $s2,0x20($sp)
/* f10a370: 8fb30024 */ lw $s3,0x24($sp)
/* f10a374: 8fb40028 */ lw $s4,0x28($sp)
/* f10a378: 03e00008 */ jr $ra
/* f10a37c: 27bd0140 */ addiu $sp,$sp,0x140
);
#endif
#if VERSION >= VERSION_PAL_FINAL
GLOBAL_ASM(
@@ -1691,7 +1944,7 @@ glabel func0f10feac
/* f1110b8: 03e00008 */ jr $ra
/* f1110bc: 27bd0148 */ addiu $sp,$sp,0x148
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f10feac
/* f10feac: 27bdfeb8 */ addiu $sp,$sp,-328
@@ -2181,6 +2434,469 @@ glabel func0f10feac
/* f1105f4: 03e00008 */ jr $ra
/* f1105f8: 27bd0148 */ addiu $sp,$sp,0x148
);
#else
GLOBAL_ASM(
glabel func0f10feac
/* f10a380: 27bdfeb8 */ addiu $sp,$sp,-328
/* f10a384: afb4002c */ sw $s4,0x2c($sp)
/* f10a388: 3c14800a */ lui $s4,0x800a
/* f10a38c: 2694e6c0 */ addiu $s4,$s4,-6464
/* f10a390: 8e820298 */ lw $v0,0x298($s4)
/* f10a394: afbf0034 */ sw $ra,0x34($sp)
/* f10a398: afb50030 */ sw $s5,0x30($sp)
/* f10a39c: afb30028 */ sw $s3,0x28($sp)
/* f10a3a0: afb20024 */ sw $s2,0x24($sp)
/* f10a3a4: afb10020 */ sw $s1,0x20($sp)
/* f10a3a8: afb0001c */ sw $s0,0x1c($sp)
/* f10a3ac: afa40148 */ sw $a0,0x148($sp)
/* f10a3b0: afa5014c */ sw $a1,0x14c($sp)
/* f10a3b4: 04410005 */ bgez $v0,.NB0f10a3cc
/* f10a3b8: afa60150 */ sw $a2,0x150($sp)
/* f10a3bc: 8e8e029c */ lw $t6,0x29c($s4)
/* f10a3c0: 24110004 */ addiu $s1,$zero,0x4
/* f10a3c4: 05c00003 */ bltz $t6,.NB0f10a3d4
/* f10a3c8: 00000000 */ sll $zero,$zero,0x0
.NB0f10a3cc:
/* f10a3cc: 10000001 */ beqz $zero,.NB0f10a3d4
/* f10a3d0: 00008825 */ or $s1,$zero,$zero
.NB0f10a3d4:
/* f10a3d4: 04410005 */ bgez $v0,.NB0f10a3ec
/* f10a3d8: 24120001 */ addiu $s2,$zero,0x1
/* f10a3dc: 8e8f029c */ lw $t7,0x29c($s4)
/* f10a3e0: 24130005 */ addiu $s3,$zero,0x5
/* f10a3e4: 05e00003 */ bltz $t7,.NB0f10a3f4
/* f10a3e8: 00000000 */ sll $zero,$zero,0x0
.NB0f10a3ec:
/* f10a3ec: 10000001 */ beqz $zero,.NB0f10a3f4
/* f10a3f0: 24130001 */ addiu $s3,$zero,0x1
.NB0f10a3f4:
/* f10a3f4: 3c018007 */ lui $at,0x8007
/* f10a3f8: ac327f70 */ sw $s2,0x7f70($at)
/* f10a3fc: 0fc5339c */ jal 0xf14ce70
/* f10a400: 02202025 */ or $a0,$s1,$zero
/* f10a404: 3c10800a */ lui $s0,0x800a
/* f10a408: 26106704 */ addiu $s0,$s0,0x6704
/* f10a40c: 02002825 */ or $a1,$s0,$zero
/* f10a410: 00002025 */ or $a0,$zero,$zero
/* f10a414: 0fc460eb */ jal 0xf1183ac
/* f10a418: 00403025 */ or $a2,$v0,$zero
/* f10a41c: 0fc533a5 */ jal 0xf14ce94
/* f10a420: 02202025 */ or $a0,$s1,$zero
/* f10a424: 02402025 */ or $a0,$s2,$zero
/* f10a428: 02002825 */ or $a1,$s0,$zero
/* f10a42c: 0fc460eb */ jal 0xf1183ac
/* f10a430: 00403025 */ or $a2,$v0,$zero
/* f10a434: 0fc533b7 */ jal 0xf14cedc
/* f10a438: 02202025 */ or $a0,$s1,$zero
/* f10a43c: 24040002 */ addiu $a0,$zero,0x2
/* f10a440: 02002825 */ or $a1,$s0,$zero
/* f10a444: 0fc460eb */ jal 0xf1183ac
/* f10a448: 00403025 */ or $a2,$v0,$zero
/* f10a44c: 0fc533c0 */ jal 0xf14cf00
/* f10a450: 02202025 */ or $a0,$s1,$zero
/* f10a454: 24040003 */ addiu $a0,$zero,0x3
/* f10a458: 02002825 */ or $a1,$s0,$zero
/* f10a45c: 0fc460eb */ jal 0xf1183ac
/* f10a460: 00403025 */ or $a2,$v0,$zero
/* f10a464: 0fc533ae */ jal 0xf14ceb8
/* f10a468: 02202025 */ or $a0,$s1,$zero
/* f10a46c: 24040004 */ addiu $a0,$zero,0x4
/* f10a470: 02002825 */ or $a1,$s0,$zero
/* f10a474: 0fc460eb */ jal 0xf1183ac
/* f10a478: 00403025 */ or $a2,$v0,$zero
/* f10a47c: 0fc533c9 */ jal 0xf14cf24
/* f10a480: 02202025 */ or $a0,$s1,$zero
/* f10a484: 24040005 */ addiu $a0,$zero,0x5
/* f10a488: 02002825 */ or $a1,$s0,$zero
/* f10a48c: 0fc460eb */ jal 0xf1183ac
/* f10a490: 00403025 */ or $a2,$v0,$zero
/* f10a494: 0fc53405 */ jal 0xf14d014
/* f10a498: 02202025 */ or $a0,$s1,$zero
/* f10a49c: 24040009 */ addiu $a0,$zero,0x9
/* f10a4a0: 02002825 */ or $a1,$s0,$zero
/* f10a4a4: 0fc460eb */ jal 0xf1183ac
/* f10a4a8: 00403025 */ or $a2,$v0,$zero
/* f10a4ac: 0fc533d2 */ jal 0xf14cf48
/* f10a4b0: 02202025 */ or $a0,$s1,$zero
/* f10a4b4: 2404000a */ addiu $a0,$zero,0xa
/* f10a4b8: 02002825 */ or $a1,$s0,$zero
/* f10a4bc: 0fc460eb */ jal 0xf1183ac
/* f10a4c0: 00403025 */ or $a2,$v0,$zero
/* f10a4c4: 0fc533db */ jal 0xf14cf6c
/* f10a4c8: 02202025 */ or $a0,$s1,$zero
/* f10a4cc: 24040015 */ addiu $a0,$zero,0x15
/* f10a4d0: 02002825 */ or $a1,$s0,$zero
/* f10a4d4: 0fc460eb */ jal 0xf1183ac
/* f10a4d8: 00403025 */ or $a2,$v0,$zero
/* f10a4dc: 0fc533e4 */ jal 0xf14cf90
/* f10a4e0: 02202025 */ or $a0,$s1,$zero
/* f10a4e4: 24040017 */ addiu $a0,$zero,0x17
/* f10a4e8: 02002825 */ or $a1,$s0,$zero
/* f10a4ec: 0fc460eb */ jal 0xf1183ac
/* f10a4f0: 00403025 */ or $a2,$v0,$zero
/* f10a4f4: 0fc533f6 */ jal 0xf14cfd8
/* f10a4f8: 02202025 */ or $a0,$s1,$zero
/* f10a4fc: 2404001a */ addiu $a0,$zero,0x1a
/* f10a500: 02002825 */ or $a1,$s0,$zero
/* f10a504: 0fc460eb */ jal 0xf1183ac
/* f10a508: 00403025 */ or $a2,$v0,$zero
/* f10a50c: 0fc533ed */ jal 0xf14cfb4
/* f10a510: 02202025 */ or $a0,$s1,$zero
/* f10a514: 24040020 */ addiu $a0,$zero,0x20
/* f10a518: 02002825 */ or $a1,$s0,$zero
/* f10a51c: 0fc460eb */ jal 0xf1183ac
/* f10a520: 00403025 */ or $a2,$v0,$zero
/* f10a524: 0fc5339c */ jal 0xf14ce70
/* f10a528: 02602025 */ or $a0,$s3,$zero
/* f10a52c: 2404000c */ addiu $a0,$zero,0xc
/* f10a530: 02002825 */ or $a1,$s0,$zero
/* f10a534: 0fc460eb */ jal 0xf1183ac
/* f10a538: 00403025 */ or $a2,$v0,$zero
/* f10a53c: 0fc533a5 */ jal 0xf14ce94
/* f10a540: 02602025 */ or $a0,$s3,$zero
/* f10a544: 2404000d */ addiu $a0,$zero,0xd
/* f10a548: 02002825 */ or $a1,$s0,$zero
/* f10a54c: 0fc460eb */ jal 0xf1183ac
/* f10a550: 00403025 */ or $a2,$v0,$zero
/* f10a554: 0fc533b7 */ jal 0xf14cedc
/* f10a558: 02602025 */ or $a0,$s3,$zero
/* f10a55c: 2404000e */ addiu $a0,$zero,0xe
/* f10a560: 02002825 */ or $a1,$s0,$zero
/* f10a564: 0fc460eb */ jal 0xf1183ac
/* f10a568: 00403025 */ or $a2,$v0,$zero
/* f10a56c: 0fc533c0 */ jal 0xf14cf00
/* f10a570: 02602025 */ or $a0,$s3,$zero
/* f10a574: 2404000f */ addiu $a0,$zero,0xf
/* f10a578: 02002825 */ or $a1,$s0,$zero
/* f10a57c: 0fc460eb */ jal 0xf1183ac
/* f10a580: 00403025 */ or $a2,$v0,$zero
/* f10a584: 0fc533ae */ jal 0xf14ceb8
/* f10a588: 02602025 */ or $a0,$s3,$zero
/* f10a58c: 24040010 */ addiu $a0,$zero,0x10
/* f10a590: 02002825 */ or $a1,$s0,$zero
/* f10a594: 0fc460eb */ jal 0xf1183ac
/* f10a598: 00403025 */ or $a2,$v0,$zero
/* f10a59c: 0fc533c9 */ jal 0xf14cf24
/* f10a5a0: 02602025 */ or $a0,$s3,$zero
/* f10a5a4: 24040011 */ addiu $a0,$zero,0x11
/* f10a5a8: 02002825 */ or $a1,$s0,$zero
/* f10a5ac: 0fc460eb */ jal 0xf1183ac
/* f10a5b0: 00403025 */ or $a2,$v0,$zero
/* f10a5b4: 0fc53405 */ jal 0xf14d014
/* f10a5b8: 02602025 */ or $a0,$s3,$zero
/* f10a5bc: 24040012 */ addiu $a0,$zero,0x12
/* f10a5c0: 02002825 */ or $a1,$s0,$zero
/* f10a5c4: 0fc460eb */ jal 0xf1183ac
/* f10a5c8: 00403025 */ or $a2,$v0,$zero
/* f10a5cc: 0fc533d2 */ jal 0xf14cf48
/* f10a5d0: 02602025 */ or $a0,$s3,$zero
/* f10a5d4: 24040013 */ addiu $a0,$zero,0x13
/* f10a5d8: 02002825 */ or $a1,$s0,$zero
/* f10a5dc: 0fc460eb */ jal 0xf1183ac
/* f10a5e0: 00403025 */ or $a2,$v0,$zero
/* f10a5e4: 0fc533db */ jal 0xf14cf6c
/* f10a5e8: 02602025 */ or $a0,$s3,$zero
/* f10a5ec: 24040016 */ addiu $a0,$zero,0x16
/* f10a5f0: 02002825 */ or $a1,$s0,$zero
/* f10a5f4: 0fc460eb */ jal 0xf1183ac
/* f10a5f8: 00403025 */ or $a2,$v0,$zero
/* f10a5fc: 0fc533e4 */ jal 0xf14cf90
/* f10a600: 02602025 */ or $a0,$s3,$zero
/* f10a604: 24040018 */ addiu $a0,$zero,0x18
/* f10a608: 02002825 */ or $a1,$s0,$zero
/* f10a60c: 0fc460eb */ jal 0xf1183ac
/* f10a610: 00403025 */ or $a2,$v0,$zero
/* f10a614: 0fc533f6 */ jal 0xf14cfd8
/* f10a618: 02602025 */ or $a0,$s3,$zero
/* f10a61c: 2404001b */ addiu $a0,$zero,0x1b
/* f10a620: 02002825 */ or $a1,$s0,$zero
/* f10a624: 0fc460eb */ jal 0xf1183ac
/* f10a628: 00403025 */ or $a2,$v0,$zero
/* f10a62c: 0fc533ed */ jal 0xf14cfb4
/* f10a630: 02602025 */ or $a0,$s3,$zero
/* f10a634: 24040021 */ addiu $a0,$zero,0x21
/* f10a638: 02002825 */ or $a1,$s0,$zero
/* f10a63c: 0fc460eb */ jal 0xf1183ac
/* f10a640: 00403025 */ or $a2,$v0,$zero
/* f10a644: 0fc53588 */ jal 0xf14d620
/* f10a648: 00000000 */ sll $zero,$zero,0x0
/* f10a64c: 24040019 */ addiu $a0,$zero,0x19
/* f10a650: 02002825 */ or $a1,$s0,$zero
/* f10a654: 0fc460eb */ jal 0xf1183ac
/* f10a658: 00403025 */ or $a2,$v0,$zero
/* f10a65c: 0fc53582 */ jal 0xf14d608
/* f10a660: 00000000 */ sll $zero,$zero,0x0
/* f10a664: 24040007 */ addiu $a0,$zero,0x7
/* f10a668: 02002825 */ or $a1,$s0,$zero
/* f10a66c: 0fc460eb */ jal 0xf1183ac
/* f10a670: 00403025 */ or $a2,$v0,$zero
/* f10a674: 0fc5351c */ jal 0xf14d470
/* f10a678: 00000000 */ sll $zero,$zero,0x0
/* f10a67c: 00523026 */ xor $a2,$v0,$s2
/* f10a680: 2cc60001 */ sltiu $a2,$a2,0x1
/* f10a684: 24040006 */ addiu $a0,$zero,0x6
/* f10a688: 0fc460eb */ jal 0xf1183ac
/* f10a68c: 02002825 */ or $a1,$s0,$zero
/* f10a690: 0fc5351c */ jal 0xf14d470
/* f10a694: 00000000 */ sll $zero,$zero,0x0
/* f10a698: 24150002 */ addiu $s5,$zero,0x2
/* f10a69c: 00553026 */ xor $a2,$v0,$s5
/* f10a6a0: 2cc60001 */ sltiu $a2,$a2,0x1
/* f10a6a4: 24040008 */ addiu $a0,$zero,0x8
/* f10a6a8: 0fc460eb */ jal 0xf1183ac
/* f10a6ac: 02002825 */ or $a1,$s0,$zero
/* f10a6b0: 3c188007 */ lui $t8,0x8007
/* f10a6b4: 8f182d88 */ lw $t8,0x2d88($t8)
/* f10a6b8: 24040022 */ addiu $a0,$zero,0x22
/* f10a6bc: 02002825 */ or $a1,$s0,$zero
/* f10a6c0: 02583026 */ xor $a2,$s2,$t8
/* f10a6c4: 0fc460eb */ jal 0xf1183ac
/* f10a6c8: 2cc60001 */ sltiu $a2,$a2,0x1
/* f10a6cc: 0fc533ff */ jal 0xf14cffc
/* f10a6d0: 00000000 */ sll $zero,$zero,0x0
/* f10a6d4: 2404000b */ addiu $a0,$zero,0xb
/* f10a6d8: 02002825 */ or $a1,$s0,$zero
/* f10a6dc: 0fc460eb */ jal 0xf1183ac
/* f10a6e0: 00403025 */ or $a2,$v0,$zero
/* f10a6e4: 0fc53402 */ jal 0xf14d008
/* f10a6e8: 00000000 */ sll $zero,$zero,0x0
/* f10a6ec: 24040014 */ addiu $a0,$zero,0x14
/* f10a6f0: 02002825 */ or $a1,$s0,$zero
/* f10a6f4: 0fc460eb */ jal 0xf1183ac
/* f10a6f8: 00403025 */ or $a2,$v0,$zero
/* f10a6fc: 24040040 */ addiu $a0,$zero,0x40
/* f10a700: 02002825 */ or $a1,$s0,$zero
/* f10a704: 0fc460eb */ jal 0xf1183ac
/* f10a708: 928604e3 */ lbu $a2,0x4e3($s4)
/* f10a70c: 0fc5351c */ jal 0xf14d470
/* f10a710: 00000000 */ sll $zero,$zero,0x0
/* f10a714: 50400002 */ beqzl $v0,.NB0f10a720
/* f10a718: 8e990450 */ lw $t9,0x450($s4)
/* f10a71c: 8e990450 */ lw $t9,0x450($s4)
.NB0f10a720:
/* f10a720: 2404001f */ addiu $a0,$zero,0x1f
/* f10a724: 02002825 */ or $a1,$s0,$zero
/* f10a728: 02593026 */ xor $a2,$s2,$t9
/* f10a72c: 0fc460eb */ jal 0xf1183ac
/* f10a730: 2cc60001 */ sltiu $a2,$a2,0x1
/* f10a734: 8e880448 */ lw $t0,0x448($s4)
/* f10a738: 2404001c */ addiu $a0,$zero,0x1c
/* f10a73c: 02002825 */ or $a1,$s0,$zero
/* f10a740: 02483026 */ xor $a2,$s2,$t0
/* f10a744: 0fc460eb */ jal 0xf1183ac
/* f10a748: 2cc60001 */ sltiu $a2,$a2,0x1
/* f10a74c: 8e890454 */ lw $t1,0x454($s4)
/* f10a750: 2404001d */ addiu $a0,$zero,0x1d
/* f10a754: 02002825 */ or $a1,$s0,$zero
/* f10a758: 02493026 */ xor $a2,$s2,$t1
/* f10a75c: 0fc460eb */ jal 0xf1183ac
/* f10a760: 2cc60001 */ sltiu $a2,$a2,0x1
/* f10a764: 8e8a044c */ lw $t2,0x44c($s4)
/* f10a768: 2404001e */ addiu $a0,$zero,0x1e
/* f10a76c: 02002825 */ or $a1,$s0,$zero
/* f10a770: 024a3026 */ xor $a2,$s2,$t2
/* f10a774: 0fc460eb */ jal 0xf1183ac
/* f10a778: 2cc60001 */ sltiu $a2,$a2,0x1
/* f10a77c: 8fab0148 */ lw $t3,0x148($sp)
/* f10a780: 27b4004c */ addiu $s4,$sp,0x4c
/* f10a784: 2402ffff */ addiu $v0,$zero,-1
/* f10a788: 056000ae */ bltz $t3,.NB0f10aa44
/* f10a78c: 00000000 */ sll $zero,$zero,0x0
/* f10a790: 0fc34ad1 */ jal 0xf0d2b44
/* f10a794: 02802025 */ or $a0,$s4,$zero
/* f10a798: 3c12800a */ lui $s2,0x800a
/* f10a79c: 265266f0 */ addiu $s2,$s2,0x66f0
/* f10a7a0: 02402825 */ or $a1,$s2,$zero
/* f10a7a4: 0fc34b23 */ jal 0xf0d2c8c
/* f10a7a8: 02802025 */ or $a0,$s4,$zero
/* f10a7ac: 9245000b */ lbu $a1,0xb($s2)
/* f10a7b0: 02802025 */ or $a0,$s4,$zero
/* f10a7b4: 24060005 */ addiu $a2,$zero,0x5
/* f10a7b8: 000560c2 */ srl $t4,$a1,0x3
/* f10a7bc: 0fc34a9e */ jal 0xf0d2a78
/* f10a7c0: 01802825 */ or $a1,$t4,$zero
/* f10a7c4: 02802025 */ or $a0,$s4,$zero
/* f10a7c8: 8e450010 */ lw $a1,0x10($s2)
/* f10a7cc: 0fc34a9e */ jal 0xf0d2a78
/* f10a7d0: 24060020 */ addiu $a2,$zero,0x20
/* f10a7d4: 8e450008 */ lw $a1,0x8($s2)
/* f10a7d8: 02802025 */ or $a0,$s4,$zero
/* f10a7dc: 24060002 */ addiu $a2,$zero,0x2
/* f10a7e0: 30ad0007 */ andi $t5,$a1,0x7
/* f10a7e4: 0fc34a9e */ jal 0xf0d2a78
/* f10a7e8: 01a02825 */ or $a1,$t5,$zero
/* f10a7ec: 02802025 */ or $a0,$s4,$zero
/* f10a7f0: 9245000c */ lbu $a1,0xc($s2)
/* f10a7f4: 0fc34a9e */ jal 0xf0d2a78
/* f10a7f8: 24060005 */ addiu $a2,$zero,0x5
/* f10a7fc: 3c078006 */ lui $a3,0x8006
/* f10a800: 94e7f6e8 */ lhu $a3,-0x918($a3)
/* f10a804: 02802025 */ or $a0,$s4,$zero
/* f10a808: 24060006 */ addiu $a2,$zero,0x6
/* f10a80c: 000771c3 */ sra $t6,$a3,0x7
/* f10a810: 0fc34a9e */ jal 0xf0d2a78
/* f10a814: 000e2882 */ srl $a1,$t6,0x2
/* f10a818: 0fc5358f */ jal 0xf14d63c
/* f10a81c: 00000000 */ sll $zero,$zero,0x0
/* f10a820: 000229c3 */ sra $a1,$v0,0x7
/* f10a824: 00057882 */ srl $t7,$a1,0x2
/* f10a828: 01e02825 */ or $a1,$t7,$zero
/* f10a82c: 02802025 */ or $a0,$s4,$zero
/* f10a830: 0fc34a9e */ jal 0xf0d2a78
/* f10a834: 24060006 */ addiu $a2,$zero,0x6
/* f10a838: 3c078006 */ lui $a3,0x8006
/* f10a83c: 8ce5f6ec */ lw $a1,-0x914($a3)
/* f10a840: 02802025 */ or $a0,$s4,$zero
/* f10a844: 0fc34a9e */ jal 0xf0d2a78
/* f10a848: 24060002 */ addiu $a2,$zero,0x2
/* f10a84c: 0fc53380 */ jal 0xf14ce00
/* f10a850: 02202025 */ or $a0,$s1,$zero
/* f10a854: 02802025 */ or $a0,$s4,$zero
/* f10a858: 00402825 */ or $a1,$v0,$zero
/* f10a85c: 0fc34a9e */ jal 0xf0d2a78
/* f10a860: 24060003 */ addiu $a2,$zero,0x3
/* f10a864: 0fc53380 */ jal 0xf14ce00
/* f10a868: 02602025 */ or $a0,$s3,$zero
/* f10a86c: 02802025 */ or $a0,$s4,$zero
/* f10a870: 00402825 */ or $a1,$v0,$zero
/* f10a874: 0fc34a9e */ jal 0xf0d2a78
/* f10a878: 24060003 */ addiu $a2,$zero,0x3
/* f10a87c: 3c10800a */ lui $s0,0x800a
/* f10a880: 3c11800a */ lui $s1,0x800a
/* f10a884: 263166fa */ addiu $s1,$s1,0x66fa
/* f10a888: 261066f0 */ addiu $s0,$s0,0x66f0
/* f10a88c: 02802025 */ or $a0,$s4,$zero
.NB0f10a890:
/* f10a890: 92050014 */ lbu $a1,0x14($s0)
/* f10a894: 0fc34a9e */ jal 0xf0d2a78
/* f10a898: 24060008 */ addiu $a2,$zero,0x8
/* f10a89c: 26100001 */ addiu $s0,$s0,0x1
/* f10a8a0: 0211082b */ sltu $at,$s0,$s1
/* f10a8a4: 5420fffa */ bnezl $at,.NB0f10a890
/* f10a8a8: 02802025 */ or $a0,$s4,$zero
/* f10a8ac: 02802025 */ or $a0,$s4,$zero
/* f10a8b0: 9645001e */ lhu $a1,0x1e($s2)
/* f10a8b4: 0fc34a9e */ jal 0xf0d2a78
/* f10a8b8: 24060010 */ addiu $a2,$zero,0x10
/* f10a8bc: 3c15800a */ lui $s5,0x800a
/* f10a8c0: 26b566f0 */ addiu $s5,$s5,0x66f0
/* f10a8c4: 24130006 */ addiu $s3,$zero,0x6
/* f10a8c8: 00008825 */ or $s1,$zero,$zero
.NB0f10a8cc:
/* f10a8cc: 02a09025 */ or $s2,$s5,$zero
.NB0f10a8d0:
/* f10a8d0: 02802025 */ or $a0,$s4,$zero
/* f10a8d4: 96450020 */ lhu $a1,0x20($s2)
/* f10a8d8: 0fc34a9e */ jal 0xf0d2a78
/* f10a8dc: 2406000c */ addiu $a2,$zero,0xc
/* f10a8e0: 26310002 */ addiu $s1,$s1,0x2
/* f10a8e4: 1633fffa */ bne $s1,$s3,.NB0f10a8d0
/* f10a8e8: 26520002 */ addiu $s2,$s2,0x2
/* f10a8ec: 3c18800a */ lui $t8,0x800a
/* f10a8f0: 2718676e */ addiu $t8,$t8,0x676e
/* f10a8f4: 26b50006 */ addiu $s5,$s5,0x6
/* f10a8f8: 02b8082b */ sltu $at,$s5,$t8
/* f10a8fc: 5420fff3 */ bnezl $at,.NB0f10a8cc
/* f10a900: 00008825 */ or $s1,$zero,$zero
/* f10a904: 00008825 */ or $s1,$zero,$zero
/* f10a908: 24120005 */ addiu $s2,$zero,0x5
/* f10a90c: 24100001 */ addiu $s0,$zero,0x1
.NB0f10a910:
/* f10a910: 02202025 */ or $a0,$s1,$zero
.NB0f10a914:
/* f10a914: 0fc65912 */ jal 0xf196448
/* f10a918: 02002825 */ or $a1,$s0,$zero
/* f10a91c: 02802025 */ or $a0,$s4,$zero
/* f10a920: 00402825 */ or $a1,$v0,$zero
/* f10a924: 0fc34a9e */ jal 0xf0d2a78
/* f10a928: 24060001 */ addiu $a2,$zero,0x1
/* f10a92c: 26100001 */ addiu $s0,$s0,0x1
/* f10a930: 5612fff8 */ bnel $s0,$s2,.NB0f10a914
/* f10a934: 02202025 */ or $a0,$s1,$zero
/* f10a938: 26310001 */ addiu $s1,$s1,0x1
/* f10a93c: 2a21001e */ slti $at,$s1,0x1e
/* f10a940: 5420fff3 */ bnezl $at,.NB0f10a910
/* f10a944: 24100001 */ addiu $s0,$zero,0x1
/* f10a948: 3c10800a */ lui $s0,0x800a
/* f10a94c: 3c11800a */ lui $s1,0x800a
/* f10a950: 263166fc */ addiu $s1,$s1,0x66fc
/* f10a954: 261066f0 */ addiu $s0,$s0,0x66f0
/* f10a958: 02802025 */ or $a0,$s4,$zero
.NB0f10a95c:
/* f10a95c: 8e0500a0 */ lw $a1,0xa0($s0)
/* f10a960: 0fc34a9e */ jal 0xf0d2a78
/* f10a964: 24060015 */ addiu $a2,$zero,0x15
/* f10a968: 26100004 */ addiu $s0,$s0,0x4
/* f10a96c: 0211082b */ sltu $at,$s0,$s1
/* f10a970: 5420fffa */ bnezl $at,.NB0f10a95c
/* f10a974: 02802025 */ or $a0,$s4,$zero
/* f10a978: 3c10800a */ lui $s0,0x800a
/* f10a97c: 3c12800a */ lui $s2,0x800a
/* f10a980: 3c11800a */ lui $s1,0x800a
/* f10a984: 263166f8 */ addiu $s1,$s1,0x66f8
/* f10a988: 265266f9 */ addiu $s2,$s2,0x66f9
/* f10a98c: 261066f0 */ addiu $s0,$s0,0x66f0
.NB0f10a990:
/* f10a990: 16110003 */ bne $s0,$s1,.NB0f10a9a0
/* f10a994: 02802025 */ or $a0,$s4,$zero
/* f10a998: 10000002 */ beqz $zero,.NB0f10a9a4
/* f10a99c: 24060002 */ addiu $a2,$zero,0x2
.NB0f10a9a0:
/* f10a9a0: 24060008 */ addiu $a2,$zero,0x8
.NB0f10a9a4:
/* f10a9a4: 0fc34a9e */ jal 0xf0d2a78
/* f10a9a8: 920500ac */ lbu $a1,0xac($s0)
/* f10a9ac: 26100001 */ addiu $s0,$s0,0x1
/* f10a9b0: 0212082b */ sltu $at,$s0,$s2
/* f10a9b4: 1420fff6 */ bnez $at,.NB0f10a990
/* f10a9b8: 00000000 */ sll $zero,$zero,0x0
/* f10a9bc: 3c10800a */ lui $s0,0x800a
/* f10a9c0: 3c11800a */ lui $s1,0x800a
/* f10a9c4: 263166f4 */ addiu $s1,$s1,0x66f4
/* f10a9c8: 261066f0 */ addiu $s0,$s0,0x66f0
/* f10a9cc: 02802025 */ or $a0,$s4,$zero
.NB0f10a9d0:
/* f10a9d0: 920500b5 */ lbu $a1,0xb5($s0)
/* f10a9d4: 0fc34a9e */ jal 0xf0d2a78
/* f10a9d8: 24060008 */ addiu $a2,$zero,0x8
/* f10a9dc: 26100001 */ addiu $s0,$s0,0x1
/* f10a9e0: 5611fffb */ bnel $s0,$s1,.NB0f10a9d0
/* f10a9e4: 02802025 */ or $a0,$s4,$zero
/* f10a9e8: 0fc34aeb */ jal 0xf0d2bac
/* f10a9ec: 02802025 */ or $a0,$s4,$zero
/* f10a9f0: 27b90140 */ addiu $t9,$sp,0x140
/* f10a9f4: afb90010 */ sw $t9,0x10($sp)
/* f10a9f8: 83a4014b */ lb $a0,0x14b($sp)
/* f10a9fc: 8fa5014c */ lw $a1,0x14c($sp)
/* f10aa00: 24060080 */ addiu $a2,$zero,0x80
/* f10aa04: 27a70050 */ addiu $a3,$sp,0x50
/* f10aa08: 0fc442fb */ jal 0xf110bec
/* f10aa0c: afa00014 */ sw $zero,0x14($sp)
/* f10aa10: 3c01800a */ lui $at,0x800a
/* f10aa14: 14400009 */ bnez $v0,.NB0f10aa3c
/* f10aa18: ac2266e8 */ sw $v0,0x66e8($at)
/* f10aa1c: 8fa80140 */ lw $t0,0x140($sp)
/* f10aa20: 97a90152 */ lhu $t1,0x152($sp)
/* f10aa24: 3c03800a */ lui $v1,0x800a
/* f10aa28: 246367b0 */ addiu $v1,$v1,0x67b0
/* f10aa2c: 00001025 */ or $v0,$zero,$zero
/* f10aa30: ac680000 */ sw $t0,0x0($v1)
/* f10aa34: 10000003 */ beqz $zero,.NB0f10aa44
/* f10aa38: a4690004 */ sh $t1,0x4($v1)
.NB0f10aa3c:
/* f10aa3c: 10000001 */ beqz $zero,.NB0f10aa44
/* f10aa40: 2402ffff */ addiu $v0,$zero,-1
.NB0f10aa44:
/* f10aa44: 8fbf0034 */ lw $ra,0x34($sp)
/* f10aa48: 8fb0001c */ lw $s0,0x1c($sp)
/* f10aa4c: 8fb10020 */ lw $s1,0x20($sp)
/* f10aa50: 8fb20024 */ lw $s2,0x24($sp)
/* f10aa54: 8fb30028 */ lw $s3,0x28($sp)
/* f10aa58: 8fb4002c */ lw $s4,0x2c($sp)
/* f10aa5c: 8fb50030 */ lw $s5,0x30($sp)
/* f10aa60: 03e00008 */ jr $ra
/* f10aa64: 27bd0148 */ addiu $sp,$sp,0x148
);
#endif
void savefileGetOverview(char *arg0, char *name, u8 *stage, u8 *difficulty, u32 *time)
@@ -2191,6 +2907,12 @@ void savefileGetOverview(char *arg0, char *name, u8 *stage, u8 *difficulty, u32
func0f0d54e4(sp18, name, 0);
*stage = savefileGetInteger(sp18, 5);
#if VERSION >= VERSION_NTSC_1_0
*time = savefileGetInteger(sp18, 0x20);
#else
*time = (u16) savefileGetInteger(sp18, 0x20);
#endif
*difficulty = savefileGetInteger(sp18, 2);
}
+1808 -3
View File
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+10 -1
View File
@@ -497,6 +497,7 @@ char *mpMenuTextPlayerTitle(s32 arg0)
return langGet(L_MISC_185 + g_MpPlayers[g_MpPlayerNum].title);
}
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel menuhandler00178bf4
/* f178bf4: 27bdffe8 */ addiu $sp,$sp,-24
@@ -626,12 +627,16 @@ glabel menuhandler00178bf4
/* f178db4: 03e00008 */ jr $ra
/* f178db8: 00000000 */ nop
);
#endif
void mpPushPauseDialog(void)
{
u32 prevplayernum = g_MpPlayerNum;
if (g_MpSetup.paused != MPPAUSEMODE_GAMEOVER && var8005d9d0 == 0) {
#if VERSION >= VERSION_NTSC_1_0
if (g_MpSetup.paused != MPPAUSEMODE_GAMEOVER && var8005d9d0 == 0)
#endif
{
g_MpPlayerNum = g_Vars.currentplayerstats->mpindex;
if (g_Menus[g_MpPlayerNum].unk83c == 0) {
@@ -679,12 +684,14 @@ void mpPushEndscreenDialog(u32 arg0, u32 playernum)
menuPushRootDialog(&g_MpEndscreenIndGameOverMenuDialog, MENUROOT_MPENDSCREEN);
}
#if VERSION >= VERSION_NTSC_1_0
if ((g_MpPlayers[g_MpPlayerNum].options & OPTION_ASKEDSAVEPLAYER) == 0
&& g_MpPlayers[g_MpPlayerNum].unk4c.unk00 == false
&& g_MpPlayers[g_MpPlayerNum].unk4c.unk04 == 0) {
g_MpPlayers[g_MpPlayerNum].options |= OPTION_ASKEDSAVEPLAYER;
menuPushDialog(&g_MpEndscreenSavePlayerMenuDialog);
}
#endif
g_MpPlayerNum = prevplayernum;
}
@@ -749,7 +756,9 @@ struct menudialog g_MpEndscreenChallengeFailedMenuDialog = {
struct menuitem g_MpEndscreenConfirmNameMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPWEAPONS_250, 0x00000000, NULL }, // "Confirm player name:"
#if VERSION >= VERSION_NTSC_1_0
{ MENUITEMTYPE_KEYBOARD, 0, 0x00000000, 0x00000000, 0x00000000, menuhandler00178bf4 },
#endif
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+1890 -3
View File
File diff suppressed because it is too large. Load diff
+63 -8
View File
@@ -3,6 +3,7 @@
#include "game/game_0f09f0.h"
#include "game/core.h"
#include "game/music.h"
#include "game/options.h"
#include "game/game_176080.h"
#include "bss.h"
#include "lib/lib_0e9d0.h"
@@ -53,6 +54,7 @@ const char var7f1b7918[] = "MUSIC : activedeath=%d\n";
u16 musicGetVolume(void)
{
#if VERSION >= VERSION_NTSC_1_0
u32 volume;
if (g_Vars.stagenum == STAGE_CREDITS) {
@@ -66,15 +68,20 @@ u16 musicGetVolume(void)
}
return volume;
#else
return optionsGetMusicVolume();
#endif
}
void musicSetVolume(u16 volume)
{
s32 i;
#if VERSION >= VERSION_NTSC_1_0
if (volume > 0x5000) {
volume = 0x5000;
}
#endif
for (i = 0; i < ARRAYCOUNT(var800aaa38); i++) {
if (var800aaa38[i].tracktype != 0 && var800aaa38[i].tracktype != TRACKTYPE_AMBIENT) {
@@ -82,7 +89,9 @@ void musicSetVolume(u16 volume)
}
}
#if VERSION >= VERSION_NTSC_1_0
var800840ec = volume;
#endif
}
bool func0f16d0a8(s32 tracktype, s32 arg1)
@@ -186,9 +195,13 @@ void func0f16d324(void)
g_AudioXReasonDurations[i] = 0;
}
#if VERSION >= VERSION_NTSC_1_0
func0f16d430();
func0f16d3d0();
func0f16d44c();
#else
func0f16d3d0();
#endif
var800840e8 = 0;
var800840f0 = 0;
@@ -201,7 +214,10 @@ void func0f16d324(void)
void func0f16d3d0(void)
{
#if VERSION >= VERSION_NTSC_1_0
var800aa5d8[0].tracktype = TRACKTYPE_6;
#endif
var800aa5d8[0].unk12 = 4;
var800aa5d8[0].unk14 = var800840d4++;
var800aa5d8[0].unk18 = 0;
@@ -212,6 +228,7 @@ void func0f16d3d0(void)
func0001190c();
}
#if VERSION >= VERSION_NTSC_1_0
void func0f16d430(void)
{
var800840d0 = var800840e0;
@@ -229,6 +246,7 @@ void func0f16d44c(void)
var800aa5d8[0].unk18 = 0;
var800aa5d8[0].unk16 = 0;
}
#endif
#define PRIMARYTRACK() (g_TemporaryPrimaryTrack != -1 ? g_TemporaryPrimaryTrack : stageGetPrimaryTrack(g_MusicStageNum))
@@ -351,27 +369,39 @@ void musicSetStage(s32 stagenum)
void musicReset(void)
{
#if VERSION >= VERSION_NTSC_1_0
func0f16d430();
func0f16d3d0();
func0f16d44c();
#else
func0f16d3d0();
#endif
}
void func0f16da2c(void)
{
if (var800840d8 == 0 && stageGetXTrack(g_MusicStageNum) >= 0) {
musicEnd(TRACKTYPE_X);
musicEnd(TRACKTYPE_MENU);
musicEnd(TRACKTYPE_DEATH);
func0f16d2ac(TRACKTYPE_PRIMARY, 0.5, 1);
musicStartX(0);
#if VERSION >= VERSION_NTSC_1_0
if (var800840d8 == 0)
#endif
{
if (stageGetXTrack(g_MusicStageNum) >= 0) {
musicEnd(TRACKTYPE_X);
musicEnd(TRACKTYPE_MENU);
musicEnd(TRACKTYPE_DEATH);
func0f16d2ac(TRACKTYPE_PRIMARY, 0.5, 1);
musicStartX(0);
var800840d8 = 1;
var800840d8 = 1;
}
}
}
void func0f16daa4(void)
{
if (var800840d8) {
#if VERSION >= VERSION_NTSC_1_0
if (var800840d8)
#endif
{
musicEnd(TRACKTYPE_MENU);
musicEnd(TRACKTYPE_DEATH);
func0f16d2ac(TRACKTYPE_X, 1, 0);
@@ -406,7 +436,10 @@ void musicStartSoloDeath(void)
{
var800840e8 = 1;
#if VERSION >= VERSION_NTSC_1_0
func0f16d430();
#endif
musicEnd(TRACKTYPE_MENU);
musicEnd(TRACKTYPE_DEATH);
musicUnsetXReason(-1);
@@ -414,19 +447,29 @@ void musicStartSoloDeath(void)
musicEnd(TRACKTYPE_PRIMARY);
musicEnd(TRACKTYPE_AMBIENT);
musicStart(TRACKTYPE_PRIMARY, MUSIC_DEATH_SOLO, 0, VOLUME(g_SfxVolume) > musicGetVolume() ? VOLUME(g_SfxVolume) : musicGetVolume());
#if VERSION >= VERSION_NTSC_1_0
func0f16d44c();
#endif
}
void musicStartMpDeath(f32 arg0)
{
#if VERSION >= VERSION_NTSC_1_0
func0f16d430();
musicStart(TRACKTYPE_DEATH, MUSIC_DEATH_MP, arg0, VOLUME(g_SfxVolume) > musicGetVolume() ? VOLUME(g_SfxVolume) : musicGetVolume());
func0f16d44c();
#else
musicStart(TRACKTYPE_DEATH, MUSIC_DEATH_MP, arg0, VOLUME(g_SfxVolume) > musicGetVolume() ? VOLUME(g_SfxVolume) : musicGetVolume());
#endif
}
void func0f16dd14(void)
{
#if VERSION >= VERSION_NTSC_1_0
func0f16d430();
#endif
musicEnd(TRACKTYPE_MENU);
musicEnd(TRACKTYPE_DEATH);
musicEnd(TRACKTYPE_AMBIENT);
@@ -438,9 +481,13 @@ void func0f16dd14(void)
}
musicStartMpDeath(0);
var800840f0 = PALDOWN(1200);
var800840dc = 1;
#if VERSION >= VERSION_NTSC_1_0
func0f16d44c();
#endif
}
void func0f16ddb0(void)
@@ -458,7 +505,10 @@ void func0f16ddb0(void)
void musicPlayTrackIsolated(s32 tracknum)
{
#if VERSION >= VERSION_NTSC_1_0
func0f16d430();
#endif
musicEnd(TRACKTYPE_MENU);
musicEnd(TRACKTYPE_DEATH);
musicUnsetXReason(-1);
@@ -466,7 +516,10 @@ void musicPlayTrackIsolated(s32 tracknum)
musicEnd(TRACKTYPE_PRIMARY);
musicEnd(TRACKTYPE_AMBIENT);
musicStart(TRACKTYPE_PRIMARY, tracknum, 0, musicGetVolume());
#if VERSION >= VERSION_NTSC_1_0
func0f16d44c();
#endif
}
void musicPlayDefaultTracks(void)
@@ -553,9 +606,11 @@ void musicUnsetXReason(s32 reason)
g_AudioXReasonDurations[i] = 0;
}
#if VERSION >= VERSION_NTSC_1_0
if (var800840d8) {
func0f16daa4();
}
#endif
}
}
+266 -2
View File
@@ -2899,8 +2899,11 @@ void func0f0099a4(void)
for (i = 0; i < ARRAYCOUNT(g_Nbombs); i++) {
g_Nbombs[i].age240 = -1;
#if VERSION >= VERSION_NTSC_1_0
g_Nbombs[i].audiohandle20 = NULL;
g_Nbombs[i].audiohandle24 = NULL;
#endif
}
}
@@ -3125,7 +3128,7 @@ glabel var7f1a7f20
/* f009d08: 03e00008 */ jr $ra
/* f009d0c: 27bd0308 */ addiu $sp,$sp,0x308
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel nbombInflictDamage
.late_rodata
@@ -3346,6 +3349,235 @@ glabel var7f1a7f20
/* f009d08: 03e00008 */ jr $ra
/* f009d0c: 27bd0308 */ addiu $sp,$sp,0x308
);
#else
GLOBAL_ASM(
glabel nbombInflictDamage
.late_rodata
glabel var7f1a7f20
.word 0x3c23d70a
.text
/* f00968c: 27bdfce0 */ addiu $sp,$sp,-800
/* f009690: 3c0f800a */ lui $t7,0x800a
/* f009694: 8defe6f4 */ lw $t7,-0x190c($t7)
/* f009698: afb30034 */ sw $s3,0x34($sp)
/* f00969c: afb1002c */ sw $s1,0x2c($sp)
/* f0096a0: 240e001f */ addiu $t6,$zero,0x1f
/* f0096a4: 00809825 */ or $s3,$a0,$zero
/* f0096a8: afbf004c */ sw $ra,0x4c($sp)
/* f0096ac: afbe0048 */ sw $s8,0x48($sp)
/* f0096b0: afb70044 */ sw $s7,0x44($sp)
/* f0096b4: afb60040 */ sw $s6,0x40($sp)
/* f0096b8: afb5003c */ sw $s5,0x3c($sp)
/* f0096bc: afb40038 */ sw $s4,0x38($sp)
/* f0096c0: afb20030 */ sw $s2,0x30($sp)
/* f0096c4: afb00028 */ sw $s0,0x28($sp)
/* f0096c8: f7b40020 */ sdc1 $f20,0x20($sp)
/* f0096cc: 00008825 */ or $s1,$zero,$zero
/* f0096d0: a3ae0088 */ sb $t6,0x88($sp)
/* f0096d4: 19e000b3 */ blez $t7,.NB0f0099a4
/* f0096d8: a3a0008b */ sb $zero,0x8b($sp)
/* f0096dc: 8c98000c */ lw $t8,0xc($a0)
/* f0096e0: 2b01015f */ slti $at,$t8,0x15f
/* f0096e4: 502000b0 */ beqzl $at,.NB0f0099a8
/* f0096e8: 8fbf004c */ lw $ra,0x4c($sp)
/* f0096ec: c4840000 */ lwc1 $f4,0x0($a0)
/* f0096f0: c4860010 */ lwc1 $f6,0x10($a0)
/* f0096f4: 3c03800a */ lui $v1,0x800a
/* f0096f8: 8c63e97c */ lw $v1,-0x1684($v1)
/* f0096fc: 46062201 */ sub.s $f8,$f4,$f6
/* f009700: 3c14800b */ lui $s4,0x800b
/* f009704: 28610002 */ slti $at,$v1,0x2
/* f009708: 269490a8 */ addiu $s4,$s4,-28504
/* f00970c: e7a8010c */ swc1 $f8,0x10c($sp)
/* f009710: c4900010 */ lwc1 $f16,0x10($a0)
/* f009714: c48a0004 */ lwc1 $f10,0x4($a0)
/* f009718: 24100001 */ addiu $s0,$zero,0x1
/* f00971c: 2412008c */ addiu $s2,$zero,0x8c
/* f009720: 46105481 */ sub.s $f18,$f10,$f16
/* f009724: 27b50094 */ addiu $s5,$sp,0x94
/* f009728: e7b20110 */ swc1 $f18,0x110($sp)
/* f00972c: c4860010 */ lwc1 $f6,0x10($a0)
/* f009730: c4840008 */ lwc1 $f4,0x8($a0)
/* f009734: 46062201 */ sub.s $f8,$f4,$f6
/* f009738: e7a80114 */ swc1 $f8,0x114($sp)
/* f00973c: c4900010 */ lwc1 $f16,0x10($a0)
/* f009740: c48a0000 */ lwc1 $f10,0x0($a0)
/* f009744: 46105480 */ add.s $f18,$f10,$f16
/* f009748: e7b20100 */ swc1 $f18,0x100($sp)
/* f00974c: c4860010 */ lwc1 $f6,0x10($a0)
/* f009750: c4840004 */ lwc1 $f4,0x4($a0)
/* f009754: 46062200 */ add.s $f8,$f4,$f6
/* f009758: e7a80104 */ swc1 $f8,0x104($sp)
/* f00975c: c4900010 */ lwc1 $f16,0x10($a0)
/* f009760: c48a0008 */ lwc1 $f10,0x8($a0)
/* f009764: 46105480 */ add.s $f18,$f10,$f16
/* f009768: 14200037 */ bnez $at,.NB0f009848
/* f00976c: e7b20108 */ swc1 $f18,0x108($sp)
.NB0f009770:
/* f009770: 8e990000 */ lw $t9,0x0($s4)
/* f009774: c7a40100 */ lwc1 $f4,0x100($sp)
/* f009778: c7aa010c */ lwc1 $f10,0x10c($sp)
/* f00977c: 03321021 */ addu $v0,$t9,$s2
/* f009780: c4460018 */ lwc1 $f6,0x18($v0)
/* f009784: 4606203c */ c.lt.s $f4,$f6
/* f009788: 00000000 */ sll $zero,$zero,0x0
/* f00978c: 4503002b */ bc1tl .NB0f00983c
/* f009790: 26100001 */ addiu $s0,$s0,0x1
/* f009794: c4480024 */ lwc1 $f8,0x24($v0)
/* f009798: c7b00104 */ lwc1 $f16,0x104($sp)
/* f00979c: 460a403c */ c.lt.s $f8,$f10
/* f0097a0: 00000000 */ sll $zero,$zero,0x0
/* f0097a4: 45030025 */ bc1tl .NB0f00983c
/* f0097a8: 26100001 */ addiu $s0,$s0,0x1
/* f0097ac: c452001c */ lwc1 $f18,0x1c($v0)
/* f0097b0: c7a60110 */ lwc1 $f6,0x110($sp)
/* f0097b4: 4612803c */ c.lt.s $f16,$f18
/* f0097b8: 00000000 */ sll $zero,$zero,0x0
/* f0097bc: 4503001f */ bc1tl .NB0f00983c
/* f0097c0: 26100001 */ addiu $s0,$s0,0x1
/* f0097c4: c4440028 */ lwc1 $f4,0x28($v0)
/* f0097c8: c7a80108 */ lwc1 $f8,0x108($sp)
/* f0097cc: 4606203c */ c.lt.s $f4,$f6
/* f0097d0: 00000000 */ sll $zero,$zero,0x0
/* f0097d4: 45030019 */ bc1tl .NB0f00983c
/* f0097d8: 26100001 */ addiu $s0,$s0,0x1
/* f0097dc: c44a0020 */ lwc1 $f10,0x20($v0)
/* f0097e0: c7b20114 */ lwc1 $f18,0x114($sp)
/* f0097e4: 460a403c */ c.lt.s $f8,$f10
/* f0097e8: 00000000 */ sll $zero,$zero,0x0
/* f0097ec: 45030013 */ bc1tl .NB0f00983c
/* f0097f0: 26100001 */ addiu $s0,$s0,0x1
/* f0097f4: c450002c */ lwc1 $f16,0x2c($v0)
/* f0097f8: 2a210034 */ slti $at,$s1,0x34
/* f0097fc: 4612803c */ c.lt.s $f16,$f18
/* f009800: 00000000 */ sll $zero,$zero,0x0
/* f009804: 4503000d */ bc1tl .NB0f00983c
/* f009808: 26100001 */ addiu $s0,$s0,0x1
/* f00980c: 1020000a */ beqz $at,.NB0f009838
/* f009810: 00114040 */ sll $t0,$s1,0x1
/* f009814: 02a84821 */ addu $t1,$s5,$t0
/* f009818: a5300000 */ sh $s0,0x0($t1)
/* f00981c: 26310001 */ addiu $s1,$s1,0x1
/* f009820: 02002025 */ or $a0,$s0,$zero
/* f009824: 2405ffda */ addiu $a1,$zero,-38
/* f009828: 0fc01035 */ jal 0xf0040d4
/* f00982c: 2406ff4c */ addiu $a2,$zero,-180
/* f009830: 3c03800a */ lui $v1,0x800a
/* f009834: 8c63e97c */ lw $v1,-0x1684($v1)
.NB0f009838:
/* f009838: 26100001 */ addiu $s0,$s0,0x1
.NB0f00983c:
/* f00983c: 0203082a */ slt $at,$s0,$v1
/* f009840: 1420ffcb */ bnez $at,.NB0f009770
/* f009844: 2652008c */ addiu $s2,$s2,0x8c
.NB0f009848:
/* f009848: 27a40094 */ addiu $a0,$sp,0x94
/* f00984c: 00115840 */ sll $t3,$s1,0x1
/* f009850: 008b6021 */ addu $t4,$a0,$t3
/* f009854: 240affff */ addiu $t2,$zero,-1
/* f009858: 27b00118 */ addiu $s0,$sp,0x118
/* f00985c: a58a0000 */ sh $t2,0x0($t4)
/* f009860: 02002825 */ or $a1,$s0,$zero
/* f009864: 0fc1947a */ jal 0xf0651e8
/* f009868: 24060100 */ addiu $a2,$zero,0x100
/* f00986c: 87ad0118 */ lh $t5,0x118($sp)
/* f009870: 02009025 */ or $s2,$s0,$zero
/* f009874: 27ae0118 */ addiu $t6,$sp,0x118
/* f009878: 05a0004a */ bltz $t5,.NB0f0099a4
/* f00987c: 3c017f1a */ lui $at,0x7f1a
/* f009880: 3c1e8006 */ lui $s8,0x8006
/* f009884: 27de3bf8 */ addiu $s8,$s8,0x3bf8
/* f009888: 85c20000 */ lh $v0,0x0($t6)
/* f00988c: c4341bc0 */ lwc1 $f20,0x1bc0($at)
/* f009890: 24170006 */ addiu $s7,$zero,0x6
/* f009894: 24160003 */ addiu $s6,$zero,0x3
/* f009898: 24150048 */ addiu $s5,$zero,0x48
/* f00989c: 27b40064 */ addiu $s4,$sp,0x64
.NB0f0098a0:
/* f0098a0: 00550019 */ multu $v0,$s5
/* f0098a4: 3c18800a */ lui $t8,0x800a
/* f0098a8: 8f18e9f8 */ lw $t8,-0x1608($t8)
/* f0098ac: 00007812 */ mflo $t7
/* f0098b0: 01f88821 */ addu $s1,$t7,$t8
/* f0098b4: 86390002 */ lh $t9,0x2($s1)
/* f0098b8: 57200037 */ bnezl $t9,.NB0f009998
/* f0098bc: 86420002 */ lh $v0,0x2($s2)
/* f0098c0: 92220000 */ lbu $v0,0x0($s1)
/* f0098c4: 52c20004 */ beql $s6,$v0,.NB0f0098d8
/* f0098c8: c6240008 */ lwc1 $f4,0x8($s1)
/* f0098cc: 56e20032 */ bnel $s7,$v0,.NB0f009998
/* f0098d0: 86420002 */ lh $v0,0x2($s2)
/* f0098d4: c6240008 */ lwc1 $f4,0x8($s1)
.NB0f0098d8:
/* f0098d8: c6660000 */ lwc1 $f6,0x0($s3)
/* f0098dc: c628000c */ lwc1 $f8,0xc($s1)
/* f0098e0: c66a0004 */ lwc1 $f10,0x4($s3)
/* f0098e4: 46062001 */ sub.s $f0,$f4,$f6
/* f0098e8: c6300010 */ lwc1 $f16,0x10($s1)
/* f0098ec: c6720008 */ lwc1 $f18,0x8($s3)
/* f0098f0: 460a4081 */ sub.s $f2,$f8,$f10
/* f0098f4: 46000102 */ mul.s $f4,$f0,$f0
/* f0098f8: 46128381 */ sub.s $f14,$f16,$f18
/* f0098fc: 46021182 */ mul.s $f6,$f2,$f2
/* f009900: 46062200 */ add.s $f8,$f4,$f6
/* f009904: 460e7282 */ mul.s $f10,$f14,$f14
/* f009908: 0c012e84 */ jal 0x4ba10
/* f00990c: 460a4300 */ add.s $f12,$f8,$f10
/* f009910: c6700010 */ lwc1 $f16,0x10($s3)
/* f009914: 4610003c */ c.lt.s $f0,$f16
/* f009918: 00000000 */ sll $zero,$zero,0x0
/* f00991c: 4502001e */ bc1fl .NB0f009998
/* f009920: 86420002 */ lh $v0,0x2($s2)
/* f009924: 8fc10000 */ lw $at,0x0($s8)
/* f009928: 8e300004 */ lw $s0,0x4($s1)
/* f00992c: 8fc90004 */ lw $t1,0x4($s8)
/* f009930: ae810000 */ sw $at,0x0($s4)
/* f009934: 8fc10008 */ lw $at,0x8($s8)
/* f009938: ae890004 */ sw $t1,0x4($s4)
/* f00993c: 02803025 */ or $a2,$s4,$zero
/* f009940: ae810008 */ sw $at,0x8($s4)
/* f009944: 3c01800a */ lui $at,0x800a
/* f009948: c432e70c */ lwc1 $f18,-0x18f4($at)
/* f00994c: 8e6b001c */ lw $t3,0x1c($s3)
/* f009950: 27a70088 */ addiu $a3,$sp,0x88
/* f009954: 4612a002 */ mul.s $f0,$f20,$f18
/* f009958: 02002025 */ or $a0,$s0,$zero
/* f00995c: afab0010 */ sw $t3,0x10($sp)
/* f009960: 44050000 */ mfc1 $a1,$f0
/* f009964: 0fc0ce8b */ jal 0xf033a2c
/* f009968: 00000000 */ sll $zero,$zero,0x0
/* f00996c: 8e0a0018 */ lw $t2,0x18($s0)
/* f009970: 8e0d0014 */ lw $t5,0x14($s0)
/* f009974: 3c010020 */ lui $at,0x20
/* f009978: 01416025 */ or $t4,$t2,$at
/* f00997c: 000d7080 */ sll $t6,$t5,0x2
/* f009980: 05c10004 */ bgez $t6,.NB0f009994
/* f009984: ae0c0018 */ sw $t4,0x18($s0)
/* f009988: 02002025 */ or $a0,$s0,$zero
/* f00998c: 0fc08814 */ jal 0xf022050
/* f009990: 24050001 */ addiu $a1,$zero,0x1
.NB0f009994:
/* f009994: 86420002 */ lh $v0,0x2($s2)
.NB0f009998:
/* f009998: 26520002 */ addiu $s2,$s2,0x2
/* f00999c: 0441ffc0 */ bgez $v0,.NB0f0098a0
/* f0099a0: 00000000 */ sll $zero,$zero,0x0
.NB0f0099a4:
/* f0099a4: 8fbf004c */ lw $ra,0x4c($sp)
.NB0f0099a8:
/* f0099a8: d7b40020 */ ldc1 $f20,0x20($sp)
/* f0099ac: 8fb00028 */ lw $s0,0x28($sp)
/* f0099b0: 8fb1002c */ lw $s1,0x2c($sp)
/* f0099b4: 8fb20030 */ lw $s2,0x30($sp)
/* f0099b8: 8fb30034 */ lw $s3,0x34($sp)
/* f0099bc: 8fb40038 */ lw $s4,0x38($sp)
/* f0099c0: 8fb5003c */ lw $s5,0x3c($sp)
/* f0099c4: 8fb60040 */ lw $s6,0x40($sp)
/* f0099c8: 8fb70044 */ lw $s7,0x44($sp)
/* f0099cc: 8fbe0048 */ lw $s8,0x48($sp)
/* f0099d0: 03e00008 */ jr $ra
/* f0099d4: 27bd0320 */ addiu $sp,$sp,0x320
);
#endif
// Mismatch: different usage of callee-save registers relating to room loop
@@ -3552,10 +3784,16 @@ void nbombsTick(void)
if (g_Nbombs[i].age240 >= 0) {
if (g_Nbombs[i].audiohandle20 && audioIsPlaying(g_Nbombs[i].audiohandle20)) {
audioStop(g_Nbombs[i].audiohandle20);
#if VERSION < VERSION_NTSC_1_0
g_Nbombs[i].audiohandle20 = NULL;
#endif
}
if (g_Nbombs[i].audiohandle24 && audioIsPlaying(g_Nbombs[i].audiohandle24)) {
audioStop(g_Nbombs[i].audiohandle24);
#if VERSION < VERSION_NTSC_1_0
g_Nbombs[i].audiohandle24 = NULL;
#endif
}
}
}
@@ -3591,8 +3829,11 @@ void nbombCreate(struct coord *pos, struct prop *prop)
for (i = 0; i < 6; i++) {
if (g_Nbombs[i].age240 == -1
#if VERSION >= VERSION_NTSC_1_0
&& g_Nbombs[i].audiohandle20 == NULL
&& g_Nbombs[i].audiohandle24 == NULL) {
&& g_Nbombs[i].audiohandle24 == NULL
#endif
) {
index = i;
break;
}
@@ -3611,6 +3852,9 @@ void nbombCreate(struct coord *pos, struct prop *prop)
g_Nbombs[index].age240 = 0;
g_Nbombs[index].prop = prop;
#if VERSION >= VERSION_NTSC_1_0
// Newer versions only play audio if the handles are null,
// while ntsc-beta clears the handles then plays them unconditionally.
if (g_Nbombs[index].audiohandle20 == NULL) {
audioStart(var80095200, SFX_LAUNCH_ROCKET, &g_Nbombs[index].audiohandle20, -1, -1, -1, -1, -1);
@@ -3630,6 +3874,26 @@ void nbombCreate(struct coord *pos, struct prop *prop)
func00033e50(g_Nbombs[index].audiohandle24, 16, param.s32);
}
}
#else
g_Nbombs[index].audiohandle20 = NULL;
g_Nbombs[index].audiohandle24 = NULL;
audioStart(var80095200, SFX_LAUNCH_ROCKET, &g_Nbombs[index].audiohandle20, -1, -1, -1, -1, -1);
if (g_Nbombs[index].audiohandle20) {
union audioparam param;
param.f32 = 0.4f;
func00033e50(g_Nbombs[index].audiohandle20, 16, param.s32);
}
audioStart(var80095200, SFX_LAUNCH_ROCKET, &g_Nbombs[index].audiohandle24, -1, -1, -1, -1, -1);
if (g_Nbombs[index].audiohandle24) {
union audioparam param;
param.f32 = 0.4f;
func00033e50(g_Nbombs[index].audiohandle24, 16, param.s32);
}
#endif
}
bool doorIsOpenOrOpening(s32 tagnum)
+19 -4
View File
@@ -36,6 +36,7 @@ u32 var8009d0cc;
s32 g_ObjectiveLastIndex = -1;
bool g_ObjectiveChecksDisabled = false;
#if PIRACYCHECKS
u32 xorBaffbeff(u32 value)
{
return value ^ 0xbaffbeff;
@@ -51,10 +52,6 @@ u32 xorBoobless(u32 value)
return value ^ 0xb00b1e55;
}
/**
* This is very likely to be an unused piracy check.
* This function is never called.
*/
void func0f095350(u32 arg0, u32 *arg1)
{
volatile u32 *ptr;
@@ -74,6 +71,7 @@ void func0f095350(u32 arg0, u32 *arg1)
__osPiRelAccess();
}
#endif
void tagsAllocatePtrs(void)
{
@@ -361,6 +359,7 @@ void objectivesDisableChecking(void)
g_ObjectiveChecksDisabled = true;
}
#if VERSION >= VERSION_NTSC_1_0
void objectivesShowHudmsg(char *buffer, s32 hudmsgtype)
{
s32 prevplayernum = g_Vars.currentplayernum;
@@ -376,6 +375,7 @@ void objectivesShowHudmsg(char *buffer, s32 hudmsgtype)
setCurrentPlayerNum(prevplayernum);
}
#endif
void objectivesCheckAll(void)
{
@@ -393,6 +393,9 @@ void objectivesCheckAll(void)
if (objectiveGetDifficultyBits(i) & (1 << coreGetDifficulty())) {
sprintf(buffer, "%s %d: ", langGet(L_MISC_044), availableindex + 1); // "Objective"
#if VERSION >= VERSION_NTSC_1_0
// NTSC 1.0 and above shows objective messages to everyone,
// while beta only shows them to the current player.
if (status == OBJECTIVE_COMPLETE) {
strcat(buffer, langGet(L_MISC_045)); // "Completed"
objectivesShowHudmsg(buffer, HUDMSGTYPE_OBJECTIVECOMPLETE);
@@ -403,6 +406,18 @@ void objectivesCheckAll(void)
strcat(buffer, langGet(L_MISC_047)); // "Failed"
objectivesShowHudmsg(buffer, HUDMSGTYPE_OBJECTIVEFAILED);
}
#else
if (status == OBJECTIVE_COMPLETE) {
strcat(buffer, langGet(L_MISC_045)); // "Completed"
func0f0ddfa4(buffer, HUDMSGTYPE_OBJECTIVECOMPLETE, 24);
} else if (status == OBJECTIVE_INCOMPLETE) {
strcat(buffer, langGet(L_MISC_046)); // "Incomplete"
func0f0ddfa4(buffer, HUDMSGTYPE_OBJECTIVECOMPLETE, 24);
} else if (status == OBJECTIVE_FAILED) {
strcat(buffer, langGet(L_MISC_047)); // "Failed"
func0f0ddfa4(buffer, HUDMSGTYPE_OBJECTIVEFAILED, 24);
}
#endif
}
}
+155 -1
View File
@@ -226,6 +226,7 @@ void optionsSetHeadRoll(s32 mpchrnum, bool enable)
}
}
#if VERSION >= VERSION_NTSC_1_0
s32 optionsGetEffectiveScreenSize(void)
{
if (IS4MB()) {
@@ -253,11 +254,127 @@ s32 optionsGetEffectiveScreenSize(void)
return g_ScreenSize;
}
#else
GLOBAL_ASM(
glabel optionsGetEffectiveScreenSize
/* f14d470: 3c0e8009 */ lui $t6,0x8009
/* f14d474: 91ce30e0 */ lbu $t6,0x30e0($t6)
/* f14d478: 24010001 */ addiu $at,$zero,0x1
/* f14d47c: 3c02800a */ lui $v0,0x800a
/* f14d480: 15c10003 */ bne $t6,$at,.NB0f14d490
/* f14d484: 00000000 */ sll $zero,$zero,0x0
/* f14d488: 03e00008 */ jr $ra
/* f14d48c: 00001025 */ or $v0,$zero,$zero
.NB0f14d490:
/* f14d490: 8c425eb4 */ lw $v0,0x5eb4($v0)
/* f14d494: 2401000d */ addiu $at,$zero,0xd
/* f14d498: 3c048007 */ lui $a0,0x8007
/* f14d49c: 14410014 */ bne $v0,$at,.NB0f14d4f0
/* f14d4a0: 24843af0 */ addiu $a0,$a0,0x3af0
/* f14d4a4: 0000c0c0 */ sll $t8,$zero,0x3
/* f14d4a8: 0300c023 */ subu $t8,$t8,$zero
/* f14d4ac: 0018c0c0 */ sll $t8,$t8,0x3
/* f14d4b0: 0300c023 */ subu $t8,$t8,$zero
/* f14d4b4: 0018c100 */ sll $t8,$t8,0x4
/* f14d4b8: 0300c023 */ subu $t8,$t8,$zero
/* f14d4bc: 0018c080 */ sll $t8,$t8,0x2
/* f14d4c0: 3c19800a */ lui $t9,0x800a
/* f14d4c4: ac800000 */ sw $zero,0x0($a0)
/* f14d4c8: 0338c821 */ addu $t9,$t9,$t8
/* f14d4cc: 8f392c48 */ lw $t9,0x2c48($t9)
/* f14d4d0: 3c08800a */ lui $t0,0x800a
/* f14d4d4: 13200006 */ beqz $t9,.NB0f14d4f0
/* f14d4d8: 00000000 */ sll $zero,$zero,0x0
/* f14d4dc: 8d082780 */ lw $t0,0x2780($t0)
/* f14d4e0: 11000003 */ beqz $t0,.NB0f14d4f0
/* f14d4e4: 00000000 */ sll $zero,$zero,0x0
/* f14d4e8: 03e00008 */ jr $ra
/* f14d4ec: 00001025 */ or $v0,$zero,$zero
.NB0f14d4f0:
/* f14d4f0: 3c048007 */ lui $a0,0x8007
/* f14d4f4: 24843af0 */ addiu $a0,$a0,0x3af0
/* f14d4f8: 8c890000 */ lw $t1,0x0($a0)
/* f14d4fc: 3c03800a */ lui $v1,0x800a
/* f14d500: 3c06800a */ lui $a2,0x800a
/* f14d504: 000950c0 */ sll $t2,$t1,0x3
/* f14d508: 01495023 */ subu $t2,$t2,$t1
/* f14d50c: 000a50c0 */ sll $t2,$t2,0x3
/* f14d510: 01495023 */ subu $t2,$t2,$t1
/* f14d514: 000a5100 */ sll $t2,$t2,0x4
/* f14d518: 01495023 */ subu $t2,$t2,$t1
/* f14d51c: 000a5080 */ sll $t2,$t2,0x2
/* f14d520: 006a1821 */ addu $v1,$v1,$t2
/* f14d524: 8c632c48 */ lw $v1,0x2c48($v1)
/* f14d528: 24c6e6c0 */ addiu $a2,$a2,-6464
/* f14d52c: 5060000f */ beqzl $v1,.NB0f14d56c
/* f14d530: 8cce006c */ lw $t6,0x6c($a2)
/* f14d534: 8c640000 */ lw $a0,0x0($v1)
/* f14d538: 3c0b8007 */ lui $t3,0x8007
/* f14d53c: 256b4704 */ addiu $t3,$t3,0x4704
/* f14d540: 11640007 */ beq $t3,$a0,.NB0f14d560
/* f14d544: 3c0c8007 */ lui $t4,0x8007
/* f14d548: 258c46b0 */ addiu $t4,$t4,0x46b0
/* f14d54c: 11840004 */ beq $t4,$a0,.NB0f14d560
/* f14d550: 3c0d8007 */ lui $t5,0x8007
/* f14d554: 25ad465c */ addiu $t5,$t5,0x465c
/* f14d558: 55a40004 */ bnel $t5,$a0,.NB0f14d56c
/* f14d55c: 8cce006c */ lw $t6,0x6c($a2)
.NB0f14d560:
/* f14d560: 03e00008 */ jr $ra
/* f14d564: 00001025 */ or $v0,$zero,$zero
/* f14d568: 8cce006c */ lw $t6,0x6c($a2)
.NB0f14d56c:
/* f14d56c: 00001825 */ or $v1,$zero,$zero
/* f14d570: 00002025 */ or $a0,$zero,$zero
/* f14d574: 11c00003 */ beqz $t6,.NB0f14d584
/* f14d578: 00002825 */ or $a1,$zero,$zero
/* f14d57c: 10000001 */ beqz $zero,.NB0f14d584
/* f14d580: 24030001 */ addiu $v1,$zero,0x1
.NB0f14d584:
/* f14d584: 8ccf0068 */ lw $t7,0x68($a2)
/* f14d588: 11e00003 */ beqz $t7,.NB0f14d598
/* f14d58c: 00000000 */ sll $zero,$zero,0x0
/* f14d590: 10000001 */ beqz $zero,.NB0f14d598
/* f14d594: 24040001 */ addiu $a0,$zero,0x1
.NB0f14d598:
/* f14d598: 8cd80064 */ lw $t8,0x64($a2)
/* f14d59c: 13000003 */ beqz $t8,.NB0f14d5ac
/* f14d5a0: 00000000 */ sll $zero,$zero,0x0
/* f14d5a4: 10000001 */ beqz $zero,.NB0f14d5ac
/* f14d5a8: 24050001 */ addiu $a1,$zero,0x1
.NB0f14d5ac:
/* f14d5ac: 8cd90070 */ lw $t9,0x70($a2)
/* f14d5b0: 00003025 */ or $a2,$zero,$zero
/* f14d5b4: 13200003 */ beqz $t9,.NB0f14d5c4
/* f14d5b8: 00000000 */ sll $zero,$zero,0x0
/* f14d5bc: 10000001 */ beqz $zero,.NB0f14d5c4
/* f14d5c0: 24060001 */ addiu $a2,$zero,0x1
.NB0f14d5c4:
/* f14d5c4: 00c54021 */ addu $t0,$a2,$a1
/* f14d5c8: 01044821 */ addu $t1,$t0,$a0
/* f14d5cc: 01235021 */ addu $t2,$t1,$v1
/* f14d5d0: 29410002 */ slti $at,$t2,0x2
/* f14d5d4: 10200003 */ beqz $at,.NB0f14d5e4
/* f14d5d8: 24010003 */ addiu $at,$zero,0x3
/* f14d5dc: 14410003 */ bne $v0,$at,.NB0f14d5ec
/* f14d5e0: 00000000 */ sll $zero,$zero,0x0
.NB0f14d5e4:
/* f14d5e4: 03e00008 */ jr $ra
/* f14d5e8: 00001025 */ or $v0,$zero,$zero
.NB0f14d5ec:
/* f14d5ec: 3c028008 */ lui $v0,0x8008
/* f14d5f0: 8c422310 */ lw $v0,0x2310($v0)
/* f14d5f4: 03e00008 */ jr $ra
/* f14d5f8: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
s32 optionsGetScreenSize(void)
{
return g_ScreenSize;
}
#endif
void optionsSetScreenSize(s32 size)
{
@@ -284,12 +401,49 @@ void optionsSetScreenSplit(u8 split)
g_ScreenSplit = split;
}
s32 optionsGetMusicVolume(void)
#if VERSION >= VERSION_NTSC_1_0
u16 optionsGetMusicVolume(void)
{
return musicGetVolume();
}
#else
GLOBAL_ASM(
glabel optionsGetMusicVolume
/* f14d63c: 3c0e800a */ lui $t6,0x800a
/* f14d640: 8dceeb74 */ lw $t6,-0x148c($t6)
/* f14d644: 2401005c */ addiu $at,$zero,0x5c
/* f14d648: 3c028008 */ lui $v0,0x8008
/* f14d64c: 15c10003 */ bne $t6,$at,.NB0f14d65c
/* f14d650: 00000000 */ sll $zero,$zero,0x0
/* f14d654: 03e00008 */ jr $ra
/* f14d658: 24027fff */ addiu $v0,$zero,0x7fff
.NB0f14d65c:
/* f14d65c: 9442231c */ lhu $v0,0x231c($v0)
/* f14d660: 03e00008 */ jr $ra
/* f14d664: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void optionsSetMusicVolume(u16 volume)
{
musicSetVolume(volume);
}
#else
GLOBAL_ASM(
glabel optionsSetMusicVolume
/* f14d668: 27bdffe8 */ addiu $sp,$sp,-24
/* f14d66c: 3c028008 */ lui $v0,0x8008
/* f14d670: 2442231c */ addiu $v0,$v0,0x231c
/* f14d674: afbf0014 */ sw $ra,0x14($sp)
/* f14d678: afa40018 */ sw $a0,0x18($sp)
/* f14d67c: 00802825 */ or $a1,$a0,$zero
/* f14d680: a4450000 */ sh $a1,0x0($v0)
/* f14d684: 0fc59f5c */ jal 0xf167d70
/* f14d688: 30a4ffff */ andi $a0,$a1,0xffff
/* f14d68c: 8fbf0014 */ lw $ra,0x14($sp)
/* f14d690: 27bd0018 */ addiu $sp,$sp,0x18
/* f14d694: 03e00008 */ jr $ra
/* f14d698: 00000000 */ sll $zero,$zero,0x0
);
#endif
+6624 -45
View File
File diff suppressed because it is too large. Load diff
+1406 -1
View File
File diff suppressed because it is too large. Load diff
+10128 -9
View File
File diff suppressed because it is too large. Load diff
+2902 -8
View File
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+457 -417
View File
@@ -148,6 +148,7 @@ void func0f16e810(u32 arg0)
// empty
}
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0f16e818
/* f16e818: 27bde160 */ addiu $sp,$sp,-7840
@@ -538,6 +539,458 @@ glabel func0f16e818
/* f16eda4: 03e00008 */ jr $ra
/* f16eda8: 27bd1ea0 */ addiu $sp,$sp,0x1ea0
);
#else
GLOBAL_ASM(
glabel func0f16e818
/* f1693c8: 27bde0a8 */ addiu $sp,$sp,-8024
/* f1693cc: afbf007c */ sw $ra,0x7c($sp)
/* f1693d0: afb60070 */ sw $s6,0x70($sp)
/* f1693d4: afbe0078 */ sw $s8,0x78($sp)
/* f1693d8: afb70074 */ sw $s7,0x74($sp)
/* f1693dc: afb5006c */ sw $s5,0x6c($sp)
/* f1693e0: afb40068 */ sw $s4,0x68($sp)
/* f1693e4: afb30064 */ sw $s3,0x64($sp)
/* f1693e8: afb20060 */ sw $s2,0x60($sp)
/* f1693ec: afb1005c */ sw $s1,0x5c($sp)
/* f1693f0: afb00058 */ sw $s0,0x58($sp)
/* f1693f4: afa51f5c */ sw $a1,0x1f5c($sp)
/* f1693f8: afa61f60 */ sw $a2,0x1f60($sp)
/* f1693fc: afa71f64 */ sw $a3,0x1f64($sp)
/* f169400: afa01f48 */ sw $zero,0x1f48($sp)
/* f169404: 0fc5b870 */ jal 0xf16e1c0
/* f169408: 0000b025 */ or $s6,$zero,$zero
/* f16940c: 8fa71f60 */ lw $a3,0x1f60($sp)
/* f169410: 8fa81f64 */ lw $t0,0x1f64($sp)
/* f169414: 50e00006 */ beqzl $a3,.NB0f169430
/* f169418: 240e0001 */ addiu $t6,$zero,0x1
/* f16941c: 51000004 */ beqzl $t0,.NB0f169430
/* f169420: 240e0001 */ addiu $t6,$zero,0x1
/* f169424: 10000004 */ beqz $zero,.NB0f169438
/* f169428: afa81f4c */ sw $t0,0x1f4c($sp)
/* f16942c: 240e0001 */ addiu $t6,$zero,0x1
.NB0f169430:
/* f169430: 8fa81f64 */ lw $t0,0x1f64($sp)
/* f169434: afae1f4c */ sw $t6,0x1f4c($sp)
.NB0f169438:
/* f169438: 8fbe1f68 */ lw $s8,0x1f68($sp)
/* f16943c: 0008c940 */ sll $t9,$t0,0x5
/* f169440: 00076940 */ sll $t5,$a3,0x5
/* f169444: 8fc3000c */ lw $v1,0xc($s8)
/* f169448: 31ae0020 */ andi $t6,$t5,0x20
/* f16944c: 3c05800b */ lui $a1,0x800b
/* f169450: 9069000b */ lbu $t1,0xb($v1)
/* f169454: 312aff1f */ andi $t2,$t1,0xff1f
/* f169458: 032a5825 */ or $t3,$t9,$t2
/* f16945c: a06b000b */ sb $t3,0xb($v1)
/* f169460: 8fc3000c */ lw $v1,0xc($s8)
/* f169464: 906f000c */ lbu $t7,0xc($v1)
/* f169468: 31f8ffdf */ andi $t8,$t7,0xffdf
/* f16946c: 01d84825 */ or $t1,$t6,$t8
/* f169470: 10e00017 */ beqz $a3,.NB0f1694d0
/* f169474: a069000c */ sb $t1,0xc($v1)
/* f169478: 8ca5fde8 */ lw $a1,-0x218($a1)
/* f16947c: 24060001 */ addiu $a2,$zero,0x1
/* f169480: afa61f48 */ sw $a2,0x1f48($sp)
/* f169484: 58a00013 */ blezl $a1,.NB0f1694d4
/* f169488: 24040008 */ addiu $a0,$zero,0x8
/* f16948c: 8fd9000c */ lw $t9,0xc($s8)
/* f169490: 3c0b800b */ lui $t3,0x800b
/* f169494: 2562f488 */ addiu $v0,$t3,-2936
/* f169498: 8f230000 */ lw $v1,0x0($t9)
/* f16949c: 00056100 */ sll $t4,$a1,0x4
/* f1694a0: 01822021 */ addu $a0,$t4,$v0
/* f1694a4: 00035502 */ srl $t2,$v1,0x14
/* f1694a8: 01401825 */ or $v1,$t2,$zero
/* f1694ac: 844d0000 */ lh $t5,0x0($v0)
.NB0f1694b0:
/* f1694b0: 24420010 */ addiu $v0,$v0,0x10
/* f1694b4: 0044082b */ sltu $at,$v0,$a0
/* f1694b8: 146d0002 */ bne $v1,$t5,.NB0f1694c4
/* f1694bc: 00000000 */ sll $zero,$zero,0x0
/* f1694c0: 00003025 */ or $a2,$zero,$zero
.NB0f1694c4:
/* f1694c4: 5420fffa */ bnezl $at,.NB0f1694b0
/* f1694c8: 844d0000 */ lh $t5,0x0($v0)
/* f1694cc: afa61f48 */ sw $a2,0x1f48($sp)
.NB0f1694d0:
/* f1694d0: 24040008 */ addiu $a0,$zero,0x8
.NB0f1694d4:
/* f1694d4: 0fc5b877 */ jal 0xf16e1dc
/* f1694d8: afa01f54 */ sw $zero,0x1f54($sp)
/* f1694dc: afa21f44 */ sw $v0,0x1f44($sp)
/* f1694e0: 0fc5b877 */ jal 0xf16e1dc
/* f1694e4: 24040008 */ addiu $a0,$zero,0x8
/* f1694e8: 24460001 */ addiu $a2,$v0,0x1
/* f1694ec: 18c0000e */ blez $a2,.NB0f169528
/* f1694f0: afa61f30 */ sw $a2,0x1f30($sp)
/* f1694f4: 27a31524 */ addiu $v1,$sp,0x1524
/* f1694f8: 00067040 */ sll $t6,$a2,0x1
/* f1694fc: 01c38021 */ addu $s0,$t6,$v1
/* f169500: afa61f30 */ sw $a2,0x1f30($sp)
.NB0f169504:
/* f169504: 24040010 */ addiu $a0,$zero,0x10
/* f169508: 0fc5b877 */ jal 0xf16e1dc
/* f16950c: afa30090 */ sw $v1,0x90($sp)
/* f169510: 8fa30090 */ lw $v1,0x90($sp)
/* f169514: 24630002 */ addiu $v1,$v1,0x2
/* f169518: 0070082b */ sltu $at,$v1,$s0
/* f16951c: 1420fff9 */ bnez $at,.NB0f169504
/* f169520: a462fffe */ sh $v0,-0x2($v1)
/* f169524: afa01f54 */ sw $zero,0x1f54($sp)
.NB0f169528:
/* f169528: 8fb81f4c */ lw $t8,0x1f4c($sp)
/* f16952c: 8fa21f54 */ lw $v0,0x1f54($sp)
/* f169530: 8fa61f30 */ lw $a2,0x1f30($sp)
/* f169534: 00009025 */ or $s2,$zero,$zero
/* f169538: 1b0000b2 */ blez $t8,.NB0f169804
/* f16953c: 0000a025 */ or $s4,$zero,$zero
/* f169540: 3c13800b */ lui $s3,0x800b
/* f169544: 2673fdf0 */ addiu $s3,$s3,-528
/* f169548: afa21f54 */ sw $v0,0x1f54($sp)
/* f16954c: afa61f30 */ sw $a2,0x1f30($sp)
/* f169550: 27b51724 */ addiu $s5,$sp,0x1724
/* f169554: 8fa91f5c */ lw $t1,0x1f5c($sp)
.NB0f169558:
/* f169558: 24040008 */ addiu $a0,$zero,0x8
/* f16955c: 0fc5b877 */ jal 0xf16e1dc
/* f169560: 01368021 */ addu $s0,$t1,$s6
/* f169564: 0040b825 */ or $s7,$v0,$zero
/* f169568: 0fc5b877 */ jal 0xf16e1dc
/* f16956c: 24040008 */ addiu $a0,$zero,0x8
/* f169570: 1680002a */ bnez $s4,.NB0f16961c
/* f169574: afa21f34 */ sw $v0,0x1f34($sp)
/* f169578: 8fd9000c */ lw $t9,0xc($s8)
/* f16957c: 3c0f8008 */ lui $t7,0x8008
/* f169580: a3370008 */ sb $s7,0x8($t9)
/* f169584: 8fca000c */ lw $t2,0xc($s8)
/* f169588: a1420009 */ sb $v0,0x9($t2)
/* f16958c: 8fac1f30 */ lw $t4,0x1f30($sp)
/* f169590: 8fcd000c */ lw $t5,0xc($s8)
/* f169594: 258bffff */ addiu $t3,$t4,-1
/* f169598: a1ab000a */ sb $t3,0xa($t5)
/* f16959c: 8fa41f44 */ lw $a0,0x1f44($sp)
/* f1695a0: 8fc3000c */ lw $v1,0xc($s8)
/* f1695a4: 3c0d8008 */ lui $t5,0x8008
/* f1695a8: 00047080 */ sll $t6,$a0,0x2
/* f1695ac: 01ee7821 */ addu $t7,$t7,$t6
/* f1695b0: 8df86b08 */ lw $t8,0x6b08($t7)
/* f1695b4: 906a000b */ lbu $t2,0xb($v1)
/* f1695b8: 01c02025 */ or $a0,$t6,$zero
/* f1695bc: 00184880 */ sll $t1,$t8,0x2
/* f1695c0: 3139001c */ andi $t9,$t1,0x1c
/* f1695c4: 314cffe3 */ andi $t4,$t2,0xffe3
/* f1695c8: 032c5825 */ or $t3,$t9,$t4
/* f1695cc: a06b000b */ sb $t3,0xb($v1)
/* f1695d0: 8fc3000c */ lw $v1,0xc($s8)
/* f1695d4: 01ae6821 */ addu $t5,$t5,$t6
/* f1695d8: 8dae6b3c */ lw $t6,0x6b3c($t5)
/* f1695dc: 9078000b */ lbu $t8,0xb($v1)
/* f1695e0: 3c198008 */ lui $t9,0x8008
/* f1695e4: 31cf0003 */ andi $t7,$t6,0x3
/* f1695e8: 3309fffc */ andi $t1,$t8,0xfffc
/* f1695ec: 01e95025 */ or $t2,$t7,$t1
/* f1695f0: a06a000b */ sb $t2,0xb($v1)
/* f1695f4: 8fc3000c */ lw $v1,0xc($s8)
/* f1695f8: 0324c821 */ addu $t9,$t9,$a0
/* f1695fc: 8f396b70 */ lw $t9,0x6b70($t9)
/* f169600: 9078000c */ lbu $t8,0xc($v1)
/* f169604: 00195b83 */ sra $t3,$t9,0xe
/* f169608: 000b7180 */ sll $t6,$t3,0x6
/* f16960c: 330fff3f */ andi $t7,$t8,0xff3f
/* f169610: 01cf4825 */ or $t1,$t6,$t7
/* f169614: 1000000d */ beqz $zero,.NB0f16964c
/* f169618: a069000c */ sb $t1,0xc($v1)
.NB0f16961c:
/* f16961c: 8faa1f48 */ lw $t2,0x1f48($sp)
/* f169620: 3c19800b */ lui $t9,0x800b
/* f169624: 5140000a */ beqzl $t2,.NB0f169650
/* f169628: 8e640000 */ lw $a0,0x0($s3)
/* f16962c: 8f39fde8 */ lw $t9,-0x218($t9)
/* f169630: 3c0d800b */ lui $t5,0x800b
/* f169634: 25adf488 */ addiu $t5,$t5,-2936
/* f169638: 00196100 */ sll $t4,$t9,0x4
/* f16963c: 01945821 */ addu $t3,$t4,$s4
/* f169640: 016d1821 */ addu $v1,$t3,$t5
/* f169644: a0770001 */ sb $s7,0x1($v1)
/* f169648: a0620008 */ sb $v0,0x8($v1)
.NB0f16964c:
/* f16964c: 8e640000 */ lw $a0,0x0($s3)
.NB0f169650:
/* f169650: 02a02825 */ or $a1,$s5,$zero
/* f169654: 0c001da4 */ jal 0x7690
/* f169658: 27a60124 */ addiu $a2,$sp,0x124
/* f16965c: 5440002e */ bnezl $v0,.NB0f169718
/* f169660: 02a02025 */ or $a0,$s5,$zero
/* f169664: 8e620000 */ lw $v0,0x0($s3)
/* f169668: 3c057f1b */ lui $a1,0x7f1b
/* f16966c: 3c067f1b */ lui $a2,0x7f1b
/* f169670: 90580000 */ lbu $t8,0x0($v0)
/* f169674: 24c62388 */ addiu $a2,$a2,0x2388
/* f169678: 24a52330 */ addiu $a1,$a1,0x2330
/* f16967c: afb80010 */ sw $t8,0x10($sp)
/* f169680: 904e0001 */ lbu $t6,0x1($v0)
/* f169684: 27a400a4 */ addiu $a0,$sp,0xa4
/* f169688: 24070165 */ addiu $a3,$zero,0x165
/* f16968c: afae0014 */ sw $t6,0x14($sp)
/* f169690: 904f0002 */ lbu $t7,0x2($v0)
/* f169694: afaf0018 */ sw $t7,0x18($sp)
/* f169698: 90490003 */ lbu $t1,0x3($v0)
/* f16969c: afa9001c */ sw $t1,0x1c($sp)
/* f1696a0: 904a0004 */ lbu $t2,0x4($v0)
/* f1696a4: afaa0020 */ sw $t2,0x20($sp)
/* f1696a8: 90590005 */ lbu $t9,0x5($v0)
/* f1696ac: afb90024 */ sw $t9,0x24($sp)
/* f1696b0: 904c0006 */ lbu $t4,0x6($v0)
/* f1696b4: afac0028 */ sw $t4,0x28($sp)
/* f1696b8: 904b0007 */ lbu $t3,0x7($v0)
/* f1696bc: afab002c */ sw $t3,0x2c($sp)
/* f1696c0: 904d0008 */ lbu $t5,0x8($v0)
/* f1696c4: afad0030 */ sw $t5,0x30($sp)
/* f1696c8: 90580009 */ lbu $t8,0x9($v0)
/* f1696cc: afb80034 */ sw $t8,0x34($sp)
/* f1696d0: 904e000a */ lbu $t6,0xa($v0)
/* f1696d4: afae0038 */ sw $t6,0x38($sp)
/* f1696d8: 904f000b */ lbu $t7,0xb($v0)
/* f1696dc: afaf003c */ sw $t7,0x3c($sp)
/* f1696e0: 9049000c */ lbu $t1,0xc($v0)
/* f1696e4: afa90040 */ sw $t1,0x40($sp)
/* f1696e8: 904a000d */ lbu $t2,0xd($v0)
/* f1696ec: afaa0044 */ sw $t2,0x44($sp)
/* f1696f0: 9059000e */ lbu $t9,0xe($v0)
/* f1696f4: afb90048 */ sw $t9,0x48($sp)
/* f1696f8: 904c000f */ lbu $t4,0xf($v0)
/* f1696fc: 0c004fc1 */ jal 0x13f04
/* f169700: afac004c */ sw $t4,0x4c($sp)
/* f169704: 0c003074 */ jal 0xc1d0
/* f169708: 27a400a4 */ addiu $a0,$sp,0xa4
/* f16970c: 240b0045 */ addiu $t3,$zero,0x45
/* f169710: a00b0000 */ sb $t3,0x0($zero)
/* f169714: 02a02025 */ or $a0,$s5,$zero
.NB0f169718:
/* f169718: 02e02825 */ or $a1,$s7,$zero
/* f16971c: 8fa61f34 */ lw $a2,0x1f34($sp)
/* f169720: 8fa71f44 */ lw $a3,0x1f44($sp)
/* f169724: 0fc5a691 */ jal 0xf169a44
/* f169728: afb00010 */ sw $s0,0x10($sp)
/* f16972c: 0c0022ea */ jal 0x8ba8
/* f169730: 00408825 */ or $s1,$v0,$zero
/* f169734: 0fc5b870 */ jal 0xf16e1c0
/* f169738: 00402025 */ or $a0,$v0,$zero
/* f16973c: 8fad1f60 */ lw $t5,0x1f60($sp)
/* f169740: 24010001 */ addiu $at,$zero,0x1
/* f169744: 3c188009 */ lui $t8,0x8009
/* f169748: 15a10026 */ bne $t5,$at,.NB0f1697e4
/* f16974c: 02d11021 */ addu $v0,$s6,$s1
/* f169750: 931830e0 */ lbu $t8,0x30e0($t8)
/* f169754: 24010001 */ addiu $at,$zero,0x1
/* f169758: 1701000c */ bne $t8,$at,.NB0f16978c
/* f16975c: 24010002 */ addiu $at,$zero,0x2
/* f169760: 5681000b */ bnel $s4,$at,.NB0f169790
/* f169764: 28410801 */ slti $at,$v0,0x801
/* f169768: 56400009 */ bnezl $s2,.NB0f169790
/* f16976c: 28410801 */ slti $at,$v0,0x801
/* f169770: 8fc3000c */ lw $v1,0xc($s8)
/* f169774: 00144940 */ sll $t1,$s4,0x5
/* f169778: 24120001 */ addiu $s2,$zero,0x1
/* f16977c: 906a000b */ lbu $t2,0xb($v1)
/* f169780: 3159ff1f */ andi $t9,$t2,0xff1f
/* f169784: 01396025 */ or $t4,$t1,$t9
/* f169788: a06c000b */ sb $t4,0xb($v1)
.NB0f16978c:
/* f16978c: 28410801 */ slti $at,$v0,0x801
.NB0f169790:
/* f169790: 10200003 */ beqz $at,.NB0f1697a0
/* f169794: 00000000 */ sll $zero,$zero,0x0
/* f169798: 1240000b */ beqz $s2,.NB0f1697c8
/* f16979c: 02002025 */ or $a0,$s0,$zero
.NB0f1697a0:
/* f1697a0: 56400012 */ bnezl $s2,.NB0f1697ec
/* f1697a4: 8fa91f4c */ lw $t1,0x1f4c($sp)
/* f1697a8: 8fc3000c */ lw $v1,0xc($s8)
/* f1697ac: 0014c140 */ sll $t8,$s4,0x5
/* f1697b0: 24120001 */ addiu $s2,$zero,0x1
/* f1697b4: 906e000b */ lbu $t6,0xb($v1)
/* f1697b8: 31cfff1f */ andi $t7,$t6,0xff1f
/* f1697bc: 030f5025 */ or $t2,$t8,$t7
/* f1697c0: 10000009 */ beqz $zero,.NB0f1697e8
/* f1697c4: a06a000b */ sb $t2,0xb($v1)
.NB0f1697c8:
/* f1697c8: 02e02825 */ or $a1,$s7,$zero
/* f1697cc: 8fa61f34 */ lw $a2,0x1f34($sp)
/* f1697d0: 8fa71f44 */ lw $a3,0x1f44($sp)
/* f1697d4: 0fc5b5a4 */ jal 0xf16d690
/* f1697d8: afa20090 */ sw $v0,0x90($sp)
/* f1697dc: 10000002 */ beqz $zero,.NB0f1697e8
/* f1697e0: 8fb60090 */ lw $s6,0x90($sp)
.NB0f1697e4:
/* f1697e4: 02d1b021 */ addu $s6,$s6,$s1
.NB0f1697e8:
/* f1697e8: 8fa91f4c */ lw $t1,0x1f4c($sp)
.NB0f1697ec:
/* f1697ec: 26940001 */ addiu $s4,$s4,0x1
/* f1697f0: 5689ff59 */ bnel $s4,$t1,.NB0f169558
/* f1697f4: 8fa91f5c */ lw $t1,0x1f5c($sp)
/* f1697f8: afb71f38 */ sw $s7,0x1f38($sp)
/* f1697fc: 8fa61f30 */ lw $a2,0x1f30($sp)
/* f169800: 8fa21f54 */ lw $v0,0x1f54($sp)
.NB0f169804:
/* f169804: 8fb91f48 */ lw $t9,0x1f48($sp)
/* f169808: 3c03800b */ lui $v1,0x800b
/* f16980c: 8fb71f38 */ lw $s7,0x1f38($sp)
/* f169810: 1320000e */ beqz $t9,.NB0f16984c
/* f169814: 2463fde8 */ addiu $v1,$v1,-536
/* f169818: 8fcc000c */ lw $t4,0xc($s8)
/* f16981c: 8c650000 */ lw $a1,0x0($v1)
/* f169820: 3c01800b */ lui $at,0x800b
/* f169824: 8d8b0000 */ lw $t3,0x0($t4)
/* f169828: 00057100 */ sll $t6,$a1,0x4
/* f16982c: 002e0821 */ addu $at,$at,$t6
/* f169830: 000b6d02 */ srl $t5,$t3,0x14
/* f169834: a42df488 */ sh $t5,-0xb78($at)
/* f169838: 24b80001 */ addiu $t8,$a1,0x1
/* f16983c: 2b010096 */ slti $at,$t8,0x96
/* f169840: 14200002 */ bnez $at,.NB0f16984c
/* f169844: ac780000 */ sw $t8,0x0($v1)
/* f169848: ac600000 */ sw $zero,0x0($v1)
.NB0f16984c:
/* f16984c: 8faa1f60 */ lw $t2,0x1f60($sp)
/* f169850: 8fa31f64 */ lw $v1,0x1f64($sp)
/* f169854: 15400051 */ bnez $t2,.NB0f16999c
/* f169858: 28610002 */ slti $at,$v1,0x2
/* f16985c: 14200047 */ bnez $at,.NB0f16997c
/* f169860: afa61f30 */ sw $a2,0x1f30($sp)
/* f169864: 8fb51f5c */ lw $s5,0x1f5c($sp)
/* f169868: 28610002 */ slti $at,$v1,0x2
/* f16986c: 02e09025 */ or $s2,$s7,$zero
/* f169870: 8fb31f34 */ lw $s3,0x1f34($sp)
/* f169874: 24140001 */ addiu $s4,$zero,0x1
/* f169878: afa21f54 */ sw $v0,0x1f54($sp)
/* f16987c: 14200037 */ bnez $at,.NB0f16995c
/* f169880: 02b68021 */ addu $s0,$s5,$s6
/* f169884: afa21f54 */ sw $v0,0x1f54($sp)
/* f169888: 27b71524 */ addiu $s7,$sp,0x1524
.NB0f16988c:
/* f16988c: 8fb91f44 */ lw $t9,0x1f44($sp)
/* f169890: 8fac1f30 */ lw $t4,0x1f30($sp)
/* f169894: 02a02025 */ or $a0,$s5,$zero
/* f169898: 02002825 */ or $a1,$s0,$zero
/* f16989c: 02403025 */ or $a2,$s2,$zero
/* f1698a0: 02603825 */ or $a3,$s3,$zero
/* f1698a4: afb70014 */ sw $s7,0x14($sp)
/* f1698a8: afb90010 */ sw $t9,0x10($sp)
/* f1698ac: 0fc5a763 */ jal 0xf169d8c
/* f1698b0: afac0018 */ sw $t4,0x18($sp)
/* f1698b4: 3c0b8009 */ lui $t3,0x8009
/* f1698b8: 916b30e0 */ lbu $t3,0x30e0($t3)
/* f1698bc: 24010001 */ addiu $at,$zero,0x1
/* f1698c0: 00408825 */ or $s1,$v0,$zero
/* f1698c4: 1561000b */ bne $t3,$at,.NB0f1698f4
/* f1698c8: 02c2c821 */ addu $t9,$s6,$v0
/* f1698cc: 24010002 */ addiu $at,$zero,0x2
/* f1698d0: 56810009 */ bnel $s4,$at,.NB0f1698f8
/* f1698d4: 2b210801 */ slti $at,$t9,0x801
/* f1698d8: 8fc3000c */ lw $v1,0xc($s8)
/* f1698dc: 0014c140 */ sll $t8,$s4,0x5
/* f1698e0: 906f000b */ lbu $t7,0xb($v1)
/* f1698e4: 31eaff1f */ andi $t2,$t7,0xff1f
/* f1698e8: 030a4825 */ or $t1,$t8,$t2
/* f1698ec: 1000001b */ beqz $zero,.NB0f16995c
/* f1698f0: a069000b */ sb $t1,0xb($v1)
.NB0f1698f4:
/* f1698f4: 2b210801 */ slti $at,$t9,0x801
.NB0f1698f8:
/* f1698f8: 14200008 */ bnez $at,.NB0f16991c
/* f1698fc: 02a02025 */ or $a0,$s5,$zero
/* f169900: 8fc3000c */ lw $v1,0xc($s8)
/* f169904: 00146940 */ sll $t5,$s4,0x5
/* f169908: 906e000b */ lbu $t6,0xb($v1)
/* f16990c: 31cfff1f */ andi $t7,$t6,0xff1f
/* f169910: 01afc025 */ or $t8,$t5,$t7
/* f169914: 10000011 */ beqz $zero,.NB0f16995c
/* f169918: a078000b */ sb $t8,0xb($v1)
.NB0f16991c:
/* f16991c: 02402825 */ or $a1,$s2,$zero
/* f169920: 02603025 */ or $a2,$s3,$zero
/* f169924: 0fc5b5a4 */ jal 0xf16d690
/* f169928: 8fa71f44 */ lw $a3,0x1f44($sp)
/* f16992c: 8fb91f64 */ lw $t9,0x1f64($sp)
/* f169930: 26520001 */ addiu $s2,$s2,0x1
/* f169934: 26730001 */ addiu $s3,$s3,0x1
/* f169938: 26940001 */ addiu $s4,$s4,0x1
/* f16993c: 00125043 */ sra $t2,$s2,0x1
/* f169940: 00134843 */ sra $t1,$s3,0x1
/* f169944: 0200a825 */ or $s5,$s0,$zero
/* f169948: 02d1b021 */ addu $s6,$s6,$s1
/* f16994c: 01409025 */ or $s2,$t2,$zero
/* f169950: 01209825 */ or $s3,$t1,$zero
/* f169954: 1699ffcd */ bne $s4,$t9,.NB0f16988c
/* f169958: 02118021 */ addu $s0,$s0,$s1
.NB0f16995c:
/* f16995c: 02a02025 */ or $a0,$s5,$zero
/* f169960: 02402825 */ or $a1,$s2,$zero
/* f169964: 02603025 */ or $a2,$s3,$zero
/* f169968: 0fc5b5a4 */ jal 0xf16d690
/* f16996c: 8fa71f44 */ lw $a3,0x1f44($sp)
/* f169970: 8fa61f30 */ lw $a2,0x1f30($sp)
/* f169974: 10000009 */ beqz $zero,.NB0f16999c
/* f169978: 8fa21f54 */ lw $v0,0x1f54($sp)
.NB0f16997c:
/* f16997c: afa21f54 */ sw $v0,0x1f54($sp)
/* f169980: 8fa41f5c */ lw $a0,0x1f5c($sp)
/* f169984: 02e02825 */ or $a1,$s7,$zero
/* f169988: 8fa61f34 */ lw $a2,0x1f34($sp)
/* f16998c: 0fc5b5a4 */ jal 0xf16d690
/* f169990: 8fa71f44 */ lw $a3,0x1f44($sp)
/* f169994: 8fa61f30 */ lw $a2,0x1f30($sp)
/* f169998: 8fa21f54 */ lw $v0,0x1f54($sp)
.NB0f16999c:
/* f16999c: 18c0000e */ blez $a2,.NB0f1699d8
/* f1699a0: 30d80001 */ andi $t8,$a2,0x1
/* f1699a4: 8fac1f5c */ lw $t4,0x1f5c($sp)
/* f1699a8: 27a31524 */ addiu $v1,$sp,0x1524
/* f1699ac: 01968021 */ addu $s0,$t4,$s6
.NB0f1699b0:
/* f1699b0: 946b0000 */ lhu $t3,0x0($v1)
/* f1699b4: 24420001 */ addiu $v0,$v0,0x1
/* f1699b8: 24630002 */ addiu $v1,$v1,0x2
/* f1699bc: 000b7203 */ sra $t6,$t3,0x8
/* f1699c0: a20e0000 */ sb $t6,0x0($s0)
/* f1699c4: 946ffffe */ lhu $t7,-0x2($v1)
/* f1699c8: 26d60002 */ addiu $s6,$s6,0x2
/* f1699cc: 26100002 */ addiu $s0,$s0,0x2
/* f1699d0: 1446fff7 */ bne $v0,$a2,.NB0f1699b0
/* f1699d4: a20fffff */ sb $t7,-0x1($s0)
.NB0f1699d8:
/* f1699d8: 1300000c */ beqz $t8,.NB0f169a0c
/* f1699dc: 2401fff8 */ addiu $at,$zero,-8
/* f1699e0: 8faa1f5c */ lw $t2,0x1f5c($sp)
/* f1699e4: 02ca8021 */ addu $s0,$s6,$t2
/* f1699e8: 9209fffe */ lbu $t1,-0x2($s0)
/* f1699ec: 9219ffff */ lbu $t9,-0x1($s0)
/* f1699f0: 26d60002 */ addiu $s6,$s6,0x2
/* f1699f4: a2090000 */ sb $t1,0x0($s0)
/* f1699f8: a2190001 */ sb $t9,0x1($s0)
/* f1699fc: 8fc3000c */ lw $v1,0xc($s8)
/* f169a00: 906c000a */ lbu $t4,0xa($v1)
/* f169a04: 258b0001 */ addiu $t3,$t4,0x1
/* f169a08: a06b000a */ sb $t3,0xa($v1)
.NB0f169a0c:
/* f169a0c: 8fbf007c */ lw $ra,0x7c($sp)
/* f169a10: 26d60007 */ addiu $s6,$s6,0x7
/* f169a14: 02c11024 */ and $v0,$s6,$at
/* f169a18: 8fb60070 */ lw $s6,0x70($sp)
/* f169a1c: 8fb00058 */ lw $s0,0x58($sp)
/* f169a20: 8fb1005c */ lw $s1,0x5c($sp)
/* f169a24: 8fb20060 */ lw $s2,0x60($sp)
/* f169a28: 8fb30064 */ lw $s3,0x64($sp)
/* f169a2c: 8fb40068 */ lw $s4,0x68($sp)
/* f169a30: 8fb5006c */ lw $s5,0x6c($sp)
/* f169a34: 8fb70074 */ lw $s7,0x74($sp)
/* f169a38: 8fbe0078 */ lw $s8,0x78($sp)
/* f169a3c: 03e00008 */ jr $ra
/* f169a40: 27bd1f58 */ addiu $sp,$sp,0x1f58
);
#endif
GLOBAL_ASM(
glabel func0f16edac
@@ -5854,425 +6307,12 @@ glabel func0f1734e8
/* f173504: 27bd0020 */ addiu $sp,$sp,0x20
/* f173508: 03e00008 */ jr $ra
/* f17350c: 00000000 */ nop
);
GLOBAL_ASM(
glabel func0f173510
/* f173510: afa50004 */ sw $a1,0x4($sp)
/* f173514: afa60008 */ sw $a2,0x8($sp)
/* f173518: 03e00008 */ jr $ra
/* f17351c: 00801025 */ or $v0,$a0,$zero
);
GLOBAL_ASM(
glabel func0f173520
/* f173520: 3c01800b */ lui $at,%hi(var800ab540)
/* f173524: ac24b540 */ sw $a0,%lo(var800ab540)($at)
/* f173528: 3c01800b */ lui $at,%hi(var800ab544)
/* f17352c: ac20b544 */ sw $zero,%lo(var800ab544)($at)
/* f173530: 3c01800b */ lui $at,%hi(var800ab548)
/* f173534: 03e00008 */ jr $ra
/* f173538: ac20b548 */ sw $zero,%lo(var800ab548)($at)
);
GLOBAL_ASM(
glabel func0f17353c
/* f17353c: 3c05800b */ lui $a1,%hi(var800ab548)
/* f173540: 24a5b548 */ addiu $a1,$a1,%lo(var800ab548)
/* f173544: 8ca30000 */ lw $v1,0x0($a1)
/* f173548: 3c07800b */ lui $a3,%hi(var800ab540)
/* f17354c: 24e7b540 */ addiu $a3,$a3,%lo(var800ab540)
/* f173550: 0064082a */ slt $at,$v1,$a0
/* f173554: 1020000f */ beqz $at,.L0f173594
/* f173558: 3c06800b */ lui $a2,%hi(var800ab544)
/* f17355c: 24c6b544 */ addiu $a2,$a2,%lo(var800ab544)
.L0f173560:
/* f173560: 8ce20000 */ lw $v0,0x0($a3)
/* f173564: 8ccf0000 */ lw $t7,0x0($a2)
/* f173568: 24690008 */ addiu $t1,$v1,0x8
/* f17356c: 904e0000 */ lbu $t6,0x0($v0)
/* f173570: 000fc200 */ sll $t8,$t7,0x8
/* f173574: 0124082a */ slt $at,$t1,$a0
/* f173578: 24480001 */ addiu $t0,$v0,0x1
/* f17357c: 01d8c825 */ or $t9,$t6,$t8
/* f173580: acd90000 */ sw $t9,0x0($a2)
/* f173584: ace80000 */ sw $t0,0x0($a3)
/* f173588: aca90000 */ sw $t1,0x0($a1)
/* f17358c: 1420fff4 */ bnez $at,.L0f173560
/* f173590: 01201825 */ or $v1,$t1,$zero
.L0f173594:
/* f173594: 3c06800b */ lui $a2,%hi(var800ab544)
/* f173598: 24c6b544 */ addiu $a2,$a2,%lo(var800ab544)
/* f17359c: 8ccb0000 */ lw $t3,0x0($a2)
/* f1735a0: 240f0001 */ addiu $t7,$zero,0x1
/* f1735a4: 00645023 */ subu $t2,$v1,$a0
/* f1735a8: 008f7004 */ sllv $t6,$t7,$a0
/* f1735ac: 25d8ffff */ addiu $t8,$t6,-1
/* f1735b0: 014b6806 */ srlv $t5,$t3,$t2
/* f1735b4: acaa0000 */ sw $t2,0x0($a1)
/* f1735b8: 03e00008 */ jr $ra
/* f1735bc: 01b81024 */ and $v0,$t5,$t8
);
GLOBAL_ASM(
glabel texturesLoadConfigs
/* f1735c0: 27bdffd8 */ addiu $sp,$sp,-40
/* f1735c4: 3c0e0200 */ lui $t6,0x200
/* f1735c8: 3c0f0200 */ lui $t7,0x200
/* f1735cc: afb1001c */ sw $s1,0x1c($sp)
/* f1735d0: 25ef0000 */ addiu $t7,$t7,0x0
/* f1735d4: 25ce0b50 */ addiu $t6,$t6,0xb50
/* f1735d8: afbf0024 */ sw $ra,0x24($sp)
/* f1735dc: 01cf8823 */ subu $s1,$t6,$t7
/* f1735e0: afb20020 */ sw $s2,0x20($sp)
/* f1735e4: afb00018 */ sw $s0,0x18($sp)
/* f1735e8: 02202025 */ or $a0,$s1,$zero
/* f1735ec: 0c0048f2 */ jal malloc
/* f1735f0: 24050004 */ addiu $a1,$zero,0x4
/* f1735f4: 3c03800b */ lui $v1,%hi(g_TextureConfigSegment)
/* f1735f8: 2463b554 */ addiu $v1,$v1,%lo(g_TextureConfigSegment)
/* f1735fc: 3c05007f */ lui $a1,%hi(_textureconfigSegmentRomStart)
/* f173600: ac620000 */ sw $v0,0x0($v1)
/* f173604: 24a5b270 */ addiu $a1,$a1,%lo(_textureconfigSegmentRomStart)
/* f173608: 00402025 */ or $a0,$v0,$zero
/* f17360c: 0c003504 */ jal dmaExec
/* f173610: 02203025 */ or $a2,$s1,$zero
/* f173614: 3c18800b */ lui $t8,%hi(g_TextureConfigSegment)
/* f173618: 8f18b554 */ lw $t8,%lo(g_TextureConfigSegment)($t8)
/* f17361c: 3c070200 */ lui $a3,0x200
/* f173620: 3c06800b */ lui $a2,%hi(var800ab550)
/* f173624: 3c080200 */ lui $t0,0x200
/* f173628: 03071023 */ subu $v0,$t8,$a3
/* f17362c: 24c6b550 */ addiu $a2,$a2,%lo(var800ab550)
/* f173630: 25080000 */ addiu $t0,$t0,0x0
/* f173634: acc20000 */ sw $v0,0x0($a2)
/* f173638: 00484821 */ addu $t1,$v0,$t0
/* f17363c: 3c01800b */ lui $at,%hi(var800ab564)
/* f173640: 3c0a0200 */ lui $t2,0x200
/* f173644: ac29b564 */ sw $t1,%lo(var800ab564)($at)
/* f173648: 254a0070 */ addiu $t2,$t2,0x70
/* f17364c: 004a5821 */ addu $t3,$v0,$t2
/* f173650: 3c01800b */ lui $at,%hi(var800ab568)
/* f173654: 3c0c0200 */ lui $t4,0x200
/* f173658: ac2bb568 */ sw $t3,%lo(var800ab568)($at)
/* f17365c: 258c00d8 */ addiu $t4,$t4,0xd8
/* f173660: 004c6821 */ addu $t5,$v0,$t4
/* f173664: 3c01800b */ lui $at,%hi(var800ab56c)
/* f173668: 3c0e0200 */ lui $t6,0x200
/* f17366c: 3c12800b */ lui $s2,%hi(var800ab570)
/* f173670: ac2db56c */ sw $t5,%lo(var800ab56c)($at)
/* f173674: 25ce0148 */ addiu $t6,$t6,0x148
/* f173678: 3c030200 */ lui $v1,0x200
/* f17367c: 2652b570 */ addiu $s2,$s2,%lo(var800ab570)
/* f173680: 004e7821 */ addu $t7,$v0,$t6
/* f173684: 246301c0 */ addiu $v1,$v1,0x1c0
/* f173688: ae4f0000 */ sw $t7,0x0($s2)
/* f17368c: 0062c021 */ addu $t8,$v1,$v0
/* f173690: 3c01800b */ lui $at,%hi(var800ab560)
/* f173694: 3c190200 */ lui $t9,0x200
/* f173698: ac38b560 */ sw $t8,%lo(var800ab560)($at)
/* f17369c: 27390298 */ addiu $t9,$t9,0x298
/* f1736a0: 00594021 */ addu $t0,$v0,$t9
/* f1736a4: 3c01800b */ lui $at,%hi(var800ab574)
/* f1736a8: 3c090200 */ lui $t1,0x200
/* f1736ac: ac28b574 */ sw $t0,%lo(var800ab574)($at)
/* f1736b0: 252902d4 */ addiu $t1,$t1,0x2d4
/* f1736b4: 00495021 */ addu $t2,$v0,$t1
/* f1736b8: 3c01800b */ lui $at,%hi(var800ab578)
/* f1736bc: 3c0b0200 */ lui $t3,0x200
/* f1736c0: ac2ab578 */ sw $t2,%lo(var800ab578)($at)
/* f1736c4: 256b02e0 */ addiu $t3,$t3,0x2e0
/* f1736c8: 004b6021 */ addu $t4,$v0,$t3
/* f1736cc: 3c01800b */ lui $at,%hi(var800ab57c)
/* f1736d0: 3c0d0200 */ lui $t5,0x200
/* f1736d4: ac2cb57c */ sw $t4,%lo(var800ab57c)($at)
/* f1736d8: 25ad02ec */ addiu $t5,$t5,0x2ec
/* f1736dc: 004d7021 */ addu $t6,$v0,$t5
/* f1736e0: 3c01800b */ lui $at,%hi(var800ab580)
/* f1736e4: 3c0f0200 */ lui $t7,0x200
/* f1736e8: ac2eb580 */ sw $t6,%lo(var800ab580)($at)
/* f1736ec: 25ef02f8 */ addiu $t7,$t7,0x2f8
/* f1736f0: 004fc021 */ addu $t8,$v0,$t7
/* f1736f4: 3c01800b */ lui $at,%hi(var800ab584)
/* f1736f8: 3c190200 */ lui $t9,0x200
/* f1736fc: ac38b584 */ sw $t8,%lo(var800ab584)($at)
/* f173700: 27390304 */ addiu $t9,$t9,0x304
/* f173704: 00594021 */ addu $t0,$v0,$t9
/* f173708: 3c01800b */ lui $at,%hi(var800ab588)
/* f17370c: 3c090200 */ lui $t1,0x200
/* f173710: ac28b588 */ sw $t0,%lo(var800ab588)($at)
/* f173714: 25290310 */ addiu $t1,$t1,0x310
/* f173718: 00495021 */ addu $t2,$v0,$t1
/* f17371c: 3c01800b */ lui $at,%hi(var800ab58c)
/* f173720: 3c0b0200 */ lui $t3,0x200
/* f173724: ac2ab58c */ sw $t2,%lo(var800ab58c)($at)
/* f173728: 256b031c */ addiu $t3,$t3,0x31c
/* f17372c: 004b6021 */ addu $t4,$v0,$t3
/* f173730: 3c01800b */ lui $at,%hi(var800ab590)
/* f173734: 3c0d0200 */ lui $t5,0x200
/* f173738: ac2cb590 */ sw $t4,%lo(var800ab590)($at)
/* f17373c: 25ad0334 */ addiu $t5,$t5,0x334
/* f173740: 004d7021 */ addu $t6,$v0,$t5
/* f173744: 3c01800b */ lui $at,%hi(var800ab594)
/* f173748: 3c0f0200 */ lui $t7,0x200
/* f17374c: ac2eb594 */ sw $t6,%lo(var800ab594)($at)
/* f173750: 25ef07b4 */ addiu $t7,$t7,0x7b4
/* f173754: 004fc021 */ addu $t8,$v0,$t7
/* f173758: 3c01800b */ lui $at,%hi(var800ab598)
/* f17375c: 3c190200 */ lui $t9,0x200
/* f173760: ac38b598 */ sw $t8,%lo(var800ab598)($at)
/* f173764: 273907d8 */ addiu $t9,$t9,0x7d8
/* f173768: 00594021 */ addu $t0,$v0,$t9
/* f17376c: 3c01800b */ lui $at,%hi(var800ab59c)
/* f173770: 3c090200 */ lui $t1,0x200
/* f173774: ac28b59c */ sw $t0,%lo(var800ab59c)($at)
/* f173778: 25290820 */ addiu $t1,$t1,0x820
/* f17377c: 00495021 */ addu $t2,$v0,$t1
/* f173780: 3c01800b */ lui $at,%hi(var800ab5a0)
/* f173784: 3c0b0200 */ lui $t3,0x200
/* f173788: ac2ab5a0 */ sw $t2,%lo(var800ab5a0)($at)
/* f17378c: 256b0898 */ addiu $t3,$t3,0x898
/* f173790: 004b6021 */ addu $t4,$v0,$t3
/* f173794: 3c01800b */ lui $at,%hi(var800ab5a4)
/* f173798: 3c0d0200 */ lui $t5,0x200
/* f17379c: ac2cb5a4 */ sw $t4,%lo(var800ab5a4)($at)
/* f1737a0: 25ad08a4 */ addiu $t5,$t5,0x8a4
/* f1737a4: 004d7021 */ addu $t6,$v0,$t5
/* f1737a8: 3c01800b */ lui $at,%hi(var800ab5a8)
/* f1737ac: 3c0f0200 */ lui $t7,0x200
/* f1737b0: ac2eb5a8 */ sw $t6,%lo(var800ab5a8)($at)
/* f1737b4: 25ef0b44 */ addiu $t7,$t7,0xb44
/* f1737b8: 004fc021 */ addu $t8,$v0,$t7
/* f1737bc: 3c01800b */ lui $at,%hi(var800ab5ac)
/* f1737c0: ac38b5ac */ sw $t8,%lo(var800ab5ac)($at)
/* f1737c4: 0223c823 */ subu $t9,$s1,$v1
/* f1737c8: 03274021 */ addu $t0,$t9,$a3
/* f1737cc: 2401000c */ addiu $at,$zero,0xc
/* f1737d0: 0101001b */ divu $zero,$t0,$at
/* f1737d4: 3c10800b */ lui $s0,%hi(var800ab558)
/* f1737d8: 00004812 */ mflo $t1
/* f1737dc: 3c01800b */ lui $at,%hi(var800ab558)
/* f1737e0: 2610b558 */ addiu $s0,$s0,%lo(var800ab558)
/* f1737e4: ac29b558 */ sw $t1,%lo(var800ab558)($at)
/* f1737e8: 8e040000 */ lw $a0,0x0($s0)
/* f1737ec: 24050004 */ addiu $a1,$zero,0x4
/* f1737f0: 00045080 */ sll $t2,$a0,0x2
/* f1737f4: 2544000f */ addiu $a0,$t2,0xf
/* f1737f8: 348b000f */ ori $t3,$a0,0xf
/* f1737fc: 0c0048f2 */ jal malloc
/* f173800: 3964000f */ xori $a0,$t3,0xf
/* f173804: 8e0d0000 */ lw $t5,0x0($s0)
/* f173808: 3c03800b */ lui $v1,%hi(var800ab55c)
/* f17380c: 2463b55c */ addiu $v1,$v1,%lo(var800ab55c)
/* f173810: ac620000 */ sw $v0,0x0($v1)
/* f173814: 19a0000c */ blez $t5,.L0f173848
/* f173818: 00008825 */ or $s1,$zero,$zero
/* f17381c: 00001025 */ or $v0,$zero,$zero
/* f173820: 8c6e0000 */ lw $t6,0x0($v1)
.L0f173824:
/* f173824: 26310001 */ addiu $s1,$s1,0x1
/* f173828: 01c27821 */ addu $t7,$t6,$v0
/* f17382c: ade00000 */ sw $zero,0x0($t7)
/* f173830: 8e180000 */ lw $t8,0x0($s0)
/* f173834: 24420004 */ addiu $v0,$v0,0x4
/* f173838: 0238082a */ slt $at,$s1,$t8
/* f17383c: 5420fff9 */ bnezl $at,.L0f173824
/* f173840: 8c6e0000 */ lw $t6,0x0($v1)
/* f173844: 00008825 */ or $s1,$zero,$zero
.L0f173848:
/* f173848: 8e590000 */ lw $t9,0x0($s2)
.L0f17384c:
/* f17384c: 001180c0 */ sll $s0,$s1,0x3
/* f173850: 00002825 */ or $a1,$zero,$zero
/* f173854: 00003025 */ or $a2,$zero,$zero
/* f173858: 0fc5cc04 */ jal func0f173010
/* f17385c: 02192021 */ addu $a0,$s0,$t9
/* f173860: 8e480000 */ lw $t0,0x0($s2)
/* f173864: 00002825 */ or $a1,$zero,$zero
/* f173868: 00003025 */ or $a2,$zero,$zero
/* f17386c: 02082021 */ addu $a0,$s0,$t0
/* f173870: 0fc5cc04 */ jal func0f173010
/* f173874: 24840004 */ addiu $a0,$a0,0x4
/* f173878: 26310001 */ addiu $s1,$s1,0x1
/* f17387c: 2a21000f */ slti $at,$s1,0xf
/* f173880: 5420fff2 */ bnezl $at,.L0f17384c
/* f173884: 8e590000 */ lw $t9,0x0($s2)
/* f173888: 3c04800b */ lui $a0,%hi(var800ab564)
/* f17388c: 8c84b564 */ lw $a0,%lo(var800ab564)($a0)
/* f173890: 00002825 */ or $a1,$zero,$zero
/* f173894: 0fc5cbd7 */ jal func0f172f5c
/* f173898: 00003025 */ or $a2,$zero,$zero
/* f17389c: 3c04800b */ lui $a0,%hi(var800ab56c)
/* f1738a0: 8c84b56c */ lw $a0,%lo(var800ab56c)($a0)
/* f1738a4: 00002825 */ or $a1,$zero,$zero
/* f1738a8: 0fc5cbd7 */ jal func0f172f5c
/* f1738ac: 00003025 */ or $a2,$zero,$zero
/* f1738b0: 0c003a61 */ jal mainGetStageNum
/* f1738b4: 00000000 */ nop
/* f1738b8: 3c098009 */ lui $t1,%hi(g_Is4Mb)
/* f1738bc: 91290af0 */ lbu $t1,%lo(g_Is4Mb)($t1)
/* f1738c0: 24010001 */ addiu $at,$zero,0x1
/* f1738c4: 15210045 */ bne $t1,$at,.L0f1739dc
/* f1738c8: 2401005a */ addiu $at,$zero,0x5a
/* f1738cc: 10410043 */ beq $v0,$at,.L0f1739dc
/* f1738d0: 24010026 */ addiu $at,$zero,0x26
/* f1738d4: 10410041 */ beq $v0,$at,.L0f1739dc
/* f1738d8: 2401005d */ addiu $at,$zero,0x5d
/* f1738dc: 1041003f */ beq $v0,$at,.L0f1739dc
/* f1738e0: 00008025 */ or $s0,$zero,$zero
.L0f1738e4:
/* f1738e4: 3c0a800b */ lui $t2,%hi(var800ab560)
/* f1738e8: 8d4ab560 */ lw $t2,%lo(var800ab560)($t2)
/* f1738ec: 0fc2ce62 */ jal func0f0b3988
/* f1738f0: 020a2021 */ addu $a0,$s0,$t2
/* f1738f4: 2610000c */ addiu $s0,$s0,0xc
/* f1738f8: 2a0100d8 */ slti $at,$s0,0xd8
/* f1738fc: 1420fff9 */ bnez $at,.L0f1738e4
/* f173900: 00000000 */ nop
/* f173904: 00008025 */ or $s0,$zero,$zero
.L0f173908:
/* f173908: 3c0b800b */ lui $t3,%hi(var800ab574)
/* f17390c: 8d6bb574 */ lw $t3,%lo(var800ab574)($t3)
/* f173910: 0fc2ce62 */ jal func0f0b3988
/* f173914: 020b2021 */ addu $a0,$s0,$t3
/* f173918: 2610000c */ addiu $s0,$s0,0xc
/* f17391c: 2a01003c */ slti $at,$s0,0x3c
/* f173920: 1420fff9 */ bnez $at,.L0f173908
/* f173924: 00000000 */ nop
/* f173928: 00008025 */ or $s0,$zero,$zero
.L0f17392c:
/* f17392c: 3c0c800b */ lui $t4,%hi(var800ab598)
/* f173930: 8d8cb598 */ lw $t4,%lo(var800ab598)($t4)
/* f173934: 0fc2ce62 */ jal func0f0b3988
/* f173938: 020c2021 */ addu $a0,$s0,$t4
/* f17393c: 2610000c */ addiu $s0,$s0,0xc
/* f173940: 2a010024 */ slti $at,$s0,0x24
/* f173944: 1420fff9 */ bnez $at,.L0f17392c
/* f173948: 00000000 */ nop
/* f17394c: 00008025 */ or $s0,$zero,$zero
.L0f173950:
/* f173950: 3c0d800b */ lui $t5,%hi(var800ab588)
/* f173954: 8dadb588 */ lw $t5,%lo(var800ab588)($t5)
/* f173958: 0fc2ce62 */ jal func0f0b3988
/* f17395c: 020d2021 */ addu $a0,$s0,$t5
/* f173960: 2610000c */ addiu $s0,$s0,0xc
/* f173964: 2a01000c */ slti $at,$s0,0xc
/* f173968: 1420fff9 */ bnez $at,.L0f173950
/* f17396c: 00000000 */ nop
/* f173970: 00008025 */ or $s0,$zero,$zero
.L0f173974:
/* f173974: 3c0e800b */ lui $t6,%hi(var800ab58c)
/* f173978: 8dceb58c */ lw $t6,%lo(var800ab58c)($t6)
/* f17397c: 0fc2ce62 */ jal func0f0b3988
/* f173980: 020e2021 */ addu $a0,$s0,$t6
/* f173984: 2610000c */ addiu $s0,$s0,0xc
/* f173988: 2a01000c */ slti $at,$s0,0xc
/* f17398c: 1420fff9 */ bnez $at,.L0f173974
/* f173990: 00000000 */ nop
/* f173994: 00008025 */ or $s0,$zero,$zero
.L0f173998:
/* f173998: 3c0f800b */ lui $t7,%hi(var800ab5ac)
/* f17399c: 8defb5ac */ lw $t7,%lo(var800ab5ac)($t7)
/* f1739a0: 0fc2ce62 */ jal func0f0b3988
/* f1739a4: 020f2021 */ addu $a0,$s0,$t7
/* f1739a8: 2610000c */ addiu $s0,$s0,0xc
/* f1739ac: 2a01000c */ slti $at,$s0,0xc
/* f1739b0: 1420fff9 */ bnez $at,.L0f173998
/* f1739b4: 00000000 */ nop
/* f1739b8: 00008025 */ or $s0,$zero,$zero
/* f1739bc: 2411000c */ addiu $s1,$zero,0xc
.L0f1739c0:
/* f1739c0: 3c18800b */ lui $t8,%hi(var800ab5a4)
/* f1739c4: 8f18b5a4 */ lw $t8,%lo(var800ab5a4)($t8)
/* f1739c8: 0fc2ce62 */ jal func0f0b3988
/* f1739cc: 02182021 */ addu $a0,$s0,$t8
/* f1739d0: 2610000c */ addiu $s0,$s0,0xc
/* f1739d4: 1611fffa */ bne $s0,$s1,.L0f1739c0
/* f1739d8: 00000000 */ nop
.L0f1739dc:
/* f1739dc: 8fbf0024 */ lw $ra,0x24($sp)
/* f1739e0: 8fb00018 */ lw $s0,0x18($sp)
/* f1739e4: 8fb1001c */ lw $s1,0x1c($sp)
/* f1739e8: 8fb20020 */ lw $s2,0x20($sp)
/* f1739ec: 03e00008 */ jr $ra
/* f1739f0: 27bd0028 */ addiu $sp,$sp,0x28
);
//extern u8 *_textureconfigSegmentRomStart;
//extern u8 *_textureconfigSegmentStart;
//extern u8 *_textureconfigSegmentEnd;
// Unfinished
//void texturesLoadConfigs(void)
//{
// s32 stage;
// u32 len = &_textureconfigSegmentEnd - &_textureconfigSegmentStart;
// s32 i;
//
// g_TextureConfigSegment = malloc(len, MEMPOOL_STAGE);
// dmaExec(g_TextureConfigSegment, &_textureconfigSegmentRomStart, len);
//
// var800ab550 = (u32)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart);
// var800ab564 = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x000); // gdl000
// var800ab568 = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x070); // gdl070
// var800ab56c = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x0d8); // gdl0d8
// var800ab570 = (u32 *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x148); // g_ExplosionTextureNums
// var800ab560 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x1c0);
// var800ab574 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x298);
// var800ab578 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2d4);
// var800ab57c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2e0);
// var800ab580 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2ec);
// var800ab584 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2f8);
// var800ab588 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x304);
// var800ab58c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x310);
// var800ab590 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x31c);
// var800ab594 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x334);
// var800ab598 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x7b4);
// var800ab59c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x7d8);
// var800ab5a0 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x820);
// var800ab5a4 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x898);
// var800ab5a8 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x8a4);
// var800ab5ac = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0xb44);
//
// var800ab558 = (len - ((u32)&_textureconfigSegmentStart + 0x1c0)) + (u32)&_textureconfigSegmentStart;
// var800ab55c = malloc(align16(var800ab558), MEMPOOL_STAGE);
//
// for (i = 0; i < var800ab558; i++) {
// var800ab55c[i].texturenum = 0;
// }
//
// for (i = 0; i < 15; i++) {
// func0f173010(&var800ab570[i * 2 + 0], 0, 0);
// func0f173010(&var800ab570[i * 2 + 1], 0, 0);
// }
//
// func0f172f5c(var800ab564, 0, 0);
// func0f172f5c(var800ab56c, 0, 0);
// stage = mainGetStageNum();
//
// if (IS4MB() && stage != STAGE_TITLE && stage != STAGE_CITRAINING && stage != STAGE_4MBMENU) {
// for (i = 0; i < 12; i++) {
// func0f0b3988(&var800ab560[i]);
// }
//
// for (i = 0; i < 5; i++) {
// func0f0b3988(&var800ab574[i]);
// }
//
// for (i = 0; i < 3; i++) {
// func0f0b3988(&var800ab598[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab588[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab58c[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab5ac[i]);
// }
//
// for (i = 0; i < 1; i++) {
// func0f0b3988(&var800ab5a4[i]);
// }
// }
//}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+1906 -1
View File
File diff suppressed because it is too large. Load diff
+13 -7
View File
@@ -3,6 +3,13 @@
#include "files.h"
#include "sfx.h"
#define VERSION_NTSC_BETA 0
#define VERSION_NTSC_1_0 1
#define VERSION_NTSC_FINAL 2
#define VERSION_PAL_BETA 3
#define VERSION_PAL_FINAL 4
#define VERSION_JPN_FINAL 5
#define FALSE 0
#define TRUE 1
@@ -27,7 +34,13 @@
#define PLAYERCOUNT3012() ((g_Vars.players[3] ? 1 : 0) + (g_Vars.players[0] ? 1 : 0) + (g_Vars.players[1] ? 1 : 0) + (g_Vars.players[2] ? 1 : 0))
#define SECSTOTIME240(secs) (secs * 240)
#define SECSTOTIME60(secs) (secs * 60)
#if VERSION >= VERSION_NTSC_1_0
#define VOLUME(volume) (volume > 0x5000 ? 0x5000 : volume)
#else
#define VOLUME(volume) (volume)
#endif
#define EYESPYINACTIVE() (!g_Vars.currentplayer->eyespy || (g_Vars.currentplayer->eyespy && !g_Vars.currentplayer->eyespy->active))
#define ERASERSQDIST(p) ( \
@@ -3254,13 +3267,6 @@
#define VEHICLEMODE_ENGINESTART 1
#define VEHICLEMODE_RUNNING 2
#define VERSION_NTSC_BETA 0
#define VERSION_NTSC_1_0 1
#define VERSION_NTSC_FINAL 2
#define VERSION_PAL_BETA 3
#define VERSION_PAL_FINAL 4
#define VERSION_JPN_FINAL 5
#define VIMODE_DEFAULT 0
#define VIMODE_HIRES 1
+5
View File
@@ -307,8 +307,13 @@ extern s32 g_ScissorX2;
extern s32 g_ScissorY1;
extern s32 g_ScissorY2;
extern u32 var800711f0;
#if VERSION >= VERSION_NTSC_1_0
extern char *g_StringPointer;
extern char *g_StringPointer2;
#else
extern char g_StringPointer[125];
extern char g_StringPointer2[125];
#endif
extern s32 g_MpPlayerNum;
extern u32 var800714d8;
extern u16 g_ControlStyleOptions[];
+6
View File
@@ -204,7 +204,13 @@ bool chrSetChrPresetToChrNearPad(u32 checktype, struct chrdata *chr, f32 distanc
bool chrSetChrPresetToChrNearPos(u8 checktype, struct chrdata *chr, f32 distance, struct coord *pos, s16 *room);
bool chrSetPadPresetToPadOnRouteToTarget(struct chrdata *chr);
u32 func0f04aeb0(void);
#if VERSION >= VERSION_NTSC_1_0
bool func0f04af84(f32 chrwidth, struct coord *pos, s16 *rooms, f32 angle, bool arg4, bool arg5, bool arg6);
#else
bool func0f04af84(f32 chrwidth, struct coord *pos, s16 *rooms, f32 angle, bool arg4, bool arg5);
#endif
struct prop *chrSpawnAtCoord(s32 body, s32 head, struct coord *pos, s16 *room, f32 arg4, u8 *ailist, u32 flags);
bool func0f04b658(struct chrdata *chr);
bool chrMoveToPos(struct chrdata *chr, struct coord *pos, s16 *room, f32 angle, bool allowonscreen);
+3 -3
View File
@@ -6,8 +6,8 @@
u32 dprint();
s32 debug0f11ed70(void);
bool debug0f11ed78(void);
bool debug0f11ed80(void);
bool debugEnableBgRendering(void);
bool debugEnablePropRendering(void);
bool debug0f11edb0(void);
bool debug0f11edb8(void);
bool debugIsRoomStateDebugEnabled(void);
@@ -19,7 +19,7 @@ u32 debugGetSlowMotion(void);
bool debug0f11ee88(void);
bool debug0f11ee90(void);
bool debug0f11eea8(void);
bool debug0f11eeb0(void);
bool debugDangerousProps(void);
s32 debugGetMotionBlur(void);
bool debugEnableFootsteps(void);
bool debugAllowEndLevel(void);
+1 -1
View File
@@ -114,7 +114,7 @@ void mpCreateScenarioHudmsg(s32 playernum, char *message);
bool mpChrsAreSameTeam(s32 arg0, s32 arg1);
u32 chrGiveBriefcase(struct chrdata *chr, struct prop *prop);
void func0f187288(struct chrdata *chr, struct prop *prop);
bool chrGiveUplink(struct chrdata *chr, struct prop *prop);
s32 chrGiveUplink(struct chrdata *chr, struct prop *prop);
void scenarioHtmActivateUplink(struct chrdata *chr, struct prop *prop);
s32 menuhandlerMpDropOut(s32 operation, struct menuitem *item, union handlerdata *data);
s32 menuhandlerMpTeamsLabel(s32 operation, struct menuitem *item, union handlerdata *data);
+1 -1
View File
@@ -44,7 +44,7 @@ s32 optionsGetScreenRatio(void);
void optionsSetScreenRatio(s32 ratio);
u8 optionsGetScreenSplit(void);
void optionsSetScreenSplit(u8 split);
s32 optionsGetMusicVolume(void);
u16 optionsGetMusicVolume(void);
void optionsSetMusicVolume(u16 volume);
#endif
+6
View File
@@ -1300,8 +1300,12 @@ struct chrdata {
/*0x192*/ u16 hidden2; // First 3 bits are a number
/*0x194*/ f32 magicframe;
/*0x198*/ f32 magicspeed;
#if VERSION >= VERSION_NTSC_1_0
/*0x19c*/ s16 magicanim;
/*0x19e*/ s16 goposforce;
#else
/*0x19c*/ s32 magicanim;
#endif
/*0x1a0*/ s32 bdlist[60];
/*0x290*/ u8 bdstart;
/*0x291*/ u8 goposhitcount;
@@ -6895,7 +6899,9 @@ struct audiochannel {
/*0x54*/ struct coord *posptr;
/*0x58*/ struct coord pos;
/*0x64*/ s16 rooms[8];
#if VERSION >= VERSION_NTSC_1_0
/*0x74*/ u32 uuid;
#endif
};
struct var8007e3d0_data {
+6 -6
View File
@@ -148,7 +148,7 @@ void func000139c8(void)
#endif
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
// Same function as the one a couple above, just relocated
u32 func00013980(void)
{
@@ -436,7 +436,7 @@ u32 contGetConnectedControllers(void)
return g_ConnectedControllers;
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00014e9cnb
/* 14e9c: 3c018006 */ lui $at,0x8006
@@ -447,7 +447,7 @@ glabel func00014e9cnb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00014eb0nb
/* 14eb0: 3c018006 */ lui $at,0x8006
@@ -500,7 +500,7 @@ void contConsumeSamples(struct contdata *contdata)
}
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0001509cnb
/* 1509c: 3c0e8006 */ lui $t6,0x8006
@@ -1176,7 +1176,7 @@ u16 contGetButtonsPressedThisFrame(s8 contpadnum, u16 mask)
return g_ContDataPtr->buttonspressed[contpadnum] & mask;
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00015fa4nb
/* 15fa4: 3c038006 */ lui $v1,0x8006
@@ -1266,7 +1266,7 @@ void func00015144(
}
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00016130nb
/* 16130: 000471c0 */ sll $t6,$a0,0x7
+1 -1
View File
@@ -1223,7 +1223,7 @@ glabel bootUnmapTLBRange
/* 166c: 00000000 */ nop
);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func000016acnb
/* 16ac: 3c088000 */ lui $t0,0x8000
+7 -7
View File
@@ -202,7 +202,7 @@ OSScClient var8008dca8;
u32 var8008dcb0;
u32 g_OsMemSize;
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
u32 var8005e5ccnb = 1;
u32 var8005e5d0nb = 0x10000000;
#endif
@@ -565,7 +565,7 @@ glabel init
// osInvalICache((void *) 0x80000000, 0x4000);
// __osSetFpcCsr(__osGetFpcCsr() | 0xe80);
//
//#if VERSION == VERSION_NTSC_BETA
//#if VERSION < VERSION_NTSC_1_0
// var800902e4 = &varbc000c02;
// var800902e8 = 0x4040;
// varbc000c02 = 0x4040;
@@ -654,7 +654,7 @@ glabel allocateStack
// ptr8[i] = ((0xf - (threadid & 0xf)) << 4) | (threadid & 0xf);
// }
//
//#if VERSION == VERSION_NTSC_BETA
//#if VERSION < VERSION_NTSC_1_0
// // Mark the first 8 words specially
// ptr32 = (u32 *)g_StackStartAddrs[threadid];
//
@@ -717,14 +717,14 @@ glabel allocateStack
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
s32 initGetMemSize(void)
{
return g_OsMemSize;
}
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
void func00001978(void)
{
var8005e5ccnb = 1;
@@ -779,7 +779,7 @@ void mainproc(void *arg)
mainEntry();
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00001b70nb
/* 1b70: 3c048006 */ lui $a0,0x8006
@@ -822,7 +822,7 @@ glabel func00001b70nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00001bf4nb
/* 1bf4: 27bdff28 */ addiu $sp,$sp,-216
+1 -1
View File
@@ -4020,7 +4020,7 @@ glabel func0000b330
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000bd44nb
/* bd44: 3c018006 */ lui $at,0x8006
+11 -11
View File
@@ -124,7 +124,7 @@ void faultproc(void *arg0);
u32 crashRender(OSThread *thread, u32 *callstack, s32 *tracelen);
void crashPrintDescription(u32 mask, char *label, struct crashdescription *descriptions);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c1d0nb
/* c1d0: 27bdffe8 */ addiu $sp,$sp,-24
@@ -171,7 +171,7 @@ void faultproc(void *arg0)
osSetIntMask(mask);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
crashRender(thread, callstack, &tracelen);
func00001b1c(true);
#endif
@@ -310,7 +310,7 @@ bool crashIsReturnAddress(u32 *instruction)
return false;
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c4f0nb
/* c4f0: 90820000 */ lbu $v0,0x0($a0)
@@ -333,7 +333,7 @@ glabel func0000c4f0nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c52cnb
/* c52c: 27bdffe0 */ addiu $sp,$sp,-32
@@ -383,7 +383,7 @@ glabel func0000c52cnb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c5d8nb
/* c5d8: 27bdffd8 */ addiu $sp,$sp,-40
@@ -427,7 +427,7 @@ glabel func0000c5d8nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c660nb
/* c660: 27bdffe8 */ addiu $sp,$sp,-24
@@ -446,7 +446,7 @@ glabel func0000c660nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c694nb
/* c694: 3c078009 */ lui $a3,0x8009
@@ -488,7 +488,7 @@ glabel func0000c694nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c714nb
/* c714: 3c078009 */ lui $a3,0x8009
@@ -530,7 +530,7 @@ glabel func0000c714nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c794nb
/* c794: 27bdffe8 */ addiu $sp,$sp,-24
@@ -547,7 +547,7 @@ glabel func0000c794nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000c7c0nb
/* c7c0: 3c028009 */ lui $v0,0x8009
@@ -1512,7 +1512,7 @@ void func0000cf54(u16 *fb)
}
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000d678nb
/* d678: 00000000 */ sll $zero,$zero,0x0
+1 -1
View File
@@ -2002,7 +2002,7 @@ glabel func00011d84
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00012574nb
/* 12574: 308e00ff */ andi $t6,$a0,0xff
+8 -8
View File
@@ -29,7 +29,7 @@ void func000137a8(void)
}
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00013fe0nb
/* 13fe0: afa40000 */ sw $a0,0x0($sp)
@@ -39,7 +39,7 @@ glabel func00013fe0nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00013ff0nb
/* 13ff0: afa40000 */ sw $a0,0x0($sp)
@@ -49,7 +49,7 @@ glabel func00013ff0nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00014000nb
/* 14000: 03e00008 */ jr $ra
@@ -57,7 +57,7 @@ glabel func00014000nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00014008nb
/* 14008: 3c0e8006 */ lui $t6,0x8006
@@ -136,7 +136,7 @@ glabel func00014008nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00014124nb
/* 14124: 3c0e8006 */ lui $t6,0x8006
@@ -155,7 +155,7 @@ glabel func00014124nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00014154nb
/* 14154: 3c078006 */ lui $a3,0x8006
@@ -248,7 +248,7 @@ glabel func00014154nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0001429cnb
/* 1429c: 3c0e8006 */ lui $t6,0x8006
@@ -269,7 +269,7 @@ glabel func0001429cnb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func000142d4nb
/* 142d4: 27bdffd8 */ addiu $sp,$sp,-40
+2 -2
View File
@@ -107,7 +107,7 @@ void func00016248(struct coord *coord, f32 angle, f32 *matrix)
matrix[15] = 1;
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func000171d8nb
/* 171d8: 27bdffe0 */ addiu $sp,$sp,-32
@@ -1018,7 +1018,7 @@ glabel func00017028
/* 1706c: 00000000 */ nop
);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00018000nb
/* 18000: 27bdffb8 */ addiu $sp,$sp,-72
+1 -1
View File
@@ -75,7 +75,7 @@ glabel func00017ce0
/* 17dc0: e4b00008 */ swc1 $f16,0x8($a1)
);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00018e34nb
/* 18e34: 3c0e800b */ lui $t6,0x800b
+1 -1
View File
@@ -1802,7 +1802,7 @@ glabel func00019d1c
/* 19dd8: 27bd0020 */ addiu $sp,$sp,0x20
);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel modelGetNodeData
/* 1aeac: 27bdfff0 */ addiu $sp,$sp,-16
+4 -4
View File
@@ -1301,7 +1301,7 @@ glabel func00025c74
/* 25f8c: 00000000 */ nop
);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00027370nb
/* 27370: 44856000 */ mtc1 $a1,$f12
@@ -2073,7 +2073,7 @@ glabel platformGetRidingProps
/* 26a00: 27bd0278 */ addiu $sp,$sp,0x278
);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00027e18nb
/* 27e14: 27bdffc8 */ addiu $sp,$sp,-56
@@ -11625,7 +11625,7 @@ glabel func0002f02c
/* 2f2e4: 01201025 */ or $v0,$t1,$zero
);
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func000306f0nb
/* 306f0: 27bdff78 */ addiu $sp,$sp,-136
@@ -11765,7 +11765,7 @@ glabel func000306f0nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func000308e8nb
/* 308e8: 27bdff78 */ addiu $sp,$sp,-136
+1 -1
View File
@@ -4955,7 +4955,7 @@ glabel func00033f44
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00035300nb
/* 35300: 27bdffc8 */ addiu $sp,$sp,-56
+2 -2
View File
@@ -1595,7 +1595,7 @@ u32 var8005dd50 = 0x00000000;
s32 g_MainStageNum = -1;
u32 var8005dd58 = 0x00000000;
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000e000nb
/* e000: 240e0001 */ addiu $t6,$zero,0x1
@@ -1605,7 +1605,7 @@ glabel func0000e000nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000e010nb
/* e010: 3c028006 */ lui $v0,0x8006
+2 -2
View File
@@ -323,7 +323,7 @@ u32 memGetFree(u8 poolnum, u32 bank)
return pool->rightpos - pool->leftpos;
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00012a44nb
/* 12a44: afa40000 */ sw $a0,0x0($sp)
@@ -352,7 +352,7 @@ glabel func00012a44nb
);
#endif
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00012a98nb
/* 12a98: 27bdffe8 */ addiu $sp,$sp,-24
+1 -1
View File
@@ -4917,7 +4917,7 @@ void modelSetAnimFlipFunction(struct model *model, void *callback)
}
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
void modelSetAnimUnk6c(struct model *model, s32 value)
{
if (model->anim) {
+2 -2
View File
@@ -159,7 +159,7 @@ void osScAddClient(OSSched *sc, OSScClient *c, OSMesgQueue *msgQ, OSScClient *ne
osSetIntMask(mask);
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel osScRemoveClient
/* 205c: 27bdffe0 */ addiu $sp,$sp,-32
@@ -622,7 +622,7 @@ void __scExec(OSSched *sc, OSScTask *sp, OSScTask *dp)
}
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00002d68nb
/* 2d68: 8c8300c8 */ lw $v1,0xc8($a0)
+82 -83
View File
@@ -1,69 +1,68 @@
#include "constants.h"
#if VERSION < VERSION_NTSC_1_0
long long __d_to_ll(double f)
{
return f;
}
#endif
long long __f_to_ll(float f)
{
return f;
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00005abcnb
/* 5abc: 46006109 */ trunc.l.s $f4,$f12
/* 5ac0: 44222000 */ dmfc1 $v0,$f4
/* 5ac4: 00000000 */ sll $zero,$zero,0x0
/* 5ac8: 0002183c */ dsll32 $v1,$v0,0x0
/* 5acc: 0003183f */ dsra32 $v1,$v1,0x0
/* 5ad0: 03e00008 */ jr $ra
/* 5ad4: 0002103f */ dsra32 $v0,$v0,0x0
glabel __d_to_ull
/* 5ad8: 444ef800 */ cfc1 $t6,$31
/* 5adc: 24020001 */ addiu $v0,$zero,0x1
/* 5ae0: 44c2f800 */ ctc1 $v0,$31
/* 5ae4: 00000000 */ sll $zero,$zero,0x0
/* 5ae8: 46206125 */ cvt.l.d $f4,$f12
/* 5aec: 4442f800 */ cfc1 $v0,$31
/* 5af0: 00000000 */ sll $zero,$zero,0x0
/* 5af4: 30410004 */ andi $at,$v0,0x4
/* 5af8: 30420078 */ andi $v0,$v0,0x78
/* 5afc: 10400014 */ beqz $v0,.NB00005b50
/* 5b00: 3c0143e0 */ lui $at,0x43e0
/* 5b04: 44812000 */ mtc1 $at,$f4
/* 5b08: 24020001 */ addiu $v0,$zero,0x1
/* 5b0c: 46246101 */ sub.d $f4,$f12,$f4
/* 5b10: 44c2f800 */ ctc1 $v0,$31
/* 5b14: 00000000 */ sll $zero,$zero,0x0
/* 5b18: 46202125 */ cvt.l.d $f4,$f4
/* 5b1c: 4442f800 */ cfc1 $v0,$31
/* 5b20: 00000000 */ sll $zero,$zero,0x0
/* 5b24: 30410004 */ andi $at,$v0,0x4
/* 5b28: 30420078 */ andi $v0,$v0,0x78
/* 5b2c: 14400006 */ bnez $v0,.NB00005b48
/* 5b30: 00000000 */ sll $zero,$zero,0x0
/* 5b34: 3c0f8000 */ lui $t7,0x8000
/* 5b38: 000f783c */ dsll32 $t7,$t7,0x0
/* 5b3c: 44222000 */ dmfc1 $v0,$f4
/* 5b40: 10000007 */ beqz $zero,.NB00005b60
/* 5b44: 004f1025 */ or $v0,$v0,$t7
.NB00005b48:
/* 5b48: 10000005 */ beqz $zero,.NB00005b60
/* 5b4c: 2402ffff */ addiu $v0,$zero,-1
.NB00005b50:
/* 5b50: 44222000 */ dmfc1 $v0,$f4
/* 5b54: 00000000 */ sll $zero,$zero,0x0
/* 5b58: 0440fffb */ bltz $v0,.NB00005b48
/* 5b5c: 00000000 */ sll $zero,$zero,0x0
.NB00005b60:
/* 5b60: 44cef800 */ ctc1 $t6,$31
/* 5b64: 0002183c */ dsll32 $v1,$v0,0x0
/* 5b68: 0003183f */ dsra32 $v1,$v1,0x0
/* 5b6c: 03e00008 */ jr $ra
/* 5b70: 0002103f */ dsra32 $v0,$v0,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00005b74nb
/* 5b74: 444ef800 */ cfc1 $t6,$31
/* 5b78: 24020001 */ addiu $v0,$zero,0x1
/* 5b7c: 44c2f800 */ ctc1 $v0,$31
/* 5b80: 00000000 */ sll $zero,$zero,0x0
/* 5b84: 46006125 */ cvt.l.s $f4,$f12
/* 5b88: 4442f800 */ cfc1 $v0,$31
/* 5b8c: 00000000 */ sll $zero,$zero,0x0
/* 5b90: 30410004 */ andi $at,$v0,0x4
/* 5b94: 30420078 */ andi $v0,$v0,0x78
/* 5b98: 10400014 */ beqz $v0,.NB00005bec
/* 5b9c: 3c015f00 */ lui $at,0x5f00
/* 5ba0: 44812000 */ mtc1 $at,$f4
/* 5ba4: 24020001 */ addiu $v0,$zero,0x1
/* 5ba8: 46046101 */ sub.s $f4,$f12,$f4
/* 5bac: 44c2f800 */ ctc1 $v0,$31
/* 5bb0: 00000000 */ sll $zero,$zero,0x0
/* 5bb4: 46002125 */ cvt.l.s $f4,$f4
/* 5bb8: 4442f800 */ cfc1 $v0,$31
/* 5bbc: 00000000 */ sll $zero,$zero,0x0
/* 5bc0: 30410004 */ andi $at,$v0,0x4
/* 5bc4: 30420078 */ andi $v0,$v0,0x78
/* 5bc8: 14400006 */ bnez $v0,.NB00005be4
/* 5bcc: 00000000 */ sll $zero,$zero,0x0
/* 5bd0: 3c0f8000 */ lui $t7,0x8000
/* 5bd4: 000f783c */ dsll32 $t7,$t7,0x0
/* 5bd8: 44222000 */ dmfc1 $v0,$f4
/* 5bdc: 10000007 */ beqz $zero,.NB00005bfc
/* 5be0: 004f1025 */ or $v0,$v0,$t7
.NB00005be4:
/* 5be4: 10000005 */ beqz $zero,.NB00005bfc
/* 5be8: 2402ffff */ addiu $v0,$zero,-1
.NB00005bec:
/* 5bec: 44222000 */ dmfc1 $v0,$f4
/* 5bf0: 00000000 */ sll $zero,$zero,0x0
/* 5bf4: 0440fffb */ bltz $v0,.NB00005be4
/* 5bf8: 00000000 */ sll $zero,$zero,0x0
.NB00005bfc:
/* 5bfc: 44cef800 */ ctc1 $t6,$31
/* 5c00: 0002183c */ dsll32 $v1,$v0,0x0
/* 5c04: 0003183f */ dsra32 $v1,$v1,0x0
/* 5c08: 03e00008 */ jr $ra
/* 5c0c: 0002103f */ dsra32 $v0,$v0,0x0
);
//unsigned long long __d_to_ull(double d)
//{
// return d;
//}
#endif
GLOBAL_ASM(
@@ -124,38 +123,38 @@ double __ll_to_d(long long s)
return s;
}
#if VERSION == VERSION_NTSC_BETA
#if VERSION < VERSION_NTSC_1_0
float __ll_to_f(long long s)
{
return s;
}
#endif
#if VERSION < VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00005c28nb
/* 5c28: afa40000 */ sw $a0,0x0($sp)
/* 5c2c: afa50004 */ sw $a1,0x4($sp)
/* 5c30: dfae0000 */ ld $t6,0x0($sp)
/* 5c34: 44ae2000 */ dmtc1 $t6,$f4
/* 5c38: 03e00008 */ jr $ra
/* 5c3c: 46a02020 */ cvt.s.l $f0,$f4
glabel __ull_to_d
/* 5c40: afa40000 */ sw $a0,0x0($sp)
/* 5c44: afa50004 */ sw $a1,0x4($sp)
/* 5c48: dfae0000 */ ld $t6,0x0($sp)
/* 5c4c: 44ae2000 */ dmtc1 $t6,$f4
/* 5c50: 05c10005 */ bgez $t6,.NB00005c68
/* 5c54: 46a02021 */ cvt.d.l $f0,$f4
/* 5c58: 3c0141f0 */ lui $at,0x41f0
/* 5c5c: 44813000 */ mtc1 $at,$f6
/* 5c60: 00000000 */ sll $zero,$zero,0x0
/* 5c64: 46260000 */ add.d $f0,$f0,$f6
.NB00005c68:
/* 5c68: 03e00008 */ jr $ra
/* 5c6c: 00000000 */ sll $zero,$zero,0x0
);
//double __ull_to_d(unsigned long long u)
//{
// return u;
//}
#endif
float __ull_to_f(unsigned long long u)
{
return u;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00005c70nb
/* 5c70: afa40000 */ sw $a0,0x0($sp)
/* 5c74: afa50004 */ sw $a1,0x4($sp)
/* 5c78: dfae0000 */ ld $t6,0x0($sp)
/* 5c7c: 44ae2000 */ dmtc1 $t6,$f4
/* 5c80: 05c10005 */ bgez $t6,.NB00005c98
/* 5c84: 46a02020 */ cvt.s.l $f0,$f4
/* 5c88: 3c014f80 */ lui $at,0x4f80
/* 5c8c: 44813000 */ mtc1 $at,$f6
/* 5c90: 00000000 */ sll $zero,$zero,0x0
/* 5c94: 46060000 */ add.s $f0,$f0,$f6
.NB00005c98:
/* 5c98: 03e00008 */ jr $ra
/* 5c9c: 00000000 */ sll $zero,$zero,0x0
);
#endif