mirror of https://github.com/zeldaret/oot.git
117 lines
5.5 KiB
ArmAsm
117 lines
5.5 KiB
ArmAsm
glabel func_800B39B8
|
|
/* B2AB58 800B39B8 24010003 */ li $at, 3
|
|
/* B2AB5C 800B39BC 14810003 */ bne $a0, $at, .L800B39CC
|
|
/* B2AB60 800B39C0 3C068013 */ lui $a2, %hi(D_8012CED8) # $a2, 0x8013
|
|
/* B2AB64 800B39C4 1000000D */ b .L800B39FC
|
|
/* B2AB68 800B39C8 2402000A */ li $v0, 10
|
|
.L800B39CC:
|
|
/* B2AB6C 800B39CC 240E001E */ li $t6, 30
|
|
/* B2AB70 800B39D0 01C4001A */ div $zero, $t6, $a0
|
|
/* B2AB74 800B39D4 00001012 */ mflo $v0
|
|
/* B2AB78 800B39D8 14800002 */ bnez $a0, .L800B39E4
|
|
/* B2AB7C 800B39DC 00000000 */ nop
|
|
/* B2AB80 800B39E0 0007000D */ break 7
|
|
.L800B39E4:
|
|
/* B2AB84 800B39E4 2401FFFF */ li $at, -1
|
|
/* B2AB88 800B39E8 14810004 */ bne $a0, $at, .L800B39FC
|
|
/* B2AB8C 800B39EC 3C018000 */ lui $at, 0x8000
|
|
/* B2AB90 800B39F0 15C10002 */ bne $t6, $at, .L800B39FC
|
|
/* B2AB94 800B39F4 00000000 */ nop
|
|
/* B2AB98 800B39F8 0006000D */ break 6
|
|
.L800B39FC:
|
|
/* B2AB9C 800B39FC 3C078013 */ lui $a3, %hi(D_8012CED4) # $a3, 0x8013
|
|
/* B2ABA0 800B3A00 24E7CED4 */ addiu $a3, %lo(D_8012CED4) # addiu $a3, $a3, -0x312c
|
|
/* B2ABA4 800B3A04 24C6CED8 */ addiu $a2, %lo(D_8012CED8) # addiu $a2, $a2, -0x3128
|
|
/* B2ABA8 800B3A08 8CC30000 */ lw $v1, ($a2)
|
|
/* B2ABAC 800B3A0C 8CE40000 */ lw $a0, ($a3)
|
|
/* B2ABB0 800B3A10 3C088013 */ lui $t0, %hi(D_8012CED0) # $t0, 0x8013
|
|
/* B2ABB4 800B3A14 2508CED0 */ addiu $t0, %lo(D_8012CED0) # addiu $t0, $t0, -0x3130
|
|
/* B2ABB8 800B3A18 0064082A */ slt $at, $v1, $a0
|
|
/* B2ABBC 800B3A1C 5020000F */ beql $at, $zero, .L800B3A5C
|
|
/* B2ABC0 800B3A20 0083082A */ slt $at, $a0, $v1
|
|
/* B2ABC4 800B3A24 8D0F0000 */ lw $t7, ($t0)
|
|
/* B2ABC8 800B3A28 24050001 */ li $a1, 1
|
|
/* B2ABCC 800B3A2C 50AF0003 */ beql $a1, $t7, .L800B3A3C
|
|
/* B2ABD0 800B3A30 00622821 */ addu $a1, $v1, $v0
|
|
/* B2ABD4 800B3A34 AD050000 */ sw $a1, ($t0)
|
|
/* B2ABD8 800B3A38 00622821 */ addu $a1, $v1, $v0
|
|
.L800B3A3C:
|
|
/* B2ABDC 800B3A3C 00A4082A */ slt $at, $a1, $a0
|
|
/* B2ABE0 800B3A40 10200003 */ beqz $at, .L800B3A50
|
|
/* B2ABE4 800B3A44 00000000 */ nop
|
|
/* B2ABE8 800B3A48 10000017 */ b .L800B3AA8
|
|
/* B2ABEC 800B3A4C ACC50000 */ sw $a1, ($a2)
|
|
.L800B3A50:
|
|
/* B2ABF0 800B3A50 10000015 */ b .L800B3AA8
|
|
/* B2ABF4 800B3A54 ACC40000 */ sw $a0, ($a2)
|
|
/* B2ABF8 800B3A58 0083082A */ slt $at, $a0, $v1
|
|
.L800B3A5C:
|
|
/* B2ABFC 800B3A5C 1020000F */ beqz $at, .L800B3A9C
|
|
/* B2AC00 800B3A60 3C088013 */ lui $t0, %hi(D_8012CED0) # $t0, 0x8013
|
|
/* B2AC04 800B3A64 2508CED0 */ addiu $t0, %lo(D_8012CED0) # addiu $t0, $t0, -0x3130
|
|
/* B2AC08 800B3A68 8D180000 */ lw $t8, ($t0)
|
|
/* B2AC0C 800B3A6C 24050002 */ li $a1, 2
|
|
/* B2AC10 800B3A70 50B80003 */ beql $a1, $t8, .L800B3A80
|
|
/* B2AC14 800B3A74 00622823 */ subu $a1, $v1, $v0
|
|
/* B2AC18 800B3A78 AD050000 */ sw $a1, ($t0)
|
|
/* B2AC1C 800B3A7C 00622823 */ subu $a1, $v1, $v0
|
|
.L800B3A80:
|
|
/* B2AC20 800B3A80 0085082A */ slt $at, $a0, $a1
|
|
/* B2AC24 800B3A84 10200003 */ beqz $at, .L800B3A94
|
|
/* B2AC28 800B3A88 00000000 */ nop
|
|
/* B2AC2C 800B3A8C 10000006 */ b .L800B3AA8
|
|
/* B2AC30 800B3A90 ACC50000 */ sw $a1, ($a2)
|
|
.L800B3A94:
|
|
/* B2AC34 800B3A94 10000004 */ b .L800B3AA8
|
|
/* B2AC38 800B3A98 ACC40000 */ sw $a0, ($a2)
|
|
.L800B3A9C:
|
|
/* B2AC3C 800B3A9C 3C088013 */ lui $t0, %hi(D_8012CED0) # $t0, 0x8013
|
|
/* B2AC40 800B3AA0 2508CED0 */ addiu $t0, %lo(D_8012CED0) # addiu $t0, $t0, -0x3130
|
|
/* B2AC44 800B3AA4 AD000000 */ sw $zero, ($t0)
|
|
.L800B3AA8:
|
|
/* B2AC48 800B3AA8 3C058016 */ lui $a1, %hi(gGameInfo) # $a1, 0x8016
|
|
/* B2AC4C 800B3AAC 24A5FA90 */ addiu $a1, %lo(gGameInfo) # addiu $a1, $a1, -0x570
|
|
/* B2AC50 800B3AB0 8CA30000 */ lw $v1, ($a1)
|
|
/* B2AC54 800B3AB4 24040013 */ li $a0, 19
|
|
/* B2AC58 800B3AB8 84791074 */ lh $t9, 0x1074($v1)
|
|
/* B2AC5C 800B3ABC 14990022 */ bne $a0, $t9, .L800B3B48
|
|
/* B2AC60 800B3AC0 00000000 */ nop
|
|
/* B2AC64 800B3AC4 84691090 */ lh $t1, 0x1090($v1)
|
|
/* B2AC68 800B3AC8 50890016 */ beql $a0, $t1, .L800B3B24
|
|
/* B2AC6C 800B3ACC 8D0A0000 */ lw $t2, ($t0)
|
|
/* B2AC70 800B3AD0 A4641090 */ sh $a0, 0x1090($v1)
|
|
/* B2AC74 800B3AD4 8CAA0000 */ lw $t2, ($a1)
|
|
/* B2AC78 800B3AD8 A5401076 */ sh $zero, 0x1076($t2)
|
|
/* B2AC7C 800B3ADC 8CAB0000 */ lw $t3, ($a1)
|
|
/* B2AC80 800B3AE0 A5601078 */ sh $zero, 0x1078($t3)
|
|
/* B2AC84 800B3AE4 8CAC0000 */ lw $t4, ($a1)
|
|
/* B2AC88 800B3AE8 A580107A */ sh $zero, 0x107a($t4)
|
|
/* B2AC8C 800B3AEC 8CAD0000 */ lw $t5, ($a1)
|
|
/* B2AC90 800B3AF0 A5A0107C */ sh $zero, 0x107c($t5)
|
|
/* B2AC94 800B3AF4 8CAE0000 */ lw $t6, ($a1)
|
|
/* B2AC98 800B3AF8 A5C0107E */ sh $zero, 0x107e($t6)
|
|
/* B2AC9C 800B3AFC 8CAF0000 */ lw $t7, ($a1)
|
|
/* B2ACA0 800B3B00 A5E01080 */ sh $zero, 0x1080($t7)
|
|
/* B2ACA4 800B3B04 8CB80000 */ lw $t8, ($a1)
|
|
/* B2ACA8 800B3B08 A7001082 */ sh $zero, 0x1082($t8)
|
|
/* B2ACAC 800B3B0C 8CB90000 */ lw $t9, ($a1)
|
|
/* B2ACB0 800B3B10 A7201084 */ sh $zero, 0x1084($t9)
|
|
/* B2ACB4 800B3B14 8CA90000 */ lw $t1, ($a1)
|
|
/* B2ACB8 800B3B18 A5201086 */ sh $zero, 0x1086($t1)
|
|
/* B2ACBC 800B3B1C 8CA30000 */ lw $v1, ($a1)
|
|
/* B2ACC0 800B3B20 8D0A0000 */ lw $t2, ($t0)
|
|
.L800B3B24:
|
|
/* B2ACC4 800B3B24 A46A107A */ sh $t2, 0x107a($v1)
|
|
/* B2ACC8 800B3B28 8CAC0000 */ lw $t4, ($a1)
|
|
/* B2ACCC 800B3B2C 8CCB0000 */ lw $t3, ($a2)
|
|
/* B2ACD0 800B3B30 A58B107C */ sh $t3, 0x107c($t4)
|
|
/* B2ACD4 800B3B34 8CAE0000 */ lw $t6, ($a1)
|
|
/* B2ACD8 800B3B38 8CED0000 */ lw $t5, ($a3)
|
|
/* B2ACDC 800B3B3C A5CD107E */ sh $t5, 0x107e($t6)
|
|
/* B2ACE0 800B3B40 8CAF0000 */ lw $t7, ($a1)
|
|
/* B2ACE4 800B3B44 A5E21080 */ sh $v0, 0x1080($t7)
|
|
.L800B3B48:
|
|
/* B2ACE8 800B3B48 03E00008 */ jr $ra
|
|
/* B2ACEC 800B3B4C 00000000 */ nop
|
|
|