This commit is contained in:
shawlucas
2020-03-23 14:41:50 -07:00
1152 changed files with 14586 additions and 24046 deletions
+23
View File
@@ -0,0 +1,23 @@
IndentWidth: 4
Language: Cpp
UseTab: Never
ColumnLimit: 120
PointerAlignment: Left
BreakBeforeBraces: Attach
SpaceAfterCStyleCast: false
Cpp11BracedListStyle: false
IndentCaseLabels: true
BinPackArguments: true
BinPackParameters: true
AlignAfterOpenBracket: Align
AlignOperands: true
BreakBeforeTernaryOperators: true
BreakBeforeBinaryOperators: None
AllowShortBlocksOnASingleLine: true
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
AlignEscapedNewlines: Left
AlignTrailingComments: true
SortIncludes: false
+5
View File
@@ -0,0 +1,5 @@
Checks: '-*,readability-braces-around-statements'
WarningsAsErrors: ''
HeaderFilterRegex: '(src|include)\/.*\.h$'
FormatStyle: 'file'
CheckOptions:
@@ -1,99 +0,0 @@
glabel Yaz0_DecompressImpl
/* 0028B0 80001CB0 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 0028B4 80001CB4 AFBF002C */ sw $ra, 0x2c($sp)
/* 0028B8 80001CB8 AFB40028 */ sw $s4, 0x28($sp)
/* 0028BC 80001CBC AFB30024 */ sw $s3, 0x24($sp)
/* 0028C0 80001CC0 AFB20020 */ sw $s2, 0x20($sp)
/* 0028C4 80001CC4 AFB1001C */ sw $s1, 0x1c($sp)
/* 0028C8 80001CC8 AFB00018 */ sw $s0, 0x18($sp)
/* 0028CC 80001CCC 8C8E0004 */ lw $t6, 4($a0)
/* 0028D0 80001CD0 3C128001 */ lui $s2, %hi(sYaz0MaxPtr) # $s2, 0x8001
/* 0028D4 80001CD4 3C138001 */ lui $s3, %hi(sYaz0CurSize) # $s3, 0x8001
/* 0028D8 80001CD8 00A08025 */ move $s0, $a1
/* 0028DC 80001CDC 00003025 */ move $a2, $zero
/* 0028E0 80001CE0 24910010 */ addiu $s1, $a0, 0x10
/* 0028E4 80001CE4 267344E8 */ addiu $s3, %lo(sYaz0CurSize) # addiu $s3, $s3, 0x44e8
/* 0028E8 80001CE8 265244EC */ addiu $s2, %lo(sYaz0MaxPtr) # addiu $s2, $s2, 0x44ec
/* 0028EC 80001CEC 8FA70030 */ lw $a3, 0x30($sp)
/* 0028F0 80001CF0 01C5A021 */ addu $s4, $t6, $a1
.L80001CF4:
/* 0028F4 80001CF4 54C0000F */ bnezl $a2, .L80001D34
/* 0028F8 80001CF8 30F90080 */ andi $t9, $a3, 0x80
/* 0028FC 80001CFC 8E4F0000 */ lw $t7, ($s2)
/* 002900 80001D00 01F1082B */ sltu $at, $t7, $s1
/* 002904 80001D04 50200008 */ beql $at, $zero, .L80001D28
/* 002908 80001D08 92270000 */ lbu $a3, ($s1)
/* 00290C 80001D0C 8E780000 */ lw $t8, ($s3)
/* 002910 80001D10 53000005 */ beql $t8, $zero, .L80001D28
/* 002914 80001D14 92270000 */ lbu $a3, ($s1)
/* 002918 80001D18 0C0006F2 */ jal Yaz0_NextDMA
/* 00291C 80001D1C 02202025 */ move $a0, $s1
/* 002920 80001D20 00408825 */ move $s1, $v0
/* 002924 80001D24 92270000 */ lbu $a3, ($s1)
.L80001D28:
/* 002928 80001D28 26310001 */ addiu $s1, $s1, 1
/* 00292C 80001D2C 24060008 */ li $a2, 8
/* 002930 80001D30 30F90080 */ andi $t9, $a3, 0x80
.L80001D34:
/* 002934 80001D34 13200006 */ beqz $t9, .L80001D50
/* 002938 80001D38 00073840 */ sll $a3, $a3, 1
/* 00293C 80001D3C 92280000 */ lbu $t0, ($s1)
/* 002940 80001D40 26100001 */ addiu $s0, $s0, 1
/* 002944 80001D44 26310001 */ addiu $s1, $s1, 1
/* 002948 80001D48 10000027 */ b .L80001DE8
/* 00294C 80001D4C A208FFFF */ sb $t0, -1($s0)
.L80001D50:
/* 002950 80001D50 92230000 */ lbu $v1, ($s1)
/* 002954 80001D54 92290001 */ lbu $t1, 1($s1)
/* 002958 80001D58 26310002 */ addiu $s1, $s1, 2
/* 00295C 80001D5C 306A000F */ andi $t2, $v1, 0xf
/* 002960 80001D60 000A5A00 */ sll $t3, $t2, 8
/* 002964 80001D64 00032903 */ sra $a1, $v1, 4
/* 002968 80001D68 012B2025 */ or $a0, $t1, $t3
/* 00296C 80001D6C 14A00005 */ bnez $a1, .L80001D84
/* 002970 80001D70 02041023 */ subu $v0, $s0, $a0
/* 002974 80001D74 92230000 */ lbu $v1, ($s1)
/* 002978 80001D78 26310001 */ addiu $s1, $s1, 1
/* 00297C 80001D7C 10000002 */ b .L80001D88
/* 002980 80001D80 24630012 */ addiu $v1, $v1, 0x12
.L80001D84:
/* 002984 80001D84 24A30002 */ addiu $v1, $a1, 2
.L80001D88:
/* 002988 80001D88 30650003 */ andi $a1, $v1, 3
/* 00298C 80001D8C 00052823 */ negu $a1, $a1
/* 002990 80001D90 10A00009 */ beqz $a1, .L80001DB8
/* 002994 80001D94 00A32021 */ addu $a0, $a1, $v1
.L80001D98:
/* 002998 80001D98 904CFFFF */ lbu $t4, -1($v0)
/* 00299C 80001D9C 2463FFFF */ addiu $v1, $v1, -1
/* 0029A0 80001DA0 26100001 */ addiu $s0, $s0, 1
/* 0029A4 80001DA4 24420001 */ addiu $v0, $v0, 1
/* 0029A8 80001DA8 1483FFFB */ bne $a0, $v1, .L80001D98
/* 0029AC 80001DAC A20CFFFF */ sb $t4, -1($s0)
/* 0029B0 80001DB0 1060000D */ beqz $v1, .L80001DE8
/* 0029B4 80001DB4 00000000 */ nop
.L80001DB8:
/* 0029B8 80001DB8 904DFFFF */ lbu $t5, -1($v0)
/* 0029BC 80001DBC 2463FFFC */ addiu $v1, $v1, -4
/* 0029C0 80001DC0 26100004 */ addiu $s0, $s0, 4
/* 0029C4 80001DC4 A20DFFFC */ sb $t5, -4($s0)
/* 0029C8 80001DC8 904E0000 */ lbu $t6, ($v0)
/* 0029CC 80001DCC 24420004 */ addiu $v0, $v0, 4
/* 0029D0 80001DD0 A20EFFFD */ sb $t6, -3($s0)
/* 0029D4 80001DD4 904FFFFD */ lbu $t7, -3($v0)
/* 0029D8 80001DD8 A20FFFFE */ sb $t7, -2($s0)
/* 0029DC 80001DDC 9058FFFE */ lbu $t8, -2($v0)
/* 0029E0 80001DE0 1460FFF5 */ bnez $v1, .L80001DB8
/* 0029E4 80001DE4 A218FFFF */ sb $t8, -1($s0)
.L80001DE8:
/* 0029E8 80001DE8 1614FFC2 */ bne $s0, $s4, .L80001CF4
/* 0029EC 80001DEC 24C6FFFF */ addiu $a2, $a2, -1
/* 0029F0 80001DF0 8FBF002C */ lw $ra, 0x2c($sp)
/* 0029F4 80001DF4 AFA70030 */ sw $a3, 0x30($sp)
/* 0029F8 80001DF8 8FB00018 */ lw $s0, 0x18($sp)
/* 0029FC 80001DFC 8FB1001C */ lw $s1, 0x1c($sp)
/* 002A00 80001E00 8FB20020 */ lw $s2, 0x20($sp)
/* 002A04 80001E04 8FB30024 */ lw $s3, 0x24($sp)
/* 002A08 80001E08 8FB40028 */ lw $s4, 0x28($sp)
/* 002A0C 80001E0C 03E00008 */ jr $ra
/* 002A10 80001E10 27BD0040 */ addiu $sp, $sp, 0x40
@@ -1,82 +0,0 @@
glabel FaultDrawer_DrawRecImpl
/* B4D920 800D6780 3C0EFFFA */ lui $t6, (0xFFFA5A5A >> 16) # lui $t6, 0xfffa
/* B4D924 800D6784 03A07825 */ move $t7, $sp
/* B4D928 800D6788 27BDFFE8 */ addiu $sp, $sp, -0x18
/* B4D92C 800D678C 35CE5A5A */ ori $t6, (0xFFFA5A5A & 0xFFFF) # ori $t6, $t6, 0x5a5a
.L800D6790:
/* B4D930 800D6790 25EFFFF8 */ addiu $t7, $t7, -8
/* B4D934 800D6794 ADEE0000 */ sw $t6, ($t7)
/* B4D938 800D6798 15FDFFFD */ bne $t7, $sp, .L800D6790
/* B4D93C 800D679C ADEE0004 */ sw $t6, 4($t7)
/* B4D940 800D67A0 3C0D8017 */ lui $t5, %hi(sFaultDrawerStruct) # $t5, 0x8017
/* B4D944 800D67A4 25ADB680 */ addiu $t5, %lo(sFaultDrawerStruct) # addiu $t5, $t5, -0x4980
/* B4D948 800D67A8 AFBF0014 */ sw $ra, 0x14($sp)
/* B4D94C 800D67AC 95A90004 */ lhu $t1, 4($t5)
/* B4D950 800D67B0 95AE0006 */ lhu $t6, 6($t5)
/* B4D954 800D67B4 00C41823 */ subu $v1, $a2, $a0
/* B4D958 800D67B8 00E55823 */ subu $t3, $a3, $a1
/* B4D95C 800D67BC 24630001 */ addiu $v1, $v1, 1
/* B4D960 800D67C0 256B0001 */ addiu $t3, $t3, 1
/* B4D964 800D67C4 01241023 */ subu $v0, $t1, $a0
/* B4D968 800D67C8 00604025 */ move $t0, $v1
/* B4D96C 800D67CC 01605025 */ move $t2, $t3
/* B4D970 800D67D0 1840002E */ blez $v0, .L800D688C
/* B4D974 800D67D4 01C56023 */ subu $t4, $t6, $a1
/* B4D978 800D67D8 1980002C */ blez $t4, .L800D688C
/* B4D97C 800D67DC 0043082A */ slt $at, $v0, $v1
/* B4D980 800D67E0 50200003 */ beql $at, $zero, .L800D67F0
/* B4D984 800D67E4 018B082A */ slt $at, $t4, $t3
/* B4D988 800D67E8 00404025 */ move $t0, $v0
/* B4D98C 800D67EC 018B082A */ slt $at, $t4, $t3
.L800D67F0:
/* B4D990 800D67F0 10200002 */ beqz $at, .L800D67FC
/* B4D994 800D67F4 00000000 */ nop
/* B4D998 800D67F8 01805025 */ move $t2, $t4
.L800D67FC:
/* B4D99C 800D67FC 01250019 */ multu $t1, $a1
/* B4D9A0 800D6800 8DB90000 */ lw $t9, ($t5)
/* B4D9A4 800D6804 00003825 */ move $a3, $zero
/* B4D9A8 800D6808 00007812 */ mflo $t7
/* B4D9AC 800D680C 000FC040 */ sll $t8, $t7, 1
/* B4D9B0 800D6810 00047840 */ sll $t7, $a0, 1
/* B4D9B4 800D6814 03197021 */ addu $t6, $t8, $t9
/* B4D9B8 800D6818 1940001A */ blez $t2, .L800D6884
/* B4D9BC 800D681C 01CF1021 */ addu $v0, $t6, $t7
/* B4D9C0 800D6820 97A4002A */ lhu $a0, 0x2a($sp)
.L800D6824:
/* B4D9C4 800D6824 19000012 */ blez $t0, .L800D6870
/* B4D9C8 800D6828 00001825 */ move $v1, $zero
/* B4D9CC 800D682C 31060003 */ andi $a2, $t0, 3
/* B4D9D0 800D6830 10C00007 */ beqz $a2, .L800D6850
/* B4D9D4 800D6834 3C098017 */ lui $t1, %hi(sFaultDrawerStruct+4) # $t1, 0x8017
/* B4D9D8 800D6838 00C02825 */ move $a1, $a2
.L800D683C:
/* B4D9DC 800D683C 24630001 */ addiu $v1, $v1, 1
/* B4D9E0 800D6840 A4440000 */ sh $a0, ($v0)
/* B4D9E4 800D6844 14A3FFFD */ bne $a1, $v1, .L800D683C
/* B4D9E8 800D6848 24420002 */ addiu $v0, $v0, 2
/* B4D9EC 800D684C 10680007 */ beq $v1, $t0, .L800D686C
.L800D6850:
/* B4D9F0 800D6850 24630004 */ addiu $v1, $v1, 4
/* B4D9F4 800D6854 A4440002 */ sh $a0, 2($v0)
/* B4D9F8 800D6858 A4440004 */ sh $a0, 4($v0)
/* B4D9FC 800D685C A4440006 */ sh $a0, 6($v0)
/* B4DA00 800D6860 24420008 */ addiu $v0, $v0, 8
/* B4DA04 800D6864 1468FFFA */ bne $v1, $t0, .L800D6850
/* B4DA08 800D6868 A444FFF8 */ sh $a0, -8($v0)
.L800D686C:
/* B4DA0C 800D686C 9529B684 */ lhu $t1, %lo(sFaultDrawerStruct+4)($t1)
.L800D6870:
/* B4DA10 800D6870 0128C023 */ subu $t8, $t1, $t0
/* B4DA14 800D6874 24E70001 */ addiu $a3, $a3, 1
/* B4DA18 800D6878 0018C840 */ sll $t9, $t8, 1
/* B4DA1C 800D687C 14EAFFE9 */ bne $a3, $t2, .L800D6824
/* B4DA20 800D6880 00591021 */ addu $v0, $v0, $t9
.L800D6884:
/* B4DA24 800D6884 0C041924 */ jal osWritebackDCacheAll
/* B4DA28 800D6888 00000000 */ nop
.L800D688C:
/* B4DA2C 800D688C 8FBF0014 */ lw $ra, 0x14($sp)
/* B4DA30 800D6890 27BD0018 */ addiu $sp, $sp, 0x18
/* B4DA34 800D6894 03E00008 */ jr $ra
/* B4DA38 800D6898 00000000 */ nop
@@ -1,388 +0,0 @@
.rdata
glabel D_80136160
.asciz "../z_actor.c"
.balign 4
glabel D_80136170
.asciz "../z_actor.c"
.balign 4
.text
glabel TitleCard_Draw
/* AA414C 8002CFAC 27BDFF30 */ addiu $sp, $sp, -0xd0
/* AA4150 8002CFB0 AFBF0014 */ sw $ra, 0x14($sp)
/* AA4154 8002CFB4 AFA400D0 */ sw $a0, 0xd0($sp)
/* AA4158 8002CFB8 AFA500D4 */ sw $a1, 0xd4($sp)
/* AA415C 8002CFBC 84AF000C */ lh $t7, 0xc($a1)
/* AA4160 8002CFC0 3C068013 */ lui $a2, %hi(D_80136160) # $a2, 0x8013
/* AA4164 8002CFC4 24C66160 */ addiu $a2, %lo(D_80136160) # addiu $a2, $a2, 0x6160
/* AA4168 8002CFC8 51E00159 */ beql $t7, $zero, .L8002D530
/* AA416C 8002CFCC 8FBF0014 */ lw $ra, 0x14($sp)
/* AA4170 8002CFD0 90AA0008 */ lbu $t2, 8($a1)
/* AA4174 8002CFD4 84B80004 */ lh $t8, 4($a1)
/* AA4178 8002CFD8 90A90009 */ lbu $t1, 9($a1)
/* AA417C 8002CFDC 000A1040 */ sll $v0, $t2, 1
/* AA4180 8002CFE0 0018C880 */ sll $t9, $t8, 2
/* AA4184 8002CFE4 03227823 */ subu $t7, $t9, $v0
/* AA4188 8002CFE8 AFAF00C0 */ sw $t7, 0xc0($sp)
/* AA418C 8002CFEC 84B80006 */ lh $t8, 6($a1)
/* AA4190 8002CFF0 00097840 */ sll $t7, $t1, 1
/* AA4194 8002CFF4 24070B08 */ li $a3, 2824
/* AA4198 8002CFF8 0018C880 */ sll $t9, $t8, 2
/* AA419C 8002CFFC 032F7023 */ subu $t6, $t9, $t7
/* AA41A0 8002D000 AFAE00B8 */ sw $t6, 0xb8($sp)
/* AA41A4 8002D004 8C850000 */ lw $a1, ($a0)
/* AA41A8 8002D008 AFA20038 */ sw $v0, 0x38($sp)
/* AA41AC 8002D00C 27A4009C */ addiu $a0, $sp, 0x9c
/* AA41B0 8002D010 AFAA00CC */ sw $t2, 0xcc($sp)
/* AA41B4 8002D014 AFA900C8 */ sw $t1, 0xc8($sp)
/* AA41B8 8002D018 0C031AB1 */ jal func_800C6AC4
/* AA41BC 8002D01C AFA500AC */ sw $a1, 0xac($sp)
/* AA41C0 8002D020 8FA900C8 */ lw $t1, 0xc8($sp)
/* AA41C4 8002D024 8FAA00CC */ lw $t2, 0xcc($sp)
/* AA41C8 8002D028 3C198016 */ lui $t9, %hi(gSaveContext+0x1409) # $t9, 0x8016
/* AA41CC 8002D02C 9339FA69 */ lbu $t9, %lo(gSaveContext+0x1409)($t9)
/* AA41D0 8002D030 01490019 */ multu $t2, $t1
/* AA41D4 8002D034 8FA800AC */ lw $t0, 0xac($sp)
/* AA41D8 8002D038 8FAB00D4 */ lw $t3, 0xd4($sp)
/* AA41DC 8002D03C 240E1000 */ li $t6, 4096
/* AA41E0 8002D040 00002812 */ mflo $a1
/* AA41E4 8002D044 28A11001 */ slti $at, $a1, 0x1001
/* AA41E8 8002D048 00000000 */ nop
/* AA41EC 8002D04C 00B90019 */ multu $a1, $t9
/* AA41F0 8002D050 8FB900B8 */ lw $t9, 0xb8($sp)
/* AA41F4 8002D054 00007812 */ mflo $t7
/* AA41F8 8002D058 AFAF00B0 */ sw $t7, 0xb0($sp)
/* AA41FC 8002D05C 54200011 */ bnezl $at, .L8002D0A4
/* AA4200 8002D060 0009C080 */ sll $t8, $t1, 2
/* AA4204 8002D064 01CA001A */ div $zero, $t6, $t2
/* AA4208 8002D068 00004812 */ mflo $t1
/* AA420C 8002D06C 15400002 */ bnez $t2, .L8002D078
/* AA4210 8002D070 00000000 */ nop
/* AA4214 8002D074 0007000D */ break 7
.L8002D078:
/* AA4218 8002D078 2401FFFF */ li $at, -1
/* AA421C 8002D07C 15410004 */ bne $t2, $at, .L8002D090
/* AA4220 8002D080 3C018000 */ lui $at, 0x8000
/* AA4224 8002D084 15C10002 */ bne $t6, $at, .L8002D090
/* AA4228 8002D088 00000000 */ nop
/* AA422C 8002D08C 0006000D */ break 6
.L8002D090:
/* AA4230 8002D090 01490019 */ multu $t2, $t1
/* AA4234 8002D094 00002812 */ mflo $a1
/* AA4238 8002D098 00000000 */ nop
/* AA423C 8002D09C 00000000 */ nop
/* AA4240 8002D0A0 0009C080 */ sll $t8, $t1, 2
.L8002D0A4:
/* AA4244 8002D0A4 03196021 */ addu $t4, $t8, $t9
/* AA4248 8002D0A8 AFAC00B4 */ sw $t4, 0xb4($sp)
/* AA424C 8002D0AC 8D0402B0 */ lw $a0, 0x2b0($t0)
/* AA4250 8002D0B0 AFAC0030 */ sw $t4, 0x30($sp)
/* AA4254 8002D0B4 AFAA00CC */ sw $t2, 0xcc($sp)
/* AA4258 8002D0B8 AFA900C8 */ sw $t1, 0xc8($sp)
/* AA425C 8002D0BC AFA800AC */ sw $t0, 0xac($sp)
/* AA4260 8002D0C0 0C024E02 */ jal func_80093808
/* AA4264 8002D0C4 AFA50034 */ sw $a1, 0x34($sp)
/* AA4268 8002D0C8 8FA800AC */ lw $t0, 0xac($sp)
/* AA426C 8002D0CC 8FA50034 */ lw $a1, 0x34($sp)
/* AA4270 8002D0D0 8FAA00CC */ lw $t2, 0xcc($sp)
/* AA4274 8002D0D4 8FAB00D4 */ lw $t3, 0xd4($sp)
/* AA4278 8002D0D8 8FA900C8 */ lw $t1, 0xc8($sp)
/* AA427C 8002D0DC 8FAC0030 */ lw $t4, 0x30($sp)
/* AA4280 8002D0E0 244F0008 */ addiu $t7, $v0, 8
/* AA4284 8002D0E4 AD0202B0 */ sw $v0, 0x2b0($t0)
/* AA4288 8002D0E8 3C0EFA00 */ lui $t6, 0xfa00
/* AA428C 8002D0EC AD0F02B0 */ sw $t7, 0x2b0($t0)
/* AA4290 8002D0F0 AC4E0000 */ sw $t6, ($v0)
/* AA4294 8002D0F4 9163000F */ lbu $v1, 0xf($t3)
/* AA4298 8002D0F8 01403825 */ move $a3, $t2
/* AA429C 8002D0FC 24ED0007 */ addiu $t5, $a3, 7
/* AA42A0 8002D100 0003C600 */ sll $t8, $v1, 0x18
/* AA42A4 8002D104 0003CC00 */ sll $t9, $v1, 0x10
/* AA42A8 8002D108 03197825 */ or $t7, $t8, $t9
/* AA42AC 8002D10C 00037200 */ sll $t6, $v1, 8
/* AA42B0 8002D110 01EEC025 */ or $t8, $t7, $t6
/* AA42B4 8002D114 916F000D */ lbu $t7, 0xd($t3)
/* AA42B8 8002D118 24A30001 */ addiu $v1, $a1, 1
/* AA42BC 8002D11C 00031843 */ sra $v1, $v1, 1
/* AA42C0 8002D120 030F7025 */ or $t6, $t8, $t7
/* AA42C4 8002D124 AC4E0004 */ sw $t6, 4($v0)
/* AA42C8 8002D128 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA42CC 8002D12C 3C18FD70 */ lui $t8, 0xfd70
/* AA42D0 8002D130 2463FFFF */ addiu $v1, $v1, -1
/* AA42D4 8002D134 24590008 */ addiu $t9, $v0, 8
/* AA42D8 8002D138 AD1902B0 */ sw $t9, 0x2b0($t0)
/* AA42DC 8002D13C AC580000 */ sw $t8, ($v0)
/* AA42E0 8002D140 8FAE00B0 */ lw $t6, 0xb0($sp)
/* AA42E4 8002D144 8D6F0000 */ lw $t7, ($t3)
/* AA42E8 8002D148 000D68C3 */ sra $t5, $t5, 3
/* AA42EC 8002D14C 31AD01FF */ andi $t5, $t5, 0x1ff
/* AA42F0 8002D150 01EEC821 */ addu $t9, $t7, $t6
/* AA42F4 8002D154 AC590004 */ sw $t9, 4($v0)
/* AA42F8 8002D158 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA42FC 8002D15C 3C0E0700 */ lui $t6, 0x700
/* AA4300 8002D160 3C0FF570 */ lui $t7, 0xf570
/* AA4304 8002D164 24580008 */ addiu $t8, $v0, 8
/* AA4308 8002D168 AD1802B0 */ sw $t8, 0x2b0($t0)
/* AA430C 8002D16C AC4E0004 */ sw $t6, 4($v0)
/* AA4310 8002D170 AC4F0000 */ sw $t7, ($v0)
/* AA4314 8002D174 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4318 8002D178 3C18E600 */ lui $t8, 0xe600
/* AA431C 8002D17C 3C0EF300 */ lui $t6, 0xf300
/* AA4320 8002D180 24590008 */ addiu $t9, $v0, 8
/* AA4324 8002D184 AD1902B0 */ sw $t9, 0x2b0($t0)
/* AA4328 8002D188 AC400004 */ sw $zero, 4($v0)
/* AA432C 8002D18C AC580000 */ sw $t8, ($v0)
/* AA4330 8002D190 8D0602B0 */ lw $a2, 0x2b0($t0)
/* AA4334 8002D194 286107FF */ slti $at, $v1, 0x7ff
/* AA4338 8002D198 000D6A40 */ sll $t5, $t5, 9
/* AA433C 8002D19C 24CF0008 */ addiu $t7, $a2, 8
/* AA4340 8002D1A0 AD0F02B0 */ sw $t7, 0x2b0($t0)
/* AA4344 8002D1A4 10200003 */ beqz $at, .L8002D1B4
/* AA4348 8002D1A8 ACCE0000 */ sw $t6, ($a2)
/* AA434C 8002D1AC 10000002 */ b .L8002D1B8
/* AA4350 8002D1B0 00602025 */ move $a0, $v1
.L8002D1B4:
/* AA4354 8002D1B4 240407FF */ li $a0, 2047
.L8002D1B8:
/* AA4358 8002D1B8 04E10003 */ bgez $a3, .L8002D1C8
/* AA435C 8002D1BC 000728C3 */ sra $a1, $a3, 3
/* AA4360 8002D1C0 24E10007 */ addiu $at, $a3, 7
/* AA4364 8002D1C4 000128C3 */ sra $a1, $at, 3
.L8002D1C8:
/* AA4368 8002D1C8 1CA00003 */ bgtz $a1, .L8002D1D8
/* AA436C 8002D1CC 2547FFFF */ addiu $a3, $t2, -1
/* AA4370 8002D1D0 10000002 */ b .L8002D1DC
/* AA4374 8002D1D4 24030001 */ li $v1, 1
.L8002D1D8:
/* AA4378 8002D1D8 00A01825 */ move $v1, $a1
.L8002D1DC:
/* AA437C 8002D1DC 1CA00003 */ bgtz $a1, .L8002D1EC
/* AA4380 8002D1E0 247907FF */ addiu $t9, $v1, 0x7ff
/* AA4384 8002D1E4 10000002 */ b .L8002D1F0
/* AA4388 8002D1E8 24020001 */ li $v0, 1
.L8002D1EC:
/* AA438C 8002D1EC 00A01025 */ move $v0, $a1
.L8002D1F0:
/* AA4390 8002D1F0 0322001A */ div $zero, $t9, $v0
/* AA4394 8002D1F4 14400002 */ bnez $v0, .L8002D200
/* AA4398 8002D1F8 00000000 */ nop
/* AA439C 8002D1FC 0007000D */ break 7
.L8002D200:
/* AA43A0 8002D200 2401FFFF */ li $at, -1
/* AA43A4 8002D204 14410004 */ bne $v0, $at, .L8002D218
/* AA43A8 8002D208 3C018000 */ lui $at, 0x8000
/* AA43AC 8002D20C 17210002 */ bne $t9, $at, .L8002D218
/* AA43B0 8002D210 00000000 */ nop
/* AA43B4 8002D214 0006000D */ break 6
.L8002D218:
/* AA43B8 8002D218 0000C012 */ mflo $t8
/* AA43BC 8002D21C 330F0FFF */ andi $t7, $t8, 0xfff
/* AA43C0 8002D220 3C010700 */ lui $at, 0x700
/* AA43C4 8002D224 30990FFF */ andi $t9, $a0, 0xfff
/* AA43C8 8002D228 0019C300 */ sll $t8, $t9, 0xc
/* AA43CC 8002D22C 01E17025 */ or $t6, $t7, $at
/* AA43D0 8002D230 01D87825 */ or $t7, $t6, $t8
/* AA43D4 8002D234 ACCF0004 */ sw $t7, 4($a2)
/* AA43D8 8002D238 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA43DC 8002D23C 3C0EE700 */ lui $t6, 0xe700
/* AA43E0 8002D240 3C01F568 */ lui $at, 0xf568
/* AA43E4 8002D244 24590008 */ addiu $t9, $v0, 8
/* AA43E8 8002D248 AD1902B0 */ sw $t9, 0x2b0($t0)
/* AA43EC 8002D24C AC400004 */ sw $zero, 4($v0)
/* AA43F0 8002D250 AC4E0000 */ sw $t6, ($v0)
/* AA43F4 8002D254 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA43F8 8002D258 01A16825 */ or $t5, $t5, $at
/* AA43FC 8002D25C 252EFFFF */ addiu $t6, $t1, -1
/* AA4400 8002D260 24580008 */ addiu $t8, $v0, 8
/* AA4404 8002D264 AD1802B0 */ sw $t8, 0x2b0($t0)
/* AA4408 8002D268 AC400004 */ sw $zero, 4($v0)
/* AA440C 8002D26C AC4D0000 */ sw $t5, ($v0)
/* AA4410 8002D270 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4414 8002D274 00073880 */ sll $a3, $a3, 2
/* AA4418 8002D278 30E70FFF */ andi $a3, $a3, 0xfff
/* AA441C 8002D27C 244F0008 */ addiu $t7, $v0, 8
/* AA4420 8002D280 AD0F02B0 */ sw $t7, 0x2b0($t0)
/* AA4424 8002D284 000EC080 */ sll $t8, $t6, 2
/* AA4428 8002D288 3C19F200 */ lui $t9, 0xf200
/* AA442C 8002D28C 330F0FFF */ andi $t7, $t8, 0xfff
/* AA4430 8002D290 00073B00 */ sll $a3, $a3, 0xc
/* AA4434 8002D294 AC590000 */ sw $t9, ($v0)
/* AA4438 8002D298 00EFC825 */ or $t9, $a3, $t7
/* AA443C 8002D29C AC590004 */ sw $t9, 4($v0)
/* AA4440 8002D2A0 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4444 8002D2A4 8FA600C0 */ lw $a2, 0xc0($sp)
/* AA4448 8002D2A8 2599FFFF */ addiu $t9, $t4, -1
/* AA444C 8002D2AC 244E0008 */ addiu $t6, $v0, 8
/* AA4450 8002D2B0 AD0E02B0 */ sw $t6, 0x2b0($t0)
/* AA4454 8002D2B4 8FB80038 */ lw $t8, 0x38($sp)
/* AA4458 8002D2B8 3C01E400 */ lui $at, 0xe400
/* AA445C 8002D2BC 332E0FFF */ andi $t6, $t9, 0xfff
/* AA4460 8002D2C0 00187840 */ sll $t7, $t8, 1
/* AA4464 8002D2C4 01E62021 */ addu $a0, $t7, $a2
/* AA4468 8002D2C8 2484FFFC */ addiu $a0, $a0, -4
/* AA446C 8002D2CC 30840FFF */ andi $a0, $a0, 0xfff
/* AA4470 8002D2D0 00042300 */ sll $a0, $a0, 0xc
/* AA4474 8002D2D4 00812025 */ or $a0, $a0, $at
/* AA4478 8002D2D8 008EC025 */ or $t8, $a0, $t6
/* AA447C 8002D2DC AC580000 */ sw $t8, ($v0)
/* AA4480 8002D2E0 8FAF00B8 */ lw $t7, 0xb8($sp)
/* AA4484 8002D2E4 30DF0FFF */ andi $ra, $a2, 0xfff
/* AA4488 8002D2E8 001FFB00 */ sll $ra, $ra, 0xc
/* AA448C 8002D2EC 31F90FFF */ andi $t9, $t7, 0xfff
/* AA4490 8002D2F0 03F97025 */ or $t6, $ra, $t9
/* AA4494 8002D2F4 AC4E0004 */ sw $t6, 4($v0)
/* AA4498 8002D2F8 AFA4001C */ sw $a0, 0x1c($sp)
/* AA449C 8002D2FC 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA44A0 8002D300 3C0CE100 */ lui $t4, 0xe100
/* AA44A4 8002D304 3C0E0400 */ lui $t6, (0x04000400 >> 16) # lui $t6, 0x400
/* AA44A8 8002D308 24580008 */ addiu $t8, $v0, 8
/* AA44AC 8002D30C AD1802B0 */ sw $t8, 0x2b0($t0)
/* AA44B0 8002D310 AC400004 */ sw $zero, 4($v0)
/* AA44B4 8002D314 AC4C0000 */ sw $t4, ($v0)
/* AA44B8 8002D318 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA44BC 8002D31C 35CE0400 */ ori $t6, (0x04000400 & 0xFFFF) # ori $t6, $t6, 0x400
/* AA44C0 8002D320 3C19F100 */ lui $t9, 0xf100
/* AA44C4 8002D324 244F0008 */ addiu $t7, $v0, 8
/* AA44C8 8002D328 AD0F02B0 */ sw $t7, 0x2b0($t0)
/* AA44CC 8002D32C AC4E0004 */ sw $t6, 4($v0)
/* AA44D0 8002D330 AC590000 */ sw $t9, ($v0)
/* AA44D4 8002D334 91780009 */ lbu $t8, 9($t3)
/* AA44D8 8002D338 00401825 */ move $v1, $v0
/* AA44DC 8002D33C 03094823 */ subu $t1, $t8, $t1
/* AA44E0 8002D340 59200074 */ blezl $t1, .L8002D514
/* AA44E4 8002D344 8FB800D0 */ lw $t8, 0xd0($sp)
/* AA44E8 8002D348 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA44EC 8002D34C 3C19FD70 */ lui $t9, 0xfd70
/* AA44F0 8002D350 01490019 */ multu $t2, $t1
/* AA44F4 8002D354 244F0008 */ addiu $t7, $v0, 8
/* AA44F8 8002D358 AD0F02B0 */ sw $t7, 0x2b0($t0)
/* AA44FC 8002D35C AC590000 */ sw $t9, ($v0)
/* AA4500 8002D360 8FB800B0 */ lw $t8, 0xb0($sp)
/* AA4504 8002D364 8D6E0000 */ lw $t6, ($t3)
/* AA4508 8002D368 240407FF */ li $a0, 2047
/* AA450C 8002D36C 01D87821 */ addu $t7, $t6, $t8
/* AA4510 8002D370 25F91000 */ addiu $t9, $t7, 0x1000
/* AA4514 8002D374 AC590004 */ sw $t9, 4($v0)
/* AA4518 8002D378 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA451C 8002D37C 3C0F0700 */ lui $t7, 0x700
/* AA4520 8002D380 3C18F570 */ lui $t8, 0xf570
/* AA4524 8002D384 244E0008 */ addiu $t6, $v0, 8
/* AA4528 8002D388 AD0E02B0 */ sw $t6, 0x2b0($t0)
/* AA452C 8002D38C AC4F0004 */ sw $t7, 4($v0)
/* AA4530 8002D390 AC580000 */ sw $t8, ($v0)
/* AA4534 8002D394 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4538 8002D398 3C0EE600 */ lui $t6, 0xe600
/* AA453C 8002D39C 00001812 */ mflo $v1
/* AA4540 8002D3A0 24590008 */ addiu $t9, $v0, 8
/* AA4544 8002D3A4 AD1902B0 */ sw $t9, 0x2b0($t0)
/* AA4548 8002D3A8 AC400004 */ sw $zero, 4($v0)
/* AA454C 8002D3AC AC4E0000 */ sw $t6, ($v0)
/* AA4550 8002D3B0 8D0602B0 */ lw $a2, 0x2b0($t0)
/* AA4554 8002D3B4 24630001 */ addiu $v1, $v1, 1
/* AA4558 8002D3B8 00031843 */ sra $v1, $v1, 1
/* AA455C 8002D3BC 2463FFFF */ addiu $v1, $v1, -1
/* AA4560 8002D3C0 24D80008 */ addiu $t8, $a2, 8
/* AA4564 8002D3C4 AD1802B0 */ sw $t8, 0x2b0($t0)
/* AA4568 8002D3C8 286107FF */ slti $at, $v1, 0x7ff
/* AA456C 8002D3CC 3C0FF300 */ lui $t7, 0xf300
/* AA4570 8002D3D0 10200003 */ beqz $at, .L8002D3E0
/* AA4574 8002D3D4 ACCF0000 */ sw $t7, ($a2)
/* AA4578 8002D3D8 10000001 */ b .L8002D3E0
/* AA457C 8002D3DC 00602025 */ move $a0, $v1
.L8002D3E0:
/* AA4580 8002D3E0 1CA00003 */ bgtz $a1, .L8002D3F0
/* AA4584 8002D3E4 00A01825 */ move $v1, $a1
/* AA4588 8002D3E8 10000001 */ b .L8002D3F0
/* AA458C 8002D3EC 24030001 */ li $v1, 1
.L8002D3F0:
/* AA4590 8002D3F0 1CA00003 */ bgtz $a1, .L8002D400
/* AA4594 8002D3F4 247907FF */ addiu $t9, $v1, 0x7ff
/* AA4598 8002D3F8 10000002 */ b .L8002D404
/* AA459C 8002D3FC 24020001 */ li $v0, 1
.L8002D400:
/* AA45A0 8002D400 00A01025 */ move $v0, $a1
.L8002D404:
/* AA45A4 8002D404 0322001A */ div $zero, $t9, $v0
/* AA45A8 8002D408 14400002 */ bnez $v0, .L8002D414
/* AA45AC 8002D40C 00000000 */ nop
/* AA45B0 8002D410 0007000D */ break 7
.L8002D414:
/* AA45B4 8002D414 2401FFFF */ li $at, -1
/* AA45B8 8002D418 14410004 */ bne $v0, $at, .L8002D42C
/* AA45BC 8002D41C 3C018000 */ lui $at, 0x8000
/* AA45C0 8002D420 17210002 */ bne $t9, $at, .L8002D42C
/* AA45C4 8002D424 00000000 */ nop
/* AA45C8 8002D428 0006000D */ break 6
.L8002D42C:
/* AA45CC 8002D42C 00007012 */ mflo $t6
/* AA45D0 8002D430 31D80FFF */ andi $t8, $t6, 0xfff
/* AA45D4 8002D434 3C010700 */ lui $at, 0x700
/* AA45D8 8002D438 30990FFF */ andi $t9, $a0, 0xfff
/* AA45DC 8002D43C 00197300 */ sll $t6, $t9, 0xc
/* AA45E0 8002D440 03017825 */ or $t7, $t8, $at
/* AA45E4 8002D444 01EEC025 */ or $t8, $t7, $t6
/* AA45E8 8002D448 ACD80004 */ sw $t8, 4($a2)
/* AA45EC 8002D44C 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA45F0 8002D450 3C0FE700 */ lui $t7, 0xe700
/* AA45F4 8002D454 24590008 */ addiu $t9, $v0, 8
/* AA45F8 8002D458 AD1902B0 */ sw $t9, 0x2b0($t0)
/* AA45FC 8002D45C AC400004 */ sw $zero, 4($v0)
/* AA4600 8002D460 AC4F0000 */ sw $t7, ($v0)
/* AA4604 8002D464 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4608 8002D468 252FFFFF */ addiu $t7, $t1, -1
/* AA460C 8002D46C 3C19F200 */ lui $t9, 0xf200
/* AA4610 8002D470 244E0008 */ addiu $t6, $v0, 8
/* AA4614 8002D474 AD0E02B0 */ sw $t6, 0x2b0($t0)
/* AA4618 8002D478 AC400004 */ sw $zero, 4($v0)
/* AA461C 8002D47C AC4D0000 */ sw $t5, ($v0)
/* AA4620 8002D480 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4624 8002D484 000F7080 */ sll $t6, $t7, 2
/* AA4628 8002D488 24580008 */ addiu $t8, $v0, 8
/* AA462C 8002D48C AD1802B0 */ sw $t8, 0x2b0($t0)
/* AA4630 8002D490 31D80FFF */ andi $t8, $t6, 0xfff
/* AA4634 8002D494 AC590000 */ sw $t9, ($v0)
/* AA4638 8002D498 00F8C825 */ or $t9, $a3, $t8
/* AA463C 8002D49C AC590004 */ sw $t9, 4($v0)
/* AA4640 8002D4A0 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4644 8002D4A4 8FA400B4 */ lw $a0, 0xb4($sp)
/* AA4648 8002D4A8 0009C080 */ sll $t8, $t1, 2
/* AA464C 8002D4AC 244F0008 */ addiu $t7, $v0, 8
/* AA4650 8002D4B0 AD0F02B0 */ sw $t7, 0x2b0($t0)
/* AA4654 8002D4B4 0098C821 */ addu $t9, $a0, $t8
/* AA4658 8002D4B8 8FAE001C */ lw $t6, 0x1c($sp)
/* AA465C 8002D4BC 272FFFFF */ addiu $t7, $t9, -1
/* AA4660 8002D4C0 31F80FFF */ andi $t8, $t7, 0xfff
/* AA4664 8002D4C4 308F0FFF */ andi $t7, $a0, 0xfff
/* AA4668 8002D4C8 01D8C825 */ or $t9, $t6, $t8
/* AA466C 8002D4CC 03EF7025 */ or $t6, $ra, $t7
/* AA4670 8002D4D0 AC4E0004 */ sw $t6, 4($v0)
/* AA4674 8002D4D4 AC590000 */ sw $t9, ($v0)
/* AA4678 8002D4D8 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA467C 8002D4DC 3C0E0400 */ lui $t6, (0x04000400 >> 16) # lui $t6, 0x400
/* AA4680 8002D4E0 35CE0400 */ ori $t6, (0x04000400 & 0xFFFF) # ori $t6, $t6, 0x400
/* AA4684 8002D4E4 24580008 */ addiu $t8, $v0, 8
/* AA4688 8002D4E8 AD1802B0 */ sw $t8, 0x2b0($t0)
/* AA468C 8002D4EC AC400004 */ sw $zero, 4($v0)
/* AA4690 8002D4F0 AC4C0000 */ sw $t4, ($v0)
/* AA4694 8002D4F4 8D0202B0 */ lw $v0, 0x2b0($t0)
/* AA4698 8002D4F8 3C0FF100 */ lui $t7, 0xf100
/* AA469C 8002D4FC 24590008 */ addiu $t9, $v0, 8
/* AA46A0 8002D500 AD1902B0 */ sw $t9, 0x2b0($t0)
/* AA46A4 8002D504 AC4E0004 */ sw $t6, 4($v0)
/* AA46A8 8002D508 AC4F0000 */ sw $t7, ($v0)
/* AA46AC 8002D50C 00401825 */ move $v1, $v0
/* AA46B0 8002D510 8FB800D0 */ lw $t8, 0xd0($sp)
.L8002D514:
/* AA46B4 8002D514 3C068013 */ lui $a2, %hi(D_80136170) # $a2, 0x8013
/* AA46B8 8002D518 24C66170 */ addiu $a2, %lo(D_80136170) # addiu $a2, $a2, 0x6170
/* AA46BC 8002D51C 27A4009C */ addiu $a0, $sp, 0x9c
/* AA46C0 8002D520 24070B40 */ li $a3, 2880
/* AA46C4 8002D524 0C031AD5 */ jal func_800C6B54
/* AA46C8 8002D528 8F050000 */ lw $a1, ($t8)
/* AA46CC 8002D52C 8FBF0014 */ lw $ra, 0x14($sp)
.L8002D530:
/* AA46D0 8002D530 27BD00D0 */ addiu $sp, $sp, 0xd0
/* AA46D4 8002D534 03E00008 */ jr $ra
/* AA46D8 8002D538 00000000 */ nop
@@ -1,52 +0,0 @@
glabel func_8006376C
/* ADA90C 8006376C 3C098012 */ lui $t1, %hi(D_8011E0B0) # $t1, 0x8012
/* ADA910 80063770 2529E0B0 */ addiu $t1, %lo(D_8011E0B0) # addiu $t1, $t1, -0x1f50
/* ADA914 80063774 85230000 */ lh $v1, ($t1)
/* ADA918 80063778 27BDFFF8 */ addiu $sp, $sp, -8
/* ADA91C 8006377C 3C0F8016 */ lui $t7, %hi(D_8015FA98) # $t7, 0x8016
/* ADA920 80063780 00037080 */ sll $t6, $v1, 2
/* ADA924 80063784 01C37023 */ subu $t6, $t6, $v1
/* ADA928 80063788 AFB00004 */ sw $s0, 4($sp)
/* ADA92C 8006378C AFA40008 */ sw $a0, 8($sp)
/* ADA930 80063790 AFA5000C */ sw $a1, 0xc($sp)
/* ADA934 80063794 AFA60010 */ sw $a2, 0x10($sp)
/* ADA938 80063798 000E70C0 */ sll $t6, $t6, 3
/* ADA93C 8006379C 25EFFA98 */ addiu $t7, %lo(D_8015FA98) # addiu $t7, $t7, -0x568
/* ADA940 800637A0 28610016 */ slti $at, $v1, 0x16
/* ADA944 800637A4 30C600FF */ andi $a2, $a2, 0xff
/* ADA948 800637A8 30A500FF */ andi $a1, $a1, 0xff
/* ADA94C 800637AC 308400FF */ andi $a0, $a0, 0xff
/* ADA950 800637B0 00E08025 */ move $s0, $a3
/* ADA954 800637B4 10200019 */ beqz $at, .L8006381C
/* ADA958 800637B8 01CF1021 */ addu $v0, $t6, $t7
/* ADA95C 800637BC A0440000 */ sb $a0, ($v0)
/* ADA960 800637C0 A0450001 */ sb $a1, 1($v0)
/* ADA964 800637C4 A0460002 */ sb $a2, 2($v0)
/* ADA968 800637C8 90E70000 */ lbu $a3, ($a3)
/* ADA96C 800637CC 00001825 */ move $v1, $zero
/* ADA970 800637D0 24480004 */ addiu $t0, $v0, 4
/* ADA974 800637D4 26100001 */ addiu $s0, $s0, 1
/* ADA978 800637D8 10E0000C */ beqz $a3, .L8006380C
/* ADA97C 800637DC A0470003 */ sb $a3, 3($v0)
.L800637E0:
/* ADA980 800637E0 28620015 */ slti $v0, $v1, 0x15
/* ADA984 800637E4 24630001 */ addiu $v1, $v1, 1
/* ADA988 800637E8 00031C00 */ sll $v1, $v1, 0x10
/* ADA98C 800637EC 38420001 */ xori $v0, $v0, 1
/* ADA990 800637F0 14400006 */ bnez $v0, .L8006380C
/* ADA994 800637F4 00031C03 */ sra $v1, $v1, 0x10
/* ADA998 800637F8 92070000 */ lbu $a3, ($s0)
/* ADA99C 800637FC 25080001 */ addiu $t0, $t0, 1
/* ADA9A0 80063800 26100001 */ addiu $s0, $s0, 1
/* ADA9A4 80063804 14E0FFF6 */ bnez $a3, .L800637E0
/* ADA9A8 80063808 A107FFFF */ sb $a3, -1($t0)
.L8006380C:
/* ADA9AC 8006380C A1000000 */ sb $zero, ($t0)
/* ADA9B0 80063810 85380000 */ lh $t8, ($t1)
/* ADA9B4 80063814 27190001 */ addiu $t9, $t8, 1
/* ADA9B8 80063818 A5390000 */ sh $t9, ($t1)
.L8006381C:
/* ADA9BC 8006381C 8FB00004 */ lw $s0, 4($sp)
/* ADA9C0 80063820 03E00008 */ jr $ra
/* ADA9C4 80063824 27BD0008 */ addiu $sp, $sp, 8
@@ -8,7 +8,7 @@ glabel D_8013F2D0
.balign 4
.text
glabel func_80097604
glabel Sample_Draw
/* B0E7A4 80097604 27BDFF90 */ addiu $sp, $sp, -0x70
/* B0E7A8 80097608 AFBF002C */ sw $ra, 0x2c($sp)
/* B0E7AC 8009760C AFB00028 */ sw $s0, 0x28($sp)
@@ -1,16 +0,0 @@
glabel func_800975D0
/* B0E770 800975D0 948E0020 */ lhu $t6, 0x20($a0)
/* B0E774 800975D4 2401EFFF */ li $at, -4097
/* B0E778 800975D8 3C18800C */ lui $t8, %hi(func_800BCA64) # $t8, 0x800c
/* B0E77C 800975DC 01C17827 */ nor $t7, $t6, $at
/* B0E780 800975E0 15E00006 */ bnez $t7, .L800975FC
/* B0E784 800975E4 2718CA64 */ addiu $t8, %lo(func_800BCA64) # addiu $t8, $t8, -0x359c
/* B0E788 800975E8 3C190001 */ lui $t9, (0x00012518 >> 16) # lui $t9, 1
/* B0E78C 800975EC 37392518 */ ori $t9, (0x00012518 & 0xFFFF) # ori $t9, $t9, 0x2518
/* B0E790 800975F0 AC990010 */ sw $t9, 0x10($a0)
/* B0E794 800975F4 AC98000C */ sw $t8, 0xc($a0)
/* B0E798 800975F8 AC800098 */ sw $zero, 0x98($a0)
.L800975FC:
/* B0E79C 800975FC 03E00008 */ jr $ra
/* B0E7A0 80097600 00000000 */ nop
@@ -1,12 +0,0 @@
glabel func_80097820
/* B0E9C0 80097820 27BDFFE8 */ addiu $sp, $sp, -0x18
/* B0E9C4 80097824 AFBF0014 */ sw $ra, 0x14($sp)
/* B0E9C8 80097828 0C025D81 */ jal func_80097604
/* B0E9CC 8009782C AFA40018 */ sw $a0, 0x18($sp)
/* B0E9D0 80097830 0C025D74 */ jal func_800975D0
/* B0E9D4 80097834 8FA40018 */ lw $a0, 0x18($sp)
/* B0E9D8 80097838 8FBF0014 */ lw $ra, 0x14($sp)
/* B0E9DC 8009783C 27BD0018 */ addiu $sp, $sp, 0x18
/* B0E9E0 80097840 03E00008 */ jr $ra
/* B0E9E4 80097844 00000000 */ nop
@@ -1,4 +0,0 @@
glabel func_80097848
/* B0E9E8 80097848 03E00008 */ jr $ra
/* B0E9EC 8009784C AFA40000 */ sw $a0, ($sp)
@@ -1,52 +0,0 @@
.late_rodata
glabel D_8013F300
.float 3000
.text
glabel func_80097850
/* B0E9F0 80097850 27BDFFA0 */ addiu $sp, $sp, -0x60
/* B0E9F4 80097854 AFB00018 */ sw $s0, 0x18($sp)
/* B0E9F8 80097858 AFBF001C */ sw $ra, 0x1c($sp)
/* B0E9FC 8009785C 8C850000 */ lw $a1, ($a0)
/* B0EA00 80097860 249000A8 */ addiu $s0, $a0, 0xa8
/* B0EA04 80097864 0C02A89E */ jal func_800AA278
/* B0EA08 80097868 02002025 */ move $a0, $s0
/* B0EA0C 8009786C 240E00F0 */ li $t6, 240
/* B0EA10 80097870 240F0140 */ li $t7, 320
/* B0EA14 80097874 AFAF0054 */ sw $t7, 0x54($sp)
/* B0EA18 80097878 AFAE004C */ sw $t6, 0x4c($sp)
/* B0EA1C 8009787C AFA00048 */ sw $zero, 0x48($sp)
/* B0EA20 80097880 AFA00050 */ sw $zero, 0x50($sp)
/* B0EA24 80097884 02002025 */ move $a0, $s0
/* B0EA28 80097888 0C02A93F */ jal func_800AA4FC
/* B0EA2C 8009788C 27A50048 */ addiu $a1, $sp, 0x48
/* B0EA30 80097890 02002025 */ move $a0, $s0
/* B0EA34 80097894 3C054270 */ lui $a1, 0x4270
/* B0EA38 80097898 3C064120 */ lui $a2, 0x4120
/* B0EA3C 8009789C 0C02A918 */ jal func_800AA460
/* B0EA40 800978A0 3C074648 */ li $a3, 0x46480000 # 0.000000
/* B0EA44 800978A4 44800000 */ mtc1 $zero, $f0
/* B0EA48 800978A8 3C018014 */ lui $at, %hi(D_8013F300)
/* B0EA4C 800978AC C424F300 */ lwc1 $f4, %lo(D_8013F300)($at)
/* B0EA50 800978B0 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* B0EA54 800978B4 44813000 */ mtc1 $at, $f6
/* B0EA58 800978B8 02002025 */ move $a0, $s0
/* B0EA5C 800978BC 27A5003C */ addiu $a1, $sp, 0x3c
/* B0EA60 800978C0 27A60030 */ addiu $a2, $sp, 0x30
/* B0EA64 800978C4 27A70024 */ addiu $a3, $sp, 0x24
/* B0EA68 800978C8 E7A0003C */ swc1 $f0, 0x3c($sp)
/* B0EA6C 800978CC E7A00040 */ swc1 $f0, 0x40($sp)
/* B0EA70 800978D0 E7A00030 */ swc1 $f0, 0x30($sp)
/* B0EA74 800978D4 E7A00034 */ swc1 $f0, 0x34($sp)
/* B0EA78 800978D8 E7A00038 */ swc1 $f0, 0x38($sp)
/* B0EA7C 800978DC E7A00024 */ swc1 $f0, 0x24($sp)
/* B0EA80 800978E0 E7A0002C */ swc1 $f0, 0x2c($sp)
/* B0EA84 800978E4 E7A40044 */ swc1 $f4, 0x44($sp)
/* B0EA88 800978E8 0C02A8D6 */ jal func_800AA358
/* B0EA8C 800978EC E7A60028 */ swc1 $f6, 0x28($sp)
/* B0EA90 800978F0 8FBF001C */ lw $ra, 0x1c($sp)
/* B0EA94 800978F4 8FB00018 */ lw $s0, 0x18($sp)
/* B0EA98 800978F8 27BD0060 */ addiu $sp, $sp, 0x60
/* B0EA9C 800978FC 03E00008 */ jr $ra
/* B0EAA0 80097900 00000000 */ nop
@@ -1,40 +0,0 @@
.rdata
glabel D_8013F2E0
.asciz "../z_sample.c"
.balign 4
glabel D_8013F2F0
.asciz "../z_sample.c"
.balign 4
.text
glabel func_80097904
/* B0EAA4 80097904 3C0E01AF */ lui $t6, %hi(_title_staticSegmentRomEnd) # $t6, 0x1af
/* B0EAA8 80097908 3C0F01AA */ lui $t7, %hi(_title_staticSegmentRomStart) # $t7, 0x1aa
/* B0EAAC 8009790C 27BDFFD8 */ addiu $sp, $sp, -0x28
/* B0EAB0 80097910 25EF4000 */ addiu $t7, %lo(_title_staticSegmentRomStart) # addiu $t7, $t7, 0x4000
/* B0EAB4 80097914 25CEB440 */ addiu $t6, %lo(_title_staticSegmentRomEnd) # addiu $t6, $t6, -0x4bc0
/* B0EAB8 80097918 AFBF001C */ sw $ra, 0x1c($sp)
/* B0EABC 8009791C 01CF2823 */ subu $a1, $t6, $t7
/* B0EAC0 80097920 3C068014 */ lui $a2, %hi(D_8013F2E0) # $a2, 0x8014
/* B0EAC4 80097924 AFA40028 */ sw $a0, 0x28($sp)
/* B0EAC8 80097928 24C6F2E0 */ addiu $a2, %lo(D_8013F2E0) # addiu $a2, $a2, -0xd20
/* B0EACC 8009792C AFA50020 */ sw $a1, 0x20($sp)
/* B0EAD0 80097930 0C031521 */ jal Game_Alloc
/* B0EAD4 80097934 240700A3 */ li $a3, 163
/* B0EAD8 80097938 8FB80028 */ lw $t8, 0x28($sp)
/* B0EADC 8009793C 3C0501AA */ lui $a1, %hi(_title_staticSegmentRomStart) # $a1, 0x1aa
/* B0EAE0 80097940 3C078014 */ lui $a3, %hi(D_8013F2F0) # $a3, 0x8014
/* B0EAE4 80097944 241900A4 */ li $t9, 164
/* B0EAE8 80097948 AF0200A4 */ sw $v0, 0xa4($t8)
/* B0EAEC 8009794C AFB90010 */ sw $t9, 0x10($sp)
/* B0EAF0 80097950 8FA60020 */ lw $a2, 0x20($sp)
/* B0EAF4 80097954 24E7F2F0 */ addiu $a3, %lo(D_8013F2F0) # addiu $a3, $a3, -0xd10
/* B0EAF8 80097958 24A54000 */ addiu $a1, %lo(_title_staticSegmentRomStart) # addiu $a1, $a1, 0x4000
/* B0EAFC 8009795C 0C0006A8 */ jal DmaMgr_SendRequest1
/* B0EB00 80097960 00402025 */ move $a0, $v0
/* B0EB04 80097964 8FBF001C */ lw $ra, 0x1c($sp)
/* B0EB08 80097968 27BD0028 */ addiu $sp, $sp, 0x28
/* B0EB0C 8009796C 03E00008 */ jr $ra
/* B0EB10 80097970 00000000 */ nop
@@ -1,36 +0,0 @@
glabel func_80097974
/* B0EB14 80097974 27BDFFE8 */ addiu $sp, $sp, -0x18
/* B0EB18 80097978 AFBF0014 */ sw $ra, 0x14($sp)
/* B0EB1C 8009797C 3C0E8009 */ lui $t6, %hi(func_80097820) # $t6, 0x8009
/* B0EB20 80097980 3C0F8009 */ lui $t7, %hi(func_80097848) # $t7, 0x8009
/* B0EB24 80097984 3C028016 */ lui $v0, %hi(gGameInfo) # $v0, 0x8016
/* B0EB28 80097988 25CE7820 */ addiu $t6, %lo(func_80097820) # addiu $t6, $t6, 0x7820
/* B0EB2C 8009798C 25EF7848 */ addiu $t7, %lo(func_80097848) # addiu $t7, $t7, 0x7848
/* B0EB30 80097990 2442FA90 */ addiu $v0, %lo(gGameInfo) # addiu $v0, $v0, -0x570
/* B0EB34 80097994 AC8E0004 */ sw $t6, 4($a0)
/* B0EB38 80097998 AC8F0008 */ sw $t7, 8($a0)
/* B0EB3C 8009799C 8C590000 */ lw $t9, ($v0)
/* B0EB40 800979A0 24180001 */ li $t8, 1
/* B0EB44 800979A4 A7380110 */ sh $t8, 0x110($t9)
/* B0EB48 800979A8 0C025E14 */ jal func_80097850
/* B0EB4C 800979AC AFA40018 */ sw $a0, 0x18($sp)
/* B0EB50 800979B0 0C025E41 */ jal func_80097904
/* B0EB54 800979B4 8FA40018 */ lw $a0, 0x18($sp)
/* B0EB58 800979B8 3C028016 */ lui $v0, %hi(gGameInfo) # $v0, 0x8016
/* B0EB5C 800979BC 2442FA90 */ addiu $v0, %lo(gGameInfo) # addiu $v0, $v0, -0x570
/* B0EB60 800979C0 8C480000 */ lw $t0, ($v0)
/* B0EB64 800979C4 A500011E */ sh $zero, 0x11e($t0)
/* B0EB68 800979C8 8C490000 */ lw $t1, ($v0)
/* B0EB6C 800979CC A5200120 */ sh $zero, 0x120($t1)
/* B0EB70 800979D0 8C4A0000 */ lw $t2, ($v0)
/* B0EB74 800979D4 A5400122 */ sh $zero, 0x122($t2)
/* B0EB78 800979D8 8C4B0000 */ lw $t3, ($v0)
/* B0EB7C 800979DC A5600124 */ sh $zero, 0x124($t3)
/* B0EB80 800979E0 8C4C0000 */ lw $t4, ($v0)
/* B0EB84 800979E4 A5800126 */ sh $zero, 0x126($t4)
/* B0EB88 800979E8 8C4D0000 */ lw $t5, ($v0)
/* B0EB8C 800979EC A5A00128 */ sh $zero, 0x128($t5)
/* B0EB90 800979F0 8FBF0014 */ lw $ra, 0x14($sp)
/* B0EB94 800979F4 27BD0018 */ addiu $sp, $sp, 0x18
/* B0EB98 800979F8 03E00008 */ jr $ra
/* B0EB9C 800979FC 00000000 */ nop
@@ -1,16 +0,0 @@
glabel BgGateShutter_Destroy
/* 000FC 8087825C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00100 80878260 AFA40018 */ sw $a0, 0x0018($sp)
/* 00104 80878264 8FAE0018 */ lw $t6, 0x0018($sp)
/* 00108 80878268 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0010C 8087826C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00110 80878270 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
/* 00114 80878274 0C00FB56 */ jal DynaPolyInfo_Free
## DynaPolyInfo_delReserve
/* 00118 80878278 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
/* 0011C 8087827C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00120 80878280 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00124 80878284 03E00008 */ jr $ra
/* 00128 80878288 00000000 */ nop
@@ -1,54 +0,0 @@
glabel BgGateShutter_Draw
/* 00360 808784C0 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00364 808784C4 AFBF001C */ sw $ra, 0x001C($sp)
/* 00368 808784C8 AFB00018 */ sw $s0, 0x0018($sp)
/* 0036C 808784CC AFA40040 */ sw $a0, 0x0040($sp)
/* 00370 808784D0 AFA50044 */ sw $a1, 0x0044($sp)
/* 00374 808784D4 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 00378 808784D8 3C068088 */ lui $a2, %hi(D_808785E0) ## $a2 = 80880000
/* 0037C 808784DC 24C685E0 */ addiu $a2, $a2, %lo(D_808785E0) ## $a2 = 808785E0
/* 00380 808784E0 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFEC
/* 00384 808784E4 24070143 */ addiu $a3, $zero, 0x0143 ## $a3 = 00000143
/* 00388 808784E8 0C031AB1 */ jal func_800C6AC4
/* 0038C 808784EC 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00390 808784F0 8FAF0044 */ lw $t7, 0x0044($sp)
/* 00394 808784F4 0C024F46 */ jal func_80093D18
/* 00398 808784F8 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
/* 0039C 808784FC 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 003A0 80878500 3C19DA38 */ lui $t9, 0xDA38 ## $t9 = DA380000
/* 003A4 80878504 37390003 */ ori $t9, $t9, 0x0003 ## $t9 = DA380003
/* 003A8 80878508 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 003AC 8087850C AE1802C0 */ sw $t8, 0x02C0($s0) ## 000002C0
/* 003B0 80878510 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 003B4 80878514 8FA80044 */ lw $t0, 0x0044($sp)
/* 003B8 80878518 3C058088 */ lui $a1, %hi(D_808785F8) ## $a1 = 80880000
/* 003BC 8087851C 24A585F8 */ addiu $a1, $a1, %lo(D_808785F8) ## $a1 = 808785F8
/* 003C0 80878520 8D040000 */ lw $a0, 0x0000($t0) ## 00000000
/* 003C4 80878524 24060148 */ addiu $a2, $zero, 0x0148 ## $a2 = 00000148
/* 003C8 80878528 0C0346A2 */ jal Matrix_NewMtx
/* 003CC 8087852C AFA20028 */ sw $v0, 0x0028($sp)
/* 003D0 80878530 8FA30028 */ lw $v1, 0x0028($sp)
/* 003D4 80878534 3C0B0600 */ lui $t3, 0x0600 ## $t3 = 06000000
/* 003D8 80878538 256B1CD0 */ addiu $t3, $t3, 0x1CD0 ## $t3 = 06001CD0
/* 003DC 8087853C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 003E0 80878540 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 003E4 80878544 3C0ADE00 */ lui $t2, 0xDE00 ## $t2 = DE000000
/* 003E8 80878548 3C068088 */ lui $a2, %hi(D_80878610) ## $a2 = 80880000
/* 003EC 8087854C 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008
/* 003F0 80878550 AE0902C0 */ sw $t1, 0x02C0($s0) ## 000002C0
/* 003F4 80878554 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
/* 003F8 80878558 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
/* 003FC 8087855C 8FAC0044 */ lw $t4, 0x0044($sp)
/* 00400 80878560 24C68610 */ addiu $a2, $a2, %lo(D_80878610) ## $a2 = 80878610
/* 00404 80878564 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFEC
/* 00408 80878568 2407014D */ addiu $a3, $zero, 0x014D ## $a3 = 0000014D
/* 0040C 8087856C 0C031AD5 */ jal func_800C6B54
/* 00410 80878570 8D850000 */ lw $a1, 0x0000($t4) ## 00000000
/* 00414 80878574 8FBF001C */ lw $ra, 0x001C($sp)
/* 00418 80878578 8FB00018 */ lw $s0, 0x0018($sp)
/* 0041C 8087857C 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 00420 80878580 03E00008 */ jr $ra
/* 00424 80878584 00000000 */ nop
/* 00428 80878588 00000000 */ nop
/* 0042C 8087858C 00000000 */ nop
@@ -1,74 +0,0 @@
glabel BgGateShutter_Init
/* 00000 80878160 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00004 80878164 AFBF001C */ sw $ra, 0x001C($sp)
/* 00008 80878168 AFB00018 */ sw $s0, 0x0018($sp)
/* 0000C 8087816C AFA50034 */ sw $a1, 0x0034($sp)
/* 00010 80878170 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00014 80878174 AFA00020 */ sw $zero, 0x0020($sp)
/* 00018 80878178 0C010D20 */ jal DynaPolyInfo_SetActorMove
/* 0001C 8087817C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00020 80878180 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 00024 80878184 24841DA8 */ addiu $a0, $a0, 0x1DA8 ## $a0 = 06001DA8
/* 00028 80878188 0C010620 */ jal DynaPolyInfo_Alloc
/* 0002C 8087818C 27A50020 */ addiu $a1, $sp, 0x0020 ## $a1 = FFFFFFF0
/* 00030 80878190 8FA40034 */ lw $a0, 0x0034($sp)
/* 00034 80878194 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 00038 80878198 8FA70020 */ lw $a3, 0x0020($sp)
/* 0003C 8087819C 0C00FA9D */ jal DynaPolyInfo_RegisterActor
## DynaPolyInfo_setActor
/* 00040 808781A0 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
/* 00044 808781A4 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
/* 00048 808781A8 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
/* 0004C 808781AC C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C
/* 00050 808781B0 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000
/* 00054 808781B4 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660
/* 00058 808781B8 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
/* 0005C 808781BC E604016C */ swc1 $f4, 0x016C($s0) ## 0000016C
/* 00060 808781C0 E6060170 */ swc1 $f6, 0x0170($s0) ## 00000170
/* 00064 808781C4 E6080174 */ swc1 $f8, 0x0174($s0) ## 00000174
/* 00068 808781C8 946E0F06 */ lhu $t6, 0x0F06($v1) ## 8015F566
/* 0006C 808781CC 8FA80034 */ lw $t0, 0x0034($sp)
/* 00070 808781D0 31CF0040 */ andi $t7, $t6, 0x0040 ## $t7 = 00000000
/* 00074 808781D4 55E00006 */ bnel $t7, $zero, .L808781F0
/* 00078 808781D8 850900A4 */ lh $t1, 0x00A4($t0) ## 000000A4
/* 0007C 808781DC 94780EDC */ lhu $t8, 0x0EDC($v1) ## 8015F53C
/* 00080 808781E0 33190020 */ andi $t9, $t8, 0x0020 ## $t9 = 00000000
/* 00084 808781E4 5320000B */ beql $t9, $zero, .L80878214
/* 00088 808781E8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 0008C 808781EC 850900A4 */ lh $t1, 0x00A4($t0) ## 000000A4
.L808781F0:
/* 00090 808781F0 24010052 */ addiu $at, $zero, 0x0052 ## $at = 00000052
/* 00094 808781F4 15210006 */ bne $t1, $at, .L80878210
/* 00098 808781F8 3C01C2B2 */ lui $at, 0xC2B2 ## $at = C2B20000
/* 0009C 808781FC 44815000 */ mtc1 $at, $f10 ## $f10 = -89.00
/* 000A0 80878200 3C018088 */ lui $at, %hi(D_80878628) ## $at = 80880000
/* 000A4 80878204 E60A0024 */ swc1 $f10, 0x0024($s0) ## 00000024
/* 000A8 80878208 C4308628 */ lwc1 $f16, %lo(D_80878628)($at)
/* 000AC 8087820C E610002C */ swc1 $f16, 0x002C($s0) ## 0000002C
.L80878210:
/* 000B0 80878210 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
.L80878214:
/* 000B4 80878214 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 000B8 80878218 3C048088 */ lui $a0, %hi(D_808785B0) ## $a0 = 80880000
/* 000BC 8087821C 248485B0 */ addiu $a0, $a0, %lo(D_808785B0) ## $a0 = 808785B0
/* 000C0 80878220 E6000050 */ swc1 $f0, 0x0050($s0) ## 00000050
/* 000C4 80878224 E6000054 */ swc1 $f0, 0x0054($s0) ## 00000054
/* 000C8 80878228 0C00084C */ jal osSyncPrintf
/* 000CC 8087822C E6000058 */ swc1 $f0, 0x0058($s0) ## 00000058
/* 000D0 80878230 3C048088 */ lui $a0, %hi(D_808785B4) ## $a0 = 80880000
/* 000D4 80878234 0C00084C */ jal osSyncPrintf
/* 000D8 80878238 248485B4 */ addiu $a0, $a0, %lo(D_808785B4) ## $a0 = 808785B4
/* 000DC 8087823C 3C0A8088 */ lui $t2, %hi(func_8087828C) ## $t2 = 80880000
/* 000E0 80878240 254A828C */ addiu $t2, $t2, %lo(func_8087828C) ## $t2 = 8087828C
/* 000E4 80878244 AE0A0164 */ sw $t2, 0x0164($s0) ## 00000164
/* 000E8 80878248 8FBF001C */ lw $ra, 0x001C($sp)
/* 000EC 8087824C 8FB00018 */ lw $s0, 0x0018($sp)
/* 000F0 80878250 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 000F4 80878254 03E00008 */ jr $ra
/* 000F8 80878258 00000000 */ nop
@@ -1,17 +0,0 @@
glabel BgGateShutter_Update
/* 0032C 8087848C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00330 80878490 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00334 80878494 84820178 */ lh $v0, 0x0178($a0) ## 00000178
/* 00338 80878498 10400002 */ beq $v0, $zero, .L808784A4
/* 0033C 8087849C 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 00340 808784A0 A48E0178 */ sh $t6, 0x0178($a0) ## 00000178
.L808784A4:
/* 00344 808784A4 8C990164 */ lw $t9, 0x0164($a0) ## 00000164
/* 00348 808784A8 0320F809 */ jalr $ra, $t9
/* 0034C 808784AC 00000000 */ nop
/* 00350 808784B0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00354 808784B4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00358 808784B8 03E00008 */ jr $ra
/* 0035C 808784BC 00000000 */ nop
@@ -1,35 +0,0 @@
glabel func_8087828C
/* 0012C 8087828C AFA50004 */ sw $a1, 0x0004($sp)
/* 00130 80878290 84820168 */ lh $v0, 0x0168($a0) ## 00000168
/* 00134 80878294 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00138 80878298 3C0E8016 */ lui $t6, 0x8016 ## $t6 = 80160000
/* 0013C 8087829C 1441000B */ bne $v0, $at, .L808782CC
/* 00140 808782A0 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002
/* 00144 808782A4 95CEF566 */ lhu $t6, -0x0A9A($t6) ## 8015F566
/* 00148 808782A8 3C188088 */ lui $t8, %hi(func_80878300) ## $t8 = 80880000
/* 0014C 808782AC 27188300 */ addiu $t8, $t8, %lo(func_80878300) ## $t8 = 80878300
/* 00150 808782B0 31CF0040 */ andi $t7, $t6, 0x0040 ## $t7 = 00000000
/* 00154 808782B4 15E00005 */ bne $t7, $zero, .L808782CC
/* 00158 808782B8 00000000 */ nop
/* 0015C 808782BC 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002
/* 00160 808782C0 A4830178 */ sh $v1, 0x0178($a0) ## 00000178
/* 00164 808782C4 03E00008 */ jr $ra
/* 00168 808782C8 AC980164 */ sw $t8, 0x0164($a0) ## 00000164
.L808782CC:
/* 0016C 808782CC 14620005 */ bne $v1, $v0, .L808782E4
/* 00170 808782D0 3C198088 */ lui $t9, %hi(func_80878300) ## $t9 = 80880000
/* 00174 808782D4 27398300 */ addiu $t9, $t9, %lo(func_80878300) ## $t9 = 80878300
/* 00178 808782D8 A4830178 */ sh $v1, 0x0178($a0) ## 00000178
/* 0017C 808782DC 03E00008 */ jr $ra
/* 00180 808782E0 AC990164 */ sw $t9, 0x0164($a0) ## 00000164
.L808782E4:
/* 00184 808782E4 04410004 */ bgez $v0, .L808782F8
/* 00188 808782E8 3C088088 */ lui $t0, %hi(func_808783D4) ## $t0 = 80880000
/* 0018C 808782EC 250883D4 */ addiu $t0, $t0, %lo(func_808783D4) ## $t0 = 808783D4
/* 00190 808782F0 A4830178 */ sh $v1, 0x0178($a0) ## 00000178
/* 00194 808782F4 AC880164 */ sw $t0, 0x0164($a0) ## 00000164
.L808782F8:
/* 00198 808782F8 03E00008 */ jr $ra
/* 0019C 808782FC 00000000 */ nop
@@ -1,50 +0,0 @@
glabel func_80878300
/* 001A0 80878300 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 001A4 80878304 AFBF001C */ sw $ra, 0x001C($sp)
/* 001A8 80878308 AFB00018 */ sw $s0, 0x0018($sp)
/* 001AC 8087830C AFA50024 */ sw $a1, 0x0024($sp)
/* 001B0 80878310 848E0178 */ lh $t6, 0x0178($a0) ## 00000178
/* 001B4 80878314 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 001B8 80878318 55C00020 */ bnel $t6, $zero, .L8087839C
/* 001BC 8087831C 8FBF001C */ lw $ra, 0x001C($sp)
/* 001C0 80878320 0C00BE0A */ jal Audio_PlayActorSound2
/* 001C4 80878324 24052067 */ addiu $a1, $zero, 0x2067 ## $a1 = 00002067
/* 001C8 80878328 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 001CC 8087832C 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00
/* 001D0 80878330 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
/* 001D4 80878334 3C05C4AB */ lui $a1, 0xC4AB ## $a1 = C4AB0000
/* 001D8 80878338 3C063F4C */ lui $a2, 0x3F4C ## $a2 = 3F4C0000
/* 001DC 8087833C 46062201 */ sub.s $f8, $f4, $f6
/* 001E0 80878340 3C073E99 */ lui $a3, 0x3E99 ## $a3 = 3E990000
/* 001E4 80878344 34E7999A */ ori $a3, $a3, 0x999A ## $a3 = 3E99999A
/* 001E8 80878348 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3F4CCCCD
/* 001EC 8087834C E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024
/* 001F0 80878350 34A5E000 */ ori $a1, $a1, 0xE000 ## $a1 = C4ABE000
/* 001F4 80878354 0C01E107 */ jal Math_SmoothScaleMaxF
/* 001F8 80878358 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
/* 001FC 8087835C 3C01C2B2 */ lui $at, 0xC2B2 ## $at = C2B20000
/* 00200 80878360 44818000 */ mtc1 $at, $f16 ## $f16 = -89.00
/* 00204 80878364 C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024
/* 00208 80878368 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0020C 8087836C 4610503C */ c.lt.s $f10, $f16
/* 00210 80878370 00000000 */ nop
/* 00214 80878374 45020009 */ bc1fl .L8087839C
/* 00218 80878378 8FBF001C */ lw $ra, 0x001C($sp)
/* 0021C 8087837C 0C00BE0A */ jal Audio_PlayActorSound2
/* 00220 80878380 2405280E */ addiu $a1, $zero, 0x280E ## $a1 = 0000280E
/* 00224 80878384 3C188088 */ lui $t8, %hi(func_808783AC) ## $t8 = 80880000
/* 00228 80878388 240F001E */ addiu $t7, $zero, 0x001E ## $t7 = 0000001E
/* 0022C 8087838C 271883AC */ addiu $t8, $t8, %lo(func_808783AC) ## $t8 = 808783AC
/* 00230 80878390 A60F0178 */ sh $t7, 0x0178($s0) ## 00000178
/* 00234 80878394 AE180164 */ sw $t8, 0x0164($s0) ## 00000164
/* 00238 80878398 8FBF001C */ lw $ra, 0x001C($sp)
.L8087839C:
/* 0023C 8087839C 8FB00018 */ lw $s0, 0x0018($sp)
/* 00240 808783A0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00244 808783A4 03E00008 */ jr $ra
/* 00248 808783A8 00000000 */ nop
@@ -1,14 +0,0 @@
glabel func_808783AC
/* 0024C 808783AC AFA50004 */ sw $a1, 0x0004($sp)
/* 00250 808783B0 848E0178 */ lh $t6, 0x0178($a0) ## 00000178
/* 00254 808783B4 3C0F8088 */ lui $t7, %hi(func_8087828C) ## $t7 = 80880000
/* 00258 808783B8 25EF828C */ addiu $t7, $t7, %lo(func_8087828C) ## $t7 = 8087828C
/* 0025C 808783BC 15C00003 */ bne $t6, $zero, .L808783CC
/* 00260 808783C0 00000000 */ nop
/* 00264 808783C4 A4800168 */ sh $zero, 0x0168($a0) ## 00000168
/* 00268 808783C8 AC8F0164 */ sw $t7, 0x0164($a0) ## 00000164
.L808783CC:
/* 0026C 808783CC 03E00008 */ jr $ra
/* 00270 808783D0 00000000 */ nop
@@ -1,53 +0,0 @@
glabel func_808783D4
/* 00274 808783D4 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00278 808783D8 AFBF001C */ sw $ra, 0x001C($sp)
/* 0027C 808783DC AFB00018 */ sw $s0, 0x0018($sp)
/* 00280 808783E0 AFA50024 */ sw $a1, 0x0024($sp)
/* 00284 808783E4 848E0178 */ lh $t6, 0x0178($a0) ## 00000178
/* 00288 808783E8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0028C 808783EC 55C00023 */ bnel $t6, $zero, .L8087847C
/* 00290 808783F0 8FBF001C */ lw $ra, 0x001C($sp)
/* 00294 808783F4 0C00BE0A */ jal Audio_PlayActorSound2
/* 00298 808783F8 24052067 */ addiu $a1, $zero, 0x2067 ## $a1 = 00002067
/* 0029C 808783FC 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 002A0 80878400 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00
/* 002A4 80878404 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
/* 002A8 80878408 3C05C4A8 */ lui $a1, 0xC4A8 ## $a1 = C4A80000
/* 002AC 8087840C 3C063F4C */ lui $a2, 0x3F4C ## $a2 = 3F4C0000
/* 002B0 80878410 46062200 */ add.s $f8, $f4, $f6
/* 002B4 80878414 3C073E99 */ lui $a3, 0x3E99 ## $a3 = 3E990000
/* 002B8 80878418 34E7999A */ ori $a3, $a3, 0x999A ## $a3 = 3E99999A
/* 002BC 8087841C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3F4CCCCD
/* 002C0 80878420 E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024
/* 002C4 80878424 34A5C000 */ ori $a1, $a1, 0xC000 ## $a1 = C4A8C000
/* 002C8 80878428 0C01E107 */ jal Math_SmoothScaleMaxF
/* 002CC 8087842C 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
/* 002D0 80878430 3C0142B4 */ lui $at, 0x42B4 ## $at = 42B40000
/* 002D4 80878434 44815000 */ mtc1 $at, $f10 ## $f10 = 90.00
/* 002D8 80878438 C6100024 */ lwc1 $f16, 0x0024($s0) ## 00000024
/* 002DC 8087843C 3C0142B6 */ lui $at, 0x42B6 ## $at = 42B60000
/* 002E0 80878440 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 002E4 80878444 4610503C */ c.lt.s $f10, $f16
/* 002E8 80878448 00000000 */ nop
/* 002EC 8087844C 4502000B */ bc1fl .L8087847C
/* 002F0 80878450 8FBF001C */ lw $ra, 0x001C($sp)
/* 002F4 80878454 44819000 */ mtc1 $at, $f18 ## $f18 = 91.00
/* 002F8 80878458 2405280E */ addiu $a1, $zero, 0x280E ## $a1 = 0000280E
/* 002FC 8087845C 0C00BE0A */ jal Audio_PlayActorSound2
/* 00300 80878460 E6120024 */ swc1 $f18, 0x0024($s0) ## 00000024
/* 00304 80878464 3C188088 */ lui $t8, %hi(func_808783AC) ## $t8 = 80880000
/* 00308 80878468 240F001E */ addiu $t7, $zero, 0x001E ## $t7 = 0000001E
/* 0030C 8087846C 271883AC */ addiu $t8, $t8, %lo(func_808783AC) ## $t8 = 808783AC
/* 00310 80878470 A60F0178 */ sh $t7, 0x0178($s0) ## 00000178
/* 00314 80878474 AE180164 */ sw $t8, 0x0164($s0) ## 00000164
/* 00318 80878478 8FBF001C */ lw $ra, 0x001C($sp)
.L8087847C:
/* 0031C 8087847C 8FB00018 */ lw $s0, 0x0018($sp)
/* 00320 80878480 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00324 80878484 03E00008 */ jr $ra
/* 00328 80878488 00000000 */ nop
@@ -1,14 +0,0 @@
glabel BgTokiSwd_Destroy
/* 000D8 808BAF18 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000DC 808BAF1C 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 000E0 808BAF20 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000E4 808BAF24 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 000E8 808BAF28 0C0170EB */ jal ActorCollider_FreeCylinder
/* 000EC 808BAF2C 24C50150 */ addiu $a1, $a2, 0x0150 ## $a1 = 00000150
/* 000F0 808BAF30 8FBF0014 */ lw $ra, 0x0014($sp)
/* 000F4 808BAF34 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 000F8 808BAF38 03E00008 */ jr $ra
/* 000FC 808BAF3C 00000000 */ nop
@@ -1,77 +0,0 @@
glabel BgTokiSwd_Draw
/* 00384 808BB1C4 27BDFFA0 */ addiu $sp, $sp, 0xFFA0 ## $sp = FFFFFFA0
/* 00388 808BB1C8 AFB0001C */ sw $s0, 0x001C($sp)
/* 0038C 808BB1CC 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00390 808BB1D0 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00394 808BB1D4 AFB10020 */ sw $s1, 0x0020($sp)
/* 00398 808BB1D8 AFA40060 */ sw $a0, 0x0060($sp)
/* 0039C 808BB1DC 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 003A0 808BB1E0 3C06808C */ lui $a2, %hi(D_808BC420) ## $a2 = 808C0000
/* 003A4 808BB1E4 24C6C420 */ addiu $a2, $a2, %lo(D_808BC420) ## $a2 = 808BC420
/* 003A8 808BB1E8 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFD8
/* 003AC 808BB1EC 240702D7 */ addiu $a3, $zero, 0x02D7 ## $a3 = 000002D7
/* 003B0 808BB1F0 0C031AB1 */ jal func_800C6AC4
/* 003B4 808BB1F4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 003B8 808BB1F8 0C024F46 */ jal func_80093D18
/* 003BC 808BB1FC 8E040000 */ lw $a0, 0x0000($s0) ## 00000000
/* 003C0 808BB200 8FA40060 */ lw $a0, 0x0060($sp)
/* 003C4 808BB204 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 003C8 808BB208 0C00BAF3 */ jal func_8002EBCC
/* 003CC 808BB20C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 003D0 808BB210 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 003D4 808BB214 3C0FDB06 */ lui $t7, 0xDB06 ## $t7 = DB060000
/* 003D8 808BB218 35EF0020 */ ori $t7, $t7, 0x0020 ## $t7 = DB060020
/* 003DC 808BB21C 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 003E0 808BB220 AE2E02C0 */ sw $t6, 0x02C0($s1) ## 000002C0
/* 003E4 808BB224 3C060001 */ lui $a2, 0x0001 ## $a2 = 00010000
/* 003E8 808BB228 00D03021 */ addu $a2, $a2, $s0
/* 003EC 808BB22C AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 003F0 808BB230 8CC61DE4 */ lw $a2, 0x1DE4($a2) ## 00011DE4
/* 003F4 808BB234 8E040000 */ lw $a0, 0x0000($s0) ## 00000000
/* 003F8 808BB238 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020
/* 003FC 808BB23C 30C6007F */ andi $a2, $a2, 0x007F ## $a2 = 00000000
/* 00400 808BB240 00063023 */ subu $a2, $zero, $a2
/* 00404 808BB244 AFB80010 */ sw $t8, 0x0010($sp)
/* 00408 808BB248 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 0040C 808BB24C 24070020 */ addiu $a3, $zero, 0x0020 ## $a3 = 00000020
/* 00410 808BB250 0C0253A7 */ jal Draw_TexScroll
/* 00414 808BB254 AFA20034 */ sw $v0, 0x0034($sp)
/* 00418 808BB258 8FA30034 */ lw $v1, 0x0034($sp)
/* 0041C 808BB25C 3C08DA38 */ lui $t0, 0xDA38 ## $t0 = DA380000
/* 00420 808BB260 35080003 */ ori $t0, $t0, 0x0003 ## $t0 = DA380003
/* 00424 808BB264 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 00428 808BB268 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 0042C 808BB26C 3C05808C */ lui $a1, %hi(D_808BC434) ## $a1 = 808C0000
/* 00430 808BB270 24A5C434 */ addiu $a1, $a1, %lo(D_808BC434) ## $a1 = 808BC434
/* 00434 808BB274 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
/* 00438 808BB278 AE3902C0 */ sw $t9, 0x02C0($s1) ## 000002C0
/* 0043C 808BB27C AC480000 */ sw $t0, 0x0000($v0) ## 00000000
/* 00440 808BB280 8E040000 */ lw $a0, 0x0000($s0) ## 00000000
/* 00444 808BB284 240602E6 */ addiu $a2, $zero, 0x02E6 ## $a2 = 000002E6
/* 00448 808BB288 0C0346A2 */ jal Matrix_NewMtx
/* 0044C 808BB28C AFA20030 */ sw $v0, 0x0030($sp)
/* 00450 808BB290 8FA30030 */ lw $v1, 0x0030($sp)
/* 00454 808BB294 3C0B0600 */ lui $t3, 0x0600 ## $t3 = 06000000
/* 00458 808BB298 256B1BD0 */ addiu $t3, $t3, 0x1BD0 ## $t3 = 06001BD0
/* 0045C 808BB29C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 00460 808BB2A0 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 00464 808BB2A4 3C0ADE00 */ lui $t2, 0xDE00 ## $t2 = DE000000
/* 00468 808BB2A8 3C06808C */ lui $a2, %hi(D_808BC448) ## $a2 = 808C0000
/* 0046C 808BB2AC 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008
/* 00470 808BB2B0 AE2902C0 */ sw $t1, 0x02C0($s1) ## 000002C0
/* 00474 808BB2B4 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
/* 00478 808BB2B8 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
/* 0047C 808BB2BC 8E050000 */ lw $a1, 0x0000($s0) ## 00000000
/* 00480 808BB2C0 24C6C448 */ addiu $a2, $a2, %lo(D_808BC448) ## $a2 = 808BC448
/* 00484 808BB2C4 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFD8
/* 00488 808BB2C8 0C031AD5 */ jal func_800C6B54
/* 0048C 808BB2CC 24070308 */ addiu $a3, $zero, 0x0308 ## $a3 = 00000308
/* 00490 808BB2D0 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00494 808BB2D4 8FB0001C */ lw $s0, 0x001C($sp)
/* 00498 808BB2D8 8FB10020 */ lw $s1, 0x0020($sp)
/* 0049C 808BB2DC 03E00008 */ jr $ra
/* 004A0 808BB2E0 27BD0060 */ addiu $sp, $sp, 0x0060 ## $sp = 00000000
/* 004A4 808BB2E4 00000000 */ nop
/* 004A8 808BB2E8 00000000 */ nop
/* 004AC 808BB2EC 00000000 */ nop
@@ -1,61 +0,0 @@
glabel BgTokiSwd_Init
/* 00008 808BAE48 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 0000C 808BAE4C AFA50034 */ sw $a1, 0x0034($sp)
/* 00010 808BAE50 AFBF001C */ sw $ra, 0x001C($sp)
/* 00014 808BAE54 AFB00018 */ sw $s0, 0x0018($sp)
/* 00018 808BAE58 3C05808C */ lui $a1, %hi(D_808BC414) ## $a1 = 808C0000
/* 0001C 808BAE5C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00020 808BAE60 0C01E037 */ jal Actor_ProcessInitChain
/* 00024 808BAE64 24A5C414 */ addiu $a1, $a1, %lo(D_808BC414) ## $a1 = 808BC414
/* 00028 808BAE68 3C014448 */ lui $at, 0x4448 ## $at = 44480000
/* 0002C 808BAE6C 44812000 */ mtc1 $at, $f4 ## $f4 = 800.00
/* 00030 808BAE70 3C05808C */ lui $a1, %hi(func_808BAF40) ## $a1 = 808C0000
/* 00034 808BAE74 24A5AF40 */ addiu $a1, $a1, %lo(func_808BAF40) ## $a1 = 808BAF40
/* 00038 808BAE78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0003C 808BAE7C 0C22EB90 */ jal func_808BAE40
/* 00040 808BAE80 E60400BC */ swc1 $f4, 0x00BC($s0) ## 000000BC
/* 00044 808BAE84 3C028016 */ lui $v0, 0x8016 ## $v0 = 80160000
/* 00048 808BAE88 2442E660 */ addiu $v0, $v0, 0xE660 ## $v0 = 8015E660
/* 0004C 808BAE8C 8C4E0004 */ lw $t6, 0x0004($v0) ## 8015E664
/* 00050 808BAE90 26050150 */ addiu $a1, $s0, 0x0150 ## $a1 = 00000150
/* 00054 808BAE94 55C00003 */ bnel $t6, $zero, .L808BAEA4
/* 00058 808BAE98 8C4F1360 */ lw $t7, 0x1360($v0) ## 8015F9C0
/* 0005C 808BAE9C AE000134 */ sw $zero, 0x0134($s0) ## 00000134
/* 00060 808BAEA0 8C4F1360 */ lw $t7, 0x1360($v0) ## 8015F9C0
.L808BAEA4:
/* 00064 808BAEA4 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
/* 00068 808BAEA8 8FB90034 */ lw $t9, 0x0034($sp)
/* 0006C 808BAEAC 15E10004 */ bne $t7, $at, .L808BAEC0
/* 00070 808BAEB0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00074 808BAEB4 00390821 */ addu $at, $at, $t9
/* 00078 808BAEB8 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF
/* 0007C 808BAEBC A4381D30 */ sh $t8, 0x1D30($at) ## 00011D30
.L808BAEC0:
/* 00080 808BAEC0 8FA40034 */ lw $a0, 0x0034($sp)
/* 00084 808BAEC4 0C0170D9 */ jal ActorCollider_AllocCylinder
/* 00088 808BAEC8 AFA50024 */ sw $a1, 0x0024($sp)
/* 0008C 808BAECC 3C07808C */ lui $a3, %hi(D_808BC3E0) ## $a3 = 808C0000
/* 00090 808BAED0 24E7C3E0 */ addiu $a3, $a3, %lo(D_808BC3E0) ## $a3 = 808BC3E0
/* 00094 808BAED4 8FA40034 */ lw $a0, 0x0034($sp)
/* 00098 808BAED8 8FA50024 */ lw $a1, 0x0024($sp)
/* 0009C 808BAEDC 0C01712B */ jal ActorCollider_InitCylinder
/* 000A0 808BAEE0 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 000A4 808BAEE4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000A8 808BAEE8 0C0189B7 */ jal ActorCollider_Cylinder_Update
/* 000AC 808BAEEC 8FA50024 */ lw $a1, 0x0024($sp)
/* 000B0 808BAEF0 3C06808C */ lui $a2, %hi(D_808BC40C) ## $a2 = 808C0000
/* 000B4 808BAEF4 24C6C40C */ addiu $a2, $a2, %lo(D_808BC40C) ## $a2 = 808BC40C
/* 000B8 808BAEF8 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098
/* 000BC 808BAEFC 0C0187B5 */ jal func_80061ED4
/* 000C0 808BAF00 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 000C4 808BAF04 8FBF001C */ lw $ra, 0x001C($sp)
/* 000C8 808BAF08 8FB00018 */ lw $s0, 0x0018($sp)
/* 000CC 808BAF0C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 000D0 808BAF10 03E00008 */ jr $ra
/* 000D4 808BAF14 00000000 */ nop
@@ -1,22 +0,0 @@
glabel BgTokiSwd_Update
/* 0033C 808BB17C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00340 808BB180 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00344 808BB184 AFA5001C */ sw $a1, 0x001C($sp)
/* 00348 808BB188 AFA40018 */ sw $a0, 0x0018($sp)
/* 0034C 808BB18C 8C99014C */ lw $t9, 0x014C($a0) ## 0000014C
/* 00350 808BB190 0320F809 */ jalr $ra, $t9
/* 00354 808BB194 00000000 */ nop
/* 00358 808BB198 8FA4001C */ lw $a0, 0x001C($sp)
/* 0035C 808BB19C 8FA70018 */ lw $a3, 0x0018($sp)
/* 00360 808BB1A0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00364 808BB1A4 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00368 808BB1A8 00812821 */ addu $a1, $a0, $at
/* 0036C 808BB1AC 0C017713 */ jal Actor_CollisionCheck_SetOT
## CollisionCheck_setOT
/* 00370 808BB1B0 24E60150 */ addiu $a2, $a3, 0x0150 ## $a2 = 00000150
/* 00374 808BB1B4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00378 808BB1B8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0037C 808BB1BC 03E00008 */ jr $ra
/* 00380 808BB1C0 00000000 */ nop
@@ -1,5 +0,0 @@
glabel func_808BAE40
/* 00000 808BAE40 03E00008 */ jr $ra
/* 00004 808BAE44 AC85014C */ sw $a1, 0x014C($a0) ## 0000014C
@@ -1,106 +0,0 @@
glabel func_808BAF40
/* 00100 808BAF40 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00104 808BAF44 AFB00014 */ sw $s0, 0x0014($sp)
/* 00108 808BAF48 3C108016 */ lui $s0, 0x8016 ## $s0 = 80160000
/* 0010C 808BAF4C 2610E660 */ addiu $s0, $s0, 0xE660 ## $s0 = 8015E660
/* 00110 808BAF50 960E0EDC */ lhu $t6, 0x0EDC($s0) ## 8015F53C
/* 00114 808BAF54 AFB10018 */ sw $s1, 0x0018($sp)
/* 00118 808BAF58 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 0011C 808BAF5C 31CF8000 */ andi $t7, $t6, 0x8000 ## $t7 = 00000000
/* 00120 808BAF60 AFBF001C */ sw $ra, 0x001C($sp)
/* 00124 808BAF64 15E00015 */ bne $t7, $zero, .L808BAFBC
/* 00128 808BAF68 AFA40020 */ sw $a0, 0x0020($sp)
/* 0012C 808BAF6C 8E181360 */ lw $t8, 0x1360($s0) ## 8015F9C0
/* 00130 808BAF70 3C054448 */ lui $a1, 0x4448 ## $a1 = 44480000
/* 00134 808BAF74 2B010004 */ slti $at, $t8, 0x0004
/* 00138 808BAF78 50200011 */ beql $at, $zero, .L808BAFC0
/* 0013C 808BAF7C 8E0B0004 */ lw $t3, 0x0004($s0) ## 8015E664
/* 00140 808BAF80 0C00B84B */ jal func_8002E12C
/* 00144 808BAF84 24067530 */ addiu $a2, $zero, 0x7530 ## $a2 = 00007530
/* 00148 808BAF88 5040000D */ beql $v0, $zero, .L808BAFC0
/* 0014C 808BAF8C 8E0B0004 */ lw $t3, 0x0004($s0) ## 8015E664
/* 00150 808BAF90 0C02FF21 */ jal func_800BFC84
/* 00154 808BAF94 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00158 808BAF98 14400008 */ bne $v0, $zero, .L808BAFBC
/* 0015C 808BAF9C 3C09808C */ lui $t1, %hi(D_808BBD90) ## $t1 = 808C0000
/* 00160 808BAFA0 96190EDC */ lhu $t9, 0x0EDC($s0) ## 8015F53C
/* 00164 808BAFA4 2529BD90 */ addiu $t1, $t1, %lo(D_808BBD90) ## $t1 = 808BBD90
/* 00168 808BAFA8 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
/* 0016C 808BAFAC 37288000 */ ori $t0, $t9, 0x8000 ## $t0 = 00008000
/* 00170 808BAFB0 A6080EDC */ sh $t0, 0x0EDC($s0) ## 8015F53C
/* 00174 808BAFB4 AE291D68 */ sw $t1, 0x1D68($s1) ## 00001D68
/* 00178 808BAFB8 A20A1414 */ sb $t2, 0x1414($s0) ## 8015FA74
.L808BAFBC:
/* 0017C 808BAFBC 8E0B0004 */ lw $t3, 0x0004($s0) ## 8015E664
.L808BAFC0:
/* 00180 808BAFC0 8FA40020 */ lw $a0, 0x0020($sp)
/* 00184 808BAFC4 15600005 */ bne $t3, $zero, .L808BAFDC
/* 00188 808BAFC8 00000000 */ nop
/* 0018C 808BAFCC 960C0EDE */ lhu $t4, 0x0EDE($s0) ## 8015F53E
/* 00190 808BAFD0 318D0020 */ andi $t5, $t4, 0x0020 ## $t5 = 00000000
/* 00194 808BAFD4 51A00026 */ beql $t5, $zero, .L808BB070
/* 00198 808BAFD8 8E081360 */ lw $t0, 0x1360($s0) ## 8015F9C0
.L808BAFDC:
/* 0019C 808BAFDC 0C00BD04 */ jal func_8002F410
/* 001A0 808BAFE0 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 001A4 808BAFE4 1040001B */ beq $v0, $zero, .L808BB054
/* 001A8 808BAFE8 8FA40020 */ lw $a0, 0x0020($sp)
/* 001AC 808BAFEC 8E0E0004 */ lw $t6, 0x0004($s0) ## 8015E664
/* 001B0 808BAFF0 3C18808C */ lui $t8, %hi(D_808BB7A0) ## $t8 = 808C0000
/* 001B4 808BAFF4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 001B8 808BAFF8 11C00007 */ beq $t6, $zero, .L808BB018
/* 001BC 808BAFFC 2718B7A0 */ addiu $t8, $t8, %lo(D_808BB7A0) ## $t8 = 808BB7A0
/* 001C0 808BB000 0C021344 */ jal Item_Give
/* 001C4 808BB004 2405003C */ addiu $a1, $zero, 0x003C ## $a1 = 0000003C
/* 001C8 808BB008 3C0F808C */ lui $t7, %hi(D_808BB2F0) ## $t7 = 808C0000
/* 001CC 808BB00C 25EFB2F0 */ addiu $t7, $t7, %lo(D_808BB2F0) ## $t7 = 808BB2F0
/* 001D0 808BB010 10000002 */ beq $zero, $zero, .L808BB01C
/* 001D4 808BB014 AE2F1D68 */ sw $t7, 0x1D68($s1) ## 00001D68
.L808BB018:
/* 001D8 808BB018 AE381D68 */ sw $t8, 0x1D68($s1) ## 00001D68
.L808BB01C:
/* 001DC 808BB01C 3C041000 */ lui $a0, 0x1000 ## $a0 = 10000000
/* 001E0 808BB020 0C03E803 */ jal Audio_SetBGM
/* 001E4 808BB024 348400FF */ ori $a0, $a0, 0x00FF ## $a0 = 100000FF
/* 001E8 808BB028 0C03E803 */ jal Audio_SetBGM
/* 001EC 808BB02C 24040053 */ addiu $a0, $zero, 0x0053 ## $a0 = 00000053
/* 001F0 808BB030 8FA40020 */ lw $a0, 0x0020($sp)
/* 001F4 808BB034 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
/* 001F8 808BB038 A2191414 */ sb $t9, 0x1414($s0) ## 8015FA74
/* 001FC 808BB03C 3C05808C */ lui $a1, %hi(func_808BB0AC) ## $a1 = 808C0000
/* 00200 808BB040 24A5B0AC */ addiu $a1, $a1, %lo(func_808BB0AC) ## $a1 = 808BB0AC
/* 00204 808BB044 0C22EB90 */ jal func_808BAE40
/* 00208 808BB048 AC800118 */ sw $zero, 0x0118($a0) ## 00000118
/* 0020C 808BB04C 10000008 */ beq $zero, $zero, .L808BB070
/* 00210 808BB050 8E081360 */ lw $t0, 0x1360($s0) ## 8015F9C0
.L808BB054:
/* 00214 808BB054 0C00B821 */ jal func_8002E084
/* 00218 808BB058 24052000 */ addiu $a1, $zero, 0x2000 ## $a1 = 00002000
/* 0021C 808BB05C 10400003 */ beq $v0, $zero, .L808BB06C
/* 00220 808BB060 8FA40020 */ lw $a0, 0x0020($sp)
/* 00224 808BB064 0C00BD60 */ jal func_8002F580
/* 00228 808BB068 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
.L808BB06C:
/* 0022C 808BB06C 8E081360 */ lw $t0, 0x1360($s0) ## 8015F9C0
.L808BB070:
/* 00230 808BB070 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
/* 00234 808BB074 15010008 */ bne $t0, $at, .L808BB098
/* 00238 808BB078 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 0023C 808BB07C 02211021 */ addu $v0, $s1, $at
/* 00240 808BB080 84431D30 */ lh $v1, 0x1D30($v0) ## 00001D30
/* 00244 808BB084 18600003 */ blez $v1, .L808BB094
/* 00248 808BB088 2469FFFF */ addiu $t1, $v1, 0xFFFF ## $t1 = FFFFFFFF
/* 0024C 808BB08C 10000002 */ beq $zero, $zero, .L808BB098
/* 00250 808BB090 A4491D30 */ sh $t1, 0x1D30($v0) ## 00001D30
.L808BB094:
/* 00254 808BB094 A4401D30 */ sh $zero, 0x1D30($v0) ## 00001D30
.L808BB098:
/* 00258 808BB098 8FBF001C */ lw $ra, 0x001C($sp)
/* 0025C 808BB09C 8FB00014 */ lw $s0, 0x0014($sp)
/* 00260 808BB0A0 8FB10018 */ lw $s1, 0x0018($sp)
/* 00264 808BB0A4 03E00008 */ jr $ra
/* 00268 808BB0A8 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
@@ -1,39 +0,0 @@
glabel func_808BB0AC
/* 0026C 808BB0AC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00270 808BB0B0 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00274 808BB0B4 AFA5001C */ sw $a1, 0x001C($sp)
/* 00278 808BB0B8 0C00BD04 */ jal func_8002F410
/* 0027C 808BB0BC AFA40018 */ sw $a0, 0x0018($sp)
/* 00280 808BB0C0 10400012 */ beq $v0, $zero, .L808BB10C
/* 00284 808BB0C4 8FA40018 */ lw $a0, 0x0018($sp)
/* 00288 808BB0C8 3C0E8016 */ lui $t6, 0x8016 ## $t6 = 80160000
/* 0028C 808BB0CC 8DCEE664 */ lw $t6, -0x199C($t6) ## 8015E664
/* 00290 808BB0D0 3C0F808C */ lui $t7, %hi(BgTokiSwd_Draw) ## $t7 = 808C0000
/* 00294 808BB0D4 2405182D */ addiu $a1, $zero, 0x182D ## $a1 = 0000182D
/* 00298 808BB0D8 11C00006 */ beq $t6, $zero, .L808BB0F4
/* 0029C 808BB0DC 25EFB1C4 */ addiu $t7, $t7, %lo(BgTokiSwd_Draw) ## $t7 = 808BB1C4
/* 002A0 808BB0E0 0C00BE0A */ jal Audio_PlayActorSound2
/* 002A4 808BB0E4 AFA40018 */ sw $a0, 0x0018($sp)
/* 002A8 808BB0E8 8FA40018 */ lw $a0, 0x0018($sp)
/* 002AC 808BB0EC 10000002 */ beq $zero, $zero, .L808BB0F8
/* 002B0 808BB0F0 AC800134 */ sw $zero, 0x0134($a0) ## 00000134
.L808BB0F4:
/* 002B4 808BB0F4 AC8F0134 */ sw $t7, 0x0134($a0) ## 00000134
.L808BB0F8:
/* 002B8 808BB0F8 3C05808C */ lui $a1, %hi(func_808BB128) ## $a1 = 808C0000
/* 002BC 808BB0FC 0C22EB90 */ jal func_808BAE40
/* 002C0 808BB100 24A5B128 */ addiu $a1, $a1, %lo(func_808BB128) ## $a1 = 808BB128
/* 002C4 808BB104 10000005 */ beq $zero, $zero, .L808BB11C
/* 002C8 808BB108 8FBF0014 */ lw $ra, 0x0014($sp)
.L808BB10C:
/* 002CC 808BB10C 8FB8001C */ lw $t8, 0x001C($sp)
/* 002D0 808BB110 8F021C44 */ lw $v0, 0x1C44($t8) ## 00001C44
/* 002D4 808BB114 AC440438 */ sw $a0, 0x0438($v0) ## 00000438
/* 002D8 808BB118 8FBF0014 */ lw $ra, 0x0014($sp)
.L808BB11C:
/* 002DC 808BB11C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 002E0 808BB120 03E00008 */ jr $ra
/* 002E4 808BB124 00000000 */ nop
@@ -1,26 +0,0 @@
glabel func_808BB128
/* 002E8 808BB128 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 002EC 808BB12C AFA40018 */ sw $a0, 0x0018($sp)
/* 002F0 808BB130 AFBF0014 */ sw $ra, 0x0014($sp)
/* 002F4 808BB134 AFA5001C */ sw $a1, 0x001C($sp)
/* 002F8 808BB138 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 002FC 808BB13C 0C01B129 */ jal func_8006C4A4
/* 00300 808BB140 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 00304 808BB144 5040000A */ beql $v0, $zero, .L808BB170
/* 00308 808BB148 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0030C 808BB14C 8FA2001C */ lw $v0, 0x001C($sp)
/* 00310 808BB150 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00314 808BB154 00411021 */ addu $v0, $v0, $at
/* 00318 808BB158 84431D30 */ lh $v1, 0x1D30($v0) ## 00001D30
/* 0031C 808BB15C 286100FF */ slti $at, $v1, 0x00FF
/* 00320 808BB160 10200002 */ beq $at, $zero, .L808BB16C
/* 00324 808BB164 246E0005 */ addiu $t6, $v1, 0x0005 ## $t6 = 00000005
/* 00328 808BB168 A44E1D30 */ sh $t6, 0x1D30($v0) ## 00001D30
.L808BB16C:
/* 0032C 808BB16C 8FBF0014 */ lw $ra, 0x0014($sp)
.L808BB170:
/* 00330 808BB170 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00334 808BB174 03E00008 */ jr $ra
/* 00338 808BB178 00000000 */ nop
@@ -1,16 +0,0 @@
glabel BgZg_Destroy
/* 00000 808C0C20 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00004 808C0C24 AFA40018 */ sw $a0, 0x0018($sp)
/* 00008 808C0C28 8FAE0018 */ lw $t6, 0x0018($sp)
/* 0000C 808C0C2C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00010 808C0C30 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00014 808C0C34 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
/* 00018 808C0C38 0C00FB56 */ jal DynaPolyInfo_Free
## DynaPolyInfo_delReserve
/* 0001C 808C0C3C 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
/* 00020 808C0C40 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00024 808C0C44 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00028 808C0C48 03E00008 */ jr $ra
/* 0002C 808C0C4C 00000000 */ nop
@@ -1,32 +0,0 @@
glabel BgZg_Draw
/* 00388 808C0FA8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0038C 808C0FAC AFBF0014 */ sw $ra, 0x0014($sp)
/* 00390 808C0FB0 8C820168 */ lw $v0, 0x0168($a0) ## 00000168
/* 00394 808C0FB4 04400008 */ bltz $v0, .L808C0FD8
/* 00398 808C0FB8 00000000 */ nop
/* 0039C 808C0FBC 1C400006 */ bgtz $v0, .L808C0FD8
/* 003A0 808C0FC0 00027080 */ sll $t6, $v0, 2
/* 003A4 808C0FC4 3C03808C */ lui $v1, %hi(D_808C101C) ## $v1 = 808C0000
/* 003A8 808C0FC8 006E1821 */ addu $v1, $v1, $t6
/* 003AC 808C0FCC 8C63101C */ lw $v1, %lo(D_808C101C)($v1)
/* 003B0 808C0FD0 14600006 */ bne $v1, $zero, .L808C0FEC
/* 003B4 808C0FD4 00000000 */ nop
.L808C0FD8:
/* 003B8 808C0FD8 3C04808C */ lui $a0, %hi(D_808C10AC) ## $a0 = 808C0000
/* 003BC 808C0FDC 0C00084C */ jal osSyncPrintf
/* 003C0 808C0FE0 248410AC */ addiu $a0, $a0, %lo(D_808C10AC) ## $a0 = 808C10AC
/* 003C4 808C0FE4 10000004 */ beq $zero, $zero, .L808C0FF8
/* 003C8 808C0FE8 8FBF0014 */ lw $ra, 0x0014($sp)
.L808C0FEC:
/* 003CC 808C0FEC 0060F809 */ jalr $ra, $v1
/* 003D0 808C0FF0 00000000 */ nop
/* 003D4 808C0FF4 8FBF0014 */ lw $ra, 0x0014($sp)
.L808C0FF8:
/* 003D8 808C0FF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 003DC 808C0FFC 03E00008 */ jr $ra
/* 003E0 808C1000 00000000 */ nop
/* 003E4 808C1004 00000000 */ nop
/* 003E8 808C1008 00000000 */ nop
/* 003EC 808C100C 00000000 */ nop
@@ -1,69 +0,0 @@
glabel BgZg_Init
/* 001E4 808C0E04 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 001E8 808C0E08 AFA50034 */ sw $a1, 0x0034($sp)
/* 001EC 808C0E0C AFBF001C */ sw $ra, 0x001C($sp)
/* 001F0 808C0E10 AFB00018 */ sw $s0, 0x0018($sp)
/* 001F4 808C0E14 3C05808C */ lui $a1, %hi(D_808C1018) ## $a1 = 808C0000
/* 001F8 808C0E18 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 001FC 808C0E1C 0C01E037 */ jal Actor_ProcessInitChain
/* 00200 808C0E20 24A51018 */ addiu $a1, $a1, %lo(D_808C1018) ## $a1 = 808C1018
/* 00204 808C0E24 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00208 808C0E28 0C010D20 */ jal DynaPolyInfo_SetActorMove
/* 0020C 808C0E2C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00210 808C0E30 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 00214 808C0E34 AFA00020 */ sw $zero, 0x0020($sp)
/* 00218 808C0E38 248411D4 */ addiu $a0, $a0, 0x11D4 ## $a0 = 060011D4
/* 0021C 808C0E3C 0C010620 */ jal DynaPolyInfo_Alloc
/* 00220 808C0E40 27A50020 */ addiu $a1, $sp, 0x0020 ## $a1 = FFFFFFF0
/* 00224 808C0E44 8FA40034 */ lw $a0, 0x0034($sp)
/* 00228 808C0E48 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 0022C 808C0E4C 8FA70020 */ lw $a3, 0x0020($sp)
/* 00230 808C0E50 0C00FA9D */ jal DynaPolyInfo_RegisterActor
## DynaPolyInfo_setActor
/* 00234 808C0E54 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
/* 00238 808C0E58 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
/* 0023C 808C0E5C 0C230332 */ jal func_808C0CC8
/* 00240 808C0E60 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00244 808C0E64 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
/* 00248 808C0E68 10410005 */ beq $v0, $at, .L808C0E80
/* 0024C 808C0E6C 00000000 */ nop
/* 00250 808C0E70 0C230332 */ jal func_808C0CC8
/* 00254 808C0E74 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00258 808C0E78 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
/* 0025C 808C0E7C 1441000D */ bne $v0, $at, .L808C0EB4
.L808C0E80:
/* 00260 808C0E80 3C01808C */ lui $at, %hi(D_808C10E8) ## $at = 808C0000
/* 00264 808C0E84 C42010E8 */ lwc1 $f0, %lo(D_808C10E8)($at)
/* 00268 808C0E88 C6040050 */ lwc1 $f4, 0x0050($s0) ## 00000050
/* 0026C 808C0E8C C6080058 */ lwc1 $f8, 0x0058($s0) ## 00000058
/* 00270 808C0E90 3C01808C */ lui $at, %hi(D_808C10EC) ## $at = 808C0000
/* 00274 808C0E94 46002182 */ mul.s $f6, $f4, $f0
/* 00278 808C0E98 C6100054 */ lwc1 $f16, 0x0054($s0) ## 00000054
/* 0027C 808C0E9C 46004282 */ mul.s $f10, $f8, $f0
/* 00280 808C0EA0 E6060050 */ swc1 $f6, 0x0050($s0) ## 00000050
/* 00284 808C0EA4 E60A0058 */ swc1 $f10, 0x0058($s0) ## 00000058
/* 00288 808C0EA8 C43210EC */ lwc1 $f18, %lo(D_808C10EC)($at)
/* 0028C 808C0EAC 46128102 */ mul.s $f4, $f16, $f18
/* 00290 808C0EB0 E6040054 */ swc1 $f4, 0x0054($s0) ## 00000054
.L808C0EB4:
/* 00294 808C0EB4 AE000164 */ sw $zero, 0x0164($s0) ## 00000164
/* 00298 808C0EB8 AE000168 */ sw $zero, 0x0168($s0) ## 00000168
/* 0029C 808C0EBC 8FA50034 */ lw $a1, 0x0034($sp)
/* 002A0 808C0EC0 0C230326 */ jal func_808C0C98
/* 002A4 808C0EC4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 002A8 808C0EC8 50400004 */ beql $v0, $zero, .L808C0EDC
/* 002AC 808C0ECC 8FBF001C */ lw $ra, 0x001C($sp)
/* 002B0 808C0ED0 0C00B55C */ jal Actor_Kill
/* 002B4 808C0ED4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 002B8 808C0ED8 8FBF001C */ lw $ra, 0x001C($sp)
.L808C0EDC:
/* 002BC 808C0EDC 8FB00018 */ lw $s0, 0x0018($sp)
/* 002C0 808C0EE0 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 002C4 808C0EE4 03E00008 */ jr $ra
/* 002C8 808C0EE8 00000000 */ nop
@@ -1,30 +0,0 @@
glabel BgZg_Update
/* 00188 808C0DA8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0018C 808C0DAC AFBF0014 */ sw $ra, 0x0014($sp)
/* 00190 808C0DB0 8C820164 */ lw $v0, 0x0164($a0) ## 00000164
/* 00194 808C0DB4 04400008 */ bltz $v0, .L808C0DD8
/* 00198 808C0DB8 28410002 */ slti $at, $v0, 0x0002
/* 0019C 808C0DBC 10200006 */ beq $at, $zero, .L808C0DD8
/* 001A0 808C0DC0 00027080 */ sll $t6, $v0, 2
/* 001A4 808C0DC4 3C03808C */ lui $v1, %hi(D_808C1010) ## $v1 = 808C0000
/* 001A8 808C0DC8 006E1821 */ addu $v1, $v1, $t6
/* 001AC 808C0DCC 8C631010 */ lw $v1, %lo(D_808C1010)($v1)
/* 001B0 808C0DD0 14600006 */ bne $v1, $zero, .L808C0DEC
/* 001B4 808C0DD4 00000000 */ nop
.L808C0DD8:
/* 001B8 808C0DD8 3C04808C */ lui $a0, %hi(D_808C1040) ## $a0 = 808C0000
/* 001BC 808C0DDC 0C00084C */ jal osSyncPrintf
/* 001C0 808C0DE0 24841040 */ addiu $a0, $a0, %lo(D_808C1040) ## $a0 = 808C1040
/* 001C4 808C0DE4 10000004 */ beq $zero, $zero, .L808C0DF8
/* 001C8 808C0DE8 8FBF0014 */ lw $ra, 0x0014($sp)
.L808C0DEC:
/* 001CC 808C0DEC 0060F809 */ jalr $ra, $v1
/* 001D0 808C0DF0 00000000 */ nop
/* 001D4 808C0DF4 8FBF0014 */ lw $ra, 0x0014($sp)
.L808C0DF8:
/* 001D8 808C0DF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 001DC 808C0DFC 03E00008 */ jr $ra
/* 001E0 808C0E00 00000000 */ nop
@@ -1,22 +0,0 @@
glabel func_808C0C50
/* 00030 808C0C50 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00034 808C0C54 AFA40020 */ sw $a0, 0x0020($sp)
/* 00038 808C0C58 8FA50020 */ lw $a1, 0x0020($sp)
/* 0003C 808C0C5C 3C078013 */ lui $a3, 0x8013 ## $a3 = 80130000
/* 00040 808C0C60 3C0E8013 */ lui $t6, 0x8013 ## $t6 = 80130000
/* 00044 808C0C64 24E733E0 */ addiu $a3, $a3, 0x33E0 ## $a3 = 801333E0
/* 00048 808C0C68 AFBF001C */ sw $ra, 0x001C($sp)
/* 0004C 808C0C6C 25CE33E8 */ addiu $t6, $t6, 0x33E8 ## $t6 = 801333E8
/* 00050 808C0C70 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00054 808C0C74 AFA70010 */ sw $a3, 0x0010($sp)
/* 00058 808C0C78 24042859 */ addiu $a0, $zero, 0x2859 ## $a0 = 00002859
/* 0005C 808C0C7C 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
/* 00060 808C0C80 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* 00064 808C0C84 24A500E4 */ addiu $a1, $a1, 0x00E4 ## $a1 = 000000E4
/* 00068 808C0C88 8FBF001C */ lw $ra, 0x001C($sp)
/* 0006C 808C0C8C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00070 808C0C90 03E00008 */ jr $ra
/* 00074 808C0C94 00000000 */ nop
@@ -1,16 +0,0 @@
glabel func_808C0C98
/* 00078 808C0C98 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0007C 808C0C9C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00080 808C0CA0 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
/* 00084 808C0CA4 8485001C */ lh $a1, 0x001C($a0) ## 0000001C
/* 00088 808C0CA8 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 0008C 808C0CAC 00052A03 */ sra $a1, $a1, 8
/* 00090 808C0CB0 0C00B2D0 */ jal Flags_GetSwitch
/* 00094 808C0CB4 30A500FF */ andi $a1, $a1, 0x00FF ## $a1 = 00000000
/* 00098 808C0CB8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0009C 808C0CBC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 000A0 808C0CC0 03E00008 */ jr $ra
/* 000A4 808C0CC4 00000000 */ nop
@@ -1,6 +0,0 @@
glabel func_808C0CC8
/* 000A8 808C0CC8 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
/* 000AC 808C0CCC 03E00008 */ jr $ra
/* 000B0 808C0CD0 306200FF */ andi $v0, $v1, 0x00FF ## $v0 = 00000000
@@ -1,17 +0,0 @@
glabel func_808C0CD4
/* 000B4 808C0CD4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000B8 808C0CD8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000BC 808C0CDC 0C230326 */ jal func_808C0C98
/* 000C0 808C0CE0 AFA40018 */ sw $a0, 0x0018($sp)
/* 000C4 808C0CE4 10400004 */ beq $v0, $zero, .L808C0CF8
/* 000C8 808C0CE8 8FA40018 */ lw $a0, 0x0018($sp)
/* 000CC 808C0CEC 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 000D0 808C0CF0 0C230314 */ jal func_808C0C50
/* 000D4 808C0CF4 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
.L808C0CF8:
/* 000D8 808C0CF8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 000DC 808C0CFC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 000E0 808C0D00 03E00008 */ jr $ra
/* 000E4 808C0D04 00000000 */ nop
@@ -1,45 +0,0 @@
glabel func_808C0D08
/* 000E8 808C0D08 3C028016 */ lui $v0, 0x8016 ## $v0 = 80160000
/* 000EC 808C0D0C 2442FA90 */ addiu $v0, $v0, 0xFA90 ## $v0 = 8015FA90
/* 000F0 808C0D10 8C4E0000 */ lw $t6, 0x0000($v0) ## 8015FA90
/* 000F4 808C0D14 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000F8 808C0D18 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000FC 808C0D1C AFA5001C */ sw $a1, 0x001C($sp)
/* 00100 808C0D20 85CF1474 */ lh $t7, 0x1474($t6) ## 00001474
/* 00104 808C0D24 3C01808C */ lui $at, %hi(D_808C10E4) ## $at = 808C0000
/* 00108 808C0D28 C42010E4 */ lwc1 $f0, %lo(D_808C10E4)($at)
/* 0010C 808C0D2C 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
/* 00110 808C0D30 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 00114 808C0D34 44814000 */ mtc1 $at, $f8 ## $f8 = 20.00
/* 00118 808C0D38 468021A0 */ cvt.s.w $f6, $f4
/* 0011C 808C0D3C C4920028 */ lwc1 $f18, 0x0028($a0) ## 00000028
/* 00120 808C0D40 3C014348 */ lui $at, 0x4348 ## $at = 43480000
/* 00124 808C0D44 46083280 */ add.s $f10, $f6, $f8
/* 00128 808C0D48 46005402 */ mul.s $f16, $f10, $f0
/* 0012C 808C0D4C 46109100 */ add.s $f4, $f18, $f16
/* 00130 808C0D50 44819000 */ mtc1 $at, $f18 ## $f18 = 200.00
/* 00134 808C0D54 E4840028 */ swc1 $f4, 0x0028($a0) ## 00000028
/* 00138 808C0D58 8C580000 */ lw $t8, 0x0000($v0) ## 8015FA90
/* 0013C 808C0D5C C4860028 */ lwc1 $f6, 0x0028($a0) ## 00000028
/* 00140 808C0D60 87191476 */ lh $t9, 0x1476($t8) ## 00001476
/* 00144 808C0D64 44994000 */ mtc1 $t9, $f8 ## $f8 = 0.00
/* 00148 808C0D68 00000000 */ nop
/* 0014C 808C0D6C 468042A0 */ cvt.s.w $f10, $f8
/* 00150 808C0D70 C488000C */ lwc1 $f8, 0x000C($a0) ## 0000000C
/* 00154 808C0D74 46125400 */ add.s $f16, $f10, $f18
/* 00158 808C0D78 46008102 */ mul.s $f4, $f16, $f0
/* 0015C 808C0D7C 46082280 */ add.s $f10, $f4, $f8
/* 00160 808C0D80 4606503E */ c.le.s $f10, $f6
/* 00164 808C0D84 00000000 */ nop
/* 00168 808C0D88 45020004 */ bc1fl .L808C0D9C
/* 0016C 808C0D8C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00170 808C0D90 0C00B55C */ jal Actor_Kill
/* 00174 808C0D94 00000000 */ nop
/* 00178 808C0D98 8FBF0014 */ lw $ra, 0x0014($sp)
.L808C0D9C:
/* 0017C 808C0D9C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00180 808C0DA0 03E00008 */ jr $ra
/* 00184 808C0DA4 00000000 */ nop
@@ -1,50 +0,0 @@
glabel func_808C0EEC
/* 002CC 808C0EEC 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
/* 002D0 808C0EF0 AFBF001C */ sw $ra, 0x001C($sp)
/* 002D4 808C0EF4 AFB00018 */ sw $s0, 0x0018($sp)
/* 002D8 808C0EF8 AFA40048 */ sw $a0, 0x0048($sp)
/* 002DC 808C0EFC AFA5004C */ sw $a1, 0x004C($sp)
/* 002E0 808C0F00 8CB00000 */ lw $s0, 0x0000($a1) ## 00000000
/* 002E4 808C0F04 3C06808C */ lui $a2, %hi(D_808C107C) ## $a2 = 808C0000
/* 002E8 808C0F08 24C6107C */ addiu $a2, $a2, %lo(D_808C107C) ## $a2 = 808C107C
/* 002EC 808C0F0C 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFE8
/* 002F0 808C0F10 24070137 */ addiu $a3, $zero, 0x0137 ## $a3 = 00000137
/* 002F4 808C0F14 0C031AB1 */ jal func_800C6AC4
/* 002F8 808C0F18 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 002FC 808C0F1C 0C024F46 */ jal func_80093D18
/* 00300 808C0F20 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00304 808C0F24 8E0302C0 */ lw $v1, 0x02C0($s0) ## 000002C0
/* 00308 808C0F28 3C18DA38 */ lui $t8, 0xDA38 ## $t8 = DA380000
/* 0030C 808C0F2C 37180003 */ ori $t8, $t8, 0x0003 ## $t8 = DA380003
/* 00310 808C0F30 246F0008 */ addiu $t7, $v1, 0x0008 ## $t7 = 00000008
/* 00314 808C0F34 AE0F02C0 */ sw $t7, 0x02C0($s0) ## 000002C0
/* 00318 808C0F38 3C05808C */ lui $a1, %hi(D_808C108C) ## $a1 = 808C0000
/* 0031C 808C0F3C AC780000 */ sw $t8, 0x0000($v1) ## 00000000
/* 00320 808C0F40 24A5108C */ addiu $a1, $a1, %lo(D_808C108C) ## $a1 = 808C108C
/* 00324 808C0F44 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00328 808C0F48 2406013B */ addiu $a2, $zero, 0x013B ## $a2 = 0000013B
/* 0032C 808C0F4C 0C0346A2 */ jal Matrix_NewMtx
/* 00330 808C0F50 AFA3002C */ sw $v1, 0x002C($sp)
/* 00334 808C0F54 8FA7002C */ lw $a3, 0x002C($sp)
/* 00338 808C0F58 3C090600 */ lui $t1, 0x0600 ## $t1 = 06000000
/* 0033C 808C0F5C 25291080 */ addiu $t1, $t1, 0x1080 ## $t1 = 06001080
/* 00340 808C0F60 ACE20004 */ sw $v0, 0x0004($a3) ## 00000004
/* 00344 808C0F64 8E0302C0 */ lw $v1, 0x02C0($s0) ## 000002C0
/* 00348 808C0F68 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
/* 0034C 808C0F6C 3C06808C */ lui $a2, %hi(D_808C109C) ## $a2 = 808C0000
/* 00350 808C0F70 24790008 */ addiu $t9, $v1, 0x0008 ## $t9 = 00000008
/* 00354 808C0F74 AE1902C0 */ sw $t9, 0x02C0($s0) ## 000002C0
/* 00358 808C0F78 24C6109C */ addiu $a2, $a2, %lo(D_808C109C) ## $a2 = 808C109C
/* 0035C 808C0F7C 24070140 */ addiu $a3, $zero, 0x0140 ## $a3 = 00000140
/* 00360 808C0F80 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFE8
/* 00364 808C0F84 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00368 808C0F88 AC690004 */ sw $t1, 0x0004($v1) ## 00000004
/* 0036C 808C0F8C 0C031AD5 */ jal func_800C6B54
/* 00370 808C0F90 AC680000 */ sw $t0, 0x0000($v1) ## 00000000
/* 00374 808C0F94 8FBF001C */ lw $ra, 0x001C($sp)
/* 00378 808C0F98 8FB00018 */ lw $s0, 0x0018($sp)
/* 0037C 808C0F9C 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
/* 00380 808C0FA0 03E00008 */ jr $ra
/* 00384 808C0FA4 00000000 */ nop
@@ -1,14 +0,0 @@
glabel EnTk_Destroy
/* 012DC 80B1CBDC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 012E0 80B1CBE0 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 012E4 80B1CBE4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 012E8 80B1CBE8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 012EC 80B1CBEC 0C0170EB */ jal ActorCollider_FreeCylinder
/* 012F0 80B1CBF0 24C50194 */ addiu $a1, $a2, 0x0194 ## $a1 = 00000194
/* 012F4 80B1CBF4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 012F8 80B1CBF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 012FC 80B1CBFC 03E00008 */ jr $ra
/* 01300 80B1CC00 00000000 */ nop
@@ -1,72 +0,0 @@
glabel EnTk_Draw
/* 01A98 80B1D398 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
/* 01A9C 80B1D39C AFBF002C */ sw $ra, 0x002C($sp)
/* 01AA0 80B1D3A0 AFB10028 */ sw $s1, 0x0028($sp)
/* 01AA4 80B1D3A4 AFB00024 */ sw $s0, 0x0024($sp)
/* 01AA8 80B1D3A8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01AAC 80B1D3AC 0C034213 */ jal Matrix_Push
/* 01AB0 80B1D3B0 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 01AB4 80B1D3B4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01AB8 80B1D3B8 0C2C6EAC */ jal func_80B1BAB0
/* 01ABC 80B1D3BC 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 01AC0 80B1D3C0 0C034221 */ jal Matrix_Pull
/* 01AC4 80B1D3C4 00000000 */ nop
/* 01AC8 80B1D3C8 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 01ACC 80B1D3CC 3C0680B2 */ lui $a2, %hi(D_80B1D60C) ## $a2 = 80B20000
/* 01AD0 80B1D3D0 24C6D60C */ addiu $a2, $a2, %lo(D_80B1D60C) ## $a2 = 80B1D60C
/* 01AD4 80B1D3D4 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE8
/* 01AD8 80B1D3D8 2407050E */ addiu $a3, $zero, 0x050E ## $a3 = 0000050E
/* 01ADC 80B1D3DC 0C031AB1 */ jal func_800C6AC4
/* 01AE0 80B1D3E0 AFA50048 */ sw $a1, 0x0048($sp)
/* 01AE4 80B1D3E4 0C024F46 */ jal func_80093D18
/* 01AE8 80B1D3E8 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 01AEC 80B1D3EC 8FA50048 */ lw $a1, 0x0048($sp)
/* 01AF0 80B1D3F0 3C0FDB06 */ lui $t7, 0xDB06 ## $t7 = DB060000
/* 01AF4 80B1D3F4 35EF0020 */ ori $t7, $t7, 0x0020 ## $t7 = DB060020
/* 01AF8 80B1D3F8 8CA302C0 */ lw $v1, 0x02C0($a1) ## 000002C0
/* 01AFC 80B1D3FC 3C0480B2 */ lui $a0, %hi(D_80B1D598) ## $a0 = 80B20000
/* 01B00 80B1D400 3C0C8016 */ lui $t4, 0x8016 ## $t4 = 80160000
/* 01B04 80B1D404 246E0008 */ addiu $t6, $v1, 0x0008 ## $t6 = 00000008
/* 01B08 80B1D408 ACAE02C0 */ sw $t6, 0x02C0($a1) ## 000002C0
/* 01B0C 80B1D40C AC6F0000 */ sw $t7, 0x0000($v1) ## 00000000
/* 01B10 80B1D410 86180222 */ lh $t8, 0x0222($s0) ## 00000222
/* 01B14 80B1D414 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 01B18 80B1D418 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 01B1C 80B1D41C 0018C880 */ sll $t9, $t8, 2
/* 01B20 80B1D420 00992021 */ addu $a0, $a0, $t9
/* 01B24 80B1D424 8C84D598 */ lw $a0, %lo(D_80B1D598)($a0)
/* 01B28 80B1D428 3C1880B2 */ lui $t8, %hi(func_80B1D2E4) ## $t8 = 80B20000
/* 01B2C 80B1D42C 3C0F80B2 */ lui $t7, %hi(func_80B1D278) ## $t7 = 80B20000
/* 01B30 80B1D430 00044900 */ sll $t1, $a0, 4
/* 01B34 80B1D434 00095702 */ srl $t2, $t1, 28
/* 01B38 80B1D438 000A5880 */ sll $t3, $t2, 2
/* 01B3C 80B1D43C 018B6021 */ addu $t4, $t4, $t3
/* 01B40 80B1D440 8D8C6FA8 */ lw $t4, 0x6FA8($t4) ## 80166FA8
/* 01B44 80B1D444 00814024 */ and $t0, $a0, $at
/* 01B48 80B1D448 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 01B4C 80B1D44C 010C6821 */ addu $t5, $t0, $t4
/* 01B50 80B1D450 01A17021 */ addu $t6, $t5, $at
/* 01B54 80B1D454 AC6E0004 */ sw $t6, 0x0004($v1) ## 00000004
/* 01B58 80B1D458 9207014E */ lbu $a3, 0x014E($s0) ## 0000014E
/* 01B5C 80B1D45C 8E06016C */ lw $a2, 0x016C($s0) ## 0000016C
/* 01B60 80B1D460 8E050150 */ lw $a1, 0x0150($s0) ## 00000150
/* 01B64 80B1D464 25EFD278 */ addiu $t7, $t7, %lo(func_80B1D278) ## $t7 = 80B1D278
/* 01B68 80B1D468 2718D2E4 */ addiu $t8, $t8, %lo(func_80B1D2E4) ## $t8 = 80B1D2E4
/* 01B6C 80B1D46C AFB80014 */ sw $t8, 0x0014($sp)
/* 01B70 80B1D470 AFAF0010 */ sw $t7, 0x0010($sp)
/* 01B74 80B1D474 AFB00018 */ sw $s0, 0x0018($sp)
/* 01B78 80B1D478 0C0286B2 */ jal func_800A1AC8
/* 01B7C 80B1D47C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01B80 80B1D480 3C0680B2 */ lui $a2, %hi(D_80B1D61C) ## $a2 = 80B20000
/* 01B84 80B1D484 24C6D61C */ addiu $a2, $a2, %lo(D_80B1D61C) ## $a2 = 80B1D61C
/* 01B88 80B1D488 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE8
/* 01B8C 80B1D48C 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 01B90 80B1D490 0C031AD5 */ jal func_800C6B54
/* 01B94 80B1D494 24070520 */ addiu $a3, $zero, 0x0520 ## $a3 = 00000520
/* 01B98 80B1D498 8FBF002C */ lw $ra, 0x002C($sp)
/* 01B9C 80B1D49C 8FB00024 */ lw $s0, 0x0024($sp)
/* 01BA0 80B1D4A0 8FB10028 */ lw $s1, 0x0028($sp)
/* 01BA4 80B1D4A4 03E00008 */ jr $ra
/* 01BA8 80B1D4A8 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
/* 01BAC 80B1D4AC 00000000 */ nop
@@ -1,108 +0,0 @@
glabel EnTk_Init
/* 01160 80B1CA60 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 01164 80B1CA64 AFB00028 */ sw $s0, 0x0028($sp)
/* 01168 80B1CA68 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0116C 80B1CA6C AFBF002C */ sw $ra, 0x002C($sp)
/* 01170 80B1CA70 AFA50044 */ sw $a1, 0x0044($sp)
/* 01174 80B1CA74 3C068003 */ lui $a2, 0x8003 ## $a2 = 80030000
/* 01178 80B1CA78 24C6B5EC */ addiu $a2, $a2, 0xB5EC ## $a2 = 8002B5EC
/* 0117C 80B1CA7C 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 01180 80B1CA80 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
/* 01184 80B1CA84 0C00AC78 */ jal ActorShape_Init
/* 01188 80B1CA88 3C0741C0 */ lui $a3, 0x41C0 ## $a3 = 41C00000
/* 0118C 80B1CA8C 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C
/* 01190 80B1CA90 3C060601 */ lui $a2, 0x0601 ## $a2 = 06010000
/* 01194 80B1CA94 260E022A */ addiu $t6, $s0, 0x022A ## $t6 = 0000022A
/* 01198 80B1CA98 260F0296 */ addiu $t7, $s0, 0x0296 ## $t7 = 00000296
/* 0119C 80B1CA9C 24180012 */ addiu $t8, $zero, 0x0012 ## $t8 = 00000012
/* 011A0 80B1CAA0 AFB80018 */ sw $t8, 0x0018($sp)
/* 011A4 80B1CAA4 AFAF0014 */ sw $t7, 0x0014($sp)
/* 011A8 80B1CAA8 AFAE0010 */ sw $t6, 0x0010($sp)
/* 011AC 80B1CAAC 24C6BE40 */ addiu $a2, $a2, 0xBE40 ## $a2 = 0600BE40
/* 011B0 80B1CAB0 AFA50030 */ sw $a1, 0x0030($sp)
/* 011B4 80B1CAB4 8FA40044 */ lw $a0, 0x0044($sp)
/* 011B8 80B1CAB8 0C0291BE */ jal func_800A46F8
/* 011BC 80B1CABC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 011C0 80B1CAC0 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 011C4 80B1CAC4 0C028800 */ jal SkelAnime_GetFrameCount
/* 011C8 80B1CAC8 24842F84 */ addiu $a0, $a0, 0x2F84 ## $a0 = 06002F84
/* 011CC 80B1CACC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 011D0 80B1CAD0 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 011D4 80B1CAD4 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 011D8 80B1CAD8 468021A0 */ cvt.s.w $f6, $f4
/* 011DC 80B1CADC 44070000 */ mfc1 $a3, $f0
/* 011E0 80B1CAE0 24A52F84 */ addiu $a1, $a1, 0x2F84 ## $a1 = 06002F84
/* 011E4 80B1CAE4 8FA40030 */ lw $a0, 0x0030($sp)
/* 011E8 80B1CAE8 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 011EC 80B1CAEC AFA00014 */ sw $zero, 0x0014($sp)
/* 011F0 80B1CAF0 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 011F4 80B1CAF4 0C029468 */ jal SkelAnime_ChangeAnimation
/* 011F8 80B1CAF8 E7A00018 */ swc1 $f0, 0x0018($sp)
/* 011FC 80B1CAFC 26050194 */ addiu $a1, $s0, 0x0194 ## $a1 = 00000194
/* 01200 80B1CB00 AFA50030 */ sw $a1, 0x0030($sp)
/* 01204 80B1CB04 0C0170D9 */ jal ActorCollider_AllocCylinder
/* 01208 80B1CB08 8FA40044 */ lw $a0, 0x0044($sp)
/* 0120C 80B1CB0C 3C0780B2 */ lui $a3, %hi(D_80B1D508) ## $a3 = 80B20000
/* 01210 80B1CB10 8FA50030 */ lw $a1, 0x0030($sp)
/* 01214 80B1CB14 24E7D508 */ addiu $a3, $a3, %lo(D_80B1D508) ## $a3 = 80B1D508
/* 01218 80B1CB18 8FA40044 */ lw $a0, 0x0044($sp)
/* 0121C 80B1CB1C 0C01712B */ jal ActorCollider_InitCylinder
/* 01220 80B1CB20 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 01224 80B1CB24 3C0680B2 */ lui $a2, %hi(D_80B1D534) ## $a2 = 80B20000
/* 01228 80B1CB28 24C6D534 */ addiu $a2, $a2, %lo(D_80B1D534) ## $a2 = 80B1D534
/* 0122C 80B1CB2C 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098
/* 01230 80B1CB30 0C0187BF */ jal func_80061EFC
/* 01234 80B1CB34 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01238 80B1CB38 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000
/* 0123C 80B1CB3C 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660
/* 01240 80B1CB40 9462000C */ lhu $v0, 0x000C($v1) ## 8015E66C
/* 01244 80B1CB44 3401C001 */ ori $at, $zero, 0xC001 ## $at = 0000C001
/* 01248 80B1CB48 0041082A */ slt $at, $v0, $at
/* 0124C 80B1CB4C 1420000D */ bne $at, $zero, .L80B1CB84
/* 01250 80B1CB50 3401E000 */ ori $at, $zero, 0xE000 ## $at = 0000E000
/* 01254 80B1CB54 0041082A */ slt $at, $v0, $at
/* 01258 80B1CB58 1020000A */ beq $at, $zero, .L80B1CB84
/* 0125C 80B1CB5C 00000000 */ nop
/* 01260 80B1CB60 8C790004 */ lw $t9, 0x0004($v1) ## 8015E664
/* 01264 80B1CB64 8FA80044 */ lw $t0, 0x0044($sp)
/* 01268 80B1CB68 13200006 */ beq $t9, $zero, .L80B1CB84
/* 0126C 80B1CB6C 00000000 */ nop
/* 01270 80B1CB70 850900A4 */ lh $t1, 0x00A4($t0) ## 000000A4
/* 01274 80B1CB74 24010053 */ addiu $at, $zero, 0x0053 ## $at = 00000053
/* 01278 80B1CB78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0127C 80B1CB7C 11210005 */ beq $t1, $at, .L80B1CB94
/* 01280 80B1CB80 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
.L80B1CB84:
/* 01284 80B1CB84 0C00B55C */ jal Actor_Kill
/* 01288 80B1CB88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0128C 80B1CB8C 1000000F */ beq $zero, $zero, .L80B1CBCC
/* 01290 80B1CB90 8FBF002C */ lw $ra, 0x002C($sp)
.L80B1CB94:
/* 01294 80B1CB94 0C00B58B */ jal Actor_SetScale
/* 01298 80B1CB98 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 0000D70A
/* 0129C 80B1CB9C 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
/* 012A0 80B1CBA0 A20A001F */ sb $t2, 0x001F($s0) ## 0000001F
/* 012A4 80B1CBA4 3C0180B2 */ lui $at, %hi(D_80B1D684) ## $at = 80B20000
/* 012A8 80B1CBA8 C428D684 */ lwc1 $f8, %lo(D_80B1D684)($at)
/* 012AC 80B1CBAC 3C0C80B2 */ lui $t4, %hi(func_80B1CC04) ## $t4 = 80B20000
/* 012B0 80B1CBB0 240BFFFF */ addiu $t3, $zero, 0xFFFF ## $t3 = FFFFFFFF
/* 012B4 80B1CBB4 258CCC04 */ addiu $t4, $t4, %lo(func_80B1CC04) ## $t4 = 80B1CC04
/* 012B8 80B1CBB8 AE0B0214 */ sw $t3, 0x0214($s0) ## 00000214
/* 012BC 80B1CBBC AE000210 */ sw $zero, 0x0210($s0) ## 00000210
/* 012C0 80B1CBC0 AE0C0190 */ sw $t4, 0x0190($s0) ## 00000190
/* 012C4 80B1CBC4 E608006C */ swc1 $f8, 0x006C($s0) ## 0000006C
/* 012C8 80B1CBC8 8FBF002C */ lw $ra, 0x002C($sp)
.L80B1CBCC:
/* 012CC 80B1CBCC 8FB00028 */ lw $s0, 0x0028($sp)
/* 012D0 80B1CBD0 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 012D4 80B1CBD4 03E00008 */ jr $ra
/* 012D8 80B1CBD8 00000000 */ nop
@@ -1,49 +0,0 @@
glabel EnTk_Update
/* 01858 80B1D158 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 0185C 80B1D15C AFB00020 */ sw $s0, 0x0020($sp)
/* 01860 80B1D160 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01864 80B1D164 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01868 80B1D168 AFA5003C */ sw $a1, 0x003C($sp)
/* 0186C 80B1D16C 26060194 */ addiu $a2, $s0, 0x0194 ## $a2 = 00000194
/* 01870 80B1D170 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000194
/* 01874 80B1D174 0C0189B7 */ jal ActorCollider_Cylinder_Update
/* 01878 80B1D178 AFA6002C */ sw $a2, 0x002C($sp)
/* 0187C 80B1D17C 8FA4003C */ lw $a0, 0x003C($sp)
/* 01880 80B1D180 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 01884 80B1D184 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 01888 80B1D188 8FA6002C */ lw $a2, 0x002C($sp)
/* 0188C 80B1D18C 0C017713 */ jal Actor_CollisionCheck_SetOT
## CollisionCheck_setOT
/* 01890 80B1D190 00812821 */ addu $a1, $a0, $at
/* 01894 80B1D194 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 01898 80B1D198 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 0189C 80B1D19C 0C00B638 */ jal Actor_MoveForward
/* 018A0 80B1D1A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 018A4 80B1D1A4 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 018A8 80B1D1A8 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
/* 018AC 80B1D1AC AFAE0014 */ sw $t6, 0x0014($sp)
/* 018B0 80B1D1B0 8FA4003C */ lw $a0, 0x003C($sp)
/* 018B4 80B1D1B4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 018B8 80B1D1B8 3C064220 */ lui $a2, 0x4220 ## $a2 = 42200000
/* 018BC 80B1D1BC 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 018C0 80B1D1C0 0C00B92D */ jal func_8002E4B4
/* 018C4 80B1D1C4 E7A40010 */ swc1 $f4, 0x0010($sp)
/* 018C8 80B1D1C8 8E190190 */ lw $t9, 0x0190($s0) ## 00000190
/* 018CC 80B1D1CC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 018D0 80B1D1D0 8FA5003C */ lw $a1, 0x003C($sp)
/* 018D4 80B1D1D4 0320F809 */ jalr $ra, $t9
/* 018D8 80B1D1D8 00000000 */ nop
/* 018DC 80B1D1DC 0C2C6E69 */ jal func_80B1B9A4
/* 018E0 80B1D1E0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 018E4 80B1D1E4 0C2C7003 */ jal func_80B1C00C
/* 018E8 80B1D1E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 018EC 80B1D1EC 8FBF0024 */ lw $ra, 0x0024($sp)
/* 018F0 80B1D1F0 8FB00020 */ lw $s0, 0x0020($sp)
/* 018F4 80B1D1F4 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 018F8 80B1D1F8 03E00008 */ jr $ra
/* 018FC 80B1D1FC 00000000 */ nop
@@ -1,46 +0,0 @@
glabel func_80B1B900
/* 00000 80B1B900 24820310 */ addiu $v0, $a0, 0x0310 ## $v0 = 00000310
/* 00004 80B1B904 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 00008 80B1B908 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
.L80B1B90C:
/* 0000C 80B1B90C 904E0000 */ lbu $t6, 0x0000($v0) ## 00000310
/* 00010 80B1B910 24630001 */ addiu $v1, $v1, 0x0001 ## $v1 = 00000001
/* 00014 80B1B914 00031C00 */ sll $v1, $v1, 16
/* 00018 80B1B918 108E001D */ beq $a0, $t6, .L80B1B990
/* 0001C 80B1B91C 00031C03 */ sra $v1, $v1, 16
/* 00020 80B1B920 C7A40014 */ lwc1 $f4, 0x0014($sp)
/* 00024 80B1B924 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
/* 00028 80B1B928 E4440004 */ swc1 $f4, 0x0004($v0) ## 00000314
/* 0002C 80B1B92C C7A60018 */ lwc1 $f6, 0x0018($sp)
/* 00030 80B1B930 E4460008 */ swc1 $f6, 0x0008($v0) ## 00000318
/* 00034 80B1B934 93B80013 */ lbu $t8, 0x0013($sp)
/* 00038 80B1B938 A0590000 */ sb $t9, 0x0000($v0) ## 00000310
/* 0003C 80B1B93C A0580001 */ sb $t8, 0x0001($v0) ## 00000311
/* 00040 80B1B940 A0580002 */ sb $t8, 0x0002($v0) ## 00000312
/* 00044 80B1B944 8CA90000 */ lw $t1, 0x0000($a1) ## 00000000
/* 00048 80B1B948 AC490014 */ sw $t1, 0x0014($v0) ## 00000324
/* 0004C 80B1B94C 8CA80004 */ lw $t0, 0x0004($a1) ## 00000004
/* 00050 80B1B950 AC480018 */ sw $t0, 0x0018($v0) ## 00000328
/* 00054 80B1B954 8CA90008 */ lw $t1, 0x0008($a1) ## 00000008
/* 00058 80B1B958 AC49001C */ sw $t1, 0x001C($v0) ## 0000032C
/* 0005C 80B1B95C 8CEB0000 */ lw $t3, 0x0000($a3) ## 00000000
/* 00060 80B1B960 AC4B002C */ sw $t3, 0x002C($v0) ## 0000033C
/* 00064 80B1B964 8CEA0004 */ lw $t2, 0x0004($a3) ## 00000004
/* 00068 80B1B968 AC4A0030 */ sw $t2, 0x0030($v0) ## 00000340
/* 0006C 80B1B96C 8CEB0008 */ lw $t3, 0x0008($a3) ## 00000008
/* 00070 80B1B970 AC4B0034 */ sw $t3, 0x0034($v0) ## 00000344
/* 00074 80B1B974 8CCD0000 */ lw $t5, 0x0000($a2) ## 00000000
/* 00078 80B1B978 AC4D0020 */ sw $t5, 0x0020($v0) ## 00000330
/* 0007C 80B1B97C 8CCC0004 */ lw $t4, 0x0004($a2) ## 00000004
/* 00080 80B1B980 AC4C0024 */ sw $t4, 0x0024($v0) ## 00000334
/* 00084 80B1B984 8CCD0008 */ lw $t5, 0x0008($a2) ## 00000008
/* 00088 80B1B988 03E00008 */ jr $ra
/* 0008C 80B1B98C AC4D0028 */ sw $t5, 0x0028($v0) ## 00000338
.L80B1B990:
/* 00090 80B1B990 28610014 */ slti $at, $v1, 0x0014
/* 00094 80B1B994 1420FFDD */ bne $at, $zero, .L80B1B90C
/* 00098 80B1B998 24420038 */ addiu $v0, $v0, 0x0038 ## $v0 = 00000348
/* 0009C 80B1B99C 03E00008 */ jr $ra
/* 000A0 80B1B9A0 00000000 */ nop
@@ -1,75 +0,0 @@
glabel func_80B1B9A4
/* 000A4 80B1B9A4 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 000A8 80B1B9A8 F7B60018 */ sdc1 $f22, 0x0018($sp)
/* 000AC 80B1B9AC 3C0180B2 */ lui $at, %hi(D_80B1D62C) ## $at = 80B20000
/* 000B0 80B1B9B0 C436D62C */ lwc1 $f22, %lo(D_80B1D62C)($at)
/* 000B4 80B1B9B4 AFB10028 */ sw $s1, 0x0028($sp)
/* 000B8 80B1B9B8 AFB00024 */ sw $s0, 0x0024($sp)
/* 000BC 80B1B9BC F7B40010 */ sdc1 $f20, 0x0010($sp)
/* 000C0 80B1B9C0 3C0180B2 */ lui $at, %hi(D_80B1D630) ## $at = 80B20000
/* 000C4 80B1B9C4 AFBF002C */ sw $ra, 0x002C($sp)
/* 000C8 80B1B9C8 24900310 */ addiu $s0, $a0, 0x0310 ## $s0 = 00000310
/* 000CC 80B1B9CC C434D630 */ lwc1 $f20, %lo(D_80B1D630)($at)
/* 000D0 80B1B9D0 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
.L80B1B9D4:
/* 000D4 80B1B9D4 920E0000 */ lbu $t6, 0x0000($s0) ## 00000310
/* 000D8 80B1B9D8 51C00029 */ beql $t6, $zero, .L80B1BA80
/* 000DC 80B1B9DC 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001
/* 000E0 80B1B9E0 920F0001 */ lbu $t7, 0x0001($s0) ## 00000311
/* 000E4 80B1B9E4 25F8FFFF */ addiu $t8, $t7, 0xFFFF ## $t8 = FFFFFFFF
/* 000E8 80B1B9E8 331900FF */ andi $t9, $t8, 0x00FF ## $t9 = 000000FF
/* 000EC 80B1B9EC 17200002 */ bne $t9, $zero, .L80B1B9F8
/* 000F0 80B1B9F0 A2180001 */ sb $t8, 0x0001($s0) ## 00000311
/* 000F4 80B1B9F4 A2000000 */ sb $zero, 0x0000($s0) ## 00000310
.L80B1B9F8:
/* 000F8 80B1B9F8 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 000FC 80B1B9FC 00000000 */ nop
/* 00100 80B1BA00 46140102 */ mul.s $f4, $f0, $f20
/* 00104 80B1BA04 46162181 */ sub.s $f6, $f4, $f22
/* 00108 80B1BA08 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 0010C 80B1BA0C E606002C */ swc1 $f6, 0x002C($s0) ## 0000033C
/* 00110 80B1BA10 C60C0020 */ lwc1 $f12, 0x0020($s0) ## 00000330
/* 00114 80B1BA14 C60A0014 */ lwc1 $f10, 0x0014($s0) ## 00000324
/* 00118 80B1BA18 46140202 */ mul.s $f8, $f0, $f20
/* 0011C 80B1BA1C C60E0024 */ lwc1 $f14, 0x0024($s0) ## 00000334
/* 00120 80B1BA20 460C5480 */ add.s $f18, $f10, $f12
/* 00124 80B1BA24 C6040018 */ lwc1 $f4, 0x0018($s0) ## 00000328
/* 00128 80B1BA28 C6100028 */ lwc1 $f16, 0x0028($s0) ## 00000338
/* 0012C 80B1BA2C E6120014 */ swc1 $f18, 0x0014($s0) ## 00000324
/* 00130 80B1BA30 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000033C
/* 00134 80B1BA34 460E2180 */ add.s $f6, $f4, $f14
/* 00138 80B1BA38 46164081 */ sub.s $f2, $f8, $f22
/* 0013C 80B1BA3C C608001C */ lwc1 $f8, 0x001C($s0) ## 0000032C
/* 00140 80B1BA40 E6060018 */ swc1 $f6, 0x0018($s0) ## 00000328
/* 00144 80B1BA44 46126100 */ add.s $f4, $f12, $f18
/* 00148 80B1BA48 C6060030 */ lwc1 $f6, 0x0030($s0) ## 00000340
/* 0014C 80B1BA4C C6120004 */ lwc1 $f18, 0x0004($s0) ## 00000314
/* 00150 80B1BA50 46104280 */ add.s $f10, $f8, $f16
/* 00154 80B1BA54 E6040020 */ swc1 $f4, 0x0020($s0) ## 00000330
/* 00158 80B1BA58 C6040008 */ lwc1 $f4, 0x0008($s0) ## 00000318
/* 0015C 80B1BA5C 46067200 */ add.s $f8, $f14, $f6
/* 00160 80B1BA60 E60A001C */ swc1 $f10, 0x001C($s0) ## 0000032C
/* 00164 80B1BA64 E6020034 */ swc1 $f2, 0x0034($s0) ## 00000344
/* 00168 80B1BA68 46028280 */ add.s $f10, $f16, $f2
/* 0016C 80B1BA6C E6080024 */ swc1 $f8, 0x0024($s0) ## 00000334
/* 00170 80B1BA70 46049180 */ add.s $f6, $f18, $f4
/* 00174 80B1BA74 E60A0028 */ swc1 $f10, 0x0028($s0) ## 00000338
/* 00178 80B1BA78 E6060004 */ swc1 $f6, 0x0004($s0) ## 00000314
/* 0017C 80B1BA7C 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000002
.L80B1BA80:
/* 00180 80B1BA80 00118C00 */ sll $s1, $s1, 16
/* 00184 80B1BA84 00118C03 */ sra $s1, $s1, 16
/* 00188 80B1BA88 2A210014 */ slti $at, $s1, 0x0014
/* 0018C 80B1BA8C 1420FFD1 */ bne $at, $zero, .L80B1B9D4
/* 00190 80B1BA90 26100038 */ addiu $s0, $s0, 0x0038 ## $s0 = 00000348
/* 00194 80B1BA94 8FBF002C */ lw $ra, 0x002C($sp)
/* 00198 80B1BA98 D7B40010 */ ldc1 $f20, 0x0010($sp)
/* 0019C 80B1BA9C D7B60018 */ ldc1 $f22, 0x0018($sp)
/* 001A0 80B1BAA0 8FB00024 */ lw $s0, 0x0024($sp)
/* 001A4 80B1BAA4 8FB10028 */ lw $s1, 0x0028($sp)
/* 001A8 80B1BAA8 03E00008 */ jr $ra
/* 001AC 80B1BAAC 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
@@ -1,213 +0,0 @@
glabel func_80B1BAB0
/* 001B0 80B1BAB0 27BDFF58 */ addiu $sp, $sp, 0xFF58 ## $sp = FFFFFF58
/* 001B4 80B1BAB4 AFBE0050 */ sw $s8, 0x0050($sp)
/* 001B8 80B1BAB8 00A0F025 */ or $s8, $a1, $zero ## $s8 = 00000000
/* 001BC 80B1BABC AFBF0054 */ sw $ra, 0x0054($sp)
/* 001C0 80B1BAC0 AFB7004C */ sw $s7, 0x004C($sp)
/* 001C4 80B1BAC4 AFB60048 */ sw $s6, 0x0048($sp)
/* 001C8 80B1BAC8 AFB50044 */ sw $s5, 0x0044($sp)
/* 001CC 80B1BACC AFB40040 */ sw $s4, 0x0040($sp)
/* 001D0 80B1BAD0 AFB3003C */ sw $s3, 0x003C($sp)
/* 001D4 80B1BAD4 AFB20038 */ sw $s2, 0x0038($sp)
/* 001D8 80B1BAD8 AFB10034 */ sw $s1, 0x0034($sp)
/* 001DC 80B1BADC AFB00030 */ sw $s0, 0x0030($sp)
/* 001E0 80B1BAE0 F7B80028 */ sdc1 $f24, 0x0028($sp)
/* 001E4 80B1BAE4 F7B60020 */ sdc1 $f22, 0x0020($sp)
/* 001E8 80B1BAE8 F7B40018 */ sdc1 $f20, 0x0018($sp)
/* 001EC 80B1BAEC 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 001F0 80B1BAF0 24920310 */ addiu $s2, $a0, 0x0310 ## $s2 = 00000310
/* 001F4 80B1BAF4 3C0680B2 */ lui $a2, %hi(D_80B1D5B0) ## $a2 = 80B20000
/* 001F8 80B1BAF8 24C6D5B0 */ addiu $a2, $a2, %lo(D_80B1D5B0) ## $a2 = 80B1D5B0
/* 001FC 80B1BAFC 27A40088 */ addiu $a0, $sp, 0x0088 ## $a0 = FFFFFFE0
/* 00200 80B1BB00 24070072 */ addiu $a3, $zero, 0x0072 ## $a3 = 00000072
/* 00204 80B1BB04 0C031AB1 */ jal func_800C6AC4
/* 00208 80B1BB08 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 0020C 80B1BB0C 0000B825 */ or $s7, $zero, $zero ## $s7 = 00000000
/* 00210 80B1BB10 0C024F61 */ jal func_80093D84
/* 00214 80B1BB14 8FC40000 */ lw $a0, 0x0000($s8) ## 00000000
/* 00218 80B1BB18 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 0021C 80B1BB1C 4481C000 */ mtc1 $at, $f24 ## $f24 = 8.00
/* 00220 80B1BB20 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00224 80B1BB24 4481B000 */ mtc1 $at, $f22 ## $f22 = 1.00
/* 00228 80B1BB28 3C01437F */ lui $at, 0x437F ## $at = 437F0000
/* 0022C 80B1BB2C 4481A000 */ mtc1 $at, $f20 ## $f20 = 255.00
/* 00230 80B1BB30 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
/* 00234 80B1BB34 3C16DE00 */ lui $s6, 0xDE00 ## $s6 = DE000000
.L80B1BB38:
/* 00238 80B1BB38 924E0000 */ lbu $t6, 0x0000($s2) ## 00000310
/* 0023C 80B1BB3C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00240 80B1BB40 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
/* 00244 80B1BB44 11C0008A */ beq $t6, $zero, .L80B1BD70
/* 00248 80B1BB48 03C19821 */ addu $s3, $s8, $at
/* 0024C 80B1BB4C 3C150601 */ lui $s5, 0x0601 ## $s5 = 06010000
/* 00250 80B1BB50 16E00014 */ bne $s7, $zero, .L80B1BBA4
/* 00254 80B1BB54 26B5BCA0 */ addiu $s5, $s5, 0xBCA0 ## $s5 = 0600BCA0
/* 00258 80B1BB58 3C110601 */ lui $s1, 0x0601 ## $s1 = 06010000
/* 0025C 80B1BB5C 2631BC90 */ addiu $s1, $s1, 0xBC90 ## $s1 = 0600BC90
/* 00260 80B1BB60 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0
/* 00264 80B1BB64 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00268 80B1BB68 0C024DDD */ jal func_80093774
/* 0026C 80B1BB6C 24170001 */ addiu $s7, $zero, 0x0001 ## $s7 = 00000001
/* 00270 80B1BB70 AE0202D0 */ sw $v0, 0x02D0($s0) ## 000002D0
/* 00274 80B1BB74 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 00278 80B1BB78 AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0
/* 0027C 80B1BB7C AC510004 */ sw $s1, 0x0004($v0) ## 00000004
/* 00280 80B1BB80 AC560000 */ sw $s6, 0x0000($v0) ## 00000000
/* 00284 80B1BB84 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00288 80B1BB88 3C08643C */ lui $t0, 0x643C ## $t0 = 643C0000
/* 0028C 80B1BB8C 35081400 */ ori $t0, $t0, 0x1400 ## $t0 = 643C1400
/* 00290 80B1BB90 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 00294 80B1BB94 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 00298 80B1BB98 3C19FB00 */ lui $t9, 0xFB00 ## $t9 = FB000000
/* 0029C 80B1BB9C AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 002A0 80B1BBA0 AC480004 */ sw $t0, 0x0004($v0) ## 00000004
.L80B1BBA4:
/* 002A4 80B1BBA4 92490001 */ lbu $t1, 0x0001($s2) ## 00000311
/* 002A8 80B1BBA8 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
/* 002AC 80B1BBAC 44892000 */ mtc1 $t1, $f4 ## $f4 = 0.00
/* 002B0 80B1BBB0 05210004 */ bgez $t1, .L80B1BBC4
/* 002B4 80B1BBB4 468021A0 */ cvt.s.w $f6, $f4
/* 002B8 80B1BBB8 44814000 */ mtc1 $at, $f8 ## $f8 = 4294967296.00
/* 002BC 80B1BBBC 00000000 */ nop
/* 002C0 80B1BBC0 46083180 */ add.s $f6, $f6, $f8
.L80B1BBC4:
/* 002C4 80B1BBC4 924A0002 */ lbu $t2, 0x0002($s2) ## 00000312
/* 002C8 80B1BBC8 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
/* 002CC 80B1BBCC 448A5000 */ mtc1 $t2, $f10 ## $f10 = 0.00
/* 002D0 80B1BBD0 05410004 */ bgez $t2, .L80B1BBE4
/* 002D4 80B1BBD4 46805420 */ cvt.s.w $f16, $f10
/* 002D8 80B1BBD8 44819000 */ mtc1 $at, $f18 ## $f18 = 4294967296.00
/* 002DC 80B1BBDC 00000000 */ nop
/* 002E0 80B1BBE0 46128400 */ add.s $f16, $f16, $f18
.L80B1BBE4:
/* 002E4 80B1BBE4 4610A103 */ div.s $f4, $f20, $f16
/* 002E8 80B1BBE8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 002EC 80B1BBEC 3C01AA82 */ lui $at, 0xAA82 ## $at = AA820000
/* 002F0 80B1BBF0 34215A00 */ ori $at, $at, 0x5A00 ## $at = AA825A00
/* 002F4 80B1BBF4 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 002F8 80B1BBF8 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 002FC 80B1BBFC 3C0DFA00 */ lui $t5, 0xFA00 ## $t5 = FA000000
/* 00300 80B1BC00 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 00304 80B1BC04 3C19E700 */ lui $t9, 0xE700 ## $t9 = E7000000
/* 00308 80B1BC08 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 0030C 80B1BC0C 46043202 */ mul.s $f8, $f6, $f4
/* 00310 80B1BC10 4600428D */ trunc.w.s $f10, $f8
/* 00314 80B1BC14 44045000 */ mfc1 $a0, $f10
/* 00318 80B1BC18 00000000 */ nop
/* 0031C 80B1BC1C 00042400 */ sll $a0, $a0, 16
/* 00320 80B1BC20 00042403 */ sra $a0, $a0, 16
/* 00324 80B1BC24 308E00FF */ andi $t6, $a0, 0x00FF ## $t6 = 00000000
/* 00328 80B1BC28 01C17825 */ or $t7, $t6, $at ## $t7 = AA825A00
/* 0032C 80B1BC2C AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
/* 00330 80B1BC30 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00334 80B1BC34 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 00338 80B1BC38 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 0033C 80B1BC3C AC400004 */ sw $zero, 0x0004($v0) ## 00000004
/* 00340 80B1BC40 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 00344 80B1BC44 8E46001C */ lw $a2, 0x001C($s2) ## 0000032C
/* 00348 80B1BC48 C64E0018 */ lwc1 $f14, 0x0018($s2) ## 00000328
/* 0034C 80B1BC4C 0C034261 */ jal Matrix_Translate
/* 00350 80B1BC50 C64C0014 */ lwc1 $f12, 0x0014($s2) ## 00000324
/* 00354 80B1BC54 0C0347F5 */ jal func_800D1FD4
/* 00358 80B1BC58 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 0035C 80B1BC5C C64C0004 */ lwc1 $f12, 0x0004($s2) ## 00000314
/* 00360 80B1BC60 4406B000 */ mfc1 $a2, $f22
/* 00364 80B1BC64 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00368 80B1BC68 0C0342A3 */ jal Matrix_Scale
/* 0036C 80B1BC6C 46006386 */ mov.s $f14, $f12
/* 00370 80B1BC70 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00374 80B1BC74 3C09DA38 */ lui $t1, 0xDA38 ## $t1 = DA380000
/* 00378 80B1BC78 35290003 */ ori $t1, $t1, 0x0003 ## $t1 = DA380003
/* 0037C 80B1BC7C 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008
/* 00380 80B1BC80 AE0802D0 */ sw $t0, 0x02D0($s0) ## 000002D0
/* 00384 80B1BC84 3C0580B2 */ lui $a1, %hi(D_80B1D5C4) ## $a1 = 80B20000
/* 00388 80B1BC88 AC490000 */ sw $t1, 0x0000($v0) ## 00000000
/* 0038C 80B1BC8C 8FC40000 */ lw $a0, 0x0000($s8) ## 00000000
/* 00390 80B1BC90 24A5D5C4 */ addiu $a1, $a1, %lo(D_80B1D5C4) ## $a1 = 80B1D5C4
/* 00394 80B1BC94 2406008C */ addiu $a2, $zero, 0x008C ## $a2 = 0000008C
/* 00398 80B1BC98 0C0346A2 */ jal Matrix_NewMtx
/* 0039C 80B1BC9C 00408825 */ or $s1, $v0, $zero ## $s1 = 00000000
/* 003A0 80B1BCA0 AE220004 */ sw $v0, 0x0004($s1) ## 00000004
/* 003A4 80B1BCA4 924A0001 */ lbu $t2, 0x0001($s2) ## 00000311
/* 003A8 80B1BCA8 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
/* 003AC 80B1BCAC 448A9000 */ mtc1 $t2, $f18 ## $f18 = 0.00
/* 003B0 80B1BCB0 05410004 */ bgez $t2, .L80B1BCC4
/* 003B4 80B1BCB4 46809420 */ cvt.s.w $f16, $f18
/* 003B8 80B1BCB8 44813000 */ mtc1 $at, $f6 ## $f6 = 4294967296.00
/* 003BC 80B1BCBC 00000000 */ nop
/* 003C0 80B1BCC0 46068400 */ add.s $f16, $f16, $f6
.L80B1BCC4:
/* 003C4 80B1BCC4 924B0002 */ lbu $t3, 0x0002($s2) ## 00000312
/* 003C8 80B1BCC8 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
/* 003CC 80B1BCCC 448B2000 */ mtc1 $t3, $f4 ## $f4 = 0.00
/* 003D0 80B1BCD0 05610004 */ bgez $t3, .L80B1BCE4
/* 003D4 80B1BCD4 46802220 */ cvt.s.w $f8, $f4
/* 003D8 80B1BCD8 44815000 */ mtc1 $at, $f10 ## $f10 = 4294967296.00
/* 003DC 80B1BCDC 00000000 */ nop
/* 003E0 80B1BCE0 460A4200 */ add.s $f8, $f8, $f10
.L80B1BCE4:
/* 003E4 80B1BCE4 4608C483 */ div.s $f18, $f24, $f8
/* 003E8 80B1BCE8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 003EC 80B1BCEC 3C0EDB06 */ lui $t6, 0xDB06 ## $t6 = DB060000
/* 003F0 80B1BCF0 35CE0020 */ ori $t6, $t6, 0x0020 ## $t6 = DB060020
/* 003F4 80B1BCF4 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
/* 003F8 80B1BCF8 AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0
/* 003FC 80B1BCFC 3C0480B2 */ lui $a0, %hi(D_80B1D4D0) ## $a0 = 80B20000
/* 00400 80B1BD00 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
/* 00404 80B1BD04 3C0A8016 */ lui $t2, 0x8016 ## $t2 = 80160000
/* 00408 80B1BD08 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 0040C 80B1BD0C 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00410 80B1BD10 46128182 */ mul.s $f6, $f16, $f18
/* 00414 80B1BD14 4600310D */ trunc.w.s $f4, $f6
/* 00418 80B1BD18 44052000 */ mfc1 $a1, $f4
/* 0041C 80B1BD1C 00000000 */ nop
/* 00420 80B1BD20 00052C00 */ sll $a1, $a1, 16
/* 00424 80B1BD24 00052C03 */ sra $a1, $a1, 16
/* 00428 80B1BD28 00057880 */ sll $t7, $a1, 2
/* 0042C 80B1BD2C 008F2021 */ addu $a0, $a0, $t7
/* 00430 80B1BD30 8C84D4D0 */ lw $a0, %lo(D_80B1D4D0)($a0)
/* 00434 80B1BD34 0004C900 */ sll $t9, $a0, 4
/* 00438 80B1BD38 00194702 */ srl $t0, $t9, 28
/* 0043C 80B1BD3C 00084880 */ sll $t1, $t0, 2
/* 00440 80B1BD40 01495021 */ addu $t2, $t2, $t1
/* 00444 80B1BD44 8D4A6FA8 */ lw $t2, 0x6FA8($t2) ## 80166FA8
/* 00448 80B1BD48 0081C024 */ and $t8, $a0, $at
/* 0044C 80B1BD4C 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00450 80B1BD50 030A5821 */ addu $t3, $t8, $t2
/* 00454 80B1BD54 01616021 */ addu $t4, $t3, $at
/* 00458 80B1BD58 AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004
/* 0045C 80B1BD5C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00460 80B1BD60 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
/* 00464 80B1BD64 AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0
/* 00468 80B1BD68 AC550004 */ sw $s5, 0x0004($v0) ## 00000004
/* 0046C 80B1BD6C AC560000 */ sw $s6, 0x0000($v0) ## 00000000
.L80B1BD70:
/* 00470 80B1BD70 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
/* 00474 80B1BD74 0014A400 */ sll $s4, $s4, 16
/* 00478 80B1BD78 0014A403 */ sra $s4, $s4, 16
/* 0047C 80B1BD7C 2A810014 */ slti $at, $s4, 0x0014
/* 00480 80B1BD80 1420FF6D */ bne $at, $zero, .L80B1BB38
/* 00484 80B1BD84 26520038 */ addiu $s2, $s2, 0x0038 ## $s2 = 00000348
/* 00488 80B1BD88 3C0680B2 */ lui $a2, %hi(D_80B1D5D8) ## $a2 = 80B20000
/* 0048C 80B1BD8C 24C6D5D8 */ addiu $a2, $a2, %lo(D_80B1D5D8) ## $a2 = 80B1D5D8
/* 00490 80B1BD90 27A40088 */ addiu $a0, $sp, 0x0088 ## $a0 = FFFFFFE0
/* 00494 80B1BD94 8FC50000 */ lw $a1, 0x0000($s8) ## 00000000
/* 00498 80B1BD98 0C031AD5 */ jal func_800C6B54
/* 0049C 80B1BD9C 2407009A */ addiu $a3, $zero, 0x009A ## $a3 = 0000009A
/* 004A0 80B1BDA0 8FBF0054 */ lw $ra, 0x0054($sp)
/* 004A4 80B1BDA4 D7B40018 */ ldc1 $f20, 0x0018($sp)
/* 004A8 80B1BDA8 D7B60020 */ ldc1 $f22, 0x0020($sp)
/* 004AC 80B1BDAC D7B80028 */ ldc1 $f24, 0x0028($sp)
/* 004B0 80B1BDB0 8FB00030 */ lw $s0, 0x0030($sp)
/* 004B4 80B1BDB4 8FB10034 */ lw $s1, 0x0034($sp)
/* 004B8 80B1BDB8 8FB20038 */ lw $s2, 0x0038($sp)
/* 004BC 80B1BDBC 8FB3003C */ lw $s3, 0x003C($sp)
/* 004C0 80B1BDC0 8FB40040 */ lw $s4, 0x0040($sp)
/* 004C4 80B1BDC4 8FB50044 */ lw $s5, 0x0044($sp)
/* 004C8 80B1BDC8 8FB60048 */ lw $s6, 0x0048($sp)
/* 004CC 80B1BDCC 8FB7004C */ lw $s7, 0x004C($sp)
/* 004D0 80B1BDD0 8FBE0050 */ lw $s8, 0x0050($sp)
/* 004D4 80B1BDD4 03E00008 */ jr $ra
/* 004D8 80B1BDD8 27BD00A8 */ addiu $sp, $sp, 0x00A8 ## $sp = 00000000
@@ -1,50 +0,0 @@
glabel func_80B1BDDC
/* 004DC 80B1BDDC 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
/* 004E0 80B1BDE0 3C0F80B2 */ lui $t7, %hi(D_80B1D4F0) ## $t7 = 80B20000
/* 004E4 80B1BDE4 AFBF0024 */ sw $ra, 0x0024($sp)
/* 004E8 80B1BDE8 AFA40048 */ sw $a0, 0x0048($sp)
/* 004EC 80B1BDEC AFA5004C */ sw $a1, 0x004C($sp)
/* 004F0 80B1BDF0 AFA60050 */ sw $a2, 0x0050($sp)
/* 004F4 80B1BDF4 AFA70054 */ sw $a3, 0x0054($sp)
/* 004F8 80B1BDF8 25EFD4F0 */ addiu $t7, $t7, %lo(D_80B1D4F0) ## $t7 = 80B1D4F0
/* 004FC 80B1BDFC 8DF90000 */ lw $t9, 0x0000($t7) ## 80B1D4F0
/* 00500 80B1BE00 27AE003C */ addiu $t6, $sp, 0x003C ## $t6 = FFFFFFF4
/* 00504 80B1BE04 8DF80004 */ lw $t8, 0x0004($t7) ## 80B1D4F4
/* 00508 80B1BE08 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
/* 0050C 80B1BE0C 8DF90008 */ lw $t9, 0x0008($t7) ## 80B1D4F8
/* 00510 80B1BE10 3C0980B2 */ lui $t1, %hi(D_80B1D4FC) ## $t1 = 80B20000
/* 00514 80B1BE14 2529D4FC */ addiu $t1, $t1, %lo(D_80B1D4FC) ## $t1 = 80B1D4FC
/* 00518 80B1BE18 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
/* 0051C 80B1BE1C ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
/* 00520 80B1BE20 8D2B0000 */ lw $t3, 0x0000($t1) ## 80B1D4FC
/* 00524 80B1BE24 27A80030 */ addiu $t0, $sp, 0x0030 ## $t0 = FFFFFFE8
/* 00528 80B1BE28 8D2A0004 */ lw $t2, 0x0004($t1) ## 80B1D500
/* 0052C 80B1BE2C AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE8
/* 00530 80B1BE30 8D2B0008 */ lw $t3, 0x0008($t1) ## 80B1D504
/* 00534 80B1BE34 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFEC
/* 00538 80B1BE38 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 0053C 80B1BE3C AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFF0
/* 00540 80B1BE40 C7A6005C */ lwc1 $f6, 0x005C($sp)
/* 00544 80B1BE44 C7A40034 */ lwc1 $f4, 0x0034($sp)
/* 00548 80B1BE48 93AC0053 */ lbu $t4, 0x0053($sp)
/* 0054C 80B1BE4C 46060202 */ mul.s $f8, $f0, $f6
/* 00550 80B1BE50 C7B00054 */ lwc1 $f16, 0x0054($sp)
/* 00554 80B1BE54 C7B20058 */ lwc1 $f18, 0x0058($sp)
/* 00558 80B1BE58 8FA40048 */ lw $a0, 0x0048($sp)
/* 0055C 80B1BE5C 8FA5004C */ lw $a1, 0x004C($sp)
/* 00560 80B1BE60 27A6003C */ addiu $a2, $sp, 0x003C ## $a2 = FFFFFFF4
/* 00564 80B1BE64 27A70030 */ addiu $a3, $sp, 0x0030 ## $a3 = FFFFFFE8
/* 00568 80B1BE68 46082280 */ add.s $f10, $f4, $f8
/* 0056C 80B1BE6C AFAC0010 */ sw $t4, 0x0010($sp)
/* 00570 80B1BE70 E7B00014 */ swc1 $f16, 0x0014($sp)
/* 00574 80B1BE74 E7B20018 */ swc1 $f18, 0x0018($sp)
/* 00578 80B1BE78 0C2C6E40 */ jal func_80B1B900
/* 0057C 80B1BE7C E7AA0034 */ swc1 $f10, 0x0034($sp)
/* 00580 80B1BE80 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00584 80B1BE84 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
/* 00588 80B1BE88 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 0058C 80B1BE8C 03E00008 */ jr $ra
/* 00590 80B1BE90 00000000 */ nop
@@ -1,38 +0,0 @@
glabel func_80B1BE94
/* 00594 80B1BE94 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00598 80B1BE98 AFA40028 */ sw $a0, 0x0028($sp)
/* 0059C 80B1BE9C AFBF0024 */ sw $ra, 0x0024($sp)
/* 005A0 80B1BEA0 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 005A4 80B1BEA4 AFA5002C */ sw $a1, 0x002C($sp)
/* 005A8 80B1BEA8 0C028800 */ jal SkelAnime_GetFrameCount
/* 005AC 80B1BEAC 24842F84 */ addiu $a0, $a0, 0x2F84 ## $a0 = 06002F84
/* 005B0 80B1BEB0 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 005B4 80B1BEB4 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
/* 005B8 80B1BEB8 44814000 */ mtc1 $at, $f8 ## $f8 = -10.00
/* 005BC 80B1BEBC 468021A0 */ cvt.s.w $f6, $f4
/* 005C0 80B1BEC0 8FA40028 */ lw $a0, 0x0028($sp)
/* 005C4 80B1BEC4 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 005C8 80B1BEC8 24A52F84 */ addiu $a1, $a1, 0x2F84 ## $a1 = 06002F84
/* 005CC 80B1BECC 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 005D0 80B1BED0 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 005D4 80B1BED4 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 005D8 80B1BED8 AFA00014 */ sw $zero, 0x0014($sp)
/* 005DC 80B1BEDC E7A80018 */ swc1 $f8, 0x0018($sp)
/* 005E0 80B1BEE0 0C029468 */ jal SkelAnime_ChangeAnimation
/* 005E4 80B1BEE4 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 005E8 80B1BEE8 2404003C */ addiu $a0, $zero, 0x003C ## $a0 = 0000003C
/* 005EC 80B1BEEC 0C01DF64 */ jal Math_Rand_S16Offset
/* 005F0 80B1BEF0 2405003C */ addiu $a1, $zero, 0x003C ## $a1 = 0000003C
/* 005F4 80B1BEF4 8FA30028 */ lw $v1, 0x0028($sp)
/* 005F8 80B1BEF8 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 005FC 80B1BEFC A462021C */ sh $v0, 0x021C($v1) ## 0000021C
/* 00600 80B1BF00 E46A0068 */ swc1 $f10, 0x0068($v1) ## 00000068
/* 00604 80B1BF04 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00608 80B1BF08 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 0060C 80B1BF0C 03E00008 */ jr $ra
/* 00610 80B1BF10 00000000 */ nop
@@ -1,36 +0,0 @@
glabel func_80B1BF14
/* 00614 80B1BF14 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00618 80B1BF18 AFA40028 */ sw $a0, 0x0028($sp)
/* 0061C 80B1BF1C AFBF0024 */ sw $ra, 0x0024($sp)
/* 00620 80B1BF20 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 00624 80B1BF24 AFA5002C */ sw $a1, 0x002C($sp)
/* 00628 80B1BF28 0C028800 */ jal SkelAnime_GetFrameCount
/* 0062C 80B1BF2C 24842F84 */ addiu $a0, $a0, 0x2F84 ## $a0 = 06002F84
/* 00630 80B1BF30 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00634 80B1BF34 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
/* 00638 80B1BF38 44814000 */ mtc1 $at, $f8 ## $f8 = -10.00
/* 0063C 80B1BF3C 468021A0 */ cvt.s.w $f6, $f4
/* 00640 80B1BF40 8FA40028 */ lw $a0, 0x0028($sp)
/* 00644 80B1BF44 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 00648 80B1BF48 24A51FA8 */ addiu $a1, $a1, 0x1FA8 ## $a1 = 06001FA8
/* 0064C 80B1BF4C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00650 80B1BF50 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00654 80B1BF54 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00658 80B1BF58 AFA00014 */ sw $zero, 0x0014($sp)
/* 0065C 80B1BF5C E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00660 80B1BF60 0C029468 */ jal SkelAnime_ChangeAnimation
/* 00664 80B1BF64 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 00668 80B1BF68 240400F0 */ addiu $a0, $zero, 0x00F0 ## $a0 = 000000F0
/* 0066C 80B1BF6C 0C01DF64 */ jal Math_Rand_S16Offset
/* 00670 80B1BF70 240500F0 */ addiu $a1, $zero, 0x00F0 ## $a1 = 000000F0
/* 00674 80B1BF74 8FAE0028 */ lw $t6, 0x0028($sp)
/* 00678 80B1BF78 A5C2021C */ sh $v0, 0x021C($t6) ## 0000021C
/* 0067C 80B1BF7C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00680 80B1BF80 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00684 80B1BF84 03E00008 */ jr $ra
/* 00688 80B1BF88 00000000 */ nop
@@ -1,38 +0,0 @@
glabel func_80B1BF8C
/* 0068C 80B1BF8C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00690 80B1BF90 AFA40028 */ sw $a0, 0x0028($sp)
/* 00694 80B1BF94 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00698 80B1BF98 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 0069C 80B1BF9C AFA5002C */ sw $a1, 0x002C($sp)
/* 006A0 80B1BFA0 0C028800 */ jal SkelAnime_GetFrameCount
/* 006A4 80B1BFA4 24841144 */ addiu $a0, $a0, 0x1144 ## $a0 = 06001144
/* 006A8 80B1BFA8 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 006AC 80B1BFAC 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
/* 006B0 80B1BFB0 44814000 */ mtc1 $at, $f8 ## $f8 = -10.00
/* 006B4 80B1BFB4 468021A0 */ cvt.s.w $f6, $f4
/* 006B8 80B1BFB8 8FA40028 */ lw $a0, 0x0028($sp)
/* 006BC 80B1BFBC 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 006C0 80B1BFC0 24A51144 */ addiu $a1, $a1, 0x1144 ## $a1 = 06001144
/* 006C4 80B1BFC4 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 006C8 80B1BFC8 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 006CC 80B1BFCC E7A60010 */ swc1 $f6, 0x0010($sp)
/* 006D0 80B1BFD0 AFA00014 */ sw $zero, 0x0014($sp)
/* 006D4 80B1BFD4 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 006D8 80B1BFD8 0C029468 */ jal SkelAnime_ChangeAnimation
/* 006DC 80B1BFDC 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 006E0 80B1BFE0 8FA40028 */ lw $a0, 0x0028($sp)
/* 006E4 80B1BFE4 0C2C7055 */ jal func_80B1C154
/* 006E8 80B1BFE8 8FA5002C */ lw $a1, 0x002C($sp)
/* 006EC 80B1BFEC 04400003 */ bltz $v0, .L80B1BFFC
/* 006F0 80B1BFF0 8FAF0028 */ lw $t7, 0x0028($sp)
/* 006F4 80B1BFF4 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 006F8 80B1BFF8 A1EE0208 */ sb $t6, 0x0208($t7) ## 00000208
.L80B1BFFC:
/* 006FC 80B1BFFC 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00700 80B1C000 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00704 80B1C004 03E00008 */ jr $ra
/* 00708 80B1C008 00000000 */ nop
@@ -1,58 +0,0 @@
glabel func_80B1C00C
/* 0070C 80B1C00C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00710 80B1C010 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00714 80B1C014 84820224 */ lh $v0, 0x0224($a0) ## 00000224
/* 00718 80B1C018 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 0071C 80B1C01C 14400003 */ bne $v0, $zero, .L80B1C02C
/* 00720 80B1C020 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 00724 80B1C024 10000003 */ beq $zero, $zero, .L80B1C034
/* 00728 80B1C028 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
.L80B1C02C:
/* 0072C 80B1C02C A4CE0224 */ sh $t6, 0x0224($a2) ## 00000224
/* 00730 80B1C030 84C30224 */ lh $v1, 0x0224($a2) ## 00000224
.L80B1C034:
/* 00734 80B1C034 54600023 */ bnel $v1, $zero, .L80B1C0C4
/* 00738 80B1C038 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0073C 80B1C03C 84CF0222 */ lh $t7, 0x0222($a2) ## 00000222
/* 00740 80B1C040 25F80001 */ addiu $t8, $t7, 0x0001 ## $t8 = 00000001
/* 00744 80B1C044 A4D80222 */ sh $t8, 0x0222($a2) ## 00000222
/* 00748 80B1C048 84D90222 */ lh $t9, 0x0222($a2) ## 00000222
/* 0074C 80B1C04C 2B210003 */ slti $at, $t9, 0x0003
/* 00750 80B1C050 5420001C */ bnel $at, $zero, .L80B1C0C4
/* 00754 80B1C054 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00758 80B1C058 84C80218 */ lh $t0, 0x0218($a2) ## 00000218
/* 0075C 80B1C05C 2404001E */ addiu $a0, $zero, 0x001E ## $a0 = 0000001E
/* 00760 80B1C060 2405001E */ addiu $a1, $zero, 0x001E ## $a1 = 0000001E
/* 00764 80B1C064 2509FFFF */ addiu $t1, $t0, 0xFFFF ## $t1 = FFFFFFFF
/* 00768 80B1C068 A4C90218 */ sh $t1, 0x0218($a2) ## 00000218
/* 0076C 80B1C06C 84CA0218 */ lh $t2, 0x0218($a2) ## 00000218
/* 00770 80B1C070 05430013 */ bgezl $t2, .L80B1C0C0
/* 00774 80B1C074 A4C00222 */ sh $zero, 0x0222($a2) ## 00000222
/* 00778 80B1C078 0C01DF64 */ jal Math_Rand_S16Offset
/* 0077C 80B1C07C AFA60018 */ sw $a2, 0x0018($sp)
/* 00780 80B1C080 8FA60018 */ lw $a2, 0x0018($sp)
/* 00784 80B1C084 240B0002 */ addiu $t3, $zero, 0x0002 ## $t3 = 00000002
/* 00788 80B1C088 A4C20224 */ sh $v0, 0x0224($a2) ## 00000224
/* 0078C 80B1C08C 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00790 80B1C090 A4CB0218 */ sh $t3, 0x0218($a2) ## 00000218
/* 00794 80B1C094 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 00798 80B1C098 44812000 */ mtc1 $at, $f4 ## $f4 = 0.50
/* 0079C 80B1C09C 8FA60018 */ lw $a2, 0x0018($sp)
/* 007A0 80B1C0A0 4600203C */ c.lt.s $f4, $f0
/* 007A4 80B1C0A4 00000000 */ nop
/* 007A8 80B1C0A8 45020005 */ bc1fl .L80B1C0C0
/* 007AC 80B1C0AC A4C00222 */ sh $zero, 0x0222($a2) ## 00000222
/* 007B0 80B1C0B0 84CC0218 */ lh $t4, 0x0218($a2) ## 00000218
/* 007B4 80B1C0B4 258D0001 */ addiu $t5, $t4, 0x0001 ## $t5 = 00000001
/* 007B8 80B1C0B8 A4CD0218 */ sh $t5, 0x0218($a2) ## 00000218
/* 007BC 80B1C0BC A4C00222 */ sh $zero, 0x0222($a2) ## 00000222
.L80B1C0C0:
/* 007C0 80B1C0C0 8FBF0014 */ lw $ra, 0x0014($sp)
.L80B1C0C4:
/* 007C4 80B1C0C4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 007C8 80B1C0C8 03E00008 */ jr $ra
/* 007CC 80B1C0CC 00000000 */ nop
@@ -1,40 +0,0 @@
glabel func_80B1C0D0
/* 007D0 80B1C0D0 3C0180B2 */ lui $at, %hi(D_80B1D634) ## $at = 80B20000
/* 007D4 80B1C0D4 C424D634 */ lwc1 $f4, %lo(D_80B1D634)($at)
/* 007D8 80B1C0D8 C486008C */ lwc1 $f6, 0x008C($a0) ## 0000008C
/* 007DC 80B1C0DC 4606203C */ c.lt.s $f4, $f6
/* 007E0 80B1C0E0 00000000 */ nop
/* 007E4 80B1C0E4 45020004 */ bc1fl .L80B1C0F8
/* 007E8 80B1C0E8 848200B6 */ lh $v0, 0x00B6($a0) ## 000000B6
/* 007EC 80B1C0EC 03E00008 */ jr $ra
/* 007F0 80B1C0F0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80B1C0F4:
/* 007F4 80B1C0F4 848200B6 */ lh $v0, 0x00B6($a0) ## 000000B6
.L80B1C0F8:
/* 007F8 80B1C0F8 848E021E */ lh $t6, 0x021E($a0) ## 0000021E
/* 007FC 80B1C0FC 848F0226 */ lh $t7, 0x0226($a0) ## 00000226
/* 00800 80B1C100 8498008A */ lh $t8, 0x008A($a0) ## 0000008A
/* 00804 80B1C104 004E1023 */ subu $v0, $v0, $t6
/* 00808 80B1C108 00021400 */ sll $v0, $v0, 16
/* 0080C 80B1C10C 00021403 */ sra $v0, $v0, 16
/* 00810 80B1C110 004F1023 */ subu $v0, $v0, $t7
/* 00814 80B1C114 00021400 */ sll $v0, $v0, 16
/* 00818 80B1C118 00021403 */ sra $v0, $v0, 16
/* 0081C 80B1C11C 03021823 */ subu $v1, $t8, $v0
/* 00820 80B1C120 00031C00 */ sll $v1, $v1, 16
/* 00824 80B1C124 00031C03 */ sra $v1, $v1, 16
/* 00828 80B1C128 04600003 */ bltz $v1, .L80B1C138
/* 0082C 80B1C12C 00031023 */ subu $v0, $zero, $v1
/* 00830 80B1C130 10000001 */ beq $zero, $zero, .L80B1C138
/* 00834 80B1C134 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
.L80B1C138:
/* 00838 80B1C138 28411554 */ slti $at, $v0, 0x1554
/* 0083C 80B1C13C 10200003 */ beq $at, $zero, .L80B1C14C
/* 00840 80B1C140 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 00844 80B1C144 03E00008 */ jr $ra
/* 00848 80B1C148 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L80B1C14C:
/* 0084C 80B1C14C 03E00008 */ jr $ra
/* 00850 80B1C150 00000000 */ nop
@@ -1,68 +0,0 @@
glabel func_80B1C154
/* 00854 80B1C154 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00858 80B1C158 AFBF003C */ sw $ra, 0x003C($sp)
/* 0085C 80B1C15C AFB20038 */ sw $s2, 0x0038($sp)
/* 00860 80B1C160 AFB10034 */ sw $s1, 0x0034($sp)
/* 00864 80B1C164 AFB00030 */ sw $s0, 0x0030($sp)
/* 00868 80B1C168 F7B80028 */ sdc1 $f24, 0x0028($sp)
/* 0086C 80B1C16C F7B60020 */ sdc1 $f22, 0x0020($sp)
/* 00870 80B1C170 F7B40018 */ sdc1 $f20, 0x0018($sp)
/* 00874 80B1C174 8CB01C64 */ lw $s0, 0x1C64($a1) ## 00001C64
/* 00878 80B1C178 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 0087C 80B1C17C 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00880 80B1C180 52000025 */ beql $s0, $zero, .L80B1C218
/* 00884 80B1C184 2402FFFF */ addiu $v0, $zero, 0xFFFF ## $v0 = FFFFFFFF
/* 00888 80B1C188 4481C000 */ mtc1 $at, $f24 ## $f24 = 10.00
/* 0088C 80B1C18C 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 00890 80B1C190 4481B000 */ mtc1 $at, $f22 ## $f22 = 40.00
/* 00894 80B1C194 24120196 */ addiu $s2, $zero, 0x0196 ## $s2 = 00000196
/* 00898 80B1C198 860E0000 */ lh $t6, 0x0000($s0) ## 00000000
.L80B1C19C:
/* 0089C 80B1C19C 524E0004 */ beql $s2, $t6, .L80B1C1B0
/* 008A0 80B1C1A0 8E2F0210 */ lw $t7, 0x0210($s1) ## 00000210
/* 008A4 80B1C1A4 10000019 */ beq $zero, $zero, .L80B1C20C
/* 008A8 80B1C1A8 8E100124 */ lw $s0, 0x0124($s0) ## 00000124
/* 008AC 80B1C1AC 8E2F0210 */ lw $t7, 0x0210($s1) ## 00000210
.L80B1C1B0:
/* 008B0 80B1C1B0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 008B4 80B1C1B4 560F0004 */ bnel $s0, $t7, .L80B1C1C8
/* 008B8 80B1C1B8 C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028
/* 008BC 80B1C1BC 10000013 */ beq $zero, $zero, .L80B1C20C
/* 008C0 80B1C1C0 8E100124 */ lw $s0, 0x0124($s0) ## 00000124
/* 008C4 80B1C1C4 C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028
.L80B1C1C8:
/* 008C8 80B1C1C8 C6260080 */ lwc1 $f6, 0x0080($s1) ## 00000080
/* 008CC 80B1C1CC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 008D0 80B1C1D0 0C00B6E3 */ jal func_8002DB8C
/* 008D4 80B1C1D4 46062501 */ sub.s $f20, $f4, $f6
/* 008D8 80B1C1D8 4600B03C */ c.lt.s $f22, $f0
/* 008DC 80B1C1DC 00000000 */ nop
/* 008E0 80B1C1E0 45010005 */ bc1t .L80B1C1F8
/* 008E4 80B1C1E4 00000000 */ nop
/* 008E8 80B1C1E8 4614C03C */ c.lt.s $f24, $f20
/* 008EC 80B1C1EC 00000000 */ nop
/* 008F0 80B1C1F0 45020004 */ bc1fl .L80B1C204
/* 008F4 80B1C1F4 AE300210 */ sw $s0, 0x0210($s1) ## 00000210
.L80B1C1F8:
/* 008F8 80B1C1F8 10000004 */ beq $zero, $zero, .L80B1C20C
/* 008FC 80B1C1FC 8E100124 */ lw $s0, 0x0124($s0) ## 00000124
/* 00900 80B1C200 AE300210 */ sw $s0, 0x0210($s1) ## 00000210
.L80B1C204:
/* 00904 80B1C204 10000004 */ beq $zero, $zero, .L80B1C218
/* 00908 80B1C208 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
.L80B1C20C:
/* 0090C 80B1C20C 5600FFE3 */ bnel $s0, $zero, .L80B1C19C
/* 00910 80B1C210 860E0000 */ lh $t6, 0x0000($s0) ## 00000000
/* 00914 80B1C214 2402FFFF */ addiu $v0, $zero, 0xFFFF ## $v0 = FFFFFFFF
.L80B1C218:
/* 00918 80B1C218 8FBF003C */ lw $ra, 0x003C($sp)
/* 0091C 80B1C21C D7B40018 */ ldc1 $f20, 0x0018($sp)
/* 00920 80B1C220 D7B60020 */ ldc1 $f22, 0x0020($sp)
/* 00924 80B1C224 D7B80028 */ ldc1 $f24, 0x0028($sp)
/* 00928 80B1C228 8FB00030 */ lw $s0, 0x0030($sp)
/* 0092C 80B1C22C 8FB10034 */ lw $s1, 0x0034($sp)
/* 00930 80B1C230 8FB20038 */ lw $s2, 0x0038($sp)
/* 00934 80B1C234 03E00008 */ jr $ra
/* 00938 80B1C238 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
@@ -1,35 +0,0 @@
glabel func_80B1C23C
/* 0093C 80B1C23C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00940 80B1C240 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00944 80B1C244 8C850210 */ lw $a1, 0x0210($a0) ## 00000210
/* 00948 80B1C248 50A00017 */ beql $a1, $zero, .L80B1C2A8
/* 0094C 80B1C24C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00950 80B1C250 C4A40028 */ lwc1 $f4, 0x0028($a1) ## 00000028
/* 00954 80B1C254 C4860080 */ lwc1 $f6, 0x0080($a0) ## 00000080
/* 00958 80B1C258 AFA40020 */ sw $a0, 0x0020($sp)
/* 0095C 80B1C25C 46062201 */ sub.s $f8, $f4, $f6
/* 00960 80B1C260 0C00B6E3 */ jal func_8002DB8C
/* 00964 80B1C264 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00968 80B1C268 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 0096C 80B1C26C 44815000 */ mtc1 $at, $f10 ## $f10 = 40.00
/* 00970 80B1C270 8FA40020 */ lw $a0, 0x0020($sp)
/* 00974 80B1C274 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00978 80B1C278 4600503C */ c.lt.s $f10, $f0
/* 0097C 80B1C27C C7B20018 */ lwc1 $f18, 0x0018($sp)
/* 00980 80B1C280 45030008 */ bc1tl .L80B1C2A4
/* 00984 80B1C284 AC800210 */ sw $zero, 0x0210($a0) ## 00000210
/* 00988 80B1C288 44818000 */ mtc1 $at, $f16 ## $f16 = 10.00
/* 0098C 80B1C28C 00000000 */ nop
/* 00990 80B1C290 4612803C */ c.lt.s $f16, $f18
/* 00994 80B1C294 00000000 */ nop
/* 00998 80B1C298 45020003 */ bc1fl .L80B1C2A8
/* 0099C 80B1C29C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 009A0 80B1C2A0 AC800210 */ sw $zero, 0x0210($a0) ## 00000210
.L80B1C2A4:
/* 009A4 80B1C2A4 8FBF0014 */ lw $ra, 0x0014($sp)
.L80B1C2A8:
/* 009A8 80B1C2A8 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 009AC 80B1C2AC 03E00008 */ jr $ra
/* 009B0 80B1C2B0 00000000 */ nop
@@ -1,87 +0,0 @@
glabel func_80B1C2B4
/* 009B4 80B1C2B4 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 009B8 80B1C2B8 3C0F80B2 */ lui $t7, %hi(D_80B1D540) ## $t7 = 80B20000
/* 009BC 80B1C2BC AFBF0014 */ sw $ra, 0x0014($sp)
/* 009C0 80B1C2C0 AFA50034 */ sw $a1, 0x0034($sp)
/* 009C4 80B1C2C4 25EFD540 */ addiu $t7, $t7, %lo(D_80B1D540) ## $t7 = 80B1D540
/* 009C8 80B1C2C8 8DF90000 */ lw $t9, 0x0000($t7) ## 80B1D540
/* 009CC 80B1C2CC 8DF80004 */ lw $t8, 0x0004($t7) ## 80B1D544
/* 009D0 80B1C2D0 27AE0028 */ addiu $t6, $sp, 0x0028 ## $t6 = FFFFFFF8
/* 009D4 80B1C2D4 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF8
/* 009D8 80B1C2D8 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFFC
/* 009DC 80B1C2DC 44807000 */ mtc1 $zero, $f14 ## $f14 = 0.00
/* 009E0 80B1C2E0 C4800164 */ lwc1 $f0, 0x0164($a0) ## 00000164
/* 009E4 80B1C2E4 3C0141C8 */ lui $at, 0x41C8 ## $at = 41C80000
/* 009E8 80B1C2E8 240538B8 */ addiu $a1, $zero, 0x38B8 ## $a1 = 000038B8
/* 009EC 80B1C2EC 46007032 */ c.eq.s $f14, $f0
/* 009F0 80B1C2F0 00000000 */ nop
/* 009F4 80B1C2F4 45010007 */ bc1t .L80B1C314
/* 009F8 80B1C2F8 00000000 */ nop
/* 009FC 80B1C2FC 44812000 */ mtc1 $at, $f4 ## $f4 = 25.00
/* 00A00 80B1C300 00000000 */ nop
/* 00A04 80B1C304 46002032 */ c.eq.s $f4, $f0
/* 00A08 80B1C308 00000000 */ nop
/* 00A0C 80B1C30C 45020006 */ bc1fl .L80B1C328
/* 00A10 80B1C310 8C890154 */ lw $t1, 0x0154($a0) ## 00000154
.L80B1C314:
/* 00A14 80B1C314 0C00BE0A */ jal Audio_PlayActorSound2
/* 00A18 80B1C318 AFA40030 */ sw $a0, 0x0030($sp)
/* 00A1C 80B1C31C 44807000 */ mtc1 $zero, $f14 ## $f14 = 0.00
/* 00A20 80B1C320 8FA40030 */ lw $a0, 0x0030($sp)
/* 00A24 80B1C324 8C890154 */ lw $t1, 0x0154($a0) ## 00000154
.L80B1C328:
/* 00A28 80B1C328 3C080600 */ lui $t0, 0x0600 ## $t0 = 06000000
/* 00A2C 80B1C32C 25081FA8 */ addiu $t0, $t0, 0x1FA8 ## $t0 = 06001FA8
/* 00A30 80B1C330 11090003 */ beq $t0, $t1, .L80B1C340
/* 00A34 80B1C334 27A20028 */ addiu $v0, $sp, 0x0028 ## $v0 = FFFFFFF8
/* 00A38 80B1C338 10000024 */ beq $zero, $zero, .L80B1C3CC
/* 00A3C 80B1C33C 46007006 */ mov.s $f0, $f14
.L80B1C340:
/* 00A40 80B1C340 3C014140 */ lui $at, 0x4140 ## $at = 41400000
/* 00A44 80B1C344 44816000 */ mtc1 $at, $f12 ## $f12 = 12.00
/* 00A48 80B1C348 C4820164 */ lwc1 $f2, 0x0164($a0) ## 00000164
/* 00A4C 80B1C34C 27A30030 */ addiu $v1, $sp, 0x0030 ## $v1 = 00000000
/* 00A50 80B1C350 C4400000 */ lwc1 $f0, 0x0000($v0) ## FFFFFFF8
.L80B1C354:
/* 00A54 80B1C354 460C0180 */ add.s $f6, $f0, $f12
/* 00A58 80B1C358 4606103C */ c.lt.s $f2, $f6
/* 00A5C 80B1C35C 00000000 */ nop
/* 00A60 80B1C360 45020006 */ bc1fl .L80B1C37C
/* 00A64 80B1C364 24420004 */ addiu $v0, $v0, 0x0004 ## $v0 = FFFFFFFC
/* 00A68 80B1C368 4602003E */ c.le.s $f0, $f2
/* 00A6C 80B1C36C 00000000 */ nop
/* 00A70 80B1C370 45030005 */ bc1tl .L80B1C388
/* 00A74 80B1C374 27AA0030 */ addiu $t2, $sp, 0x0030 ## $t2 = 00000000
/* 00A78 80B1C378 24420004 */ addiu $v0, $v0, 0x0004 ## $v0 = 00000000
.L80B1C37C:
/* 00A7C 80B1C37C 5443FFF5 */ bnel $v0, $v1, .L80B1C354
/* 00A80 80B1C380 C4400000 */ lwc1 $f0, 0x0000($v0) ## 00000000
/* 00A84 80B1C384 27AA0030 */ addiu $t2, $sp, 0x0030 ## $t2 = 00000000
.L80B1C388:
/* 00A88 80B1C388 004A082B */ sltu $at, $v0, $t2
/* 00A8C 80B1C38C 54200004 */ bnel $at, $zero, .L80B1C3A0
/* 00A90 80B1C390 C4480000 */ lwc1 $f8, 0x0000($v0) ## 00000000
/* 00A94 80B1C394 1000000D */ beq $zero, $zero, .L80B1C3CC
/* 00A98 80B1C398 46007006 */ mov.s $f0, $f14
/* 00A9C 80B1C39C C4480000 */ lwc1 $f8, 0x0000($v0) ## 00000000
.L80B1C3A0:
/* 00AA0 80B1C3A0 3C0180B2 */ lui $at, %hi(D_80B1D638) ## $at = 80B20000
/* 00AA4 80B1C3A4 C430D638 */ lwc1 $f16, %lo(D_80B1D638)($at)
/* 00AA8 80B1C3A8 46081281 */ sub.s $f10, $f2, $f8
/* 00AAC 80B1C3AC 46105082 */ mul.s $f2, $f10, $f16
/* 00AB0 80B1C3B0 4600148D */ trunc.w.s $f18, $f2
/* 00AB4 80B1C3B4 44049000 */ mfc1 $a0, $f18
/* 00AB8 80B1C3B8 00000000 */ nop
/* 00ABC 80B1C3BC 00042400 */ sll $a0, $a0, 16
/* 00AC0 80B1C3C0 0C01DE1C */ jal Math_Sins
## sins?
/* 00AC4 80B1C3C4 00042403 */ sra $a0, $a0, 16
/* 00AC8 80B1C3C8 46000000 */ add.s $f0, $f0, $f0
.L80B1C3CC:
/* 00ACC 80B1C3CC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00AD0 80B1C3D0 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00AD4 80B1C3D4 03E00008 */ jr $ra
/* 00AD8 80B1C3D8 00000000 */ nop
@@ -1,99 +0,0 @@
glabel func_80B1C3DC
/* 00ADC 80B1C3DC 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 00AE0 80B1C3E0 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00AE4 80B1C3E4 AFB00020 */ sw $s0, 0x0020($sp)
/* 00AE8 80B1C3E8 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
/* 00AEC 80B1C3EC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00AF0 80B1C3F0 3C040001 */ lui $a0, 0x0001 ## $a0 = 00010000
/* 00AF4 80B1C3F4 05C10003 */ bgez $t6, .L80B1C404
/* 00AF8 80B1C3F8 00852021 */ addu $a0, $a0, $a1
/* 00AFC 80B1C3FC 1000004E */ beq $zero, $zero, .L80B1C538
/* 00B00 80B1C400 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L80B1C404:
/* 00B04 80B1C404 8C841E08 */ lw $a0, 0x1E08($a0) ## 00011E08
/* 00B08 80B1C408 3C088016 */ lui $t0, 0x8016 ## $t0 = 80160000
/* 00B0C 80B1C40C 860A0228 */ lh $t2, 0x0228($s0) ## 00000228
/* 00B10 80B1C410 8C830004 */ lw $v1, 0x0004($a0) ## 00010004
/* 00B14 80B1C414 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 00B18 80B1C418 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 00B1C 80B1C41C 00037900 */ sll $t7, $v1, 4
/* 00B20 80B1C420 000FC702 */ srl $t8, $t7, 28
/* 00B24 80B1C424 0018C880 */ sll $t9, $t8, 2
/* 00B28 80B1C428 01194021 */ addu $t0, $t0, $t9
/* 00B2C 80B1C42C 8D086FA8 */ lw $t0, 0x6FA8($t0) ## 80166FA8
/* 00B30 80B1C430 00614824 */ and $t1, $v1, $at
/* 00B34 80B1C434 000A5880 */ sll $t3, $t2, 2
/* 00B38 80B1C438 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00B3C 80B1C43C 016A5823 */ subu $t3, $t3, $t2
/* 00B40 80B1C440 01091021 */ addu $v0, $t0, $t1
/* 00B44 80B1C444 00411021 */ addu $v0, $v0, $at
/* 00B48 80B1C448 000B5840 */ sll $t3, $t3, 1
/* 00B4C 80B1C44C 004B1021 */ addu $v0, $v0, $t3
/* 00B50 80B1C450 844C0000 */ lh $t4, 0x0000($v0) ## 00000001
/* 00B54 80B1C454 844D0004 */ lh $t5, 0x0004($v0) ## 00000005
/* 00B58 80B1C458 C6080024 */ lwc1 $f8, 0x0024($s0) ## 00000024
/* 00B5C 80B1C45C 448C2000 */ mtc1 $t4, $f4 ## $f4 = 0.00
/* 00B60 80B1C460 448D5000 */ mtc1 $t5, $f10 ## $f10 = 0.00
/* 00B64 80B1C464 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
/* 00B68 80B1C468 468021A0 */ cvt.s.w $f6, $f4
/* 00B6C 80B1C46C AFA40034 */ sw $a0, 0x0034($sp)
/* 00B70 80B1C470 46805420 */ cvt.s.w $f16, $f10
/* 00B74 80B1C474 46083301 */ sub.s $f12, $f6, $f8
/* 00B78 80B1C478 46128381 */ sub.s $f14, $f16, $f18
/* 00B7C 80B1C47C E7AC002C */ swc1 $f12, 0x002C($sp)
/* 00B80 80B1C480 0C03F494 */ jal Math_atan2f
/* 00B84 80B1C484 E7AE0028 */ swc1 $f14, 0x0028($sp)
/* 00B88 80B1C488 3C0180B2 */ lui $at, %hi(D_80B1D63C) ## $at = 80B20000
/* 00B8C 80B1C48C C424D63C */ lwc1 $f4, %lo(D_80B1D63C)($at)
/* 00B90 80B1C490 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
/* 00B94 80B1C494 AFAF0010 */ sw $t7, 0x0010($sp)
/* 00B98 80B1C498 46040182 */ mul.s $f6, $f0, $f4
/* 00B9C 80B1C49C 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 00BA0 80B1C4A0 2406000A */ addiu $a2, $zero, 0x000A ## $a2 = 0000000A
/* 00BA4 80B1C4A4 240703E8 */ addiu $a3, $zero, 0x03E8 ## $a3 = 000003E8
/* 00BA8 80B1C4A8 4600320D */ trunc.w.s $f8, $f6
/* 00BAC 80B1C4AC 44054000 */ mfc1 $a1, $f8
/* 00BB0 80B1C4B0 00000000 */ nop
/* 00BB4 80B1C4B4 00052C00 */ sll $a1, $a1, 16
/* 00BB8 80B1C4B8 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00BBC 80B1C4BC 00052C03 */ sra $a1, $a1, 16
/* 00BC0 80B1C4C0 C7AC002C */ lwc1 $f12, 0x002C($sp)
/* 00BC4 80B1C4C4 C7AE0028 */ lwc1 $f14, 0x0028($sp)
/* 00BC8 80B1C4C8 8A1900B4 */ lwl $t9, 0x00B4($s0) ## 000000B4
/* 00BCC 80B1C4CC 460C6282 */ mul.s $f10, $f12, $f12
/* 00BD0 80B1C4D0 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00BD4 80B1C4D4 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00
/* 00BD8 80B1C4D8 460E7402 */ mul.s $f16, $f14, $f14
/* 00BDC 80B1C4DC 9A1900B7 */ lwr $t9, 0x00B7($s0) ## 000000B7
/* 00BE0 80B1C4E0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
/* 00BE4 80B1C4E4 AA190030 */ swl $t9, 0x0030($s0) ## 00000030
/* 00BE8 80B1C4E8 BA190033 */ swr $t9, 0x0033($s0) ## 00000033
/* 00BEC 80B1C4EC 961900B8 */ lhu $t9, 0x00B8($s0) ## 000000B8
/* 00BF0 80B1C4F0 46105480 */ add.s $f18, $f10, $f16
/* 00BF4 80B1C4F4 A6190034 */ sh $t9, 0x0034($s0) ## 00000034
/* 00BF8 80B1C4F8 4604903C */ c.lt.s $f18, $f4
/* 00BFC 80B1C4FC 00000000 */ nop
/* 00C00 80B1C500 4500000D */ bc1f .L80B1C538
/* 00C04 80B1C504 00000000 */ nop
/* 00C08 80B1C508 86080228 */ lh $t0, 0x0228($s0) ## 00000228
/* 00C0C 80B1C50C 25090001 */ addiu $t1, $t0, 0x0001 ## $t1 = 00000001
/* 00C10 80B1C510 A6090228 */ sh $t1, 0x0228($s0) ## 00000228
/* 00C14 80B1C514 8FAB0034 */ lw $t3, 0x0034($sp)
/* 00C18 80B1C518 860A0228 */ lh $t2, 0x0228($s0) ## 00000228
/* 00C1C 80B1C51C 916C0000 */ lbu $t4, 0x0000($t3) ## 00000000
/* 00C20 80B1C520 014C082A */ slt $at, $t2, $t4
/* 00C24 80B1C524 14200002 */ bne $at, $zero, .L80B1C530
/* 00C28 80B1C528 00000000 */ nop
/* 00C2C 80B1C52C A6000228 */ sh $zero, 0x0228($s0) ## 00000228
.L80B1C530:
/* 00C30 80B1C530 10000001 */ beq $zero, $zero, .L80B1C538
/* 00C34 80B1C534 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80B1C538:
/* 00C38 80B1C538 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00C3C 80B1C53C 8FB00020 */ lw $s0, 0x0020($sp)
/* 00C40 80B1C540 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 00C44 80B1C544 03E00008 */ jr $ra
/* 00C48 80B1C548 00000000 */ nop
@@ -1,26 +0,0 @@
glabel func_80B1C54C
/* 00C4C 80B1C54C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00C50 80B1C550 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00C54 80B1C554 AFA5001C */ sw $a1, 0x001C($sp)
/* 00C58 80B1C558 0C01B0D8 */ jal func_8006C360
/* 00C5C 80B1C55C 2405000E */ addiu $a1, $zero, 0x000E ## $a1 = 0000000E
/* 00C60 80B1C560 10400003 */ beq $v0, $zero, .L80B1C570
/* 00C64 80B1C564 3043FFFF */ andi $v1, $v0, 0xFFFF ## $v1 = 00000000
/* 00C68 80B1C568 10000009 */ beq $zero, $zero, .L80B1C590
/* 00C6C 80B1C56C 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
.L80B1C570:
/* 00C70 80B1C570 3C0E8016 */ lui $t6, 0x8016 ## $t6 = 80160000
/* 00C74 80B1C574 95CEF572 */ lhu $t6, -0x0A8E($t6) ## 8015F572
/* 00C78 80B1C578 24025018 */ addiu $v0, $zero, 0x5018 ## $v0 = 00005018
/* 00C7C 80B1C57C 31CF0200 */ andi $t7, $t6, 0x0200 ## $t7 = 00000000
/* 00C80 80B1C580 11E00003 */ beq $t7, $zero, .L80B1C590
/* 00C84 80B1C584 00000000 */ nop
/* 00C88 80B1C588 10000001 */ beq $zero, $zero, .L80B1C590
/* 00C8C 80B1C58C 24025019 */ addiu $v0, $zero, 0x5019 ## $v0 = 00005019
.L80B1C590:
/* 00C90 80B1C590 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00C94 80B1C594 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00C98 80B1C598 03E00008 */ jr $ra
/* 00C9C 80B1C59C 00000000 */ nop
@@ -1,117 +0,0 @@
glabel func_80B1C5A0
/* 00CA0 80B1C5A0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00CA4 80B1C5A4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00CA8 80B1C5A8 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 00CAC 80B1C5AC 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 00CB0 80B1C5B0 AFAE001C */ sw $t6, 0x001C($sp)
/* 00CB4 80B1C5B4 AFA70020 */ sw $a3, 0x0020($sp)
/* 00CB8 80B1C5B8 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
/* 00CBC 80B1C5BC 0C042F6F */ jal func_8010BDBC
/* 00CC0 80B1C5C0 AFA50024 */ sw $a1, 0x0024($sp)
/* 00CC4 80B1C5C4 2C41000A */ sltiu $at, $v0, 0x000A
/* 00CC8 80B1C5C8 8FA60024 */ lw $a2, 0x0024($sp)
/* 00CCC 80B1C5CC 10200055 */ beq $at, $zero, .L80B1C724
/* 00CD0 80B1C5D0 8FA70020 */ lw $a3, 0x0020($sp)
/* 00CD4 80B1C5D4 00027880 */ sll $t7, $v0, 2
/* 00CD8 80B1C5D8 3C0180B2 */ lui $at, %hi(jtbl_80B1D640) ## $at = 80B20000
/* 00CDC 80B1C5DC 002F0821 */ addu $at, $at, $t7
/* 00CE0 80B1C5E0 8C2FD640 */ lw $t7, %lo(jtbl_80B1D640)($at)
/* 00CE4 80B1C5E4 01E00008 */ jr $t7
/* 00CE8 80B1C5E8 00000000 */ nop
glabel L80B1C5EC
/* 00CEC 80B1C5EC 94D8010E */ lhu $t8, 0x010E($a2) ## 0000010E
/* 00CF0 80B1C5F0 24015028 */ addiu $at, $zero, 0x5028 ## $at = 00005028
/* 00CF4 80B1C5F4 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000
/* 00CF8 80B1C5F8 17010004 */ bne $t8, $at, .L80B1C60C
/* 00CFC 80B1C5FC 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660
/* 00D00 80B1C600 94790F12 */ lhu $t9, 0x0F12($v1) ## 8015F572
/* 00D04 80B1C604 37280100 */ ori $t0, $t9, 0x0100 ## $t0 = 00000100
/* 00D08 80B1C608 A4680F12 */ sh $t0, 0x0F12($v1) ## 8015F572
.L80B1C60C:
/* 00D0C 80B1C60C 10000045 */ beq $zero, $zero, .L80B1C724
/* 00D10 80B1C610 AFA0001C */ sw $zero, 0x001C($sp)
glabel L80B1C614
/* 00D14 80B1C614 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00D18 80B1C618 AFA60024 */ sw $a2, 0x0024($sp)
/* 00D1C 80B1C61C 0C041AF2 */ jal func_80106BC8
/* 00D20 80B1C620 AFA70020 */ sw $a3, 0x0020($sp)
/* 00D24 80B1C624 8FA60024 */ lw $a2, 0x0024($sp)
/* 00D28 80B1C628 1040003E */ beq $v0, $zero, .L80B1C724
/* 00D2C 80B1C62C 8FA70020 */ lw $a3, 0x0020($sp)
/* 00D30 80B1C630 94C2010E */ lhu $v0, 0x010E($a2) ## 0000010E
/* 00D34 80B1C634 24015018 */ addiu $at, $zero, 0x5018 ## $at = 00005018
/* 00D38 80B1C638 3C090001 */ lui $t1, 0x0001 ## $t1 = 00010000
/* 00D3C 80B1C63C 10410004 */ beq $v0, $at, .L80B1C650
/* 00D40 80B1C640 01274821 */ addu $t1, $t1, $a3
/* 00D44 80B1C644 24015019 */ addiu $at, $zero, 0x5019 ## $at = 00005019
/* 00D48 80B1C648 54410037 */ bnel $v0, $at, .L80B1C728
/* 00D4C 80B1C64C 87A2001E */ lh $v0, 0x001E($sp)
.L80B1C650:
/* 00D50 80B1C650 912904BD */ lbu $t1, 0x04BD($t1) ## 000104BD
/* 00D54 80B1C654 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00D58 80B1C658 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000
/* 00D5C 80B1C65C 15210004 */ bne $t1, $at, .L80B1C670
/* 00D60 80B1C660 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00D64 80B1C664 240A0084 */ addiu $t2, $zero, 0x0084 ## $t2 = 00000084
/* 00D68 80B1C668 10000016 */ beq $zero, $zero, .L80B1C6C4
/* 00D6C 80B1C66C A4CA010E */ sh $t2, 0x010E($a2) ## 0000010E
.L80B1C670:
/* 00D70 80B1C670 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660
/* 00D74 80B1C674 846B0034 */ lh $t3, 0x0034($v1) ## 8015E694
/* 00D78 80B1C678 240C0085 */ addiu $t4, $zero, 0x0085 ## $t4 = 00000085
/* 00D7C 80B1C67C 240D0037 */ addiu $t5, $zero, 0x0037 ## $t5 = 00000037
/* 00D80 80B1C680 2961000A */ slti $at, $t3, 0x000A
/* 00D84 80B1C684 50200004 */ beql $at, $zero, .L80B1C698
/* 00D88 80B1C688 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00D8C 80B1C68C 1000000D */ beq $zero, $zero, .L80B1C6C4
/* 00D90 80B1C690 A4CC010E */ sh $t4, 0x010E($a2) ## 0000010E
/* 00D94 80B1C694 3C010001 */ lui $at, 0x0001 ## $at = 00010000
.L80B1C698:
/* 00D98 80B1C698 00270821 */ addu $at, $at, $a3
/* 00D9C 80B1C69C A02D03DC */ sb $t5, 0x03DC($at) ## 000103DC
/* 00DA0 80B1C6A0 0C021CC3 */ jal Rupees_ChangeBy
/* 00DA4 80B1C6A4 2404FFF6 */ addiu $a0, $zero, 0xFFF6 ## $a0 = FFFFFFF6
/* 00DA8 80B1C6A8 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000
/* 00DAC 80B1C6AC 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660
/* 00DB0 80B1C6B0 946E0F12 */ lhu $t6, 0x0F12($v1) ## 8015F572
/* 00DB4 80B1C6B4 24020002 */ addiu $v0, $zero, 0x0002 ## $v0 = 00000002
/* 00DB8 80B1C6B8 35CF0200 */ ori $t7, $t6, 0x0200 ## $t7 = 00000200
/* 00DBC 80B1C6BC 1000001A */ beq $zero, $zero, .L80B1C728
/* 00DC0 80B1C6C0 A46F0F12 */ sh $t7, 0x0F12($v1) ## 8015F572
.L80B1C6C4:
/* 00DC4 80B1C6C4 0C042DC8 */ jal func_8010B720
/* 00DC8 80B1C6C8 94C5010E */ lhu $a1, 0x010E($a2) ## 0000010E
/* 00DCC 80B1C6CC 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000
/* 00DD0 80B1C6D0 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660
/* 00DD4 80B1C6D4 94780F12 */ lhu $t8, 0x0F12($v1) ## 8015F572
/* 00DD8 80B1C6D8 37190200 */ ori $t9, $t8, 0x0200 ## $t9 = 00000200
/* 00DDC 80B1C6DC 10000011 */ beq $zero, $zero, .L80B1C724
/* 00DE0 80B1C6E0 A4790F12 */ sh $t9, 0x0F12($v1) ## 8015F572
glabel L80B1C6E4
/* 00DE4 80B1C6E4 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00DE8 80B1C6E8 AFA60024 */ sw $a2, 0x0024($sp)
/* 00DEC 80B1C6EC 0C041AF2 */ jal func_80106BC8
/* 00DF0 80B1C6F0 AFA70020 */ sw $a3, 0x0020($sp)
/* 00DF4 80B1C6F4 8FA60024 */ lw $a2, 0x0024($sp)
/* 00DF8 80B1C6F8 1040000A */ beq $v0, $zero, .L80B1C724
/* 00DFC 80B1C6FC 8FA70020 */ lw $a3, 0x0020($sp)
/* 00E00 80B1C700 94C2010E */ lhu $v0, 0x010E($a2) ## 0000010E
/* 00E04 80B1C704 24010084 */ addiu $at, $zero, 0x0084 ## $at = 00000084
/* 00E08 80B1C708 10410003 */ beq $v0, $at, .L80B1C718
/* 00E0C 80B1C70C 24010085 */ addiu $at, $zero, 0x0085 ## $at = 00000085
/* 00E10 80B1C710 54410005 */ bnel $v0, $at, .L80B1C728
/* 00E14 80B1C714 87A2001E */ lh $v0, 0x001E($sp)
.L80B1C718:
/* 00E18 80B1C718 0C041B33 */ jal func_80106CCC
/* 00E1C 80B1C71C 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00E20 80B1C720 AFA0001C */ sw $zero, 0x001C($sp)
glabel L80B1C724
.L80B1C724:
/* 00E24 80B1C724 87A2001E */ lh $v0, 0x001E($sp)
.L80B1C728:
/* 00E28 80B1C728 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00E2C 80B1C72C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00E30 80B1C730 03E00008 */ jr $ra
/* 00E34 80B1C734 00000000 */ nop
@@ -1,131 +0,0 @@
glabel func_80B1C738
/* 00E38 80B1C738 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00E3C 80B1C73C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00E40 80B1C740 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00E44 80B1C744 AFA40018 */ sw $a0, 0x0018($sp)
/* 00E48 80B1C748 3C0180B2 */ lui $at, %hi(D_80B1D668) ## $at = 80B20000
/* 00E4C 80B1C74C C424D668 */ lwc1 $f4, %lo(D_80B1D668)($at)
/* 00E50 80B1C750 8FA50018 */ lw $a1, 0x0018($sp)
/* 00E54 80B1C754 3C0180B2 */ lui $at, %hi(D_80B1D670) ## $at = 80B20000
/* 00E58 80B1C758 4604003C */ c.lt.s $f0, $f4
/* 00E5C 80B1C75C 00000000 */ nop
/* 00E60 80B1C760 45000003 */ bc1f .L80B1C770
/* 00E64 80B1C764 00000000 */ nop
/* 00E68 80B1C768 10000012 */ beq $zero, $zero, .L80B1C7B4
/* 00E6C 80B1C76C 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000
.L80B1C770:
/* 00E70 80B1C770 D426D670 */ ldc1 $f6, %lo(D_80B1D670)($at)
/* 00E74 80B1C774 460000A1 */ cvt.d.s $f2, $f0
/* 00E78 80B1C778 3C0180B2 */ lui $at, %hi(D_80B1D678) ## $at = 80B20000
/* 00E7C 80B1C77C 4626103C */ c.lt.d $f2, $f6
/* 00E80 80B1C780 00000000 */ nop
/* 00E84 80B1C784 45000003 */ bc1f .L80B1C794
/* 00E88 80B1C788 00000000 */ nop
/* 00E8C 80B1C78C 10000009 */ beq $zero, $zero, .L80B1C7B4
/* 00E90 80B1C790 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
.L80B1C794:
/* 00E94 80B1C794 D428D678 */ ldc1 $f8, %lo(D_80B1D678)($at)
/* 00E98 80B1C798 24040003 */ addiu $a0, $zero, 0x0003 ## $a0 = 00000003
/* 00E9C 80B1C79C 4628103C */ c.lt.d $f2, $f8
/* 00EA0 80B1C7A0 00000000 */ nop
/* 00EA4 80B1C7A4 45000003 */ bc1f .L80B1C7B4
/* 00EA8 80B1C7A8 00000000 */ nop
/* 00EAC 80B1C7AC 10000001 */ beq $zero, $zero, .L80B1C7B4
/* 00EB0 80B1C7B0 24040002 */ addiu $a0, $zero, 0x0002 ## $a0 = 00000002
.L80B1C7B4:
/* 00EB4 80B1C7B4 10800009 */ beq $a0, $zero, .L80B1C7DC
/* 00EB8 80B1C7B8 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00EBC 80B1C7BC 1081000E */ beq $a0, $at, .L80B1C7F8
/* 00EC0 80B1C7C0 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00EC4 80B1C7C4 10810015 */ beq $a0, $at, .L80B1C81C
/* 00EC8 80B1C7C8 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 00ECC 80B1C7CC 5081001D */ beql $a0, $at, .L80B1C844
/* 00ED0 80B1C7D0 90A3020C */ lbu $v1, 0x020C($a1) ## 0000020C
/* 00ED4 80B1C7D4 10000021 */ beq $zero, $zero, .L80B1C85C
/* 00ED8 80B1C7D8 90A30209 */ lbu $v1, 0x0209($a1) ## 00000209
.L80B1C7DC:
/* 00EDC 80B1C7DC 90A30209 */ lbu $v1, 0x0209($a1) ## 00000209
/* 00EE0 80B1C7E0 00801025 */ or $v0, $a0, $zero ## $v0 = 00000002
/* 00EE4 80B1C7E4 28610008 */ slti $at, $v1, 0x0008
/* 00EE8 80B1C7E8 1020001C */ beq $at, $zero, .L80B1C85C
/* 00EEC 80B1C7EC 246E0001 */ addiu $t6, $v1, 0x0001 ## $t6 = 00000001
/* 00EF0 80B1C7F0 1000003B */ beq $zero, $zero, .L80B1C8E0
/* 00EF4 80B1C7F4 A0AE0209 */ sb $t6, 0x0209($a1) ## 00000209
.L80B1C7F8:
/* 00EF8 80B1C7F8 90A3020A */ lbu $v1, 0x020A($a1) ## 0000020A
/* 00EFC 80B1C7FC 00801025 */ or $v0, $a0, $zero ## $v0 = 00000002
/* 00F00 80B1C800 28610004 */ slti $at, $v1, 0x0004
/* 00F04 80B1C804 10200003 */ beq $at, $zero, .L80B1C814
/* 00F08 80B1C808 246F0001 */ addiu $t7, $v1, 0x0001 ## $t7 = 00000001
/* 00F0C 80B1C80C 10000034 */ beq $zero, $zero, .L80B1C8E0
/* 00F10 80B1C810 A0AF020A */ sb $t7, 0x020A($a1) ## 0000020A
.L80B1C814:
/* 00F14 80B1C814 10000011 */ beq $zero, $zero, .L80B1C85C
/* 00F18 80B1C818 90A30209 */ lbu $v1, 0x0209($a1) ## 00000209
.L80B1C81C:
/* 00F1C 80B1C81C 90A3020B */ lbu $v1, 0x020B($a1) ## 0000020B
/* 00F20 80B1C820 00801025 */ or $v0, $a0, $zero ## $v0 = 00000002
/* 00F24 80B1C824 28610002 */ slti $at, $v1, 0x0002
/* 00F28 80B1C828 10200003 */ beq $at, $zero, .L80B1C838
/* 00F2C 80B1C82C 24780001 */ addiu $t8, $v1, 0x0001 ## $t8 = 00000001
/* 00F30 80B1C830 1000002B */ beq $zero, $zero, .L80B1C8E0
/* 00F34 80B1C834 A0B8020B */ sb $t8, 0x020B($a1) ## 0000020B
.L80B1C838:
/* 00F38 80B1C838 10000008 */ beq $zero, $zero, .L80B1C85C
/* 00F3C 80B1C83C 90A30209 */ lbu $v1, 0x0209($a1) ## 00000209
/* 00F40 80B1C840 90A3020C */ lbu $v1, 0x020C($a1) ## 0000020C
.L80B1C844:
/* 00F44 80B1C844 00801025 */ or $v0, $a0, $zero ## $v0 = 00000002
/* 00F48 80B1C848 1C600003 */ bgtz $v1, .L80B1C858
/* 00F4C 80B1C84C 24790001 */ addiu $t9, $v1, 0x0001 ## $t9 = 00000001
/* 00F50 80B1C850 10000023 */ beq $zero, $zero, .L80B1C8E0
/* 00F54 80B1C854 A0B9020C */ sb $t9, 0x020C($a1) ## 0000020C
.L80B1C858:
/* 00F58 80B1C858 90A30209 */ lbu $v1, 0x0209($a1) ## 00000209
.L80B1C85C:
/* 00F5C 80B1C85C 28610008 */ slti $at, $v1, 0x0008
/* 00F60 80B1C860 10200004 */ beq $at, $zero, .L80B1C874
/* 00F64 80B1C864 24680001 */ addiu $t0, $v1, 0x0001 ## $t0 = 00000001
/* 00F68 80B1C868 A0A80209 */ sb $t0, 0x0209($a1) ## 00000209
/* 00F6C 80B1C86C 1000001B */ beq $zero, $zero, .L80B1C8DC
/* 00F70 80B1C870 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000
.L80B1C874:
/* 00F74 80B1C874 90A3020A */ lbu $v1, 0x020A($a1) ## 0000020A
/* 00F78 80B1C878 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 00F7C 80B1C87C 28610004 */ slti $at, $v1, 0x0004
/* 00F80 80B1C880 10200003 */ beq $at, $zero, .L80B1C890
/* 00F84 80B1C884 24690001 */ addiu $t1, $v1, 0x0001 ## $t1 = 00000001
/* 00F88 80B1C888 10000014 */ beq $zero, $zero, .L80B1C8DC
/* 00F8C 80B1C88C A0A9020A */ sb $t1, 0x020A($a1) ## 0000020A
.L80B1C890:
/* 00F90 80B1C890 90A3020B */ lbu $v1, 0x020B($a1) ## 0000020B
/* 00F94 80B1C894 24040002 */ addiu $a0, $zero, 0x0002 ## $a0 = 00000002
/* 00F98 80B1C898 28610002 */ slti $at, $v1, 0x0002
/* 00F9C 80B1C89C 10200003 */ beq $at, $zero, .L80B1C8AC
/* 00FA0 80B1C8A0 246A0001 */ addiu $t2, $v1, 0x0001 ## $t2 = 00000001
/* 00FA4 80B1C8A4 1000000D */ beq $zero, $zero, .L80B1C8DC
/* 00FA8 80B1C8A8 A0AA020B */ sb $t2, 0x020B($a1) ## 0000020B
.L80B1C8AC:
/* 00FAC 80B1C8AC 90A3020C */ lbu $v1, 0x020C($a1) ## 0000020C
/* 00FB0 80B1C8B0 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000
/* 00FB4 80B1C8B4 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
/* 00FB8 80B1C8B8 1C600004 */ bgtz $v1, .L80B1C8CC
/* 00FBC 80B1C8BC 246B0001 */ addiu $t3, $v1, 0x0001 ## $t3 = 00000001
/* 00FC0 80B1C8C0 A0AB020C */ sb $t3, 0x020C($a1) ## 0000020C
/* 00FC4 80B1C8C4 10000005 */ beq $zero, $zero, .L80B1C8DC
/* 00FC8 80B1C8C8 24040003 */ addiu $a0, $zero, 0x0003 ## $a0 = 00000003
.L80B1C8CC:
/* 00FCC 80B1C8CC A0AC0209 */ sb $t4, 0x0209($a1) ## 00000209
/* 00FD0 80B1C8D0 A0A0020A */ sb $zero, 0x020A($a1) ## 0000020A
/* 00FD4 80B1C8D4 A0A0020B */ sb $zero, 0x020B($a1) ## 0000020B
/* 00FD8 80B1C8D8 A0A0020C */ sb $zero, 0x020C($a1) ## 0000020C
.L80B1C8DC:
/* 00FDC 80B1C8DC 00801025 */ or $v0, $a0, $zero ## $v0 = 00000003
.L80B1C8E0:
/* 00FE0 80B1C8E0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00FE4 80B1C8E4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00FE8 80B1C8E8 03E00008 */ jr $ra
/* 00FEC 80B1C8EC 00000000 */ nop
@@ -1,99 +0,0 @@
glabel func_80B1C8F0
/* 00FF0 80B1C8F0 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
/* 00FF4 80B1C8F4 3C0F80B2 */ lui $t7, %hi(D_80B1D548) ## $t7 = 80B20000
/* 00FF8 80B1C8F8 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00FFC 80B1C8FC AFB00020 */ sw $s0, 0x0020($sp)
/* 01000 80B1C900 25EFD548 */ addiu $t7, $t7, %lo(D_80B1D548) ## $t7 = 80B1D548
/* 01004 80B1C904 8DF90000 */ lw $t9, 0x0000($t7) ## 80B1D548
/* 01008 80B1C908 27AE0044 */ addiu $t6, $sp, 0x0044 ## $t6 = FFFFFFF4
/* 0100C 80B1C90C 8DF80004 */ lw $t8, 0x0004($t7) ## 80B1D54C
/* 01010 80B1C910 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
/* 01014 80B1C914 8DF90008 */ lw $t9, 0x0008($t7) ## 80B1D550
/* 01018 80B1C918 3C0980B2 */ lui $t1, %hi(D_80B1D554) ## $t1 = 80B20000
/* 0101C 80B1C91C 2529D554 */ addiu $t1, $t1, %lo(D_80B1D554) ## $t1 = 80B1D554
/* 01020 80B1C920 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
/* 01024 80B1C924 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
/* 01028 80B1C928 8D2B0000 */ lw $t3, 0x0000($t1) ## 80B1D554
/* 0102C 80B1C92C 27A80038 */ addiu $t0, $sp, 0x0038 ## $t0 = FFFFFFE8
/* 01030 80B1C930 8D2A0004 */ lw $t2, 0x0004($t1) ## 80B1D558
/* 01034 80B1C934 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE8
/* 01038 80B1C938 8D2B0008 */ lw $t3, 0x0008($t1) ## 80B1D55C
/* 0103C 80B1C93C 3C0D80B2 */ lui $t5, %hi(D_80B1D560) ## $t5 = 80B20000
/* 01040 80B1C940 25ADD560 */ addiu $t5, $t5, %lo(D_80B1D560) ## $t5 = 80B1D560
/* 01044 80B1C944 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFEC
/* 01048 80B1C948 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFF0
/* 0104C 80B1C94C 8DAF0000 */ lw $t7, 0x0000($t5) ## 80B1D560
/* 01050 80B1C950 27AC002C */ addiu $t4, $sp, 0x002C ## $t4 = FFFFFFDC
/* 01054 80B1C954 8DAE0004 */ lw $t6, 0x0004($t5) ## 80B1D564
/* 01058 80B1C958 AD8F0000 */ sw $t7, 0x0000($t4) ## FFFFFFDC
/* 0105C 80B1C95C 8DAF0008 */ lw $t7, 0x0008($t5) ## 80B1D568
/* 01060 80B1C960 3C014200 */ lui $at, 0x4200 ## $at = 42000000
/* 01064 80B1C964 AD8E0004 */ sw $t6, 0x0004($t4) ## FFFFFFE0
/* 01068 80B1C968 AD8F0008 */ sw $t7, 0x0008($t4) ## FFFFFFE4
/* 0106C 80B1C96C C4800164 */ lwc1 $f0, 0x0164($a0) ## 00000164
/* 01070 80B1C970 44812000 */ mtc1 $at, $f4 ## $f4 = 32.00
/* 01074 80B1C974 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01078 80B1C978 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 0107C 80B1C97C 4600203E */ c.le.s $f4, $f0
/* 01080 80B1C980 00000000 */ nop
/* 01084 80B1C984 45020032 */ bc1fl .L80B1CA50
/* 01088 80B1C988 8FBF0024 */ lw $ra, 0x0024($sp)
/* 0108C 80B1C98C 44813000 */ mtc1 $at, $f6 ## $f6 = 40.00
/* 01090 80B1C990 00000000 */ nop
/* 01094 80B1C994 4606003C */ c.lt.s $f0, $f6
/* 01098 80B1C998 00000000 */ nop
/* 0109C 80B1C99C 4502002C */ bc1fl .L80B1CA50
/* 010A0 80B1C9A0 8FBF0024 */ lw $ra, 0x0024($sp)
/* 010A4 80B1C9A4 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 010A8 80B1C9A8 00000000 */ nop
/* 010AC 80B1C9AC 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 010B0 80B1C9B0 44814000 */ mtc1 $at, $f8 ## $f8 = 0.50
/* 010B4 80B1C9B4 3C014140 */ lui $at, 0x4140 ## $at = 41400000
/* 010B8 80B1C9B8 44818000 */ mtc1 $at, $f16 ## $f16 = 12.00
/* 010BC 80B1C9BC 46080281 */ sub.s $f10, $f0, $f8
/* 010C0 80B1C9C0 C6040304 */ lwc1 $f4, 0x0304($s0) ## 00000304
/* 010C4 80B1C9C4 46105482 */ mul.s $f18, $f10, $f16
/* 010C8 80B1C9C8 46049180 */ add.s $f6, $f18, $f4
/* 010CC 80B1C9CC 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 010D0 80B1C9D0 E7A60044 */ swc1 $f6, 0x0044($sp)
/* 010D4 80B1C9D4 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 010D8 80B1C9D8 44814000 */ mtc1 $at, $f8 ## $f8 = 0.50
/* 010DC 80B1C9DC 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 010E0 80B1C9E0 44818000 */ mtc1 $at, $f16 ## $f16 = 8.00
/* 010E4 80B1C9E4 46080281 */ sub.s $f10, $f0, $f8
/* 010E8 80B1C9E8 C6040308 */ lwc1 $f4, 0x0308($s0) ## 00000308
/* 010EC 80B1C9EC 46105482 */ mul.s $f18, $f10, $f16
/* 010F0 80B1C9F0 46049180 */ add.s $f6, $f18, $f4
/* 010F4 80B1C9F4 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 010F8 80B1C9F8 E7A60048 */ swc1 $f6, 0x0048($sp)
/* 010FC 80B1C9FC 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 01100 80B1CA00 44814000 */ mtc1 $at, $f8 ## $f8 = 0.50
/* 01104 80B1CA04 3C014140 */ lui $at, 0x4140 ## $at = 41400000
/* 01108 80B1CA08 44818000 */ mtc1 $at, $f16 ## $f16 = 12.00
/* 0110C 80B1CA0C 46080281 */ sub.s $f10, $f0, $f8
/* 01110 80B1CA10 C604030C */ lwc1 $f4, 0x030C($s0) ## 0000030C
/* 01114 80B1CA14 3C0180B2 */ lui $at, %hi(D_80B1D680) ## $at = 80B20000
/* 01118 80B1CA18 C428D680 */ lwc1 $f8, %lo(D_80B1D680)($at)
/* 0111C 80B1CA1C 46105482 */ mul.s $f18, $f10, $f16
/* 01120 80B1CA20 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 01124 80B1CA24 3C073E4C */ lui $a3, 0x3E4C ## $a3 = 3E4C0000
/* 01128 80B1CA28 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3E4CCCCD
/* 0112C 80B1CA2C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01130 80B1CA30 27A50044 */ addiu $a1, $sp, 0x0044 ## $a1 = FFFFFFF4
/* 01134 80B1CA34 2406000C */ addiu $a2, $zero, 0x000C ## $a2 = 0000000C
/* 01138 80B1CA38 46049180 */ add.s $f6, $f18, $f4
/* 0113C 80B1CA3C E7A80010 */ swc1 $f8, 0x0010($sp)
/* 01140 80B1CA40 E7AA0014 */ swc1 $f10, 0x0014($sp)
/* 01144 80B1CA44 0C2C6F77 */ jal func_80B1BDDC
/* 01148 80B1CA48 E7A6004C */ swc1 $f6, 0x004C($sp)
/* 0114C 80B1CA4C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80B1CA50:
/* 01150 80B1CA50 8FB00020 */ lw $s0, 0x0020($sp)
/* 01154 80B1CA54 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
/* 01158 80B1CA58 03E00008 */ jr $ra
/* 0115C 80B1CA5C 00000000 */ nop
@@ -1,152 +0,0 @@
glabel func_80B1CC04
/* 01304 80B1CC04 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 01308 80B1CC08 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0130C 80B1CC0C AFB00020 */ sw $s0, 0x0020($sp)
/* 01310 80B1CC10 AFA50034 */ sw $a1, 0x0034($sp)
/* 01314 80B1CC14 848201E0 */ lh $v0, 0x01E0($a0) ## 000001E0
/* 01318 80B1CC18 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0131C 80B1CC1C 10400028 */ beq $v0, $zero, .L80B1CCC0
/* 01320 80B1CC20 00000000 */ nop
/* 01324 80B1CC24 848300B6 */ lh $v1, 0x00B6($a0) ## 000000B6
/* 01328 80B1CC28 848E021E */ lh $t6, 0x021E($a0) ## 0000021E
/* 0132C 80B1CC2C 848F008A */ lh $t7, 0x008A($a0) ## 0000008A
/* 01330 80B1CC30 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 01334 80B1CC34 006E1823 */ subu $v1, $v1, $t6
/* 01338 80B1CC38 00031C00 */ sll $v1, $v1, 16
/* 0133C 80B1CC3C 00031C03 */ sra $v1, $v1, 16
/* 01340 80B1CC40 01E31823 */ subu $v1, $t7, $v1
/* 01344 80B1CC44 00031C00 */ sll $v1, $v1, 16
/* 01348 80B1CC48 14410008 */ bne $v0, $at, .L80B1CC6C
/* 0134C 80B1CC4C 00031C03 */ sra $v1, $v1, 16
/* 01350 80B1CC50 0C2C6FE3 */ jal func_80B1BF8C
/* 01354 80B1CC54 00000000 */ nop
/* 01358 80B1CC58 3C1880B2 */ lui $t8, %hi(func_80B1CEF8) ## $t8 = 80B20000
/* 0135C 80B1CC5C 2718CEF8 */ addiu $t8, $t8, %lo(func_80B1CEF8) ## $t8 = 80B1CEF8
/* 01360 80B1CC60 A60001E0 */ sh $zero, 0x01E0($s0) ## 000001E0
/* 01364 80B1CC64 1000006B */ beq $zero, $zero, .L80B1CE14
/* 01368 80B1CC68 AE180190 */ sw $t8, 0x0190($s0) ## 00000190
.L80B1CC6C:
/* 0136C 80B1CC6C 861901D4 */ lh $t9, 0x01D4($s0) ## 000001D4
/* 01370 80B1CC70 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
/* 01374 80B1CC74 44814000 */ mtc1 $at, $f8 ## $f8 = 30.00
/* 01378 80B1CC78 44992000 */ mtc1 $t9, $f4 ## $f4 = 0.00
/* 0137C 80B1CC7C 3C0880B2 */ lui $t0, %hi(func_80B1C54C) ## $t0 = 80B20000
/* 01380 80B1CC80 3C0980B2 */ lui $t1, %hi(func_80B1C5A0) ## $t1 = 80B20000
/* 01384 80B1CC84 468021A0 */ cvt.s.w $f6, $f4
/* 01388 80B1CC88 2529C5A0 */ addiu $t1, $t1, %lo(func_80B1C5A0) ## $t1 = 80B1C5A0
/* 0138C 80B1CC8C 2508C54C */ addiu $t0, $t0, %lo(func_80B1C54C) ## $t0 = 80B1C54C
/* 01390 80B1CC90 AFA80010 */ sw $t0, 0x0010($sp)
/* 01394 80B1CC94 AFA90014 */ sw $t1, 0x0014($sp)
/* 01398 80B1CC98 A7A3002E */ sh $v1, 0x002E($sp)
/* 0139C 80B1CC9C 46083280 */ add.s $f10, $f6, $f8
/* 013A0 80B1CCA0 8FA40034 */ lw $a0, 0x0034($sp)
/* 013A4 80B1CCA4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 013A8 80B1CCA8 260601E0 */ addiu $a2, $s0, 0x01E0 ## $a2 = 000001E0
/* 013AC 80B1CCAC 44075000 */ mfc1 $a3, $f10
/* 013B0 80B1CCB0 0C00D0F3 */ jal func_800343CC
/* 013B4 80B1CCB4 00000000 */ nop
/* 013B8 80B1CCB8 10000044 */ beq $zero, $zero, .L80B1CDCC
/* 013BC 80B1CCBC 87A3002E */ lh $v1, 0x002E($sp)
.L80B1CCC0:
/* 013C0 80B1CCC0 0C2C7034 */ jal func_80B1C0D0
/* 013C4 80B1CCC4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 013C8 80B1CCC8 1040001F */ beq $v0, $zero, .L80B1CD48
/* 013CC 80B1CCCC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 013D0 80B1CCD0 860C01D4 */ lh $t4, 0x01D4($s0) ## 000001D4
/* 013D4 80B1CCD4 860300B6 */ lh $v1, 0x00B6($s0) ## 000000B6
/* 013D8 80B1CCD8 860A021E */ lh $t2, 0x021E($s0) ## 0000021E
/* 013DC 80B1CCDC 448C8000 */ mtc1 $t4, $f16 ## $f16 = 0.00
/* 013E0 80B1CCE0 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
/* 013E4 80B1CCE4 44812000 */ mtc1 $at, $f4 ## $f4 = 30.00
/* 013E8 80B1CCE8 468084A0 */ cvt.s.w $f18, $f16
/* 013EC 80B1CCEC 860B008A */ lh $t3, 0x008A($s0) ## 0000008A
/* 013F0 80B1CCF0 006A1823 */ subu $v1, $v1, $t2
/* 013F4 80B1CCF4 00031C00 */ sll $v1, $v1, 16
/* 013F8 80B1CCF8 00031C03 */ sra $v1, $v1, 16
/* 013FC 80B1CCFC A600021C */ sh $zero, 0x021C($s0) ## 0000021C
/* 01400 80B1CD00 46049180 */ add.s $f6, $f18, $f4
/* 01404 80B1CD04 01631823 */ subu $v1, $t3, $v1
/* 01408 80B1CD08 00031C00 */ sll $v1, $v1, 16
/* 0140C 80B1CD0C 3C0D80B2 */ lui $t5, %hi(func_80B1C54C) ## $t5 = 80B20000
/* 01410 80B1CD10 3C0E80B2 */ lui $t6, %hi(func_80B1C5A0) ## $t6 = 80B20000
/* 01414 80B1CD14 00031C03 */ sra $v1, $v1, 16
/* 01418 80B1CD18 25CEC5A0 */ addiu $t6, $t6, %lo(func_80B1C5A0) ## $t6 = 80B1C5A0
/* 0141C 80B1CD1C 25ADC54C */ addiu $t5, $t5, %lo(func_80B1C54C) ## $t5 = 80B1C54C
/* 01420 80B1CD20 44073000 */ mfc1 $a3, $f6
/* 01424 80B1CD24 AFAD0010 */ sw $t5, 0x0010($sp)
/* 01428 80B1CD28 AFAE0014 */ sw $t6, 0x0014($sp)
/* 0142C 80B1CD2C A7A3002E */ sh $v1, 0x002E($sp)
/* 01430 80B1CD30 8FA40034 */ lw $a0, 0x0034($sp)
/* 01434 80B1CD34 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01438 80B1CD38 0C00D0F3 */ jal func_800343CC
/* 0143C 80B1CD3C 260601E0 */ addiu $a2, $s0, 0x01E0 ## $a2 = 000001E0
/* 01440 80B1CD40 10000022 */ beq $zero, $zero, .L80B1CDCC
/* 01444 80B1CD44 87A3002E */ lh $v1, 0x002E($sp)
.L80B1CD48:
/* 01448 80B1CD48 0C00BC65 */ jal func_8002F194
/* 0144C 80B1CD4C 8FA50034 */ lw $a1, 0x0034($sp)
/* 01450 80B1CD50 1040000D */ beq $v0, $zero, .L80B1CD88
/* 01454 80B1CD54 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
/* 01458 80B1CD58 860300B6 */ lh $v1, 0x00B6($s0) ## 000000B6
/* 0145C 80B1CD5C 860F021E */ lh $t7, 0x021E($s0) ## 0000021E
/* 01460 80B1CD60 8618008A */ lh $t8, 0x008A($s0) ## 0000008A
/* 01464 80B1CD64 A600021C */ sh $zero, 0x021C($s0) ## 0000021C
/* 01468 80B1CD68 006F1823 */ subu $v1, $v1, $t7
/* 0146C 80B1CD6C 00031C00 */ sll $v1, $v1, 16
/* 01470 80B1CD70 00031C03 */ sra $v1, $v1, 16
/* 01474 80B1CD74 03031823 */ subu $v1, $t8, $v1
/* 01478 80B1CD78 00031C00 */ sll $v1, $v1, 16
/* 0147C 80B1CD7C 00031C03 */ sra $v1, $v1, 16
/* 01480 80B1CD80 10000012 */ beq $zero, $zero, .L80B1CDCC
/* 01484 80B1CD84 A61901E0 */ sh $t9, 0x01E0($s0) ## 000001E0
.L80B1CD88:
/* 01488 80B1CD88 8603021C */ lh $v1, 0x021C($s0) ## 0000021C
/* 0148C 80B1CD8C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01490 80B1CD90 14600003 */ bne $v1, $zero, .L80B1CDA0
/* 01494 80B1CD94 2468FFFF */ addiu $t0, $v1, 0xFFFF ## $t0 = FFFFFFFF
/* 01498 80B1CD98 10000003 */ beq $zero, $zero, .L80B1CDA8
/* 0149C 80B1CD9C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80B1CDA0:
/* 014A0 80B1CDA0 A608021C */ sh $t0, 0x021C($s0) ## 0000021C
/* 014A4 80B1CDA4 8602021C */ lh $v0, 0x021C($s0) ## 0000021C
.L80B1CDA8:
/* 014A8 80B1CDA8 14400008 */ bne $v0, $zero, .L80B1CDCC
/* 014AC 80B1CDAC 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
/* 014B0 80B1CDB0 0C2C6FC5 */ jal func_80B1BF14
/* 014B4 80B1CDB4 8FA50034 */ lw $a1, 0x0034($sp)
/* 014B8 80B1CDB8 3C0980B2 */ lui $t1, %hi(func_80B1CE28) ## $t1 = 80B20000
/* 014BC 80B1CDBC 2529CE28 */ addiu $t1, $t1, %lo(func_80B1CE28) ## $t1 = 80B1CE28
/* 014C0 80B1CDC0 AE090190 */ sw $t1, 0x0190($s0) ## 00000190
/* 014C4 80B1CDC4 10000001 */ beq $zero, $zero, .L80B1CDCC
/* 014C8 80B1CDC8 87A3002E */ lh $v1, 0x002E($sp)
.L80B1CDCC:
/* 014CC 80B1CDCC 00032023 */ subu $a0, $zero, $v1
/* 014D0 80B1CDD0 288104F6 */ slti $at, $a0, 0x04F6
/* 014D4 80B1CDD4 10200003 */ beq $at, $zero, .L80B1CDE4
/* 014D8 80B1CDD8 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
/* 014DC 80B1CDDC 10000008 */ beq $zero, $zero, .L80B1CE00
/* 014E0 80B1CDE0 240504F6 */ addiu $a1, $zero, 0x04F6 ## $a1 = 000004F6
.L80B1CDE4:
/* 014E4 80B1CDE4 288129EB */ slti $at, $a0, 0x29EB
/* 014E8 80B1CDE8 14200003 */ bne $at, $zero, .L80B1CDF8
/* 014EC 80B1CDEC 00801025 */ or $v0, $a0, $zero ## $v0 = 00000000
/* 014F0 80B1CDF0 10000001 */ beq $zero, $zero, .L80B1CDF8
/* 014F4 80B1CDF4 240229EA */ addiu $v0, $zero, 0x29EA ## $v0 = 000029EA
.L80B1CDF8:
/* 014F8 80B1CDF8 00022C00 */ sll $a1, $v0, 16
/* 014FC 80B1CDFC 00052C03 */ sra $a1, $a1, 16
.L80B1CE00:
/* 01500 80B1CE00 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
/* 01504 80B1CE04 AFAA0010 */ sw $t2, 0x0010($sp)
/* 01508 80B1CE08 26040226 */ addiu $a0, $s0, 0x0226 ## $a0 = 00000226
/* 0150C 80B1CE0C 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 01510 80B1CE10 240703E8 */ addiu $a3, $zero, 0x03E8 ## $a3 = 000003E8
.L80B1CE14:
/* 01514 80B1CE14 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01518 80B1CE18 8FB00020 */ lw $s0, 0x0020($sp)
/* 0151C 80B1CE1C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 01520 80B1CE20 03E00008 */ jr $ra
/* 01524 80B1CE24 00000000 */ nop
@@ -1,61 +0,0 @@
glabel func_80B1CE28
/* 01528 80B1CE28 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 0152C 80B1CE2C AFBF0024 */ sw $ra, 0x0024($sp)
/* 01530 80B1CE30 AFB00020 */ sw $s0, 0x0020($sp)
/* 01534 80B1CE34 848E01E0 */ lh $t6, 0x01E0($a0) ## 000001E0
/* 01538 80B1CE38 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 0153C 80B1CE3C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01540 80B1CE40 55C10009 */ bnel $t6, $at, .L80B1CE68
/* 01544 80B1CE44 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01548 80B1CE48 0C2C6FE3 */ jal func_80B1BF8C
/* 0154C 80B1CE4C 00000000 */ nop
/* 01550 80B1CE50 3C0F80B2 */ lui $t7, %hi(func_80B1CEF8) ## $t7 = 80B20000
/* 01554 80B1CE54 25EFCEF8 */ addiu $t7, $t7, %lo(func_80B1CEF8) ## $t7 = 80B1CEF8
/* 01558 80B1CE58 A60001E0 */ sh $zero, 0x01E0($s0) ## 000001E0
/* 0155C 80B1CE5C 10000021 */ beq $zero, $zero, .L80B1CEE4
/* 01560 80B1CE60 AE0F0190 */ sw $t7, 0x0190($s0) ## 00000190
/* 01564 80B1CE64 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80B1CE68:
/* 01568 80B1CE68 0C2C70AD */ jal func_80B1C2B4
/* 0156C 80B1CE6C AFA5002C */ sw $a1, 0x002C($sp)
/* 01570 80B1CE70 E6000068 */ swc1 $f0, 0x0068($s0) ## 00000068
/* 01574 80B1CE74 8FA5002C */ lw $a1, 0x002C($sp)
/* 01578 80B1CE78 0C2C70F7 */ jal func_80B1C3DC
/* 0157C 80B1CE7C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01580 80B1CE80 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 01584 80B1CE84 AFB80010 */ sw $t8, 0x0010($sp)
/* 01588 80B1CE88 26040226 */ addiu $a0, $s0, 0x0226 ## $a0 = 00000226
/* 0158C 80B1CE8C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01590 80B1CE90 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
/* 01594 80B1CE94 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 01598 80B1CE98 240703E8 */ addiu $a3, $zero, 0x03E8 ## $a3 = 000003E8
/* 0159C 80B1CE9C 0C2C708F */ jal func_80B1C23C
/* 015A0 80B1CEA0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 015A4 80B1CEA4 8602021C */ lh $v0, 0x021C($s0) ## 0000021C
/* 015A8 80B1CEA8 10400002 */ beq $v0, $zero, .L80B1CEB4
/* 015AC 80B1CEAC 2459FFFF */ addiu $t9, $v0, 0xFFFF ## $t9 = FFFFFFFF
/* 015B0 80B1CEB0 A619021C */ sh $t9, 0x021C($s0) ## 0000021C
.L80B1CEB4:
/* 015B4 80B1CEB4 0C2C7034 */ jal func_80B1C0D0
/* 015B8 80B1CEB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 015BC 80B1CEBC 14400004 */ bne $v0, $zero, .L80B1CED0
/* 015C0 80B1CEC0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 015C4 80B1CEC4 8608021C */ lh $t0, 0x021C($s0) ## 0000021C
/* 015C8 80B1CEC8 55000007 */ bnel $t0, $zero, .L80B1CEE8
/* 015CC 80B1CECC 8FBF0024 */ lw $ra, 0x0024($sp)
.L80B1CED0:
/* 015D0 80B1CED0 0C2C6FA5 */ jal func_80B1BE94
/* 015D4 80B1CED4 8FA5002C */ lw $a1, 0x002C($sp)
/* 015D8 80B1CED8 3C0980B2 */ lui $t1, %hi(func_80B1CC04) ## $t1 = 80B20000
/* 015DC 80B1CEDC 2529CC04 */ addiu $t1, $t1, %lo(func_80B1CC04) ## $t1 = 80B1CC04
/* 015E0 80B1CEE0 AE090190 */ sw $t1, 0x0190($s0) ## 00000190
.L80B1CEE4:
/* 015E4 80B1CEE4 8FBF0024 */ lw $ra, 0x0024($sp)
.L80B1CEE8:
/* 015E8 80B1CEE8 8FB00020 */ lw $s0, 0x0020($sp)
/* 015EC 80B1CEEC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 015F0 80B1CEF0 03E00008 */ jr $ra
/* 015F4 80B1CEF4 00000000 */ nop
@@ -1,168 +0,0 @@
glabel func_80B1CEF8
/* 015F8 80B1CEF8 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
/* 015FC 80B1CEFC 3C0F80B2 */ lui $t7, %hi(D_80B1D56C) ## $t7 = 80B20000
/* 01600 80B1CF00 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01604 80B1CF04 AFB00020 */ sw $s0, 0x0020($sp)
/* 01608 80B1CF08 AFA5005C */ sw $a1, 0x005C($sp)
/* 0160C 80B1CF0C 25EFD56C */ addiu $t7, $t7, %lo(D_80B1D56C) ## $t7 = 80B1D56C
/* 01610 80B1CF10 8DF90000 */ lw $t9, 0x0000($t7) ## 80B1D56C
/* 01614 80B1CF14 27AE002C */ addiu $t6, $sp, 0x002C ## $t6 = FFFFFFD4
/* 01618 80B1CF18 8DF80004 */ lw $t8, 0x0004($t7) ## 80B1D570
/* 0161C 80B1CF1C ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFD4
/* 01620 80B1CF20 8DF90008 */ lw $t9, 0x0008($t7) ## 80B1D574
/* 01624 80B1CF24 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFD8
/* 01628 80B1CF28 8DF8000C */ lw $t8, 0x000C($t7) ## 80B1D578
/* 0162C 80B1CF2C ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFDC
/* 01630 80B1CF30 8DF90010 */ lw $t9, 0x0010($t7) ## 80B1D57C
/* 01634 80B1CF34 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01638 80B1CF38 ADD8000C */ sw $t8, 0x000C($t6) ## FFFFFFE0
/* 0163C 80B1CF3C 0C2C723C */ jal func_80B1C8F0
/* 01640 80B1CF40 ADD90010 */ sw $t9, 0x0010($t6) ## FFFFFFE4
/* 01644 80B1CF44 3C014200 */ lui $at, 0x4200 ## $at = 42000000
/* 01648 80B1CF48 44812000 */ mtc1 $at, $f4 ## $f4 = 32.00
/* 0164C 80B1CF4C C6060164 */ lwc1 $f6, 0x0164($s0) ## 00000164
/* 01650 80B1CF50 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01654 80B1CF54 46062032 */ c.eq.s $f4, $f6
/* 01658 80B1CF58 00000000 */ nop
/* 0165C 80B1CF5C 45020038 */ bc1fl .L80B1D040
/* 01660 80B1CF60 3C014200 */ lui $at, 0x4200 ## $at = 42000000
/* 01664 80B1CF64 0C00BE0A */ jal Audio_PlayActorSound2
/* 01668 80B1CF68 240528C8 */ addiu $a1, $zero, 0x28C8 ## $a1 = 000028C8
/* 0166C 80B1CF6C 92080208 */ lbu $t0, 0x0208($s0) ## 00000208
/* 01670 80B1CF70 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01674 80B1CF74 A600021A */ sh $zero, 0x021A($s0) ## 0000021A
/* 01678 80B1CF78 55010031 */ bnel $t0, $at, .L80B1D040
/* 0167C 80B1CF7C 3C014200 */ lui $at, 0x4200 ## $at = 42000000
/* 01680 80B1CF80 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 01684 80B1CF84 3C01C220 */ lui $at, 0xC220 ## $at = C2200000
/* 01688 80B1CF88 44814000 */ mtc1 $at, $f8 ## $f8 = -40.00
/* 0168C 80B1CF8C E7A0004C */ swc1 $f0, 0x004C($sp)
/* 01690 80B1CF90 E7A00050 */ swc1 $f0, 0x0050($sp)
/* 01694 80B1CF94 E7A80054 */ swc1 $f8, 0x0054($sp)
/* 01698 80B1CF98 860900B6 */ lh $t1, 0x00B6($s0) ## 000000B6
/* 0169C 80B1CF9C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 016A0 80B1CFA0 44895000 */ mtc1 $t1, $f10 ## $f10 = 0.00
/* 016A4 80B1CFA4 0C034348 */ jal Matrix_RotateY
/* 016A8 80B1CFA8 46805320 */ cvt.s.w $f12, $f10
/* 016AC 80B1CFAC 27A4004C */ addiu $a0, $sp, 0x004C ## $a0 = FFFFFFF4
/* 016B0 80B1CFB0 0C0346BD */ jal Matrix_MultVec3f
/* 016B4 80B1CFB4 27A50040 */ addiu $a1, $sp, 0x0040 ## $a1 = FFFFFFE8
/* 016B8 80B1CFB8 C7B00040 */ lwc1 $f16, 0x0040($sp)
/* 016BC 80B1CFBC C6120024 */ lwc1 $f18, 0x0024($s0) ## 00000024
/* 016C0 80B1CFC0 C7A60044 */ lwc1 $f6, 0x0044($sp)
/* 016C4 80B1CFC4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 016C8 80B1CFC8 46128100 */ add.s $f4, $f16, $f18
/* 016CC 80B1CFCC C7B00048 */ lwc1 $f16, 0x0048($sp)
/* 016D0 80B1CFD0 E7A40040 */ swc1 $f4, 0x0040($sp)
/* 016D4 80B1CFD4 C6080028 */ lwc1 $f8, 0x0028($s0) ## 00000028
/* 016D8 80B1CFD8 46083280 */ add.s $f10, $f6, $f8
/* 016DC 80B1CFDC E7AA0044 */ swc1 $f10, 0x0044($sp)
/* 016E0 80B1CFE0 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
/* 016E4 80B1CFE4 46128100 */ add.s $f4, $f16, $f18
/* 016E8 80B1CFE8 0C2C71CE */ jal func_80B1C738
/* 016EC 80B1CFEC E7A40048 */ swc1 $f4, 0x0048($sp)
/* 016F0 80B1CFF0 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 016F4 80B1CFF4 1441000A */ bne $v0, $at, .L80B1D020
/* 016F8 80B1CFF8 AE020214 */ sw $v0, 0x0214($s0) ## 00000214
/* 016FC 80B1CFFC 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000
/* 01700 80B1D000 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660
/* 01704 80B1D004 94620EF2 */ lhu $v0, 0x0EF2($v1) ## 8015F552
/* 01708 80B1D008 240C0004 */ addiu $t4, $zero, 0x0004 ## $t4 = 00000004
/* 0170C 80B1D00C 304A1000 */ andi $t2, $v0, 0x1000 ## $t2 = 00000000
/* 01710 80B1D010 15400003 */ bne $t2, $zero, .L80B1D020
/* 01714 80B1D014 344B1000 */ ori $t3, $v0, 0x1000 ## $t3 = 00001000
/* 01718 80B1D018 A46B0EF2 */ sh $t3, 0x0EF2($v1) ## 8015F552
/* 0171C 80B1D01C AE0C0214 */ sw $t4, 0x0214($s0) ## 00000214
.L80B1D020:
/* 01720 80B1D020 8E0D0214 */ lw $t5, 0x0214($s0) ## 00000214
/* 01724 80B1D024 8FA4005C */ lw $a0, 0x005C($sp)
/* 01728 80B1D028 27A50040 */ addiu $a1, $sp, 0x0040 ## $a1 = FFFFFFE8
/* 0172C 80B1D02C 000D7080 */ sll $t6, $t5, 2
/* 01730 80B1D030 03AE3021 */ addu $a2, $sp, $t6
/* 01734 80B1D034 0C007D52 */ jal Item_DropCollectible
/* 01738 80B1D038 84C6002E */ lh $a2, 0x002E($a2) ## 0000002E
/* 0173C 80B1D03C 3C014200 */ lui $at, 0x4200 ## $at = 42000000
.L80B1D040:
/* 01740 80B1D040 44814000 */ mtc1 $at, $f8 ## $f8 = 32.00
/* 01744 80B1D044 C6060164 */ lwc1 $f6, 0x0164($s0) ## 00000164
/* 01748 80B1D048 4606403E */ c.le.s $f8, $f6
/* 0174C 80B1D04C 00000000 */ nop
/* 01750 80B1D050 45020021 */ bc1fl .L80B1D0D8
/* 01754 80B1D054 8609021A */ lh $t1, 0x021A($s0) ## 0000021A
/* 01758 80B1D058 860F021A */ lh $t7, 0x021A($s0) ## 0000021A
/* 0175C 80B1D05C 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
/* 01760 80B1D060 55E1001D */ bnel $t7, $at, .L80B1D0D8
/* 01764 80B1D064 8609021A */ lh $t1, 0x021A($s0) ## 0000021A
/* 01768 80B1D068 92180208 */ lbu $t8, 0x0208($s0) ## 00000208
/* 0176C 80B1D06C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01770 80B1D070 57000006 */ bnel $t8, $zero, .L80B1D08C
/* 01774 80B1D074 8E190214 */ lw $t9, 0x0214($s0) ## 00000214
/* 01778 80B1D078 0C00BE0A */ jal Audio_PlayActorSound2
/* 0177C 80B1D07C 24054806 */ addiu $a1, $zero, 0x4806 ## $a1 = 00004806
/* 01780 80B1D080 10000015 */ beq $zero, $zero, .L80B1D0D8
/* 01784 80B1D084 8609021A */ lh $t1, 0x021A($s0) ## 0000021A
/* 01788 80B1D088 8E190214 */ lw $t9, 0x0214($s0) ## 00000214
.L80B1D08C:
/* 0178C 80B1D08C 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
/* 01790 80B1D090 3C078013 */ lui $a3, 0x8013 ## $a3 = 80130000
/* 01794 80B1D094 1721000D */ bne $t9, $at, .L80B1D0CC
/* 01798 80B1D098 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0179C 80B1D09C 3C088013 */ lui $t0, 0x8013 ## $t0 = 80130000
/* 017A0 80B1D0A0 24E733E0 */ addiu $a3, $a3, 0x33E0 ## $a3 = 801333E0
/* 017A4 80B1D0A4 250833E8 */ addiu $t0, $t0, 0x33E8 ## $t0 = 801333E8
/* 017A8 80B1D0A8 3C058013 */ lui $a1, 0x8013 ## $a1 = 80130000
/* 017AC 80B1D0AC 24A533D4 */ addiu $a1, $a1, 0x33D4 ## $a1 = 801333D4
/* 017B0 80B1D0B0 AFA80014 */ sw $t0, 0x0014($sp)
/* 017B4 80B1D0B4 AFA70010 */ sw $a3, 0x0010($sp)
/* 017B8 80B1D0B8 24044802 */ addiu $a0, $zero, 0x4802 ## $a0 = 00004802
/* 017BC 80B1D0BC 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* 017C0 80B1D0C0 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
/* 017C4 80B1D0C4 10000004 */ beq $zero, $zero, .L80B1D0D8
/* 017C8 80B1D0C8 8609021A */ lh $t1, 0x021A($s0) ## 0000021A
.L80B1D0CC:
/* 017CC 80B1D0CC 0C00BE0A */ jal Audio_PlayActorSound2
/* 017D0 80B1D0D0 24054807 */ addiu $a1, $zero, 0x4807 ## $a1 = 00004807
/* 017D4 80B1D0D4 8609021A */ lh $t1, 0x021A($s0) ## 0000021A
.L80B1D0D8:
/* 017D8 80B1D0D8 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 017DC 80B1D0DC 8E05015C */ lw $a1, 0x015C($s0) ## 0000015C
/* 017E0 80B1D0E0 252A0001 */ addiu $t2, $t1, 0x0001 ## $t2 = 00000001
/* 017E4 80B1D0E4 0C0295B2 */ jal func_800A56C8
/* 017E8 80B1D0E8 A60A021A */ sh $t2, 0x021A($s0) ## 0000021A
/* 017EC 80B1D0EC 50400016 */ beql $v0, $zero, .L80B1D148
/* 017F0 80B1D0F0 8FBF0024 */ lw $ra, 0x0024($sp)
/* 017F4 80B1D0F4 8E0B0214 */ lw $t3, 0x0214($s0) ## 00000214
/* 017F8 80B1D0F8 8FA4005C */ lw $a0, 0x005C($sp)
/* 017FC 80B1D0FC 2405501A */ addiu $a1, $zero, 0x501A ## $a1 = 0000501A
/* 01800 80B1D100 05610005 */ bgez $t3, .L80B1D118
/* 01804 80B1D104 00000000 */ nop
/* 01808 80B1D108 0C042DA0 */ jal func_8010B680
/* 0180C 80B1D10C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 01810 80B1D110 10000004 */ beq $zero, $zero, .L80B1D124
/* 01814 80B1D114 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80B1D118:
/* 01818 80B1D118 0C041B33 */ jal func_80106CCC
/* 0181C 80B1D11C 8FA4005C */ lw $a0, 0x005C($sp)
/* 01820 80B1D120 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80B1D124:
/* 01824 80B1D124 0C2C6FA5 */ jal func_80B1BE94
/* 01828 80B1D128 8FA5005C */ lw $a1, 0x005C($sp)
/* 0182C 80B1D12C 3C0D80B2 */ lui $t5, %hi(func_80B1CC04) ## $t5 = 80B20000
/* 01830 80B1D130 240CFFFF */ addiu $t4, $zero, 0xFFFF ## $t4 = FFFFFFFF
/* 01834 80B1D134 25ADCC04 */ addiu $t5, $t5, %lo(func_80B1CC04) ## $t5 = 80B1CC04
/* 01838 80B1D138 AE0C0214 */ sw $t4, 0x0214($s0) ## 00000214
/* 0183C 80B1D13C A2000208 */ sb $zero, 0x0208($s0) ## 00000208
/* 01840 80B1D140 AE0D0190 */ sw $t5, 0x0190($s0) ## 00000190
/* 01844 80B1D144 8FBF0024 */ lw $ra, 0x0024($sp)
.L80B1D148:
/* 01848 80B1D148 8FB00020 */ lw $s0, 0x0020($sp)
/* 0184C 80B1D14C 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000
/* 01850 80B1D150 03E00008 */ jr $ra
/* 01854 80B1D154 00000000 */ nop
@@ -1,33 +0,0 @@
glabel func_80B1D200
/* 01900 80B1D200 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 01904 80B1D204 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01908 80B1D208 AFA40038 */ sw $a0, 0x0038($sp)
/* 0190C 80B1D20C 8C850000 */ lw $a1, 0x0000($a0) ## 00000000
/* 01910 80B1D210 3C0680B2 */ lui $a2, %hi(D_80B1D5EC) ## $a2 = 80B20000
/* 01914 80B1D214 24C6D5EC */ addiu $a2, $a2, %lo(D_80B1D5EC) ## $a2 = 80B1D5EC
/* 01918 80B1D218 27A40024 */ addiu $a0, $sp, 0x0024 ## $a0 = FFFFFFEC
/* 0191C 80B1D21C 240704A4 */ addiu $a3, $zero, 0x04A4 ## $a3 = 000004A4
/* 01920 80B1D220 0C031AB1 */ jal func_800C6AC4
/* 01924 80B1D224 AFA50034 */ sw $a1, 0x0034($sp)
/* 01928 80B1D228 8FA80034 */ lw $t0, 0x0034($sp)
/* 0192C 80B1D22C 3C190601 */ lui $t9, 0x0601 ## $t9 = 06010000
/* 01930 80B1D230 2739ACE0 */ addiu $t9, $t9, 0xACE0 ## $t9 = 0600ACE0
/* 01934 80B1D234 8D0302C0 */ lw $v1, 0x02C0($t0) ## 000002C0
/* 01938 80B1D238 3C18DE00 */ lui $t8, 0xDE00 ## $t8 = DE000000
/* 0193C 80B1D23C 3C0680B2 */ lui $a2, %hi(D_80B1D5FC) ## $a2 = 80B20000
/* 01940 80B1D240 246F0008 */ addiu $t7, $v1, 0x0008 ## $t7 = 00000008
/* 01944 80B1D244 AD0F02C0 */ sw $t7, 0x02C0($t0) ## 000002C0
/* 01948 80B1D248 AC790004 */ sw $t9, 0x0004($v1) ## 00000004
/* 0194C 80B1D24C AC780000 */ sw $t8, 0x0000($v1) ## 00000000
/* 01950 80B1D250 8FA90038 */ lw $t1, 0x0038($sp)
/* 01954 80B1D254 24C6D5FC */ addiu $a2, $a2, %lo(D_80B1D5FC) ## $a2 = 80B1D5FC
/* 01958 80B1D258 27A40024 */ addiu $a0, $sp, 0x0024 ## $a0 = FFFFFFEC
/* 0195C 80B1D25C 240704A6 */ addiu $a3, $zero, 0x04A6 ## $a3 = 000004A6
/* 01960 80B1D260 0C031AD5 */ jal func_800C6B54
/* 01964 80B1D264 8D250000 */ lw $a1, 0x0000($t1) ## 00000000
/* 01968 80B1D268 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0196C 80B1D26C 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 01970 80B1D270 03E00008 */ jr $ra
/* 01974 80B1D274 00000000 */ nop
@@ -1,32 +0,0 @@
glabel func_80B1D278
/* 01978 80B1D278 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
/* 0197C 80B1D27C AFA40000 */ sw $a0, 0x0000($sp)
/* 01980 80B1D280 AFA60008 */ sw $a2, 0x0008($sp)
/* 01984 80B1D284 10A10006 */ beq $a1, $at, .L80B1D2A0
/* 01988 80B1D288 AFA7000C */ sw $a3, 0x000C($sp)
/* 0198C 80B1D28C 24010010 */ addiu $at, $zero, 0x0010 ## $at = 00000010
/* 01990 80B1D290 10A10009 */ beq $a1, $at, .L80B1D2B8
/* 01994 80B1D294 8FA20014 */ lw $v0, 0x0014($sp)
/* 01998 80B1D298 03E00008 */ jr $ra
/* 0199C 80B1D29C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80B1D2A0:
/* 019A0 80B1D2A0 8FA30010 */ lw $v1, 0x0010($sp)
/* 019A4 80B1D2A4 8FA20014 */ lw $v0, 0x0014($sp)
/* 019A8 80B1D2A8 846E0002 */ lh $t6, 0x0002($v1) ## 00000002
/* 019AC 80B1D2AC A44E021E */ sh $t6, 0x021E($v0) ## 0000021E
/* 019B0 80B1D2B0 03E00008 */ jr $ra
/* 019B4 80B1D2B4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80B1D2B8:
/* 019B8 80B1D2B8 8FA30010 */ lw $v1, 0x0010($sp)
/* 019BC 80B1D2BC 844F021E */ lh $t7, 0x021E($v0) ## 0000021E
/* 019C0 80B1D2C0 84490226 */ lh $t1, 0x0226($v0) ## 00000226
/* 019C4 80B1D2C4 84780002 */ lh $t8, 0x0002($v1) ## 00000002
/* 019C8 80B1D2C8 01F8C821 */ addu $t9, $t7, $t8
/* 019CC 80B1D2CC A459021E */ sh $t9, 0x021E($v0) ## 0000021E
/* 019D0 80B1D2D0 84680002 */ lh $t0, 0x0002($v1) ## 00000002
/* 019D4 80B1D2D4 01095021 */ addu $t2, $t0, $t1
/* 019D8 80B1D2D8 A46A0002 */ sh $t2, 0x0002($v1) ## 00000002
/* 019DC 80B1D2DC 03E00008 */ jr $ra
/* 019E0 80B1D2E0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
@@ -1,50 +0,0 @@
glabel func_80B1D2E4
/* 019E4 80B1D2E4 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 019E8 80B1D2E8 3C0F80B2 */ lui $t7, %hi(D_80B1D580) ## $t7 = 80B20000
/* 019EC 80B1D2EC AFBF0014 */ sw $ra, 0x0014($sp)
/* 019F0 80B1D2F0 AFA40038 */ sw $a0, 0x0038($sp)
/* 019F4 80B1D2F4 AFA5003C */ sw $a1, 0x003C($sp)
/* 019F8 80B1D2F8 AFA60040 */ sw $a2, 0x0040($sp)
/* 019FC 80B1D2FC AFA70044 */ sw $a3, 0x0044($sp)
/* 01A00 80B1D300 25EFD580 */ addiu $t7, $t7, %lo(D_80B1D580) ## $t7 = 80B1D580
/* 01A04 80B1D304 8DF90000 */ lw $t9, 0x0000($t7) ## 80B1D580
/* 01A08 80B1D308 27AE0028 */ addiu $t6, $sp, 0x0028 ## $t6 = FFFFFFF0
/* 01A0C 80B1D30C 8DF80004 */ lw $t8, 0x0004($t7) ## 80B1D584
/* 01A10 80B1D310 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF0
/* 01A14 80B1D314 8DF90008 */ lw $t9, 0x0008($t7) ## 80B1D588
/* 01A18 80B1D318 3C0880B2 */ lui $t0, %hi(D_80B1D58C) ## $t0 = 80B20000
/* 01A1C 80B1D31C 2508D58C */ addiu $t0, $t0, %lo(D_80B1D58C) ## $t0 = 80B1D58C
/* 01A20 80B1D320 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF4
/* 01A24 80B1D324 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFF8
/* 01A28 80B1D328 8D0A0000 */ lw $t2, 0x0000($t0) ## 80B1D58C
/* 01A2C 80B1D32C 27A7001C */ addiu $a3, $sp, 0x001C ## $a3 = FFFFFFE4
/* 01A30 80B1D330 24010010 */ addiu $at, $zero, 0x0010 ## $at = 00000010
/* 01A34 80B1D334 ACEA0000 */ sw $t2, 0x0000($a3) ## FFFFFFE4
/* 01A38 80B1D338 8D090004 */ lw $t1, 0x0004($t0) ## 80B1D590
/* 01A3C 80B1D33C 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
/* 01A40 80B1D340 00E02025 */ or $a0, $a3, $zero ## $a0 = FFFFFFE4
/* 01A44 80B1D344 ACE90004 */ sw $t1, 0x0004($a3) ## FFFFFFE8
/* 01A48 80B1D348 8D0A0008 */ lw $t2, 0x0008($t0) ## 80B1D594
/* 01A4C 80B1D34C 14A10006 */ bne $a1, $at, .L80B1D368
/* 01A50 80B1D350 ACEA0008 */ sw $t2, 0x0008($a3) ## FFFFFFEC
/* 01A54 80B1D354 8FA50048 */ lw $a1, 0x0048($sp)
/* 01A58 80B1D358 AFA6003C */ sw $a2, 0x003C($sp)
/* 01A5C 80B1D35C 0C0346BD */ jal Matrix_MultVec3f
/* 01A60 80B1D360 24A50038 */ addiu $a1, $a1, 0x0038 ## $a1 = 00000038
/* 01A64 80B1D364 8FA6003C */ lw $a2, 0x003C($sp)
.L80B1D368:
/* 01A68 80B1D368 2401000E */ addiu $at, $zero, 0x000E ## $at = 0000000E
/* 01A6C 80B1D36C 14C10006 */ bne $a2, $at, .L80B1D388
/* 01A70 80B1D370 8FA50048 */ lw $a1, 0x0048($sp)
/* 01A74 80B1D374 27A40028 */ addiu $a0, $sp, 0x0028 ## $a0 = FFFFFFF0
/* 01A78 80B1D378 0C0346BD */ jal Matrix_MultVec3f
/* 01A7C 80B1D37C 24A50304 */ addiu $a1, $a1, 0x0304 ## $a1 = 00000304
/* 01A80 80B1D380 0C2C7480 */ jal func_80B1D200
/* 01A84 80B1D384 8FA40038 */ lw $a0, 0x0038($sp)
.L80B1D388:
/* 01A88 80B1D388 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01A8C 80B1D38C 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 01A90 80B1D390 03E00008 */ jr $ra
/* 01A94 80B1D394 00000000 */ nop
@@ -1,16 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .data
glabel Bg_Gate_Shutter_InitVars
.word 0x01000700, 0x00000000, 0x01810000, 0x0000017C
.word BgGateShutter_Init
.word BgGateShutter_Destroy
.word BgGateShutter_Update
.word BgGateShutter_Draw
@@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_80878630
.incbin "baserom/ovl_Bg_Gate_Shutter", 0x4D0, 0x00000090
@@ -1,35 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_808785B0
.word 0x0A0A0000
glabel D_808785B4
.asciz " \n"
.balign 4
glabel D_808785E0
.asciz "../z_bg_gate_shutter.c"
.balign 4
glabel D_808785F8
.asciz "../z_bg_gate_shutter.c"
.balign 4
glabel D_80878610
.asciz "../z_bg_gate_shutter.c"
.balign 4
glabel D_80878628
.word 0xC4ABE000, 0x00000000
-28
View File
@@ -1,28 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .data
glabel D_808BB2F0
.word 0x00000009, 0x000001A9, 0x0000000A, 0x00000001, 0x000C0000, 0x01000000, 0x00000000, 0x00000000, 0x00000036, 0x00000034, 0x00000000, 0x00000036, 0x00000034, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000001, 0x0002006E, 0x006F0000, 0x00000000, 0x00000000, 0xFFFFFFE3, 0xFFFFFFC5, 0x00000000, 0xFFFFFFE3, 0xFFFFFFC5, 0x00000000, 0x00000000, 0x00000000, 0x00000003, 0x00000001, 0x000A006E, 0x006F0000, 0x00000000, 0x00000000, 0x0000002E, 0xFFFFFFE6, 0x00000000, 0x0000002E, 0xFFFFFFE6, 0x00000000, 0x00000000, 0x00000000, 0x000003E8, 0x00000001, 0x000800E6, 0x00E700E7, 0x0000002D, 0x00000001, 0x000100D2, 0x00E600E6, 0x00000001, 0x00010000, 0x00F10000, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD9018C, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD9019D, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD901AE, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD902A8, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD90000, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD9007A, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD90064, 0x00000000, 0x42700000, 0xFFD60048, 0xFFD90074, 0xFF000000, 0x42700000, 0xFFD60048, 0xFFD9005F, 0x00000001, 0x00010050, 0x01960000, 0x00000000, 0x42700000, 0xFFFF005F, 0xFFED2F73, 0x00000000, 0x42700000, 0xFFFF005F, 0xFFED6B2F, 0x00000000, 0x42700000, 0xFFFF005F, 0xFFED6169, 0x00000000, 0x42700000, 0xFFFF005F, 0xFFED0000, 0x00000000, 0x42700000, 0xFFFF005F, 0xFFED0005, 0x00000000, 0x42700000, 0xFFFF0081, 0xFFDE7961, 0x00000000, 0x42700000, 0xFFFF00AD, 0xFFED742F, 0x00000000, 0x42700000, 0xFFEF00D9, 0xFFEC2E64, 0x00000000, 0x42700000, 0xFFE80148, 0xFFF40000, 0x00000000, 0x42700000, 0xFFE501FD, 0xFFFE2F73, 0x00000000, 0x42700000, 0xFFD7032D, 0x000A6B2F, 0x00000000, 0x42700000, 0xFFC40505, 0x00266D61, 0x00000000, 0x42700000, 0xFFC60776, 0x005B0000, 0x00000000, 0x42700000, 0xFFCB09DE, 0x00850005, 0x00000000, 0x42700000, 0xFFDF0D75, 0x00C17961, 0x00000000, 0x42700000, 0x00000F78, 0x00E1742F, 0x00000000, 0x42700000, 0x000710DD, 0x00F56565, 0x00000000, 0x42700000, 0x000710DC, 0x00F50000, 0x00000000, 0x42700000, 0x000710DC, 0x00F52F73, 0xFF000000, 0x42700000, 0x000710DC, 0x00F56B2F, 0x00000002, 0x00010000, 0x010E0000, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF72F73, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF76B2F, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF76169, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF70000, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF70005, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF77961, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF7742F, 0x0000001E, 0x42700000, 0xFFEC0055, 0xFFF72E64, 0xFF00001E, 0x42700000, 0xFFEC0055, 0xFFF70000, 0x00000002, 0x00010050, 0x01A90000, 0x00000005, 0x42700000, 0xFFFF0070, 0x00072F73, 0x00000005, 0x42700000, 0xFFFF0070, 0x00076B2F, 0x00000005, 0x42700000, 0xFFFF0070, 0x00076169, 0x00000005, 0x42700000, 0xFFFF0070, 0x00070000, 0x0000000F, 0x42700000, 0xFFFF0070, 0x00070005, 0x00000014, 0x42700000, 0xFFFF0075, 0x00077961, 0x00000019, 0x42700000, 0xFFFF0075, 0x0007742F, 0x00000019, 0x42700000, 0xFFFF0075, 0x00072E64, 0x00000014, 0x42700000, 0xFFFF0075, 0x00070000, 0x00000014, 0x42700000, 0xFFFF0075, 0x00072F73, 0x00000014, 0x42700000, 0xFFFF0075, 0x00076B2F, 0x00000014, 0x42700000, 0xFFFF0075, 0x00076D61, 0x00000014, 0x42700000, 0xFFFF0075, 0x00070000, 0x00000014, 0x42700000, 0xFFFF0075, 0x00070005, 0x00000014, 0x42700000, 0xFFFF0075, 0x00077961, 0x00000014, 0x42700000, 0xFFFF0075, 0x0007742F, 0x00000014, 0x42700000, 0xFFFF0075, 0x00076565, 0x00000014, 0x42700000, 0xFFFF0075, 0x00070000, 0x00000014, 0x42700000, 0xFFFF0075, 0x00072F73, 0xFF000014, 0x42700000, 0xFFFF0075, 0x00076B2F, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000
glabel D_808BB7A0
.word 0x00000009, 0x00000170, 0x00000001, 0x00010000, 0x007E0000, 0x00000000, 0x42700000, 0xFFFF0065, 0xFF92616D, 0x00000000, 0x42200000, 0xFFFF0065, 0xFF926964, 0x00000000, 0x42200000, 0xFFFF0065, 0xFF9200FB, 0x00000000, 0x42200000, 0xFFFF0065, 0xFF920111, 0x00000000, 0x42200000, 0xFFFF0065, 0xFF93012D, 0x00000000, 0x42200000, 0xFFFF0047, 0xFF920033, 0x00000000, 0x42200000, 0xFFFF0048, 0xFF9200FB, 0x00000000, 0x42200000, 0xFFFF0048, 0xFF9200FB, 0x00000000, 0x42200000, 0xFFFF0048, 0xFF922F68, 0xFF000000, 0x42200000, 0xFFFF0048, 0xFF92612F, 0x00000001, 0x0001003A, 0x01530000, 0x00000000, 0x42700001, 0xFFF7006A, 0xFFFDA1BC, 0x00000000, 0x42700000, 0xFFF7006A, 0xFFFDA5F3, 0x00000000, 0x42700000, 0xFFF7006A, 0xFFFDA5EB, 0x00000000, 0x42700000, 0xFFF7006A, 0xFFFDA5A2, 0x00000000, 0x42700000, 0xFFBD006C, 0xFFCBBAEE, 0x00000000, 0x42700000, 0xFFBD006C, 0xFFCBC9B8, 0x00000000, 0x42700000, 0xFFBD006C, 0xFFCB0020, 0x00000000, 0x42700000, 0xFFBD006C, 0xFFCBA5A4, 0x00000000, 0x42700000, 0xFFBD006C, 0xFFCB0020, 0x00000000, 0x42700000, 0xFFAD0066, 0xFFD6A5E1, 0x00000000, 0x42700000, 0xFF8C0051, 0xFFEDA5D0, 0x00000000, 0x42700000, 0xFF8A0051, 0x00360020, 0x00000000, 0x42700000, 0xFF96004E, 0x0074A5A6, 0x00000000, 0x42700000, 0xFFE5004B, 0x00E2A5E5, 0x00000000, 0x42700000, 0x00790052, 0x0138C0AE, 0x00000000, 0x42700000, 0x0128004C, 0x0176A5E5, 0x00000000, 0x42700000, 0x02350050, 0x01010020, 0x00000000, 0x42700000, 0x02660050, 0xFFFFA5EB, 0x00000000, 0x42700000, 0x02520050, 0xFF6FA5E1, 0x00000000, 0x42700000, 0x01DB0050, 0xFE840020, 0x00000000, 0x42700000, 0x01430050, 0xFDFFA5E1, 0x00000000, 0x42700000, 0x00C00050, 0xFDC2A5D0, 0x00000000, 0x42700000, 0xFFD30050, 0xFDA40020, 0x00000000, 0x42700000, 0xFF720050, 0xFDB3A5A6, 0x00000000, 0x42700000, 0xFF1C0050, 0xFDCEA5E5, 0x00000000, 0x42700000, 0xFE88005D, 0xFE23C0AE, 0x00000000, 0x42700000, 0xFDB8005F, 0xFF49A5E5, 0x00000000, 0x42700000, 0xFD9B005F, 0xFFDE0020, 0xFF000000, 0x42700000, 0xFDAD005F, 0x00A1A5EB, 0x00000002, 0x00010000, 0x009B0000, 0x00000005, 0x4221999A, 0xFFFF006F, 0x0005A1BC, 0x00000005, 0x42200000, 0xFFFF006F, 0x0005A5F3, 0x00000005, 0x42200000, 0xFFFF006F, 0x0005A5EB, 0x0000000F, 0x42200000, 0xFFFF006F, 0x0005A5A2, 0x0000000F, 0x42200000, 0xFFFF006F, 0x0005BAEE, 0x0000000F, 0x42200000, 0xFFFF0068, 0x0008C9B8, 0x00000005, 0x42200000, 0xFFFF0068, 0x00080020, 0x0000001E, 0x42200000, 0xFFFF0068, 0x0008A5A4, 0x0000001E, 0x42200000, 0xFFFF0068, 0x00080020, 0xFF00001E, 0x42200000, 0xFFFF0068, 0x0008A5E1, 0x00000002, 0x0001003A, 0x01700000, 0x00000005, 0x42700001, 0x00000078, 0x000CA1BC, 0x00000005, 0x42700000, 0x00000078, 0x000CA5F3, 0x00000005, 0x42700000, 0x00000078, 0x000CA5EB, 0x0000000A, 0x42700000, 0x00000078, 0x000CA5A2, 0x00000005, 0x42700000, 0xFFFF005F, 0x000BBAEE, 0x00000005, 0x42700000, 0xFFFF005F, 0x000BC9B8, 0x00000005, 0x42700000, 0xFFFF005F, 0x000B0020, 0x00000005, 0x42700000, 0xFFFF005F, 0x000BA5A4, 0x00000005, 0x42700000, 0xFFFF005F, 0x000B0020, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008A5E1, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008A5D0, 0x0000000A, 0x42700000, 0xFFFD005F, 0x00080020, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008A5A6, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008A5E5, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008C0AE, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008A5E5, 0x0000000A, 0x42700000, 0xFFFD005F, 0x00080020, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008A5EB, 0x0000000A, 0x42700000, 0xFFFD005F, 0x0008A5E1, 0x0000000A, 0x42700000, 0xFFFD005F, 0x00080020, 0x0000000F, 0x42700000, 0xFFFD005F, 0x0008A5E1, 0x0000000F, 0x42700000, 0xFFFD005F, 0x0008A5D0, 0x0000000F, 0x42700000, 0xFFFD005F, 0x00080020, 0x0000000F, 0x42700000, 0xFFFD005F, 0x0008A5A6, 0x0000000F, 0x42700000, 0xFFFD005F, 0x0008A5E5, 0x0000000F, 0x42700000, 0xFFFD005F, 0x0008C0AE, 0x0000000F, 0x42700000, 0xFFFD005F, 0x0008A5E5, 0x0000000F, 0x42700000, 0xFFFD005F, 0x00080020, 0xFF00001E, 0x42700000, 0xFFFD005F, 0x0008A5EB, 0x0000000A, 0x00000001, 0x000C0000, 0x00B40000, 0x00000000, 0x00000000, 0x0000001C, 0xFFFFFFF6, 0x00000000, 0xFFFFFFF2, 0x00000009, 0x00000000, 0xBE6EEEEF, 0x00000000, 0x00000004, 0x00000001, 0x0002005A, 0x005B0000, 0x00000000, 0x00000000, 0xFFFFFFF2, 0x00000024, 0x00000000, 0xFFFFFFF2, 0x00000024, 0x00000000, 0x00000000, 0x00000000, 0x00000003, 0x00000001, 0x000A005A, 0x005B0000, 0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFDD, 0x00000000, 0xFFFFFFF8, 0xFFFFFFDD, 0x00000000, 0x00000000, 0x00000000, 0x0000002D, 0x00000001, 0x000100BE, 0x00D200D2, 0x000003E8, 0x00000001, 0x000800D2, 0x00D300D3, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000
glabel D_808BBD90
.word 0x0000000B, 0x00000BB8, 0x00000021, 0x00000001, 0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, 0x0000000A, 0x00000003, 0x00050000, 0x00010000, 0x80000000, 0x00000000, 0x00000000, 0x00000334, 0x00000000, 0x00000000, 0x00000334, 0x00000000, 0x00000000, 0x00000001, 0x00020001, 0x00100000, 0x80000000, 0x00000000, 0x00000000, 0x00000334, 0x00000000, 0x00000000, 0x000002D0, 0x00000000, 0x00000000, 0x00000001, 0x00050010, 0x00B00000, 0x80000000, 0x00000000, 0x00000000, 0x000002D0, 0x00000000, 0x00000000, 0x000002D0, 0x00000000, 0x00000000, 0x00000001, 0x0000003E, 0x00000003, 0x00040028, 0x00467D74, 0x00000000, 0xFFFFFFFF, 0x00000031, 0x000002CF, 0x00000001, 0x0000002F, 0x000002AF, 0x3D888889, 0xBD888889, 0xBD888889, 0x00040046, 0x00DC8010, 0x00000000, 0x00000001, 0x0000002F, 0x000002AF, 0x00000000, 0x00000086, 0x00000015, 0xBBDA740E, 0x3F147AE1, 0x3BDA740E, 0x000200DC, 0x01108000, 0x00000000, 0x00000000, 0x00000086, 0x00000015, 0x00000000, 0x00000065, 0x00000002, 0x00000000, 0xBF227627, 0x00000000, 0x00000003, 0x00000001, 0x000C0154, 0x01550000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0xFFFFFFFD, 0xFFFFFFFF, 0x00000000, 0xFFFFFFFD, 0x00000000, 0x00000000, 0x00000000, 0x00000013, 0x00000006, 0xFFFF0000, 0x0032FFFF, 0xFFFFFFFF, 0x70E60032, 0x003C0000, 0x00000000, 0xFFFF003C, 0x00FAFFFF, 0xFFFFFFFF, 0x70E700FA, 0x01040000, 0x00000000, 0xFFFF0104, 0x0122FFFF, 0xFFFFFFFF, 0x70E80122, 0x01400000, 0x00000000, 0x00000001, 0x00010000, 0x00FB0000, 0x00000000, 0x42700000, 0xFFC5000C, 0x02B20222, 0x00000000, 0x42700000, 0xFFC5000C, 0x02B200FA, 0x00000000, 0x42700000, 0xFFC5000C, 0x02B20000, 0x00000000, 0x42700000, 0xFFC5000C, 0x02B20000, 0x00000000, 0x42700000, 0xFFC5000C, 0x02B20000, 0x00000000, 0x42700000, 0xFFE10018, 0x02BD0000, 0x00000000, 0x42700000, 0xFFE10018, 0x02BD0000, 0x00000000, 0x42700000, 0xFFE10018, 0x02BD0000, 0x00000000, 0x42700000, 0xFFE10018, 0x02BD2D70, 0x00000000, 0x42700000, 0xFFE10018, 0x02BD0085, 0x00000000, 0x42700000, 0xFFE10018, 0x02BD01E6, 0xFF000000, 0x42700000, 0xFFE10018, 0x02BD0000, 0x00000001, 0x0001005A, 0x014B0000, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC0222, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC00FA, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC0000, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC0000, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC0000, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC0000, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC0000, 0x00000000, 0x42700000, 0xFF66005C, 0x00EC0000, 0xFF000000, 0x42700000, 0xFF66005C, 0x00EC2D70, 0x00000001, 0x000100DC, 0x01EB0000, 0x00000000, 0x42700001, 0xFFFE007A, 0x00270222, 0x00000000, 0x42700001, 0xFFFE007A, 0x002700FA, 0x00000000, 0x42700001, 0xFFFE0066, 0x00270000, 0x00000000, 0x42700001, 0xFFFE005A, 0x00270000, 0x00000000, 0x42700001, 0xFFFE0051, 0x003E0000, 0x00000000, 0x42700001, 0xFFFE0051, 0x003E0000, 0x00000000, 0x42700001, 0xFFFE0051, 0x003E0000, 0x00000000, 0x42700001, 0xFFFE0051, 0x003E0000, 0x00000000, 0x42700001, 0xFFFE0051, 0x003E2D70, 0xFF000000, 0x42700001, 0xFFFE0051, 0x003E0085, 0x00000002, 0x00010000, 0x01180000, 0x0000001E, 0x42700000, 0x002B0034, 0x02CC0222, 0x0000001E, 0x42700000, 0x002B0034, 0x02CC00FA, 0x0000000A, 0x42700000, 0x002B0034, 0x02CC0000, 0x0000000A, 0x42700000, 0x002B0034, 0x02CC0000, 0x0000000A, 0x42700000, 0x002B0034, 0x02CC0000, 0x0000000A, 0x42700000, 0x003F0056, 0x02D20000, 0x0000001E, 0x42700000, 0x003F0056, 0x02D20000, 0x0000001E, 0x42700000, 0x003F0056, 0x02D20000, 0x0000001E, 0x42700000, 0x003F0056, 0x02D22D70, 0x0000001E, 0x42700000, 0x003F0055, 0x02D10085, 0x0000001E, 0x42700000, 0x003F0055, 0x02D101E6, 0xFF00001E, 0x42700000, 0x003E0055, 0x02D10000, 0x00000002, 0x0001005A, 0x01680000, 0x0000001E, 0x42700000, 0xFF970053, 0x016E0222, 0x0000001E, 0x42700000, 0xFF980053, 0x016C00FA, 0x0000001E, 0x42700000, 0xFFC10053, 0x01530000, 0x0000001E, 0x42700000, 0xFFF00063, 0x00FF0000, 0x0000001E, 0x42700000, 0xFFE2006F, 0x00B10000, 0x0000001E, 0x42700000, 0xFFB00070, 0x00790000, 0x0000001E, 0x42700000, 0xFFB00070, 0x00790000, 0x0000001E, 0x42700000, 0xFFB00070, 0x00790000, 0xFF00001E, 0x42700000, 0xFFB00070, 0x00792D70, 0x00000002, 0x000100DC, 0x02080000, 0x0000001E, 0x42700001, 0x00000089, 0xFFC90222, 0x0000001E, 0x42700001, 0x00000089, 0xFFC900FA, 0x0000001E, 0x42700001, 0x00000075, 0xFFC90000, 0x0000001E, 0x42700001, 0x00000069, 0xFFC90000, 0x0000001E, 0x42700001, 0x00000062, 0xFFE10000, 0x0000001E, 0x42700001, 0x00000062, 0xFFE10000, 0x0000001E, 0x42700001, 0x00000062, 0xFFE10000, 0x0000001E, 0x42700001, 0x00000062, 0xFFE10000, 0x0000001E, 0x42700001, 0x00000062, 0xFFE12D70, 0xFF00001E, 0x42700001, 0x00000062, 0xFFE10085, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000
glabel Bg_Toki_Swd_InitVars
.word 0x006C0600, 0x00000010, 0x005E0000, 0x0000019C
.word BgTokiSwd_Init
.word BgTokiSwd_Destroy
.word BgTokiSwd_Update
.word BgTokiSwd_Draw
glabel D_808BC3E0
.word 0x0A000039, 0x12010000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00000100, 0x000A0046, 0x00000000, 0x00000000
glabel D_808BC40C
.word 0x0A000023, 0x0064FF00
glabel D_808BC414
.word 0x48500019, 0x00000000, 0x00000000
@@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_808BC460
.incbin "baserom/ovl_Bg_Toki_Swd", 0x1620, 0x000000A0
@@ -1,23 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_808BC420
.asciz "../z_bg_toki_swd.c"
.balign 4
glabel D_808BC434
.asciz "../z_bg_toki_swd.c"
.balign 4
glabel D_808BC448
.asciz "../z_bg_toki_swd.c"
.balign 4
.balign 16
-23
View File
@@ -1,23 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .data
glabel D_808C1010
.word func_808C0CD4
.word func_808C0D08
glabel D_808C1018
.word 0x485003E8
glabel D_808C101C
.word func_808C0EEC
glabel Bg_Zg_InitVars
.word 0x01770400, 0x00000010, 0x01560000, 0x0000016C
.word BgZg_Init
.word BgZg_Destroy
.word BgZg_Update
.word BgZg_Draw
-11
View File
@@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_808C10F0
.incbin "baserom/ovl_Bg_Zg", 0x4D0, 0x000000A0
-37
View File
@@ -1,37 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_808C1040
.asciz "!!!!!!!!!!!!!!!!!!!!!!!!!\n"
.balign 4
glabel D_808C107C
.asciz "../z_bg_zg.c"
.balign 4
glabel D_808C108C
.asciz "../z_bg_zg.c"
.balign 4
glabel D_808C109C
.asciz "../z_bg_zg.c"
.balign 4
glabel D_808C10AC
.asciz "!!!!!!!!!!!!!!!!!!!!!!!!!\n"
.balign 4
glabel D_808C10E4
.word 0x3F99999A
glabel D_808C10E8
.word 0x3FA66666
glabel D_808C10EC
.word 0x3F99999A
-42
View File
@@ -1,42 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .data
glabel En_Tk_InitVars
.word 0x00850400, 0x00000009, 0x00890000, 0x00000770
.word EnTk_Init
.word EnTk_Destroy
.word EnTk_Update
.word EnTk_Draw
glabel D_80B1D4D0
.word 0x040539B0, 0x040535B0, 0x040531B0, 0x04052DB0, 0x040529B0, 0x040525B0, 0x040521B0, 0x04051DB0
glabel D_80B1D4F0
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80B1D4FC
.word 0x00000000, 0x3E99999A, 0x00000000
glabel D_80B1D508
.word 0x0A000039, 0x20010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x001E0034, 0x00000000, 0x00000000
glabel D_80B1D534
.word 0x00000000, 0x00000000, 0xFF000000
glabel D_80B1D540
.word 0x42100000, 0x41200000
glabel D_80B1D548
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80B1D554
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80B1D560
.word 0x00000000, 0x3E99999A, 0x00000000
glabel D_80B1D56C
.word 0x00000000, 0x00000001, 0x00000002, 0x00000014, 0x00000006
glabel D_80B1D580
.word 0x00000000, 0x00000000, 0x458FC000
glabel D_80B1D58C
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80B1D598
.word 0x06003B40, 0x06004340, 0x06004B40, 0x00000000, 0x00000000, 0x00000000
-11
View File
@@ -1,11 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_80B1D690
.incbin "baserom/ovl_En_Tk", 0x1D90, 0x00000200
-70
View File
@@ -1,70 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purposee registers
.section .rodata
glabel D_80B1D5B0
.asciz "../z_en_tk_eff.c"
.balign 4
glabel D_80B1D5C4
.asciz "../z_en_tk_eff.c"
.balign 4
glabel D_80B1D5D8
.asciz "../z_en_tk_eff.c"
.balign 4
glabel D_80B1D5EC
.asciz "../z_en_tk.c"
.balign 4
glabel D_80B1D5FC
.asciz "../z_en_tk.c"
.balign 4
glabel D_80B1D60C
.asciz "../z_en_tk.c"
.balign 4
glabel D_80B1D61C
.asciz "../z_en_tk.c"
.balign 4
glabel D_80B1D62C
.word 0x3E4CCCCD
glabel D_80B1D630
.word 0x3ECCCCCD
glabel D_80B1D634
.word 0x461C4000
glabel D_80B1D638
.word 0x452AAAAB
glabel D_80B1D63C
.word 0x4622F983
glabel jtbl_80B1D640
.word L80B1C724
.word L80B1C724
.word L80B1C5EC
.word L80B1C724
.word L80B1C614
.word L80B1C6E4
.word L80B1C724
.word L80B1C724
.word L80B1C724
.word L80B1C724
glabel D_80B1D668
.word 0x3ECCCCCD, 0x00000000
glabel D_80B1D670
.word 0x3FE66666, 0x66666666
glabel D_80B1D678
.word 0x3FECCCCC, 0xCCCCCCCD
glabel D_80B1D680
.word 0x3DCCCCCD
glabel D_80B1D684
.word 0xBDCCCCCD, 0x00000000, 0x00000000
+2
View File
@@ -1,3 +1,5 @@
#!/usr/bin/env bash
var="$1"
if [ ! -n "$var" ]
then
Executable
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env bash
FORMAT_OPTS="-i -style=file"
TIDY_OPTS="-p . --fix --fix-errors"
COMPILER_OPTS="-fno-builtin -std=gnu90 -Iinclude -Isrc -D_LANGUAGE_C"
shopt -s globstar
if (( $# > 0 )); then
echo "Formatting file(s) $*"
echo "Running clang-format..."
clang-format ${FORMAT_OPTS} "$@"
echo "Running clang-tidy..."
clang-tidy ${TIDY_OPTS} "$@" -- ${COMPILER_OPTS} &> /dev/null
echo "Adding missing final new lines..."
sed -i -e '$a\' "$@"
echo "Done formatting file(s) $*"
exit
fi
echo "Formatting C files. This will take a bit"
echo "Running clang-format..."
clang-format ${FORMAT_OPTS} src/**/*.c
echo "Running clang-tidy..."
clang-tidy ${TIDY_OPTS} src/**/*.c -- ${COMPILER_OPTS} &> /dev/null
echo "Adding missing final new lines..."
find src/ -type f -name "*.c" -exec sed -i -e '$a\' {} \;
echo "Done formatting all files."
+3 -6
View File
@@ -1,18 +1,15 @@
#ifndef _COLOR_H_
#define _COLOR_H_
typedef struct
{
typedef struct {
u8 r, g, b;
} Color_RGB8;
typedef struct
{
typedef struct {
u8 r, g, b, a;
} Color_RGBA8;
typedef struct
{
typedef struct {
f32 r, g, b, a;
} Color_RGBAf;
+121 -94
View File
@@ -26,7 +26,8 @@ void DmaMgr_ThreadEntry(void* arg0);
s32 DmaMgr_SendRequestImpl(DmaRequest* req, u32 ram, u32 vrom, u32 size, u32 unk, OSMesgQueue* queue, OSMesg msg);
s32 DmaMgr_SendRequest0(u32 ram, u32 vrom, u32 size);
void DmaMgr_Start();
s32 DmaMgr_SendRequest2(DmaRequest* req, u32 ram, u32 vrom, u32 size, u32 unk5, OSMesgQueue* queue, OSMesg msg, const char* file, s32 line);
s32 DmaMgr_SendRequest2(DmaRequest* req, u32 ram, u32 vrom, u32 size, u32 unk5, OSMesgQueue* queue, OSMesg msg,
const char* file, s32 line);
s32 DmaMgr_SendRequest1(void* ram0, u32 vrom, u32 size, const char* file, s32 line);
void* Yaz0_FirstDMA();
void* Yaz0_NextDMA(void* curSrcPos);
@@ -42,26 +43,29 @@ void isPrintfInit();
void osSyncPrintfUnused(const char* fmt, ...);
void osSyncPrintf(const char* fmt, ...);
void rmonPrintf(const char* fmt, ...);
u32 is_proutSyncPrintf(void* arg0, const char *str, s32 count);
u32 is_proutSyncPrintf(void* arg0, const char* str, s32 count);
void func_80002384(const char* exp, const char* file, u32 line);
OSPiHandle* osDriveRomInit();
void Yaz0_Old_DecompressImpl(Yaz0Header* hdr, u8* dst);
void StackCheck_Init(StackEntry* entry, void* stackTop, void* stackBottom, u32 initValue, s32 minSpace, const char* name);
void StackCheck_Init(StackEntry* entry, void* stackTop, void* stackBottom, u32 initValue, s32 minSpace,
const char* name);
void StackCheck_Cleanup(StackEntry* entry);
StackStatus StackCheck_GetState(StackEntry* entry);
u32 StackCheck_CheckAll();
u32 StackCheck_Check(StackEntry* entry);
float LogUtils_CheckFloatRange(const char* exp, s32 arg1, const char* var1Name, float var1, const char* var2Name, float var2, const char* var3Name, float var3);
s32 LogUtils_CheckIntRange(const char* exp, s32 arg1, const char* var1Name, s32 var1, const char* var2Name, s32 var2, const char* var3Name, s32 var3);
float LogUtils_CheckFloatRange(const char* exp, s32 arg1, const char* var1Name, float var1, const char* var2Name,
float var2, const char* var3Name, float var3);
s32 LogUtils_CheckIntRange(const char* exp, s32 arg1, const char* var1Name, s32 var1, const char* var2Name, s32 var2,
const char* var3Name, s32 var3);
void LogUtils_LogHexDump(void* ptr, s32 size0);
void LogUtils_LogPointer(s32 value, u32 max, void* ptr, const char *name, const char *file, s32 line);
void LogUtils_LogPointer(s32 value, u32 max, void* ptr, const char* name, const char* file, s32 line);
void LogUtils_CheckBoundary(const char* name, s32 value, s32 unk, const char* file, s32 line);
void LogUtils_CheckNullPointer(const char* exp, void* ptr, const char* file, s32 line);
void LogUtils_CheckValidPointer(const char* exp, void* ptr0, const char* file, s32 line);
void LogUtils_LogThreadId(const char* name, s32 line);
void LogUtils_HungupThread(const char* name, s32 line);
void LogUtils_ResetHungup();
char* proutSprintf(char* dst, const char *fmt, size_t size);
char* proutSprintf(char* dst, const char* fmt, size_t size);
s32 vsprintf(char* dst, const char* fmt, va_list args);
s32 sprintf(char* dst, const char* fmt, ...);
void __osPiCreateAccessQueue(void);
@@ -88,55 +92,55 @@ void __osExceptionPreamble();
// ? __osException(?);
void __osEnqueueAndYield(OSThread**);
void __osEnqueueThread(OSThread**, OSThread*);
OSThread *__osPopThread(OSThread**);
OSThread* __osPopThread(OSThread**);
// ? __osNop(?);
void __osDispatchThread();
void __osCleanupThread(void);
void __osDequeueThread(OSThread **queue, OSThread *thread);
void osDestroyThread(OSThread *thread);
void bzero(void *__s, u32 __n);
void __osDequeueThread(OSThread** queue, OSThread* thread);
void osDestroyThread(OSThread* thread);
void bzero(void* __s, u32 __n);
void osCreateThread(OSThread* thread, OSId id, void (*entry)(void*), void* arg, void* sp, OSPri pri);
void __osSetSR(u32);
u32 __osGetSR();
void osWritebackDCache(void *vaddr, s32 nbytes);
void osWritebackDCache(void* vaddr, s32 nbytes);
void* osViGetNextFramebuffer();
void osCreatePiManager(OSPri pri, OSMesgQueue *cmdQ, OSMesg *cmdBuf, s32 cmdMsgCnt);
void osCreatePiManager(OSPri pri, OSMesgQueue* cmdQ, OSMesg* cmdBuf, s32 cmdMsgCnt);
void __osDevMgrMain(void* arg);
s32 __osPiRawStartDma(s32 dir, u32 cart_addr, void *dram_addr, size_t size);
s32 __osPiRawStartDma(s32 dir, u32 cart_addr, void* dram_addr, size_t size);
u32 osVirtualToPhysical(void* vaddr);
void osViBlack(u8 active);
s32 __osSiRawReadIo(void *a0, u32 *a1);
s32 __osSiRawReadIo(void* a0, u32* a1);
OSId osGetThreadId(OSThread* thread);
OSIntMask osSetIntMask(OSIntMask);
void osViSetMode(OSViMode *mode);
u32 __osProbeTLB(void *);
void osViSetMode(OSViMode* mode);
u32 __osProbeTLB(void*);
u32 osGetMemSize(void);
void osSetEventMesg(OSEvent e, OSMesgQueue *mq, OSMesg msg);
s32 _Printf(char *(*pfn)(char *, const char *, size_t), char *arg, const char *fmt, va_list ap);
void osSetEventMesg(OSEvent e, OSMesgQueue* mq, OSMesg msg);
s32 _Printf(char* (*pfn)(char*, const char*, size_t), char* arg, const char* fmt, va_list ap);
void osUnmapTLBAll(void);
s32 osEPiStartDma(OSPiHandle* handle, OSIoMesg* mb, s32 direction);
const u8 *strchr(const u8 *str, s32 ch);
size_t strlen(const u8 *str);
void *memcpy(void *dst, const void *src, size_t size);
const u8* strchr(const u8* str, s32 ch);
size_t strlen(const u8* str);
void* memcpy(void* dst, const void* src, size_t size);
void osInvalICache(void* vaddr, s32 nbytes);
void osCreateMesgQueue(OSMesgQueue* mq, OSMesg* msg, s32 count);
void osInvalDCache(void* vaddr, s32 nbytes);
u32 __osSiDeviceBusy();
void osSetThreadPri(OSThread* thread, OSPri pri);
OSPri osGetThreadPri(OSThread* thread);
s32 __osEPiRawReadIo(OSPiHandle *handle, u32 devAddr, u32 *data);
void osViSwapBuffer(void *vaddr);
s32 __osEPiRawStartDma(OSPiHandle *handle, s32 direction, u32 cartAddr, void* dramAddr, size_t size);
u32 bcmp(void *__sl,void *__s2,u32 __n);
s32 __osEPiRawReadIo(OSPiHandle* handle, u32 devAddr, u32* data);
void osViSwapBuffer(void* vaddr);
s32 __osEPiRawStartDma(OSPiHandle* handle, s32 direction, u32 cartAddr, void* dramAddr, size_t size);
u32 bcmp(void* __sl, void* __s2, u32 __n);
OSTime osGetTime(void);
void __osTimerServicesInit();
void __osTimerInterrupt();
void __osSetTimerIntr(OSTime tim);
OSTime __osInsertTimer(OSTimer *a0);
OSTime __osInsertTimer(OSTimer* a0);
u32 osGetCount(void);
void __osSetGlobalIntMask(u32 mask);
void __osSetCompare(u32);
void* bcopy(void *__src,void *__dest,u32 __n);
void* bcopy(void* __src, void* __dest, u32 __n);
void __osResetGlobalIntMask(u32 mask);
s32 __osDisableInt(void);
void __osRestoreInt(s32);
@@ -151,9 +155,9 @@ u32 __osGetFpcCsr();
s32 osEPiWriteIo(OSPiHandle* handle, u32 devAddr, u32 data);
void osMapTLBRdb(void);
u32 __osGetCause();
s32 __osEPiRawWriteIo(OSPiHandle *handle, u32 devAddr, u32 data);
s32 __osEPiRawWriteIo(OSPiHandle* handle, u32 devAddr, u32 data);
void osCreateViManager(OSPri pri);
void viMgrMain(void *vargs);
void viMgrMain(void* vargs);
OSViContext* __osViGetCurrentContext();
void osStartThread(OSThread* thread);
void osViSetYScale(float scale);
@@ -223,8 +227,8 @@ void func_80028B74(GlobalContext*, Vec3f*, UNK_PTR, UNK_PTR, Color_RGB8*, Color_
// ? func_80028FD8(?);
// ? func_80029060(?);
void Effect_SpawnFragment(GlobalContext* globalCtx, Vec3f* burstDepthY, Vec3f* burstDepthX, Vec3f* burstOrigin,
s16 gravityInfluence, s16 u0, s16 rotSpeed, s16 burstVel, u8 u1, s16 scale, u8 u2,
s16 jitter, s32 duration, s16 u3, s16 objNumber, u32 dList);
s16 gravityInfluence, s16 u0, s16 rotSpeed, s16 burstVel, u8 u1, s16 scale, u8 u2, s16 jitter,
s32 duration, s16 u3, s16 objNumber, u32 dList);
// ? func_800292DC(?);
// ? func_80029320(?);
// ? func_80029444(?);
@@ -238,7 +242,8 @@ void Effect_SpawnFragment(GlobalContext* globalCtx, Vec3f* burstDepthY, Vec3f* b
// ? func_8002A32C(?);
// ? func_8002A3C4(?);
void func_8002A65C(GlobalContext* globalCtx, Actor* actor, Vec3f* pos, u32 arg3, u32 arg4);
void func_8002A6B8(GlobalContext* globalCtx, Vec3f* pos, Vec3f* arg2, Vec3f* arg3, u32 arg4, s32 arg5, u32 arg6, u32 arg7, u32 arg8, u32 arg9, u32 arg10, u32 arg11, u32 arg12, u32 arg13, u32 arg14, u32 arg15);
void func_8002A6B8(GlobalContext* globalCtx, Vec3f* pos, Vec3f* arg2, Vec3f* arg3, u32 arg4, s32 arg5, u32 arg6,
u32 arg7, u32 arg8, u32 arg9, u32 arg10, u32 arg11, u32 arg12, u32 arg13, u32 arg14, u32 arg15);
// ? func_8002A894(?);
// ? func_8002A95C(?);
// ? func_8002A9F4(?);
@@ -268,10 +273,10 @@ void Flags_SetTempClear(GlobalContext* globalCtx, s32 flag);
void Flags_UnsetTempClear(GlobalContext* globalCtx, s32 flag);
s32 Flags_GetCollectible(GlobalContext* globalCtx, s32 flag);
void Flags_SetCollectible(GlobalContext* globalCtx, s32 flag);
void TitleCard_InitBossName(GlobalContext* globalCtx, TitleCardContext* titleCtx, u32 texture,
s16 arg3, s16 arg4, u8 arg5, u8 arg6);
void TitleCard_InitPlaceName(GlobalContext* globalCtx, TitleCardContext* titleCtx, u32 texture,
s32 arg3, s32 arg4, s32 arg5, s32 arg6, s32 arg7);
void TitleCard_InitBossName(GlobalContext* globalCtx, TitleCardContext* titleCtx, u32 texture, s16 arg3, s16 arg4,
u8 arg5, u8 arg6);
void TitleCard_InitPlaceName(GlobalContext* globalCtx, TitleCardContext* titleCtx, u32 texture, s32 arg3, s32 arg4,
s32 arg5, s32 arg6, s32 arg7);
s32 func_8002D53C(GlobalContext* globalCtx, TitleCardContext* titleCtx);
void Actor_Kill(Actor* actor);
void Actor_SetHeight(Actor* actor, f32 offset);
@@ -357,18 +362,18 @@ void func_800304DC(GlobalContext* globalCtx, ActorContext* actorCtx, ActorEntry*
void Actor_UpdateAll(GlobalContext* globalCtx, ActorContext* actorCtx);
s32 func_800314D4(GlobalContext* globalCtx, Actor* actorB, Vec3f* arg2, f32 arg3);
void func_80031B14(GlobalContext* globalCtx, ActorContext* actorCtx);
Actor* Actor_Spawn(ActorContext* actorCtx, GlobalContext* globalCtx, s16 actorId,
f32 posX, f32 posY, f32 posZ, s16 rotX, s16 rotY, s16 rotZ, s16 params);
Actor* Actor_SpawnAttached(ActorContext* actorCtx, Actor* attachedTo, GlobalContext* globalCtx, s16 actorId,
f32 posX, f32 posY, f32 posZ, s16 rotX, s16 rotY, s16 rotZ, s16 params);
Actor* Actor_Spawn(ActorContext* actorCtx, GlobalContext* globalCtx, s16 actorId, f32 posX, f32 posY, f32 posZ,
s16 rotX, s16 rotY, s16 rotZ, s16 params);
Actor* Actor_SpawnAttached(ActorContext* actorCtx, Actor* attachedTo, GlobalContext* globalCtx, s16 actorId, f32 posX,
f32 posY, f32 posZ, s16 rotX, s16 rotY, s16 rotZ, s16 params);
void Actor_SpawnTransitionActors(GlobalContext* globalCtx, ActorContext* actorCtx);
Actor* Actor_SpawnEntry(ActorContext* actorCtx, ActorEntry* actorEntry, GlobalContext* globalCtx);
Actor* Actor_Delete(ActorContext* actorCtx, Actor* actor, GlobalContext* globalCtx);
Actor* func_80032AF0(GlobalContext* globalCtx, ActorContext* actorCtx, Actor** actorPtr, Player* player);
Actor* Actor_Find(ActorContext* actorCtx, s32 actorId, s32 actorType);
void func_80032C7C(GlobalContext* globalCtx, Actor* actor);
void func_80033260(GlobalContext* globalCtx, Actor* actor, Vec3f* arg2, f32 arg3,
s32 arg4, f32 arg5, s16 arg6, s16 arg7, u8 arg8);
void func_80033260(GlobalContext* globalCtx, Actor* actor, Vec3f* arg2, f32 arg3, s32 arg4, f32 arg5, s16 arg6,
s16 arg7, u8 arg8);
void func_80033480(GlobalContext* globalCtx, Vec3f* arg1, f32 arg2, s32 arg3, s16 arg4, s16 arg5, u8 arg6);
Actor* func_80033640(GlobalContext* globalCtx, Collider* collider);
Actor* func_80033684(GlobalContext* globalCtx, Actor* explosiveActor);
@@ -389,9 +394,13 @@ void func_8003424C(GlobalContext* globalCtx, Vec3f* arg1);
void func_8003426C(Actor* actor, s16 arg1, s16 arg2, s16 arg3, s16 arg4);
Hilite* func_800342EC(Vec3f* object, GlobalContext* globalCtx);
Hilite* func_8003435C(Vec3f* object, GlobalContext* globalCtx);
s32 func_800343CC(GlobalContext* globalCtx, Actor* actor, s16* arg2, f32 arg3, u16 (*unkFunc1)(GlobalContext*, Actor*),
s16 (*unkFunc2)(GlobalContext*, Actor*));
s16 func_800347E8(s16 arg0);
void func_80034BA0(GlobalContext* globalCtx, SkelAnime* skelAnime, void* unkFunc1, void* unkFunc2, Actor* actor, s16 alpha);
void func_80034CC4(GlobalContext* globalCtx, SkelAnime* skelAnime, void* unkFunc1, void* unkFunc2, Actor* actor, s16 alpha);
void func_80034BA0(GlobalContext* globalCtx, SkelAnime* skelAnime, void* unkFunc1, void* unkFunc2, Actor* actor,
s16 alpha);
void func_80034CC4(GlobalContext* globalCtx, SkelAnime* skelAnime, void* unkFunc1, void* unkFunc2, Actor* actor,
s16 alpha);
void func_80034EC0(SkelAnime* skelAnime, struct_80034EC0_Entry* arg1, s32 arg2);
void Actor_Noop(Actor* actor, GlobalContext* globalCtx);
void Draw_DListOpa(GlobalContext* globalCtx, u32 dlist);
@@ -648,7 +657,7 @@ s16 func_8005A9F4(Camera* camera);
// ? func_8005AFB4(?);
// ? func_8005B044(?);
// ? func_8005B1A4(?);
s32 CollisionBtlTbl_Get(s32 index);
s32 CollisionBtlTbl_Get(s32 index);
// ? func_8005B280(?);
// ? func_8005B2AC(?);
// ? func_8005B65C(?);
@@ -687,7 +696,8 @@ s32 func_8005C328(GlobalContext* globalCtx, ColliderDimensions* dest, ColliderDi
s32 ActorCollider_AllocCylinder(GlobalContext* globalCtx, ColliderCylinderMain* collision);
s32 ActorCollider_FreeCylinder(GlobalContext* globalCtx, ColliderCylinderMain* collision);
s32 func_8005C3F4(GlobalContext* globalCtx, ColliderCylinderMain* collision, ColliderCylinderInit* arg2);
s32 ActorCollider_InitCylinder(GlobalContext* globalCtx, ColliderCylinderMain* collision, Actor* actor, ColliderCylinderInit* src);
s32 ActorCollider_InitCylinder(GlobalContext* globalCtx, ColliderCylinderMain* collision, Actor* actor,
ColliderCylinderInit* src);
s32 func_8005C508(GlobalContext* globalCtx, ColliderCylinderMain* collision);
s32 func_8005C540(GlobalContext* globalCtx, ColliderCylinderMain* collision);
s32 func_8005C578(GlobalContext* globalCtx, ColliderCylinderMain* collision);
@@ -720,9 +730,12 @@ void func_8005D400(UNK_TYPE, UNK_TYPE);
// ? func_8005D40C(?);
// ? func_8005D4DC(?);
// ? func_8005D62C(?);
s32 Actor_CollisionCheck_SetAT(GlobalContext* globalCtx, SubGlobalContext11E60* simpleBodyGroups, ColliderCylinderMain* collision);
s32 Actor_CollisionCheck_SetAC(GlobalContext* globalCtx, SubGlobalContext11E60* simpleBodyGroups, ColliderCylinderMain* collision);
s32 Actor_CollisionCheck_SetOT(GlobalContext* globalCtx, SubGlobalContext11E60* simpleBodyGroups, ColliderCylinderMain* collision);
s32 Actor_CollisionCheck_SetAT(GlobalContext* globalCtx, SubGlobalContext11E60* simpleBodyGroups,
ColliderCylinderMain* collision);
s32 Actor_CollisionCheck_SetAC(GlobalContext* globalCtx, SubGlobalContext11E60* simpleBodyGroups,
ColliderCylinderMain* collision);
s32 Actor_CollisionCheck_SetOT(GlobalContext* globalCtx, SubGlobalContext11E60* simpleBodyGroups,
ColliderCylinderMain* collision);
// ? func_8005DF2C(?);
// ? func_8005DF50(?);
// ? func_8005DF74(?);
@@ -743,8 +756,8 @@ s32 Actor_CollisionCheck_SetOT(GlobalContext* globalCtx, SubGlobalContext11E60*
// ? func_80061C98(?);
// ? func_80061E48(?);
// ? func_80061E8C(?);
void func_80061ED4(SubActorStruct98 *sub98, ActorDamageChart *damageChart, SubActor98Init *subActor98Init);
// ? func_80061EFC(?);
void func_80061ED4(SubActorStruct98* sub98, ActorDamageChart* damageChart, SubActor98Init* subActor98Init);
void func_80061EFC(SubActorStruct98* sub98, ActorDamageChart* damageChart, SubActor98Init* subActor98Init);
// ? func_80061F64(?);
// ? func_800622E4(?);
// ? func_80062530(?);
@@ -767,9 +780,9 @@ void func_8006375C(s32 arg0, s32 arg1, float* d_80855320);
// ? func_80063C04(?);
// ? func_80063D7C(?);
void DebugDisplay_Init(void);
DebugDispObject* DebugDisplay_AddObject(f32 posX, f32 posY, f32 posZ, s16 rotX, s16 rotY, s16 rotZ,
f32 scaleX, f32 scaleY, f32 scaleZ, u8 red, u8 green, u8 blue, u8 alpha,
s16 type, GraphicsContext* gfxCtx);
DebugDispObject* DebugDisplay_AddObject(f32 posX, f32 posY, f32 posZ, s16 rotX, s16 rotY, s16 rotZ, f32 scaleX,
f32 scaleY, f32 scaleZ, u8 red, u8 green, u8 blue, u8 alpha, s16 type,
GraphicsContext* gfxCtx);
void DebugDisplay_DrawObjects(GlobalContext* globalCtx);
void func_8006450C(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_80064534(GlobalContext* globalCtx, CutsceneContext* csCtx);
@@ -787,6 +800,7 @@ void Audio_PlaySoundAtPosition(GlobalContext* globalCtx, Vec3f* pos2, s32 radius
// ? func_8006BE88(?);
// ? func_8006BF1C(?);
// ? func_8006C0FC(?);
u16 func_8006C360(GlobalContext*, u32);
// ? func_8006C3A0(?);
// ? func_8006C3D0(?);
void func_8006C438(GlobalContext* globalCtx, s16 arg1);
@@ -882,9 +896,12 @@ void Health_InitData(GlobalContext* globalCtx);
void Health_UpdateData(GlobalContext* globalCtx);
void Interface_DrawHealth(GlobalContext* globalCtx);
void Health_HandleCriticalAlarm(GlobalContext* globalCtx);
void Lights_InitPositionalLight(LightInfoPositional* info, s16 posX, s16 posY, s16 posZ, u8 red, u8 green, u8 blue, s16 radius, u32 type);
void Lights_InitType0PositionalLight(LightInfoPositional* info, s16 posX, s16 posY, s16 posZ, u8 red, u8 green, u8 blue, s16 radius);
void Lights_InitType2PositionalLight(LightInfoPositional* info, s16 posX, s16 posY, s16 posZ, u8 red, u8 green, u8 blue, s16 radius);
void Lights_InitPositionalLight(LightInfoPositional* info, s16 posX, s16 posY, s16 posZ, u8 red, u8 green, u8 blue,
s16 radius, u32 type);
void Lights_InitType0PositionalLight(LightInfoPositional* info, s16 posX, s16 posY, s16 posZ, u8 red, u8 green, u8 blue,
s16 radius);
void Lights_InitType2PositionalLight(LightInfoPositional* info, s16 posX, s16 posY, s16 posZ, u8 red, u8 green, u8 blue,
s16 radius);
void Lights_SetPositionalLightColorAndRadius(LightInfoPositional* info, u8 red, u8 green, u8 blue, s16 radius);
void Lights_InitDirectional(LightInfoDirectional* info, s8 dirX, s8 dirY, s8 dirZ, u8 red, u8 green, u8 blue);
void Lights_MapperInit(LightMapper* mapper, u8 red, u8 green, u8 blue);
@@ -1064,7 +1081,7 @@ void func_80093D18(GraphicsContext* gfxCtx);
void func_80093D84(GraphicsContext* gfxCtx);
// ? func_80093F34(?);
// ? func_80093F58(?);
void func_80094044(GraphicsContext *gfxCtx);
void func_80094044(GraphicsContext* gfxCtx);
// ? func_800940B0(?);
// ? func_800942F0(?);
// ? func_8009435C(?);
@@ -1080,8 +1097,10 @@ Gfx* func_800946E4(Gfx* a0);
// ? func_80094DB8(?);
Gfx* func_80094E78(GraphicsContext* gfxCtx, u32 x, u32 y);
Gfx* Draw_TexScroll(GraphicsContext* gfxCtx, u32 x, u32 y, s32 width, s32 height);
Gfx* Draw_TwoTexScroll(GraphicsContext* gfxCtx, s32 tile1, u32 x1, u32 y1, s32 width1, s32 height1, s32 tile2, u32 x2, u32 y2, s32 width2, s32 height2);
Gfx* Draw_TwoTexScrollEnvColor(GraphicsContext* gfxCtx, s32 tile1, u32 x1, u32 y1, s32 width1, s32 height1, s32 tile2, u32 x2, u32 y2, s32 width2, s32 height2, s32 red, s32 green, s32 blue, s32 alpha);
Gfx* Draw_TwoTexScroll(GraphicsContext* gfxCtx, s32 tile1, u32 x1, u32 y1, s32 width1, s32 height1, s32 tile2, u32 x2,
u32 y2, s32 width2, s32 height2);
Gfx* Draw_TwoTexScrollEnvColor(GraphicsContext* gfxCtx, s32 tile1, u32 x1, u32 y1, s32 width1, s32 height1, s32 tile2,
u32 x2, u32 y2, s32 width2, s32 height2, s32 red, s32 green, s32 blue, s32 alpha);
// ? func_80095248(?);
void func_80095AA0(GlobalContext* globalCtx, Room* room, UNK_TYPE arg2, UNK_TYPE arg3);
// ? func_8009638C(?);
@@ -1091,12 +1110,13 @@ s32 func_8009728C(GlobalContext* globalCtx, RoomContext* roomCtx, s32 roomNum);
s32 func_800973FC(GlobalContext* globalCtx, RoomContext* roomCtx);
void Room_Draw(GlobalContext* globalCtx, Room* room, u32 flags);
void func_80097534(GlobalContext* globalCtx, RoomContext* roomCtx);
// ? func_800975D0(?);
// ? func_80097604(?);
// ? func_80097820(?);
// ? func_80097848(?);
// ? func_80097850(?);
// ? func_80097904(?);
void Sample_Calc(SampleContext* this);
void Sample_Draw(SampleContext* this);
void Sample_Update(SampleContext* this);
void Sample_Destroy(SampleContext* this);
void Sample_SetupView(SampleContext* this);
void Sample_LoadTitleStatic(SampleContext* this);
void Sample_Init(SampleContext* this);
void Inventory_ChangeEquipment(s16 equipment, u16 value);
u8 Inventory_DeleteEquipment(GlobalContext* globalCtx, s16 equipment);
void Inventory_ChangeUpgrade(s16 upgrade, s16 value);
@@ -1113,15 +1133,18 @@ void Scene_Draw(GlobalContext* globalCtx);
// ? func_800A0D94(?);
// ? func_800A106C(?);
// ? func_800A1344(?);
void SkelAnime_Draw(GlobalContext* globalCtx, u32 limbIndex, u32 adt, u8 limbDListCnt, void* internal0, void* internal1);
void SkelAnime_Draw(GlobalContext* globalCtx, u32 limbIndex, u32 adt, u8 limbDListCnt, void* internal0,
void* internal1);
// ? func_800A180C(?);
void func_800A1AC8(GlobalContext *globalCtx, u32 limbIndex, u32 actorDrawTbl, u32 dListCount, void* posUpdateFunc, void *drawFunc, Actor* actor);
void func_800A1AC8(GlobalContext* globalCtx, u32 limbIndex, u32 actorDrawTbl, u32 dListCount, void* posUpdateFunc,
void* drawFunc, Actor* actor);
// ? func_800A1D8C(?);
// ? func_800A1FC8(?);
s32 SkelAnime_GetFrameCount(u32 animation);
// ? func_800A2044(?);
// ? func_800A24A0(?);
Gfx* func_800A273C(GlobalContext* globalCtx, u32 limbIndex, u32 adt, u8 limbDListCnt, void* internal0, void* internal1, Actor* actor, Gfx* gfx);
Gfx* func_800A273C(GlobalContext* globalCtx, u32 limbIndex, u32 adt, u8 limbDListCnt, void* internal0, void* internal1,
Actor* actor, Gfx* gfx);
// ? func_800A2E70(?);
// ? func_800A32EC(?);
// ? func_800A3334(?);
@@ -1136,8 +1159,10 @@ Gfx* func_800A273C(GlobalContext* globalCtx, u32 limbIndex, u32 adt, u8 limbDLis
// ? func_800A3F08(?);
// ? func_800A3D70(?);
// ? func_800A4478(?);
void SkelAnime_Init(GlobalContext* globalCtx, SkelAnime* skelAnime, u32 skeleton, u32 animation, u8 unk0, u8 unk1, u8 unk2);
void func_800A46F8(GlobalContext* globalCtx, SkelAnime* skelAnime, u32 skeleton, u32 animation, u8 unk0, u16* unk1, u8 unk2);
void SkelAnime_Init(GlobalContext* globalCtx, SkelAnime* skelAnime, u32 skeleton, u32 animation, u16* unk0, u16* unk1,
u8 unk2);
void func_800A46F8(GlobalContext* globalCtx, SkelAnime* skelAnime, u32 skeleton, u32 animation, u16* unk0, u16* unk1,
u8 unk2);
// ? func_800A4A20(?);
// ? func_800A4AD8(?);
// ? func_800A4D9C(?);
@@ -1147,13 +1172,14 @@ void func_800A46F8(GlobalContext* globalCtx, SkelAnime* skelAnime, u32 skeleton,
s32 SkelAnime_FrameUpdateMatrix(SkelAnime* skelAnime);
// ? func_800A4C58(?);
// ? func_800A4FE4(?);
void SkelAnime_ChangeAnimation(SkelAnime* skelAnime, u32 animation, f32 playbackSpeed, f32 unk0, f32 frameCount, u8 unk1, f32 transitionRate);
void func_800A51E8(SkelAnime *skelAnime, u32 animation);
void func_800A5240(SkelAnime *skelAnime, u32 animation, f32 unk0);
void func_800A529C(SkelAnime *skelAnime, u32 animation, f32 unk0, Actor *actor);
void SkelAnime_ChangeAnimation(SkelAnime* skelAnime, u32 animation, f32 playbackSpeed, f32 unk0, f32 frameCount,
u8 unk1, f32 transitionRate);
void func_800A51E8(SkelAnime* skelAnime, u32 animation);
void func_800A5240(SkelAnime* skelAnime, u32 animation, f32 unk0);
void func_800A529C(SkelAnime* skelAnime, u32 animation, f32 unk0, Actor* actor);
// ? func_800A52F8(?);
// ? func_800A54FC(?);
UNK_TYPE func_800A56C8(SkelAnime* skelAnime, f32 arg1);
s32 func_800A56C8(SkelAnime* skelAnime, f32 arg1);
// ? func_800A56F0(?);
// ? func_800A5774(?);
// ? func_800A57C0(?);
@@ -1345,7 +1371,7 @@ void KaleidoScopeCall_LoadPlayer();
void KaleidoScopeCall_Init(GlobalContext* globalCtx);
void KaleidoScopeCall_Destroy(GlobalContext* globalCtx);
void KaleidoScopeCall_Update(GlobalContext* globalCtx);
void KaleidoScopeCall_Draw(GlobalContext *globalCtx);
void KaleidoScopeCall_Draw(GlobalContext* globalCtx);
// ? func_800BC450(?);
// ? func_800BC490(?);
s32 func_800BC56C(GlobalContext*, s16);
@@ -1376,7 +1402,7 @@ void func_800C0704(GlobalContext*, s16, f32);
// ? func_800C078C(?);
// ? func_800C0808(?);
// ? func_800C0874(?);
void func_800C0C88(GlobalContext *globalCtx);
void func_800C0C88(GlobalContext* globalCtx);
// ? func_800C0A44(?);
// ? func_800C0A88(?);
void func_800C0AF4(GlobalContext*, s8, s16);
@@ -1476,7 +1502,7 @@ void* Graph_Alloc(GraphicsContext* gfxCtx, size_t size);
void func_800C6AC4(Gfx** a0, GraphicsContext* gfxCtx, char* file, s32 line);
void func_800C6B54(Gfx** a0, GraphicsContext* gfxCtx, char* file, s32 line);
Gfx* func_800C6C20(Gfx* a0);
Gfx* func_800C6C28(Gfx* a0, Gfx* dlist); //branch dlist
Gfx* func_800C6C28(Gfx* a0, Gfx* dlist); // branch dlist
// ? func_800C6C3C(?);
ListAlloc* ListAlloc_Init(ListAlloc* this);
void* ListAlloc_Alloc(ListAlloc* this, u32 size);
@@ -1496,7 +1522,7 @@ void Main(void*);
// ? func_800C7C14(?);
// ? func_800C7DD0(?);
void func_800C7E08(Input*, u32);
//void PadMgr_Init(PadMgr* padmgr, OSMesg mesg, UNK_TYPE arg2, OSId id, OSPri priority, void* stack);
// void PadMgr_Init(PadMgr* padmgr, OSMesg mesg, UNK_TYPE arg2, OSId id, OSPri priority, void* stack);
// ? func_800C82A0(?);
// ? func_800C84E4(?);
// ? func_800C8534(?);
@@ -1646,7 +1672,7 @@ void IrqMgr_AddClient(IrqMgr* this, IrqMgrClient* c, OSMesgQueue* msgQ);
void IrqMgr_RemoveClient(IrqMgr* this, IrqMgrClient* c);
void IrqMgr_SendMesgForClient(IrqMgr* this, OSMesg msg);
void IrqMgr_JamMesgForClient(IrqMgr* this, OSMesg msg);
void IrqMgr_HandlePreNMI(IrqMgr *this);
void IrqMgr_HandlePreNMI(IrqMgr* this);
void IrqMgr_CheckStack();
void IrqMgr_HandlePRENMI450(IrqMgr* this);
void IrqMgr_HandlePRENMI480(IrqMgr* this);
@@ -1728,7 +1754,7 @@ void FaultDrawer_VPrintf(const char*, char*);
void FaultDrawer_Printf(const char*, ...);
void FaultDrawer_DrawText(s32, s32, const char*, ...);
void FaultDrawer_SetDrawerFB(void*, u16, u16);
void FaultDrawer_SetInputCallback(void(*)());
void FaultDrawer_SetInputCallback(void (*)());
void FaultDrawer_SetDefault();
// ? func_800D7CD0(?);
// ? func_800D7D04(?);
@@ -2147,14 +2173,14 @@ void GfxPrint_VPrintf(GfxPrint*, const char*, va_list);
void GfxPrint_Printf(GfxPrint*, const char*, ...);
void func_800FBCE0();
void func_800FBFD8();
void *Overlay_AllocateAndLoad(u32 vRomStart, u32 vRomEnd, void *vRamStart, void *vRamEnd);
void* Overlay_AllocateAndLoad(u32 vRomStart, u32 vRomEnd, void* vRamStart, void* vRamEnd);
// ? func_800FC258(?);
void Overlay_DoRelocation(void *allocatedVRamAddress, OverlayRelocationSection *overlayInfo, void *vRamAddress);
s32 Overlay_Load(u32 vRomStart, u32 vRomEnd, void *vRamStart, void *vRamEnd, void *allocatedVRamAddress);
void Overlay_DoRelocation(void* allocatedVRamAddress, OverlayRelocationSection* overlayInfo, void* vRamAddress);
s32 Overlay_Load(u32 vRomStart, u32 vRomEnd, void* vRamStart, void* vRamEnd, void* allocatedVRamAddress);
// ? func_800FC800(?);
// ? func_800FC83C(?);
// ? func_800FCAB4(?);
void SystemHeap_Init(void *start, u32 size);
void SystemHeap_Init(void* start, u32 size);
// ? func_800FCC00(?);
// ? func_800FCC08(?);
// ? func_800FCC10(?);
@@ -2217,10 +2243,10 @@ u8 __osMallocIsInitalized(Arena* arena);
void __osMalloc_FreeBlockTest(Arena* arena, ArenaNode* node);
void* __osMalloc_NoLockDebug(Arena* arena, u32 size, const char* file, s32 line);
void* __osMallocDebug(Arena* arena, u32 size, const char* file, s32 line);
void* __osMallocRDebug(Arena *arena, u32 size, const char *file, s32 line);
void* __osMalloc_NoLock(Arena *arena, u32 size);
void* __osMallocRDebug(Arena* arena, u32 size, const char* file, s32 line);
void* __osMalloc_NoLock(Arena* arena, u32 size);
void* __osMalloc(Arena* arena, u32 size);
void* __osMallocR(Arena *arena, u32 size);
void* __osMallocR(Arena* arena, u32 size);
void __osFree_NoLock(Arena* arena, void* ptr);
void __osFree(Arena* arena, void* ptr);
void __osFree_NoLockDebug(Arena* arena, void* ptr, const char* file, s32 line);
@@ -2293,11 +2319,12 @@ s16 sins(u16);
// ? func_80103210(?);
// ? func_8010328C(?);
// ? func_801032B0(?);
void func_80103A70(UNK_PTR, Gfx*, Hilite*, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s32, s32);
void func_80103A70(UNK_PTR, Gfx*, Hilite*, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32,
s32, s32);
// ? func_80103B30(?);
// ? func_80103B60(?);
// ? func_80103BB0(?);
// ? func_80103D58(?);
void func_80103D58(Mtx*, f32, f32, f32, f32, f32, f32, f32);
// ? func_80103DC0(?);
// ? func_80103E20(?);
// ? func_80103FA4(?);
@@ -2351,7 +2378,7 @@ f32 absf(f32);
// ? func_801069B0(?);
u8 func_80106BC8(GlobalContext* globalCtx);
// ? func_80106C88(?);
// ? func_80106CCC(?);
void func_80106CCC(GlobalContext*);
// ? func_80106D40(?);
// ? func_80106F1C(?);
// ? func_80107244(?);
@@ -2365,7 +2392,7 @@ u8 func_80106BC8(GlobalContext* globalCtx);
// ? func_80109968(?);
// ? func_80109B3C(?);
// ? func_8010B0C0(?);
// ? func_8010B680(?);
void func_8010B680(GlobalContext*, u16, s32);
void func_8010B720(GlobalContext* globalCtx, u16 textId);
// ? func_8010B820(?);
// ? func_8010BD58(?);
+2 -4
View File
@@ -1,8 +1,7 @@
#ifndef _ICHAIN_H_
#define _ICHAIN_H_
typedef struct
{
typedef struct {
u32 cont: 1;
u32 type: 4;
u32 offset: 11;
@@ -11,8 +10,7 @@ typedef struct
#define OFFSETOF(structure, member) ((size_t)&(((structure*)0)->member))
typedef enum
{
typedef enum {
/* 0x0 */ ICHAINTYPE_U8, // sets byte
/* 0x1 */ ICHAINTYPE_S8,
/* 0x2 */ ICHAINTYPE_U16, // sets short
+5
View File
@@ -13,6 +13,7 @@
#define SQ(x) ((x)*(x))
#define ABS(x) ((x) >= 0 ? (x) : -(x))
#define DECR(x) ((x) == 0 ? 0 : ((x) -= 1))
#define CLAMP(x,min,max) ((x) < (min) ? (min) : (x) > (max) ? (max) : (x))
#define PLAYER ((Player*)globalCtx->actorCtx.actorList[ACTORTYPE_PLAYER].first)
@@ -34,4 +35,8 @@
#define CAPACITY(upg, value) gUpgradeCapacities[upg][value]
#define CUR_CAPACITY(upg) CAPACITY(upg, CUR_UPG_VALUE(upg))
#define SET_NEXT_GAMESTATE(curState, newInit, newStruct) \
(curState)->init = newInit; \
(curState)->size = sizeof(newStruct);
#endif
+5 -6
View File
@@ -6,8 +6,7 @@
#include <ultra64/controller.h>
typedef struct
{
typedef struct {
/* 0x0000 */ OSContStatus pad_status[4];
/* 0x0010 */ OSMesg msgbuf1[1];
/* 0x0014 */ OSMesg msgbuf2[1];
@@ -24,10 +23,10 @@ typedef struct
/* 0x02A8 */ u8 unk_2A8;
/* 0x02A9 */ u8 unk_2A9;
/* 0x02AA */ u8 unk_2AA[4];
/* 0x02AA */ u8 unk_2AE[4]; //Looks like 1 if vibration pack, 2 if (maybe controller pack)?
/* 0x02AA */ u8 unk_2AE[4]; // Looks like 1 if vibration pack, 2 if (maybe controller pack)?
/* 0x02B2 */ u8 unk_2B2[4];
/* 0x02B6 */ u8 unk_2B6[4];
/* 0x02BA */ char unk_2BA[0x02]; //probably padding
/* 0x02BA */ char unk_2BA[0x02]; // probably padding
/* 0x02BC */ unk_controller_t unk_controller[4];
/* 0x045C */ u8 unk_45C;
/* 0x045D */ u8 unk_45D;
@@ -37,5 +36,5 @@ typedef struct
/* 0x0464 */ s32 unk_464;
} PadMgr; // size = 0x468
#endif //_PADMGR_H_
#endif
+1 -1
View File
@@ -1,7 +1,7 @@
#ifndef _REGS_H_
#define _REGS_H_
#define REG_GROUPS 29 //number of REG groups, i.e. REG, SREG, OREG, etc.
#define REG_GROUPS 29 // number of REG groups, i.e. REG, SREG, OREG, etc.
#define REG_PAGES 6
#define REG_PER_PAGE 16
#define REG_PER_GROUP REG_PAGES * REG_PER_PAGE
+3 -6
View File
@@ -13,8 +13,7 @@
#define OS_SC_RCP_MASK 0x0003
#define OS_SC_TYPE_MASK 0x0007
typedef struct OSScTask
{
typedef struct OSScTask {
/* 0x00 */ struct OSScTask* next;
/* 0x04 */ u32 state;
/* 0x08 */ u32 flags;
@@ -24,14 +23,12 @@ typedef struct OSScTask
/* 0x54 */ OSMesg msg;
} OSScTask;
typedef struct
{
typedef struct {
/* 0x00 */ char unk_00[0x12];
/* 0x12 */ s8 unk_12;
} struct_800C8BC4;
typedef struct
{
typedef struct {
/* 0x0000 */ OSMesgQueue interruptQ;
/* 0x0018 */ OSMesg intBuf[8];
/* 0x0038 */ OSMesgQueue cmdQ;
+4 -5
View File
@@ -3,20 +3,20 @@
#include <z64.h>
#define DECLARE_SEGMENT(name) \
#define DECLARE_SEGMENT(name) \
extern u8 _##name##SegmentStart[]; \
extern u8 _##name##SegmentEnd[];
#define DECLARE_ROM_SEGMENT(name) \
#define DECLARE_ROM_SEGMENT(name) \
extern u8 _##name##SegmentRomStart[]; \
extern u8 _##name##SegmentRomEnd[];
#define DECLARE_BSS_SEGMENT(name) \
#define DECLARE_BSS_SEGMENT(name) \
extern u8 _##name##SegmentBssStart[]; \
extern u8 _##name##SegmentBssEnd[];
#define DECLARE_OVERLAY_SEGMENT(name) \
DECLARE_SEGMENT(ovl_##name) \
DECLARE_SEGMENT(ovl_##name) \
DECLARE_ROM_SEGMENT(ovl_##name)
DECLARE_SEGMENT(boot)
@@ -1091,5 +1091,4 @@ DECLARE_ROM_SEGMENT(testroom_room_2)
DECLARE_ROM_SEGMENT(testroom_room_3)
DECLARE_ROM_SEGMENT(testroom_room_4)
#endif
+4 -4
View File
@@ -1,13 +1,13 @@
#ifndef _STDBOOL
#define _STDBOOL
#define __bool_true_false_are_defined 1
#define __bool_true_false_are_defined 1
#ifndef __cplusplus
#define bool u32
#define false 0
#define true 1
#define bool u32
#define false 0
#define true 1
#endif /* __cplusplus */
+1 -1
View File
@@ -1,7 +1,7 @@
#ifndef _STDDEF_H_
#define _STDDEF_H_
#define NULL ((void *)0)
#define NULL ((void*)0)
typedef unsigned long size_t;
+2 -4
View File
@@ -1,14 +1,12 @@
#ifndef _STDLIB_H_
#define _STDLIB_H_
typedef struct lldiv_t
{
typedef struct lldiv_t {
long long quot;
long long rem;
} lldiv_t;
typedef struct ldiv_t
{
typedef struct ldiv_t {
long quot;
long rem;
} ldiv_t;
+4 -2
View File
@@ -1,8 +1,10 @@
#ifndef _STRING_H_
#define _STRING_H_
#include <ultra64/types.h>
void* memcpy(void*, const void*, size_t);
size_t strlen(const u8 *str);
const u8 *strchr(const u8 *str, s32 ch);
size_t strlen(const u8* str);
const u8* strchr(const u8* str, s32 ch);
#endif
+2 -4
View File
@@ -24,15 +24,13 @@ typedef double f64;
typedef long int Mtx_t[4][4];
typedef union
{
typedef union {
Mtx_t m;
long long int forc_structure_alignment;
} Mtx;
typedef float MtxF_t[4][4];
typedef union
{
typedef union {
MtxF_t mf;
struct
{
+2 -2
View File
@@ -21,11 +21,11 @@
#define VT_ESC "\x1b"
#define VT_CSI "["
#define VT_CUP(x, y) VT_ESC VT_CSI #y ";" #x "H"
#define VT_CUP(x, y) VT_ESC VT_CSI y ";" x "H"
#define VT_ED(n) VT_ESC VT_CSI #n "J"
#define VT_SGR(n) VT_ESC VT_CSI n "m"
//Add more macros if necessary
// Add more macros if necessary
#define VT_COL(back, fore) VT_SGR(VT_COLOR(BACKGROUND, back) ";" VT_COLOR(FOREGROUND, fore))
#define VT_FGCOL(color) VT_SGR(VT_COLOR(FOREGROUND, color))
#define VT_BGCOL(color) VT_SGR(VT_COLOR(BACKGROUND, color))
+134 -228
View File
@@ -31,25 +31,22 @@
// Game Info aka. Static Context (dbg ram start: 80210A10)
// Data normally accessed through REG macros (see regs.h)
typedef struct
{
/* 0x00 */ s32 regPage; //1 is first page
/* 0x04 */ s32 regGroup; //"register" group (R, RS, RO, RP etc.)
/* 0x08 */ s32 regCur; //selected register within page
typedef struct {
/* 0x00 */ s32 regPage; // 1 is first page
/* 0x04 */ s32 regGroup; // "register" group (R, RS, RO, RP etc.)
/* 0x08 */ s32 regCur; // selected register within page
/* 0x0C */ s32 dpadLast;
/* 0x10 */ s32 repeat;
/* 0x14 */ s16 data[REG_GROUPS * REG_PER_GROUP]; //0xAE0
/* 0x14 */ s16 data[REG_GROUPS * REG_PER_GROUP]; // 0xAE0 bytes
} GameInfo; // size = 0x15D4
typedef struct
{
typedef struct {
/* 0x00 */ u8 button_items[4];
/* 0x04 */ u8 c_button_slots[3];
/* 0x08 */ u16 equipment;
} ItemEquips; // size = 0x0A
typedef struct
{
typedef struct {
/* 0x00 */ u32 chest;
/* 0x04 */ u32 swch;
/* 0x08 */ u32 clear;
@@ -59,15 +56,13 @@ typedef struct
/* 0x18 */ u32 rooms_2;
} SaveSceneFlags; // size = 0x1C
typedef struct
{
typedef struct {
/* 0x00 */ s16 scene;
/* 0x02 */ Vec3s pos;
/* 0x08 */ s16 angle;
} HorseData; // size = 0x0A
typedef struct
{
typedef struct {
/* 0x00 */ Vec3f pos;
/* 0x0C */ s16 yaw;
/* 0x0E */ s16 player_params;
@@ -78,22 +73,19 @@ typedef struct
/* 0x18 */ u32 temp_collect_flags;
} RespawnData; // size = 0x1C
typedef enum
{
typedef enum {
/* 0x00 */ RESPAWN_MODE_DOWN, /* Normal Void Outs */
/* 0x01 */ RESPAWN_MODE_RETURN, /* Grotto Returnpoints */
/* 0x02 */ RESPAWN_MODE_TOP /* Farore's Wind */
} RespawnMode;
typedef enum
{
typedef enum {
/* 0x00 */ BTN_ENABLED,
/* 0xFF */ BTN_DISABLED = 0xFF
} ButtonStatus;
// Save Context (dbg ram start: 8015E660)
typedef struct
{
typedef struct {
/* 0x0000 */ s32 entrance_index;
/* 0x0004 */ s32 link_age; // 0: Adult; 1: Child
/* 0x0008 */ s32 cutscene_index;
@@ -133,8 +125,7 @@ typedef struct
/* 0x00CF */ s8 defense_hearts;
/* 0x00D0 */ s16 gs_tokens;
/* 0x00D4 */ SaveSceneFlags scene_flags[124];
struct
{
struct {
/* 0x0E64 */ s32 pos_x;
/* 0x0E68 */ s32 pos_y;
/* 0x0E6C */ s32 pos_z;
@@ -217,8 +208,7 @@ typedef struct
/* 0x1424 */ s16 health_accumulator;
} SaveContext; // size = 0x1428
typedef struct
{
typedef struct {
/* 0x00000 */ u16 headMagic; // 1234
/* 0x00008 */ Gfx polyOpaBuffer[0x17E0];
/* 0x0BF08 */ Gfx polyXluBuffer[0x800];
@@ -228,24 +218,21 @@ typedef struct
/* 0x12408 */ u16 tailMagic; // 5678
} GfxPool; // size = 0x12410
typedef struct
{
typedef struct {
/* 0x0000 */ u32 size;
/* 0x0004 */ u8* bufp;
/* 0x0008 */ u8* head;
/* 0x000C */ u8* tail;
} TwoHeadArena; // size = 0x10
typedef struct
{
typedef struct {
/* 0x0000 */ u32 size;
/* 0x0004 */ Gfx* bufp;
/* 0x0008 */ Gfx* p;
/* 0x000C */ Gfx* d;
} TwoHeadGfxArena; // size = 0x10
typedef struct
{
typedef struct {
/* 0x0000 */ char unk_00[0x01B4];
/* 0x01B4 */ TwoHeadGfxArena work;
/* 0x01C4 */ char unk_1C4[0x00E4];
@@ -254,12 +241,9 @@ typedef struct
/* 0x02C8 */ TwoHeadGfxArena polyXlu;
} GraphicsContext;
typedef struct
{
/* 0x00 */ union
{
struct
{
typedef struct {
/* 0x00 */ union {
struct {
u16 a : 1;
u16 b : 1;
u16 z : 1;
@@ -282,8 +266,7 @@ typedef struct
/* 0x03 */ s8 y;
} RawInput; // size = 0x4
typedef struct
{
typedef struct {
/* 0x00 */ RawInput raw;
/* 0x04 */ u16 status;
/* 0x06 */ RawInput rawPrev;
@@ -298,22 +281,21 @@ typedef struct
/* 0x16 */ char unk_16[0x02];
} Input; // size = 0x18
typedef struct
{
typedef struct {
/* 0x0000 */ char unk_00[0x28];
/* 0x0028 */ Vec3f eye;
/* 0x0034 */ char unk_34[0xF4];
/* 0x0034 */ char unk_34[0xEC];
/* 0x0120 */ u32 unk_120;
/* 0x0124 */ char unk_124[4];
} View; // size = 0x128
typedef struct
{
typedef struct {
f32 unk_00;
s16 unk_04;
s16 unk_06;
} struct_80045714; // used in z_camera.c and code_8007BF90
typedef struct
{
typedef struct {
/* 0x0000 */ s32 unk_00;
/* 0x0004 */ s16 unk_04;
/* 0x0006 */ s16 unk_06;
@@ -370,49 +352,42 @@ typedef struct
/* 0x016A */ s16 unk_16A; // unknown if used
} Camera; // size = 0x16C
typedef struct
{
typedef struct {
/* 0x0000 */ Camera activeCameras[4];
/* 0x05B0 */ Camera* activeCameraPtrs[4];
/* 0x05C0 */ s16 unk_5C0;
/* 0x05C2 */ s16 unk_5C2;
} CameraContext; // size = 0x5C4
typedef struct
{
typedef struct {
/* 0x00 */ u8 musicSeq;
/* 0x01 */ u8 nighttimeSFX;
/* 0x02 */ char unk_02[0x2];
} SoundContext; // size = 0x4
typedef struct
{
typedef struct {
/* 0x00 */ char unk_00[0x50];
} StaticCollisionContext; // size = 0x50
typedef struct
{
typedef struct {
/* 0x0000 */ char unk_00[0x04];
/* 0x0004 */ ActorMesh actorMeshArr[50];
/* 0x138C */ u16 flags[50];
/* 0x13F0 */ char unk_13F0[0x24];
} DynaCollisionContext; // size = 0x1414
typedef struct
{
typedef struct {
/* 0x0000 */ StaticCollisionContext stat;
/* 0x0050 */ DynaCollisionContext dyna;
} CollisionContext; // size = 0x1464
typedef struct
{
typedef struct {
/* 0x00 */ Vec3f pos;
/* 0x0C */ f32 unk_0C; // radius?
/* 0x10 */ Color_RGB8 color;
} TargetContextEntry; // size = 0x14
typedef struct
{
typedef struct {
/* 0x00 */ Vec3f naviRefPos; // possibly wrong
/* 0x0C */ Vec3f targetCenterPos;
/* 0x18 */ Color_RGBAf naviInner;
@@ -432,8 +407,7 @@ typedef struct
/* 0x94 */ Actor* unk_94;
} TargetContext; // size = 0x98
typedef struct
{
typedef struct {
/* 0x00 */ u32 texture;
/* 0x04 */ s16 unk_4;
/* 0x06 */ s16 unk_6;
@@ -445,14 +419,12 @@ typedef struct
/* 0x0E */ s16 unk_E;
} TitleCardContext; // size = 0x10
typedef struct
{
typedef struct {
/* 0x00 */ u32 length; // number of actors loaded of this type
/* 0x04 */ Actor* first; // pointer to first actor of this type
} ActorListEntry; // size = 0x08
typedef struct
{
typedef struct {
/* 0x0000 */ u8 unk_00;
/* 0x0001 */ char unk_01[0x01];
/* 0x0002 */ u8 unk_02;
@@ -462,8 +434,7 @@ typedef struct
/* 0x0009 */ char unk_09[0x03];
/* 0x000C */ ActorListEntry actorList[12];
/* 0x006C */ TargetContext targetCtx;
struct
{
struct {
/* 0x0104 */ u32 swch;
/* 0x0108 */ u32 tempSwch;
/* 0x010C */ u32 unk0;
@@ -479,19 +450,16 @@ typedef struct
/* 0x013C */ void* absoluteSpace; // Space used to allocate actor overlays of alloc type 1
} ActorContext; // size = 0x140
typedef struct
{
typedef struct {
/* 0x00 */ char unk_00[0x4];
/* 0x04 */ void* segment;
/* 0x08 */ u8 state;
/* 0x0C */ f32 unk_0C;
/* 0x10 */ u16 frames;
/* 0x12 */ u16 unk_12;
union
{
union {
/* 0x14 */ s32 unk_14_all;
struct
{
struct {
s16 unk_14;
s16 unk_16;
};
@@ -505,8 +473,7 @@ typedef struct
/* 0x28 */ CsCmdActorAction* actorActions[10];
} CutsceneContext; // size = 0x50
typedef struct
{
typedef struct {
/* 0x0000 */ View view;
/* 0x0128 */ char unk_128[0xE188];
/* 0xE2B0 */ void* textboxSegment; // "fukidashiSegment"
@@ -532,8 +499,7 @@ typedef struct
/* 0xE40E */ char unk_E40E[0x0A];
} MessageContext; // size = 0xE418
typedef struct
{
typedef struct {
/* 0x00 */ u32 vromAddr; // VROM address (source)
/* 0x04 */ void* dramAddr; // DRAM address (destination)
/* 0x08 */ u32 size; // File Transfer size
@@ -544,8 +510,7 @@ typedef struct
/* 0x1C */ OSMesg notifyMsg; // Completion notification message
} DmaRequest; // size = 0x20
typedef struct
{
typedef struct {
/* 0x0000 */ View view;
/* 0x0128 */ Vtx* vtx_128;
/* 0x012C */ Vtx* vtx_12C;
@@ -600,8 +565,7 @@ typedef struct
/* 0x025E */ char unk_25E[0x002];
/* 0x0260 */ u8 unk_260;
/* 0x0261 */ u8 unk_261;
struct
{
struct {
/* 0x0262 */ u8 hGauge; // "h_gage"; unknown?
/* 0x0263 */ u8 bButton; // "b_button"
/* 0x0264 */ u8 aButton; // "a_button"
@@ -617,8 +581,7 @@ typedef struct
} restrictions;
} InterfaceContext; // size = 0x270
typedef struct
{
typedef struct {
/* 0x0000 */ View view;
/* 0x0128 */ void* unk_128;
/* 0x012C */ char unk_12C[0x03C];
@@ -643,8 +606,7 @@ typedef struct
/* 0x025A */ char unk_25A[0x066];
} PauseContext; // size = 0x2C0
typedef struct
{
typedef struct {
/* 0x00 */ s16 id;
/* 0x04 */ void* segment;
/* 0x08 */ DmaRequest dmaRequest;
@@ -652,8 +614,7 @@ typedef struct
/* 0x40 */ OSMesg loadMsg;
} ObjectStatus; // size = 0x44
typedef struct
{
typedef struct {
/* 0x0000 */ void* spaceStart;
/* 0x0004 */ void* spaceEnd; // original name: "endSegment"
/* 0x0008 */ u8 num; // number of objects in bank
@@ -663,30 +624,26 @@ typedef struct
/* 0x000C */ ObjectStatus status[OBJECT_EXCHANGE_BANK_MAX];
} ObjectContext; // size = 0x514
typedef struct
{
typedef struct {
/* 0x00 */ Gfx* opa;
/* 0x04 */ Gfx* xlu;
} PolygonDlist; // size = 0x8
typedef struct
{
typedef struct {
/* 0x00 */ u8 type;
/* 0x01 */ u8 num; // number of dlist entries
/* 0x04 */ void* start;
/* 0x08 */ void* end;
} Polygon; // size = 0xC
typedef struct
{
typedef struct {
/* 0x00 */ u8 type;
/* 0x01 */ u8 num; // number of dlist entries
/* 0x04 */ void* start;
/* 0x08 */ void* end;
} PolygonType0; // size = 0xC
typedef struct
{
typedef struct {
/* 0x00 */ u16 unk_00;
/* 0x02 */ u8 id;
/* 0x04 */ u32 source;
@@ -700,15 +657,12 @@ typedef struct
/* 0x18 */ u16 tlutCount;
} BgImage; // size = 0x1C
typedef struct
{
typedef struct {
/* 0x00 */ u8 type;
/* 0x01 */ u8 format; // 1 = single, 2 = multi
/* 0x04 */ void* dlist;
union
{
struct
{
union {
struct {
/* 0x08 */ u32 source;
/* 0x0C */ u32 unk_0C;
/* 0x10 */ u32 tlut;
@@ -719,40 +673,35 @@ typedef struct
/* 0x1A */ u16 mode0;
/* 0x1C */ u16 tlutCount;
} single;
struct
{
struct {
/* 0x08 */ u8 count;
/* 0x0C */ BgImage* list;
} multi;
};
} PolygonType1;
typedef struct
{
typedef struct {
/* 0x00 */ Vec3s pos;
/* 0x06 */ s16 unk_06;
/* 0x08 */ Gfx* opa;
/* 0x0C */ Gfx* xlu;
} PolygonDlist2; // size = 0x8
typedef struct
{
typedef struct {
/* 0x00 */ u8 type;
/* 0x01 */ u8 num; // number of dlist entries
/* 0x04 */ void* start;
/* 0x08 */ void* end;
} PolygonType2; // size = 0xC
typedef union
{
typedef union {
Polygon polygon;
PolygonType0 polygon0;
PolygonType1 polygon1;
PolygonType2 polygon2;
} Mesh; // "Ground Shape"
typedef struct
{
typedef struct {
/* 0x00 */ s8 num;
/* 0x01 */ u8 unk_01;
/* 0x02 */ u8 unk_02;
@@ -764,8 +713,7 @@ typedef struct
/* 0x10 */ char unk_10[0x4];
} Room; // size = 0x14
typedef struct
{
typedef struct {
/* 0x00 */ Room curRoom;
/* 0x14 */ Room prevRoom;
/* 0x28 */ void* bufPtrs[2];
@@ -777,21 +725,18 @@ typedef struct
/* 0x70 */ OSMesg loadMsg;
} RoomContext; // size = 0x74
typedef struct
{
typedef struct {
/* 0x00 */ char unk_00[0x028C];
} SubGlobalContext11E60; // size = 0x28C
typedef struct
{
typedef struct {
/* 0x00 */ s16 id;
/* 0x02 */ Vec3s pos;
/* 0x08 */ Vec3s rot;
/* 0x0E */ s16 params;
} ActorEntry; // size = 0x10
typedef struct
{
typedef struct {
/* 0x00 */ s8 frontRoom; // Room to switch to when triggered from the front of the object
/* 0x01 */ s8 frontEffects; // How the camera reacts during the front transition
/* 0x02 */ s8 backRoom; // Room to switch to when triggered from the back of the object
@@ -802,39 +747,33 @@ typedef struct
/* 0x0E */ s16 params;
} TransitionActorEntry; // size = 0x10
typedef struct
{
typedef struct {
/* 0x00 */ u8 spawn;
/* 0x01 */ u8 room;
} EntranceEntry;
typedef struct
{
typedef struct {
/* 0x00 */ u32 vromStart;
/* 0x04 */ u32 vromEnd;
} RomFile; // size = 0x8
typedef struct
{
typedef struct {
/* 0x00 */ void* read_buff;
} Sram; // size = 0x4
typedef struct GameAllocEntry
{
typedef struct GameAllocEntry {
/* 0x00 */ struct GameAllocEntry* next;
/* 0x04 */ struct GameAllocEntry* prev;
/* 0x08 */ u32 size;
/* 0x0C */ u32 unk_0C;
} GameAllocEntry; //size = 0x10
} GameAllocEntry; // size = 0x10
typedef struct
{
typedef struct {
/* 0x00 */ GameAllocEntry base;
/* 0x10 */ GameAllocEntry* head;
} GameAlloc; // size = 0x14
typedef struct GameState
{
typedef struct GameState {
/* 0x00 */ GraphicsContext* gfxCtx;
/* 0x04 */ void (*main)(struct GameState*);
/* 0x08 */ void (*destroy)(struct GameState*); // "cleanup"
@@ -848,8 +787,7 @@ typedef struct GameState
/* 0xA0 */ u32 unk_A0;
} GameState; // size = 0xA4
typedef struct
{
typedef struct {
/* 0x0000 */ GameState state;
/* 0x00A4 */ void* staticSegment;
/* 0x00A8 */ View view;
@@ -865,9 +803,15 @@ typedef struct
/* 0x01E2 */ char unk_1E2[6];
} TitleContext; // size = 0x1E8
// Global Context (dbg ram start: 80212020)
typedef struct GlobalContext
typedef struct
{
/* 0x0000 */ GameState state;
/* 0x00A4 */ void* staticSegment;
/* 0x00A8 */ View view;
} SampleContext;
// Global Context (dbg ram start: 80212020)
typedef struct GlobalContext {
/* 0x00000 */ GameState state;
/* 0x000A4 */ s16 sceneNum;
/* 0x000A6 */ u8 sceneConfig;
@@ -988,22 +932,19 @@ typedef struct GlobalContext
/* 0x12430 */ char unk_12430[0xE8];
} GlobalContext; // size = 0x12518
typedef struct
{
typedef struct {
/* 0x0000 */ GameState state;
/* 0x00A4 */ char unk_A4[4];
/* 0x00A8 */ View view;
} OpeningContext; // size = 0x1D0
typedef enum
{
typedef enum {
DPM_UNK = 0,
DPM_PLAYER = 1,
DPM_ENEMY = 2
} DynaPolyMoveFlag;
typedef struct LoadedParticleEntry
{
typedef struct LoadedParticleEntry {
/* 0x0000 */ Vec3f position;
/* 0x000C */ Vec3f velocity;
/* 0x0018 */ Vec3f acceleration;
@@ -1022,8 +963,7 @@ typedef struct LoadedParticleEntry
} LoadedParticleEntry; // size = 0x60
// Some animation related structure
typedef struct
{
typedef struct {
/* 0x00 */ u32 animation;
/* 0x04 */ f32 playbackSpeed;
/* 0x08 */ f32 unk_08;
@@ -1032,8 +972,7 @@ typedef struct
/* 0x14 */ f32 transitionRate;
} struct_80034EC0_Entry; // size = 0x18
typedef struct
{
typedef struct {
/* 0x00 */ u8 limbCount;
/* 0x01 */ char unk_01[0x01];
/* 0x02 */ u8 dListCount;
@@ -1058,14 +997,12 @@ typedef struct
/* 0x42 */ u16 unk_42;
} SkelAnime; // size = 0x44
typedef struct
{
typedef struct {
/* 0x00 */ u32 unk_00;
/* 0x04 */ u32(*init)(GlobalContext*, u32, LoadedParticleEntry*, void*);
} ParticleOverlayInfo;
typedef struct
{
typedef struct {
/* 0x00 */ u32 vromStart;
/* 0x04 */ u32 vromEnd;
/* 0x0C */ void* vramStart;
@@ -1075,15 +1012,13 @@ typedef struct
/* 0x18 */ u32 unk_18; // Always 0x01000000?
} ParticleOverlay;
typedef struct
{
typedef struct {
/* 0x00 */ LoadedParticleEntry* data_table; // Name from debug assert
/* 0x04 */ s32 searchIndex;
/* 0x08 */ s32 size;
} EffectTableInfo;
typedef struct
{
typedef struct {
/* 0x00 */ s8 scene;
/* 0x01 */ s8 spawn;
/* 0x02 */ u16 continueBgm : 1;
@@ -1092,8 +1027,7 @@ typedef struct
/* 0x02 */ u16 fadeOutTransition : 7;
} EntranceInfo; // size = 0x4
typedef struct
{
typedef struct {
/* 0x00 */ void* loadedRamAddr;
/* 0x04 */ u32 vromStart; // if applicable
/* 0x08 */ u32 vromEnd; // if applicable
@@ -1108,21 +1042,18 @@ typedef struct
/* 0x2C */ u32 instanceSize;
} GameStateOverlay; // size = 0x30
typedef struct PreNMIContext
{
typedef struct PreNMIContext {
/* 0x00 */ GameState state;
/* 0xA4 */ u32 timer;
/* 0xA8 */ UNK_TYPE unk_A8;
} PreNMIContext; // size = 0xAC
typedef struct
{
typedef struct {
/* 0x00 */ s8 chestFlag; // chest icon is only displayed if this flag is not set for the current room
/* 0x01 */ u8 x, y; // coordinates to place the icon (top-left corner), relative to the minimap texture
} MapMarkPoint; // size = 0x3
typedef struct
{
typedef struct {
/* 0x00 */ s8 markType; // 0 for the chest icon, 1 for the boss skull icon, -1 for none
/* 0x01 */ u8 count; // number of icons to display
/* 0x02 */ MapMarkPoint points[12];
@@ -1130,8 +1061,7 @@ typedef struct
typedef MapMarkData MapMarksData[3]; // size = 0x72
typedef struct DebugDispObject
{
typedef struct DebugDispObject {
/* 0x00 */ Vec3f pos;
/* 0x0C */ Vec3s rot;
/* 0x14 */ Vec3f scale;
@@ -1140,8 +1070,7 @@ typedef struct DebugDispObject
/* 0x28 */ struct DebugDispObject* next;
} DebugDispObject; // size = 0x2C
typedef struct
{
typedef struct {
/* 0x00 */ Vec3s colAbsMin;
/* 0x06 */ Vec3s colAbsMax;
/* 0x0C */ s16 nbVertices;
@@ -1154,30 +1083,26 @@ typedef struct
/* 0x28 */ void* waterBoxes;
} CollisionHeader;
typedef enum
{
typedef enum {
MTXMODE_NEW, // generates a new matrix
MTXMODE_APPLY // applies transformation to the current matrix
} MatrixMode;
typedef struct FaultClient
{
typedef struct FaultClient {
struct FaultClient* next;
u32 callback;
u32 param1;
u32 param2;
} FaultClient;
typedef struct FaultAddrConvClient
{
typedef struct FaultAddrConvClient {
struct FaultAddrConvClient* next;
u32 callback;
u32 param;
} FaultAddrConvClient;
typedef struct
{
typedef struct {
u32 (*callback)(u32, u32);
u32 param0;
u32 param1;
@@ -1186,8 +1111,7 @@ typedef struct
OSMesg msg;
} FaultClientContext;
typedef struct FaultThreadStruct
{
typedef struct FaultThreadStruct {
OSThread thread;
u8 unk_1B0[0x600];
OSMesgQueue queue;
@@ -1208,8 +1132,7 @@ typedef struct FaultThreadStruct
u8 unk_84C[4];
} FaultThreadStruct;
typedef struct
{
typedef struct {
u16* fb;
u16 w;
u16 h;
@@ -1227,13 +1150,12 @@ typedef struct
s8 charWPad;
s8 charHPad;
u16 printColors[10];
u8 escCode; //bool
u8 escCode; // bool
u8 osSyncPrintfEnabled;
void(*inputCallback)();
} FaultDrawer;
typedef struct GfxPrint
{
typedef struct GfxPrint {
/* 0x00 */ struct GfxPrint*(*callback)(struct GfxPrint*, const char*, size_t);
/* 0x04 */ Gfx* dlist;
/* 0x08 */ u16 posX;
@@ -1244,8 +1166,7 @@ typedef struct GfxPrint
/* 0x10 */ Color_RGBA8 color;
} GfxPrint;
typedef enum
{
typedef enum {
GFXPRINT_FLAG1 = 1,
GFXPRINT_USE_RGBA16 = 2,
GFXPRINT_FLAG4 = 4,
@@ -1254,8 +1175,7 @@ typedef enum
GFXPRINT_OPEN = 0x80
} GfxPrintFlag;
typedef struct StackEntry
{
typedef struct StackEntry {
/* 0x00 */ struct StackEntry* next;
/* 0x04 */ struct StackEntry* prev;
/* 0x08 */ u32 head;
@@ -1265,16 +1185,14 @@ typedef struct StackEntry
/* 0x18 */ const char* name;
} StackEntry;
typedef enum
{
typedef enum {
STACK_STATUS_OK = 0,
STACK_STATUS_WARNING = 1,
STACK_STATUS_OVERFLOW = 2
} StackStatus;
typedef struct
{
/* 0x00 */ u32 magic; //IS64
typedef struct {
/* 0x00 */ u32 magic; // IS64
/* 0x04 */ u32 get;
/* 0x08 */ u8 unk_08[0x14-0x08];
/* 0x14 */ u32 put;
@@ -1282,22 +1200,18 @@ typedef struct
/* 0x20 */ u8 data[0x10000-0x20];
} ISVDbg;
typedef struct
{
typedef struct {
/* 0x00 */ u32 vromStart;
/* 0x04 */ u32 vromEnd;
/* 0x08 */ u32 romStart;
/* 0x0C */ u32 romEnd;
} DmaEntry;
typedef struct
{
typedef struct {
char name[0x18];
u32 mediaFormat;
union
{
struct
{
union {
struct {
u16 cartId;
u8 countryCode;
u8 version;
@@ -1306,18 +1220,17 @@ typedef struct
};
} LocaleCartInfo;
typedef struct
{
char magic[4]; //Yaz0
typedef struct {
char magic[4]; // Yaz0
u32 decSize;
u32 compInfoOffset; //only used in yaz0_old.c
u32 uncompDataOffset; //only used in yaz0_old.c
u32 compInfoOffset; // only used in yaz0_old.c
u32 uncompDataOffset; // only used in yaz0_old.c
u32 data[1];
} Yaz0Header;
#define OS_SC_RETRACE_MSG 1
#define OS_SC_DONE_MSG 2
#define OS_SC_NMI_MSG 3 //name is made up, 3 is OS_SC_RDP_DONE_MSG in the original sched.c
#define OS_SC_NMI_MSG 3 // name is made up, 3 is OS_SC_RDP_DONE_MSG in the original sched.c
#define OS_SC_PRE_NMI_MSG 4
typedef struct {
@@ -1325,16 +1238,14 @@ typedef struct {
char misc[30];
} OSScMsg;
typedef struct IrqMgrClient
{
typedef struct IrqMgrClient {
struct IrqMgrClient* prev;
OSMesgQueue* queue;
} IrqMgrClient;
typedef struct
{
/* 0x000 */ OSScMsg retraceMsg; //this apparently got moved from OSSched
/* 0x020 */ OSScMsg prenmiMsg; //this apparently got moved from OSSched
typedef struct {
/* 0x000 */ OSScMsg retraceMsg; // this apparently got moved from OSSched
/* 0x020 */ OSScMsg prenmiMsg; // this apparently got moved from OSSched
/* 0x040 */ OSScMsg nmiMsg;
/* 0x060 */ OSMesgQueue queue;
/* 0x078 */ OSMesg msgBuf[8];
@@ -1344,22 +1255,20 @@ typedef struct
/* 0x250 */ OSTime resetTime;
/* 0x258 */ OSTimer timer;
/* 0x278 */ OSTime retraceTime;
} IrqMgr; //size = 0x280
} IrqMgr; // size = 0x280
struct ArenaNode;
typedef struct Arena
{
typedef struct Arena {
/* 0x00 */ struct ArenaNode* head;
/* 0x04 */ void* start;
/* 0x08 */ OSMesgQueue lock;
/* 0x20 */ u8 unk_20;
/* 0x21 */ u8 isInit;
/* 0x22 */ u8 flag;
} Arena; //size = 0x24
} Arena; // size = 0x24
typedef struct ArenaNode
{
typedef struct ArenaNode {
/* 0x00 */ s16 magic;
/* 0x02 */ s16 isFree;
/* 0x04 */ u32 size;
@@ -1370,8 +1279,8 @@ typedef struct ArenaNode
/* 0x18 */ OSId threadId;
/* 0x1C */ Arena* arena;
/* 0x20 */ OSTime time;
/* 0x28 */ u8 unk_28[0x30-0x28]; //probably padding
} ArenaNode; //size = 0x30
/* 0x28 */ u8 unk_28[0x30-0x28]; // probably padding
} ArenaNode; // size = 0x30
typedef struct OverlayRelocationSection {
/* 0x00 */ u32 textSize;
@@ -1382,33 +1291,30 @@ typedef struct OverlayRelocationSection {
/* 0x14 */ u32 relocations[1];
} OverlayRelocationSection; // size >= 0x18
typedef struct
{
typedef struct {
/* 0x00 */ void* loadedRamAddr;
/* 0x04 */ u32 vromStart;
/* 0x08 */ u32 vromEnd;
/* 0x0C */ u8* vramStart;
/* 0x10 */ u8* vramEnd;
/* 0x14 */ u32 off; //loadedRamAddr - vram
/* 0x14 */ u32 off; // loadedRamAddr - vram
/* 0x18 */ const char* name;
} KaleidoManagerOvl; //size = 0x1C
} KaleidoManagerOvl; // size = 0x1C
#define KALEIDO_OVL_KALEIDO_SCOPE 0
#define KALEIDO_OVL_PLAYER_ACTOR 1
#define KALEIDO_OVL_COUNT 2
typedef struct ListAlloc
{
typedef struct ListAlloc {
/* 0x00 */ struct ListAlloc* prev;
/* 0x04 */ struct ListAlloc* next;
} ListAlloc; //size = 0x8
} ListAlloc; // size = 0x8
typedef struct
{
typedef struct {
/* 0x00 */ u32 resetting;
/* 0x04 */ u32 resetCount;
/* 0x08 */ OSTime duration;
/* 0x10 */ OSTime resetTime;
} PreNmiBuff; //size = 0x18 (actually osAppNmiBuffer is 0x40 bytes large but the rest is unused)
} PreNmiBuff; // size = 0x18 (actually osAppNmiBuffer is 0x40 bytes large but the rest is unused)
#endif
+33 -65
View File
@@ -13,34 +13,28 @@ struct GlobalContext;
// From z64light.h
struct LightMapper;
typedef struct
{
typedef struct {
f32 x, y;
} Vec2f;
typedef struct
{
typedef struct {
f32 x, y, z;
} Vec3f;
typedef struct
{
typedef struct {
s16 x, y, z;
} Vec3s;
typedef struct
{
typedef struct {
s32 x, y, z;
} Vec3i;
typedef struct
{
typedef struct {
Vec3f pos;
Vec3s rot;
} PosRot; // size = 0x14
typedef struct
{
typedef struct {
/* 0x00 */ char unk_00[0x8];
/* 0x08 */ Vec3s norm; // Normal vector
/* 0x0E */ s16 dist; // Plane distance from origin
@@ -48,8 +42,7 @@ typedef struct
typedef void (*ActorFunc)(struct Actor*, struct GlobalContext*);
typedef struct
{
typedef struct {
/* 0x00 */ s16 id;
/* 0x02 */ u8 type; // Classifies actor and determines when actor will execute
/* 0x03 */ u8 room; // Room instance was spawned in. If value set to FF in rom, instance does not despawn when swapping rooms
@@ -62,15 +55,13 @@ typedef struct
/* 0x1C */ ActorFunc draw; // Draw function
} ActorInit; // size = 0x20
typedef enum
{
typedef enum {
ALLOCTYPE_NORMAL,
ALLOCTYPE_ABSOLUTE,
ALLOCTYPE_PERMANENT
} AllocType;
typedef struct
{
typedef struct {
/* 0x00 */ u32 vromStart;
/* 0x04 */ u32 vromEnd;
/* 0x08 */ void* vramStart;
@@ -82,25 +73,21 @@ typedef struct
/* 0x1E */ s8 nbLoaded; // original name: "clients"
} ActorOverlay; // size = 0x20
typedef struct
{
struct
{
typedef struct {
struct {
char damage : 4;
char effect : 4;
} attack[32];
} ActorDamageChart;
typedef struct
{
typedef struct {
/* 0x00 */ u8 health;
/* 0x02 */ s16 unk_02;
/* 0x04 */ s16 unk_04;
/* 0x06 */ u8 mass;
} SubActor98Init;
typedef struct
{
typedef struct {
/* 0x00 */ ActorDamageChart* damageChart; // For actors which contain a damage chart (example: Stalfos)...
/* 0x04 */ Vec3f displacement; // Amount to correct velocity (0x5C) by when colliding into a body
/* 0x10 */ s16 unk_10;
@@ -114,8 +101,7 @@ typedef struct
/* 0x1B */ u8 unk_1B;
} SubActorStruct98; // size = 0x1C
typedef struct
{
typedef struct {
/* 0x00 */ Vec3s rot; // Current actor shape rotation
/* 0x06 */ u8 unk_06;
/* 0x08 */ f32 unk_08; // Model y axis offset. Represents model space units. collision mesh related
@@ -125,8 +111,7 @@ typedef struct
/* 0x15 */ u8 unk_15;
} ActorShape; // size = 0x18
typedef struct Actor
{
typedef struct Actor {
/* 0x000 */ s16 id; // Actor Id
/* 0x002 */ u8 type; // Actor Type. Refer to the corresponding enum for values
/* 0x003 */ s8 room; // Room number the actor is part of. FF denotes that the actor won't despawn on a room change
@@ -159,8 +144,7 @@ typedef struct Actor
/* 0x094 */ f32 yDistanceFromLink;
/* 0x098 */ SubActorStruct98 sub_98;
/* 0x0B4 */ ActorShape shape;
/* 0x0CC */ Vec3f unk_CC; // Used in Link, not Deku Babas
/* 0x0D8 */ Vec3f unk_D8; // Used in Link, not Deku Babas
/* 0x0CC */ Vec3f unk_CC[2];
/* 0x0E4 */ Vec3f unk_E4; // Stores result of some vector transformation involving actor xyz vector, and a matrix at Global Context + 11D60
/* 0x0F0 */ f32 unk_F0; // Related to above
/* 0x0F4 */ f32 unk_F4;
@@ -198,16 +182,14 @@ typedef struct Actor
/* From here on, the structure and size varies for each actor */
} Actor; // size = 0x14C
typedef enum
{
typedef enum {
COLTYPE_CYLINDER = 1,
COLTYPE_CYLINDER_GROUP = 0,
COLTYPE_QUAD = 3,
COLTYPE_TRIANGLE_GROUP = 2
} ColliderType;
typedef struct
{
typedef struct {
/* 0x00 */ Actor* actor;
/* 0x04 */ Actor* at;
/* 0x08 */ Actor* ac;
@@ -220,15 +202,13 @@ typedef struct
/* 0x15 */ u8 type; /* Cylinder Collection, Cylinder, Triangle Collection, Quad */
} Collider; // size = 0x18
typedef struct
{
typedef struct {
/* 0x00 */ s32 flags; /* Toucher Attack Identifier Flags */
/* 0x04 */ u8 unk_04;
/* 0x05 */ u8 damage; /* Damage or Stun Timer */
} ColliderTouch; // size = 0x08
typedef struct
{
typedef struct {
/* 0x00 */ s32 flags; /* Collision Exclusion Mask */
/* 0x04 */ u8 effect; /* Damage Effect (Knockback, Fire, etc.) */
/* 0x05 */ u8 unk_05;
@@ -237,8 +217,7 @@ typedef struct
/* 0x0A */ s16 unk_0A;
} ColliderBump; // size = 0x0C
typedef struct ColliderBody
{
typedef struct ColliderBody {
/* 0x00 */ ColliderTouch toucher;
/* 0x08 */ ColliderBump bumper;
/* 0x14 */ u8 flags;
@@ -251,14 +230,12 @@ typedef struct ColliderBody
/* 0x24 */ struct ColliderBody* colliding;
} ColliderBody; // size = 0x28
typedef struct ColliderBodyEntry
{
typedef struct ColliderBodyEntry {
/* 0x00 */ ColliderBody c;
/* 0x28 */ char unk_28[0x18];
} ColliderBodyEntry; // size = 0x40
typedef struct
{
typedef struct {
/* 0x00 */ u8 bodyFlags;
/* 0x01 */ u8 unk_09[0x3]; /* 000000 */
/* 0x04 */ s32 toucherMask; /* Attack Toucher Exclusion Mask */
@@ -273,8 +250,7 @@ typedef struct
/* 0x17 */ u8 unk_1F; /* 00 */
} ColliderBodyInfoInner; // size = 0x1A
typedef struct
{
typedef struct {
/* 0x00 */ u8 unk_00;
/* 0x01 */ u8 colliderFlags; /* Collider Flags */
/* 0x02 */ u8 collideFlags; /* Collide Flags */
@@ -284,30 +260,26 @@ typedef struct
/* 0x06 */ u8 unk_06[0x2]; /* 0000 */
} ColliderBodyInfo; // size = 0x08
typedef struct
{
typedef struct {
/* 0x00 */ s16 radius; /* Cylinder Radius */
/* 0x02 */ s16 height; /* Cylinder Height */
/* 0x04 */ s16 yShift; /* Shift Cylinder on Y Axis */
/* 0x06 */ Vec3s position; /* {X, Y, Z} position of Cylinder */
} ColliderDimensions; // size = 0xC
typedef struct
{
typedef struct {
/* 0x00 */ Collider base;
/* 0x18 */ ColliderBody body;
/* 0x40 */ ColliderDimensions dim;
} ColliderCylinderMain; // size = 0x4C
typedef struct
{
typedef struct {
/* 0x00 */ ColliderBodyInfo body;
/* 0x06 */ ColliderBodyInfoInner inner;
/* 0x20 */ ColliderDimensions dim;
} ColliderCylinderInit; // size = 0x2C
typedef struct
{
typedef struct {
/* 0x00 */ Actor* actor;
/* 0x04 */ char unk_04[0x10];
/* 0x14 */ Vec3f scale1;
@@ -319,8 +291,7 @@ typedef struct
/* 0x54 */ char unk_54[0x10];
} ActorMesh; // size = 0x64
typedef struct
{
typedef struct {
/* 0x000 */ Actor actor;
/* 0x14C */ u32 dynaPolyId;
/* 0x150 */ f32 unk_150;
@@ -332,8 +303,7 @@ typedef struct
/* 0x162 */ s16 unk_162;
} DynaPolyActor; // size = 0x164
typedef struct
{
typedef struct {
/* 0x0000 */ Actor actor;
/* 0x014C */ s8 currentTunic;
/* 0x014D */ s8 currentSword;
@@ -408,10 +378,9 @@ typedef struct
/* 0x0A60 */ char unk_A60[0x18];
/* 0x0A78 */ s8 unk_A78;
/* 0x0A79 */ char unk_A79[0x1B];
} Player; //size = 0xA94
} Player; // size = 0xA94
typedef enum
{
typedef enum {
/* 0x00 */ ACTORTYPE_SWITCH,
/* 0x01 */ ACTORTYPE_BG,
/* 0x02 */ ACTORTYPE_PLAYER,
@@ -426,8 +395,7 @@ typedef enum
/* 0x0B */ ACTORTYPE_CHEST
} ActorType;
typedef enum
{
typedef enum {
/* 0x0000 */ ACTOR_PLAYER,
/* 0x0001 */ ACTOR_UNSET_1,
/* 0x0002 */ ACTOR_EN_TEST,
+12 -24
View File
@@ -1,16 +1,14 @@
#ifndef _Z64CUTSCENE_H_
#define _Z64CUTSCENE_H_
typedef struct
{
typedef struct {
/* 0x00 */ u16 entrance; // entrance index upon which the cutscene should trigger
/* 0x02 */ u8 ageRestriction; // 0 for adult only, 1 for child only, 2 for both ages
/* 0x03 */ u8 flag; // event_chk_inf flag bound to the entrance cutscene
/* 0x04 */ u32 segAddr; // segment offset location of the cutscene
} EntranceCutscene; // size = 0x8
typedef struct
{
typedef struct {
/* 0x00 */ s8 continueFlag;
/* 0x01 */ s8 cameraRoll;
/* 0x02 */ s16 nextPointFrame;
@@ -18,38 +16,33 @@ typedef struct
/* 0x08 */ Vec3s pos;
} CutsceneCameraPoint; // size = 0x10
typedef struct
{
typedef struct {
/* 0x00 */ u16 base;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
} CsCmdBase;
typedef struct
{
typedef struct {
/* 0x00 */ u8 unk_00;
/* 0x01 */ u8 setting;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
} CsCmdEnvLighting;
typedef struct
{
typedef struct {
/* 0x00 */ u8 unk_00;
/* 0x01 */ u8 sequence;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
} CsCmdMusicChange;
typedef struct
{
typedef struct {
/* 0x00 */ u16 type;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
} CsCmdMusicFade;
typedef struct
{
typedef struct {
/* 0x00 */ u16 unk_00;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
@@ -58,8 +51,7 @@ typedef struct
/* 0x08 */ u8 unk_08;
} CsCmdUnknown9;
typedef struct
{
typedef struct {
/* 0x00 */ u16 unk_00;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
@@ -67,8 +59,7 @@ typedef struct
/* 0x07 */ u8 minute;
} CsCmdDayTime;
typedef struct
{
typedef struct {
/* 0x00 */ u16 base;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
@@ -77,8 +68,7 @@ typedef struct
/* 0x0A */ u16 textId2;
} CsCmdTextbox; // size = 0xC
typedef struct
{
typedef struct {
/* 0x00 */ u16 action;
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
@@ -88,8 +78,7 @@ typedef struct
/* 0x24 */ Vec3i normal;
} CsCmdActorAction; // size = 0x30
typedef enum
{
typedef enum {
CS_STATE_IDLE,
CS_STATE_SKIPPABLE_INIT,
CS_STATE_SKIPPABLE_EXEC,
@@ -97,8 +86,7 @@ typedef enum
CS_STATE_UNSKIPPABLE_EXEC
} CutsceneState;
typedef enum
{
typedef enum {
CS_CMD_00 = 0x0000,
CS_CMD_CAMERA_POS = 0x0001,
CS_CMD_CAMERA_FOCUS = 0x0002,
+4 -5
View File
@@ -2,18 +2,17 @@
#define _Z64EFFECT_H_
#include <color.h>
/* gz has trail related structs but they seem to be different in dbg*/
typedef struct
{
// gz has trail related structs but they seem to be different in dbg
typedef struct {
/* 0x0000 */ char unk_00[0x184];
/* 0x0184 */ Color_RGBA8 p1Start;
/* 0x0188 */ Color_RGBA8 p2Start;
/* 0x018C */ Color_RGBA8 p1End;
/* 0x0190 */ Color_RGBA8 p2End;
/* 0x0194 */ u32 unk_194; //these are proably bytes
/* 0x0194 */ u32 unk_194; // these are proably bytes
/* 0x0198 */ u32 unk_198;
/* 0x019C */ u32 unk_19C;
/* 0x01A0 */
} TrailEffect; //size = unk
} TrailEffect; // size = unk
#endif
+7 -12
View File
@@ -1,16 +1,14 @@
#ifndef _Z64ITEM_H_
#define _Z64ITEM_H_
typedef enum
{
typedef enum {
/* 0x00 */ EQUIP_SWORD,
/* 0x01 */ EQUIP_SHIELD,
/* 0x02 */ EQUIP_TUNIC,
/* 0x03 */ EQUIP_BOOTS
} EquipmentType;
typedef enum
{
typedef enum {
/* 0x00 */ UPG_QUIVER,
/* 0x01 */ UPG_BOMB_BAG,
/* 0x02 */ UPG_STRENGTH,
@@ -21,8 +19,7 @@ typedef enum
/* 0x07 */ UPG_NUTS
} UpgradeType;
typedef enum
{
typedef enum {
/* 0x00 */ SLOT_STICK,
/* 0x01 */ SLOT_NUT,
/* 0x02 */ SLOT_BOMB,
@@ -50,8 +47,7 @@ typedef enum
/* 0xFF */ SLOT_NONE = 0xFF
} InventorySlot;
typedef enum
{
typedef enum {
/* 0x00 */ ITEM_STICK,
/* 0x01 */ ITEM_NUT,
/* 0x02 */ ITEM_BOMB,
@@ -212,8 +208,7 @@ typedef enum
} ItemID;
// Get Item result may vary depending on context (chest/shop/scrub/drop)
typedef enum
{
typedef enum {
/* 0x00 */ GI_INVALID, // Link picks up chest and it sends him flying upwards
/* 0x01 */ GI_BOMBS_5,
/* 0x02 */ GI_NUTS_5,
@@ -258,8 +253,8 @@ typedef enum
/* 0x29 */ GI_SHIELD_DEKU, // or blue rupee if you have the shield
/* 0x2A */ GI_SHIELD_HYLIAN, // or blue rupee if you have the shield
/* 0x2B */ GI_SHIELD_MIRROR,
/* 0x2C */ GI_TUNIC_GORON, // or blue rupee if you have the tunic
/* 0x2D */ GI_TUNIC_ZORA, // or blue rupee if you have the tunic
/* 0x2C */ GI_TUNIC_GORON, // or blue rupee if you have the tunic
/* 0x2D */ GI_TUNIC_ZORA, // or blue rupee if you have the tunic
/* 0x2E */ GI_BOOTS_IRON,
/* 0x2F */ GI_BOOTS_HOVER,
/* 0x30 */ GI_QUIVER_40,
+9 -18
View File
@@ -4,15 +4,13 @@
#include <ultra64.h>
#include <ultra64/gbi.h>
typedef struct z_Light_t
{
typedef struct z_Light_t {
/* 0x0 */ struct LightInfo* info;
/* 0x4 */ struct z_Light_t* prev;
/* 0x8 */ struct z_Light_t* next;
} z_Light;
typedef struct
{
typedef struct {
/* 0x0 */ z_Light* lightsHead;
/* 0x4 */ u8 ambientRed;
/* 0x5 */ u8 ambientGreen;
@@ -24,21 +22,18 @@ typedef struct
/* 0xC */ s16 unk_0C;
} LightingContext;
typedef struct
{
typedef struct {
/* 0x000 */ int numOccupied;
/* 0x004 */ int nextFree;
/* 0x008 */ z_Light lights[32];
} LightsList;
typedef struct
{
typedef struct {
/* 0x0 */ u8 type;
/* 0x2 */ u16 params[6];
} LightInfo;
typedef struct
{
typedef struct {
/* 0x0 */ s8 dirX;
/* 0x1 */ s8 dirY;
/* 0x2 */ s8 dirZ;
@@ -48,8 +43,7 @@ typedef struct
/* 0x6 */ u16 pad[3];
} LightInfoDirectionalParams;
typedef struct
{
typedef struct {
/* 0x0 */ s16 posX;
/* 0x2 */ s16 posY;
/* 0x4 */ s16 posZ;
@@ -60,8 +54,7 @@ typedef struct
/* 0xA */ s16 radius;
} LightInfoPositionalParams;
typedef struct
{
typedef struct {
/* 0x00 */ u8 numLights;
/* 0x01 */ u8 enablePosLights;
/* 0x02 */ UNK_TYPE1 pad2[6];
@@ -69,14 +62,12 @@ typedef struct
/* 0x10 */ Light lights[7];
} LightMapper;
typedef struct
{
typedef struct {
/* 0x0 */ u8 type;
/* 0x2 */ LightInfoDirectionalParams params;
} LightInfoDirectional;
typedef struct
{
typedef struct {
/* 0x0 */ u8 type;
/* 0x2 */ LightInfoPositionalParams params;
} LightInfoPositional;

Some files were not shown because too many files have changed in this diff Show More