1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-05-10 11:03:46 +00:00

Decompile z_kankyo (#956)

* working

* start color switch

* progress

* progress

* progress on bgm func

* progress

* game over matched (except the rodata meme)

* start update

* progress

* lightning docs done

* progress

* progress

* progress

* progress

* progress

* can compile at least

* suns state, progress on kankyo_update

* some new names

* progress

* progress

* progress

* new functions

* cleanup

* more matches

* another match

* now functional

* format

* better match

* hugely improved update

* cleanup/review

* remove old changes

* review2

* review3

* missed one

* review4

* change asm filenames

* update doorwarp1

* review5

* Kankyo_ -> Environment_

* format

* merge master and format functions.h

Co-authored-by: Jacob Young <jacobly0@users.noreply.github.com>
Co-authored-by: fig <fig02srl@gmail.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
This commit is contained in:
petrie911 2021-09-20 11:51:35 -05:00 committed by GitHub
parent 50095d427c
commit e51f50f0ff
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
139 changed files with 3478 additions and 6277 deletions

View file

@ -35,7 +35,7 @@ glabel D_8013C7D8
.float 0.1
.text
glabel func_80073A5C
glabel Environment_DrawLensFlare
/* AEABFC 80073A5C 27BDFE50 */ addiu $sp, $sp, -0x1b0
/* AEAC00 80073A60 3C0B8012 */ lui $t3, %hi(D_8011FE00) # $t3, 0x8012
/* AEAC04 80073A64 AFBF004C */ sw $ra, 0x4c($sp)
@ -348,7 +348,7 @@ glabel func_80073A5C
/* AEB0AC 80073F0C 00000000 */ nop
.L80073F10:
/* AEB0B0 80073F10 44D8F800 */ ctc1 $t8, $31
/* AEB0B4 80073F14 0C01BE4F */ jal func_8006F93C
/* AEB0B4 80073F14 0C01BE4F */ jal Environment_LerpWeight
/* AEB0B8 80073F18 30C6FFFF */ andi $a2, $a2, 0xffff
/* AEB0BC 80073F1C E7A0013C */ swc1 $f0, 0x13c($sp)
/* AEB0C0 80073F20 44913000 */ mtc1 $s1, $f6
@ -600,8 +600,8 @@ glabel func_80073A5C
/* AEB468 800742C8 2A21000A */ slti $at, $s1, 0xa
.L800742CC:
/* AEB46C 800742CC 8E0702D0 */ lw $a3, 0x2d0($s0)
/* AEB470 800742D0 3C030403 */ lui $v1, %hi(gEffBurnMark1DL) # $v1, 0x403
/* AEB474 800742D4 24637730 */ addiu $v1, %lo(gEffBurnMark1DL) # addiu $v1, $v1, 0x7730
/* AEB470 800742D0 3C030403 */ lui $v1, %hi(gLensFlareCircleDL) # $v1, 0x403
/* AEB474 800742D4 24637730 */ addiu $v1, %lo(gLensFlareCircleDL) # addiu $v1, $v1, 0x7730
/* AEB478 800742D8 24E80008 */ addiu $t0, $a3, 8
/* AEB47C 800742DC AE0802D0 */ sw $t0, 0x2d0($s0)
/* AEB480 800742E0 3C0FDE00 */ lui $t7, 0xde00

View file

@ -35,7 +35,7 @@ glabel D_8013C7F0
.float 0.02
.text
glabel func_80074704
glabel Environment_DrawRain
/* AEB8A4 80074704 27BDFED8 */ addiu $sp, $sp, -0x128
/* AEB8A8 80074708 3C0F8012 */ lui $t7, %hi(D_8011FE70) # $t7, 0x8012
/* AEB8AC 8007470C AFBF006C */ sw $ra, 0x6c($sp)

View file

@ -39,7 +39,7 @@ glabel D_8013C7A8
.float 0.005
.text
glabel func_80070C24
glabel Environment_Update
/* AE7DC4 80070C24 27BDFF70 */ addiu $sp, $sp, -0x90
/* AE7DC8 80070C28 3C0D8016 */ lui $t5, %hi(gSaveContext) # $t5, 0x8016
/* AE7DCC 80070C2C 25ADE660 */ addiu $t5, %lo(gSaveContext) # addiu $t5, $t5, -0x19a0
@ -200,16 +200,16 @@ glabel func_80070C24
/* AE8014 80070E74 8DAF1360 */ lw $t7, 0x1360($t5)
/* AE8018 80070E78 8DB80010 */ lw $t8, 0x10($t5)
.L80070E7C:
/* AE801C 80070E7C 3C038012 */ lui $v1, %hi(D_8011FB40) # $v1, 0x8012
/* AE8020 80070E80 2463FB40 */ addiu $v1, %lo(D_8011FB40) # addiu $v1, $v1, -0x4c0
/* AE801C 80070E7C 3C038012 */ lui $v1, %hi(gTimeIncrement) # $v1, 0x8012
/* AE8020 80070E80 2463FB40 */ addiu $v1, %lo(gTimeIncrement) # addiu $v1, $v1, -0x4c0
/* AE8024 80070E84 13000004 */ beqz $t8, .L80070E98
/* AE8028 80070E88 00000000 */ nop
/* AE802C 80070E8C 94620000 */ lhu $v0, ($v1)
/* AE8030 80070E90 28410190 */ slti $at, $v0, 0x190
/* AE8034 80070E94 14200007 */ bnez $at, .L80070EB4
.L80070E98:
/* AE8038 80070E98 3C038012 */ lui $v1, %hi(D_8011FB40) # $v1, 0x8012
/* AE803C 80070E9C 2463FB40 */ addiu $v1, %lo(D_8011FB40) # addiu $v1, $v1, -0x4c0
/* AE8038 80070E98 3C038012 */ lui $v1, %hi(gTimeIncrement) # $v1, 0x8012
/* AE803C 80070E9C 2463FB40 */ addiu $v1, %lo(gTimeIncrement) # addiu $v1, $v1, -0x4c0
/* AE8040 80070EA0 94790000 */ lhu $t9, ($v1)
/* AE8044 80070EA4 95AE000C */ lhu $t6, 0xc($t5)
/* AE8048 80070EA8 01D97821 */ addu $t7, $t6, $t9
@ -223,8 +223,8 @@ glabel func_80070C24
.L80070EC4:
/* AE8064 80070EC4 8DAF1360 */ lw $t7, 0x1360($t5)
.L80070EC8:
/* AE8068 80070EC8 3C038012 */ lui $v1, %hi(D_8011FB40) # $v1, 0x8012
/* AE806C 80070ECC 2463FB40 */ addiu $v1, %lo(D_8011FB40) # addiu $v1, $v1, -0x4c0
/* AE8068 80070EC8 3C038012 */ lui $v1, %hi(gTimeIncrement) # $v1, 0x8012
/* AE806C 80070ECC 2463FB40 */ addiu $v1, %lo(gTimeIncrement) # addiu $v1, $v1, -0x4c0
/* AE8070 80070ED0 29E10005 */ slti $at, $t7, 5
/* AE8074 80070ED4 10200004 */ beqz $at, .L80070EE8
/* AE8078 80070ED8 3C0B8016 */ lui $t3, %hi(gGameInfo) # $t3, 0x8016
@ -297,7 +297,7 @@ glabel func_80070C24
/* AE8164 80070FC4 AC790004 */ sw $t9, 4($v1)
/* AE8168 80070FC8 8FA40090 */ lw $a0, 0x90($sp)
/* AE816C 80070FCC AFAA007C */ sw $t2, 0x7c($sp)
/* AE8170 80070FD0 0C01C1C6 */ jal func_80070718
/* AE8170 80070FD0 0C01C1C6 */ jal Environment_PrintDebugInfo
/* AE8174 80070FD4 E7AE0088 */ swc1 $f14, 0x88($sp)
/* AE8178 80070FD8 8FAF0074 */ lw $t7, 0x74($sp)
/* AE817C 80070FDC 8FAA007C */ lw $t2, 0x7c($sp)
@ -405,7 +405,7 @@ glabel func_80070C24
/* AE8300 80071160 30E5FFFF */ andi $a1, $a3, 0xffff
/* AE8304 80071164 AFA80034 */ sw $t0, 0x34($sp)
/* AE8308 80071168 AFAA007C */ sw $t2, 0x7c($sp)
/* AE830C 8007116C 0C01BE4F */ jal func_8006F93C
/* AE830C 8007116C 0C01BE4F */ jal Environment_LerpWeight
/* AE8310 80071170 E7AE0088 */ swc1 $f14, 0x88($sp)
/* AE8314 80071174 920F001F */ lbu $t7, 0x1f($s0)
/* AE8318 80071178 8FA80034 */ lw $t0, 0x34($sp)

View file

@ -29,7 +29,7 @@ glabel D_8013C380
.balign 4
.text
glabel func_8006FC88
glabel Environment_UpdateSkybox
/* AE6E28 8006FC88 27BDFFA0 */ addiu $sp, $sp, -0x60
/* AE6E2C 8006FC8C AFB00030 */ sw $s0, 0x30($sp)
/* AE6E30 8006FC90 308200FF */ andi $v0, $a0, 0xff
@ -78,7 +78,7 @@ glabel func_8006FC88
/* AE6ED4 8006FD34 3146FFFF */ andi $a2, $t2, 0xffff
/* AE6ED8 8006FD38 11C00029 */ beqz $t6, .L8006FDE0
/* AE6EDC 8006FD3C 00000000 */ nop
/* AE6EE0 8006FD40 0C01BE4F */ jal func_8006F93C
/* AE6EE0 8006FD40 0C01BE4F */ jal Environment_LerpWeight
/* AE6EE4 8006FD44 30E4FFFF */ andi $a0, $a3, 0xffff
/* AE6EE8 8006FD48 3C01437F */ li $at, 0x437F0000 # 0.000000
/* AE6EEC 8006FD4C 44812000 */ mtc1 $at, $f4
@ -165,8 +165,8 @@ glabel func_8006FC88
.L8006FE74:
/* AE7014 8006FE74 906F0005 */ lbu $t7, 5($v1)
/* AE7018 8006FE78 90780006 */ lbu $t8, 6($v1)
/* AE701C 8006FE7C 3C028012 */ lui $v0, %hi(D_8011FB3C) # $v0, 0x8012
/* AE7020 8006FE80 2442FB3C */ addiu $v0, %lo(D_8011FB3C) # addiu $v0, $v0, -0x4c4
/* AE701C 8006FE7C 3C028012 */ lui $v0, %hi(gSkyboxBlendingEnabled) # $v0, 0x8012
/* AE7020 8006FE80 2442FB3C */ addiu $v0, %lo(gSkyboxBlendingEnabled) # addiu $v0, $v0, -0x4c4
/* AE7024 8006FE84 332B00FF */ andi $t3, $t9, 0xff
/* AE7028 8006FE88 A0590000 */ sb $t9, ($v0)
/* AE702C 8006FE8C A3AF005A */ sb $t7, 0x5a($sp)
@ -183,7 +183,7 @@ glabel func_8006FC88
/* AE7058 8006FEB8 94640002 */ lhu $a0, 2($v1)
/* AE705C 8006FEBC 94650000 */ lhu $a1, ($v1)
/* AE7060 8006FEC0 A3A8005B */ sb $t0, 0x5b($sp)
/* AE7064 8006FEC4 0C01BE4F */ jal func_8006F93C
/* AE7064 8006FEC4 0C01BE4F */ jal Environment_LerpWeight
/* AE7068 8006FEC8 3146FFFF */ andi $a2, $t2, 0xffff
/* AE706C 8006FECC 3C01437F */ li $at, 0x437F0000 # 0.000000
/* AE7070 8006FED0 44815000 */ mtc1 $at, $f10
@ -239,7 +239,7 @@ glabel func_8006FC88
/* AE7128 8006FF88 94640002 */ lhu $a0, 2($v1)
/* AE712C 8006FF8C 94650000 */ lhu $a1, ($v1)
/* AE7130 8006FF90 A3A8005B */ sb $t0, 0x5b($sp)
/* AE7134 8006FF94 0C01BE4F */ jal func_8006F93C
/* AE7134 8006FF94 0C01BE4F */ jal Environment_LerpWeight
/* AE7138 8006FF98 3146FFFF */ andi $a2, $t2, 0xffff
/* AE713C 8006FF9C 3C01437F */ li $at, 0x437F0000 # 0.000000
/* AE7140 8006FFA0 44812000 */ mtc1 $at, $f4
@ -412,10 +412,10 @@ glabel func_8006FC88
/* AE73A8 80070208 530B0027 */ beql $t8, $t3, .L800702A8
/* AE73AC 8007020C 93B80059 */ lbu $t8, 0x59($sp)
/* AE73B0 80070210 820C0044 */ lb $t4, 0x44($s0)
/* AE73B4 80070214 3C0F8012 */ lui $t7, %hi(D_8011FD3C) # $t7, 0x8012
/* AE73B4 80070214 3C0F8012 */ lui $t7, %hi(gSkyboxFiles) # $t7, 0x8012
/* AE73B8 80070218 240D0001 */ li $t5, 1
/* AE73BC 8007021C 15800021 */ bnez $t4, .L800702A4
/* AE73C0 80070220 25EFFD3C */ addiu $t7, %lo(D_8011FD3C) # addiu $t7, $t7, -0x2c4
/* AE73C0 80070220 25EFFD3C */ addiu $t7, %lo(gSkyboxFiles) # addiu $t7, $t7, -0x2c4
/* AE73C4 80070224 A20D0044 */ sb $t5, 0x44($s0)
/* AE73C8 80070228 93AE005A */ lbu $t6, 0x5a($sp)
/* AE73CC 8007022C 26040068 */ addiu $a0, $s0, 0x68
@ -460,8 +460,8 @@ glabel func_8006FC88
/* AE7460 800702C0 240C000B */ li $t4, 11
/* AE7464 800702C4 A20C0044 */ sb $t4, 0x44($s0)
/* AE7468 800702C8 93AD0059 */ lbu $t5, 0x59($sp)
/* AE746C 800702CC 3C198012 */ lui $t9, %hi(D_8011FD3C) # $t9, 0x8012
/* AE7470 800702D0 2739FD3C */ addiu $t9, %lo(D_8011FD3C) # addiu $t9, $t9, -0x2c4
/* AE746C 800702CC 3C198012 */ lui $t9, %hi(gSkyboxFiles) # $t9, 0x8012
/* AE7470 800702D0 2739FD3C */ addiu $t9, %lo(gSkyboxFiles) # addiu $t9, $t9, -0x2c4
/* AE7474 800702D4 000D7100 */ sll $t6, $t5, 4
/* AE7478 800702D8 01D91021 */ addu $v0, $t6, $t9
/* AE747C 800702DC 8C4F0004 */ lw $t7, 4($v0)
@ -503,11 +503,11 @@ glabel func_8006FC88
/* AE7504 80070364 A2180044 */ sb $t8, 0x44($s0)
/* AE7508 80070368 8FB90050 */ lw $t9, 0x50($sp)
/* AE750C 8007036C 93AB005A */ lbu $t3, 0x5a($sp)
/* AE7510 80070370 3C0D8012 */ lui $t5, %hi(D_8011FD3C) # $t5, 0x8012
/* AE7510 80070370 3C0D8012 */ lui $t5, %hi(gSkyboxFiles) # $t5, 0x8012
/* AE7514 80070374 33380004 */ andi $t8, $t9, 4
/* AE7518 80070378 000B6100 */ sll $t4, $t3, 4
/* AE751C 8007037C 00185883 */ sra $t3, $t8, 2
/* AE7520 80070380 25ADFD3C */ addiu $t5, %lo(D_8011FD3C) # addiu $t5, $t5, -0x2c4
/* AE7520 80070380 25ADFD3C */ addiu $t5, %lo(gSkyboxFiles) # addiu $t5, $t5, -0x2c4
/* AE7524 80070384 260E0048 */ addiu $t6, $s0, 0x48
/* AE7528 80070388 332F0001 */ andi $t7, $t9, 1
/* AE752C 8007038C AFAE0040 */ sw $t6, 0x40($sp)
@ -577,10 +577,10 @@ glabel func_8006FC88
/* AE7624 80070484 93AE0059 */ lbu $t6, 0x59($sp)
/* AE7628 80070488 260D0048 */ addiu $t5, $s0, 0x48
/* AE762C 8007048C AFAD0040 */ sw $t5, 0x40($sp)
/* AE7630 80070490 3C188012 */ lui $t8, %hi(D_8011FD3C) # $t8, 0x8012
/* AE7630 80070490 3C188012 */ lui $t8, %hi(gSkyboxFiles) # $t8, 0x8012
/* AE7634 80070494 31EC0004 */ andi $t4, $t7, 4
/* AE7638 80070498 000C6883 */ sra $t5, $t4, 2
/* AE763C 8007049C 2718FD3C */ addiu $t8, %lo(D_8011FD3C) # addiu $t8, $t8, -0x2c4
/* AE763C 8007049C 2718FD3C */ addiu $t8, %lo(gSkyboxFiles) # addiu $t8, $t8, -0x2c4
/* AE7640 800704A0 31EB0001 */ andi $t3, $t7, 1
/* AE7644 800704A4 000EC900 */ sll $t9, $t6, 4
/* AE7648 800704A8 03381021 */ addu $v0, $t9, $t8

View file

@ -1,181 +0,0 @@
glabel Kankyo_FadeInGameOverLights
/* AED294 800760F4 27BDFFC8 */ addiu $sp, $sp, -0x38
/* AED298 800760F8 AFBF002C */ sw $ra, 0x2c($sp)
/* AED29C 800760FC AFB00028 */ sw $s0, 0x28($sp)
/* AED2A0 80076100 8C831C44 */ lw $v1, 0x1c44($a0)
/* AED2A4 80076104 3C014120 */ li $at, 0x41200000 # 0.000000
/* AED2A8 80076108 44810000 */ mtc1 $at, $f0
/* AED2AC 8007610C C4640024 */ lwc1 $f4, 0x24($v1)
/* AED2B0 80076110 3C028016 */ lui $v0, %hi(D_8015FDAE)
/* AED2B4 80076114 9042FDAE */ lbu $v0, %lo(D_8015FDAE)($v0)
/* AED2B8 80076118 4600218D */ trunc.w.s $f6, $f4
/* AED2BC 8007611C C4640028 */ lwc1 $f4, 0x28($v1)
/* AED2C0 80076120 00808025 */ move $s0, $a0
/* AED2C4 80076124 3C048016 */ lui $a0, %hi(D_8015FD88)
/* AED2C8 80076128 440F3000 */ mfc1 $t7, $f6
/* AED2CC 8007612C 4600218D */ trunc.w.s $f6, $f4
/* AED2D0 80076130 C464002C */ lwc1 $f4, 0x2c($v1)
/* AED2D4 80076134 000FC400 */ sll $t8, $t7, 0x10
/* AED2D8 80076138 0018CC03 */ sra $t9, $t8, 0x10
/* AED2DC 8007613C 44994000 */ mtc1 $t9, $f8
/* AED2E0 80076140 440A3000 */ mfc1 $t2, $f6
/* AED2E4 80076144 4600218D */ trunc.w.s $f6, $f4
/* AED2E8 80076148 240900FF */ li $t1, 255
/* AED2EC 8007614C 000A5C00 */ sll $t3, $t2, 0x10
/* AED2F0 80076150 468042A0 */ cvt.s.w $f10, $f8
/* AED2F4 80076154 000B6403 */ sra $t4, $t3, 0x10
/* AED2F8 80076158 448C4000 */ mtc1 $t4, $f8
/* AED2FC 8007615C 440F3000 */ mfc1 $t7, $f6
/* AED300 80076160 AFA9001C */ sw $t1, 0x1c($sp)
/* AED304 80076164 2484FD88 */ addiu $a0, %lo(D_8015FD88)
/* AED308 80076168 46005401 */ sub.s $f16, $f10, $f0
/* AED30C 8007616C 000FC400 */ sll $t8, $t7, 0x10
/* AED310 80076170 0018CC03 */ sra $t9, $t8, 0x10
/* AED314 80076174 468042A0 */ cvt.s.w $f10, $f8
/* AED318 80076178 44994000 */ mtc1 $t9, $f8
/* AED31C 8007617C AFA30034 */ sw $v1, 0x34($sp)
/* AED320 80076180 AFA20018 */ sw $v0, 0x18($sp)
/* AED324 80076184 AFA20014 */ sw $v0, 0x14($sp)
/* AED328 80076188 4600848D */ trunc.w.s $f18, $f16
/* AED32C 8007618C AFA20010 */ sw $v0, 0x10($sp)
/* AED330 80076190 46005400 */ add.s $f16, $f10, $f0
/* AED334 80076194 44059000 */ mfc1 $a1, $f18
/* AED338 80076198 468042A0 */ cvt.s.w $f10, $f8
/* AED33C 8007619C 00052C00 */ sll $a1, $a1, 0x10
/* AED340 800761A0 00052C03 */ sra $a1, $a1, 0x10
/* AED344 800761A4 4600848D */ trunc.w.s $f18, $f16
/* AED348 800761A8 46005401 */ sub.s $f16, $f10, $f0
/* AED34C 800761AC 44069000 */ mfc1 $a2, $f18
/* AED350 800761B0 4600848D */ trunc.w.s $f18, $f16
/* AED354 800761B4 00063400 */ sll $a2, $a2, 0x10
/* AED358 800761B8 00063403 */ sra $a2, $a2, 0x10
/* AED35C 800761BC 44079000 */ mfc1 $a3, $f18
/* AED360 800761C0 00000000 */ nop
/* AED364 800761C4 00073C00 */ sll $a3, $a3, 0x10
/* AED368 800761C8 0C01E763 */ jal Lights_PointNoGlowSetInfo
/* AED36C 800761CC 00073C03 */ sra $a3, $a3, 0x10
/* AED370 800761D0 8FA30034 */ lw $v1, 0x34($sp)
/* AED374 800761D4 3C014120 */ li $at, 0x41200000 # 0.000000
/* AED378 800761D8 44810000 */ mtc1 $at, $f0
/* AED37C 800761DC C4640024 */ lwc1 $f4, 0x24($v1)
/* AED380 800761E0 3C028016 */ lui $v0, %hi(D_8015FDAE)
/* AED384 800761E4 9042FDAE */ lbu $v0, %lo(D_8015FDAE)($v0)
/* AED388 800761E8 4600218D */ trunc.w.s $f6, $f4
/* AED38C 800761EC C4640028 */ lwc1 $f4, 0x28($v1)
/* AED390 800761F0 3C048016 */ lui $a0, %hi(D_8015FDA0)
/* AED394 800761F4 240F00FF */ li $t7, 255
/* AED398 800761F8 440B3000 */ mfc1 $t3, $f6
/* AED39C 800761FC 4600218D */ trunc.w.s $f6, $f4
/* AED3A0 80076200 C464002C */ lwc1 $f4, 0x2c($v1)
/* AED3A4 80076204 000B6400 */ sll $t4, $t3, 0x10
/* AED3A8 80076208 000C6C03 */ sra $t5, $t4, 0x10
/* AED3AC 8007620C 448D4000 */ mtc1 $t5, $f8
/* AED3B0 80076210 44183000 */ mfc1 $t8, $f6
/* AED3B4 80076214 4600218D */ trunc.w.s $f6, $f4
/* AED3B8 80076218 AFAF001C */ sw $t7, 0x1c($sp)
/* AED3BC 8007621C 0018CC00 */ sll $t9, $t8, 0x10
/* AED3C0 80076220 468042A0 */ cvt.s.w $f10, $f8
/* AED3C4 80076224 00194403 */ sra $t0, $t9, 0x10
/* AED3C8 80076228 44884000 */ mtc1 $t0, $f8
/* AED3CC 8007622C 440B3000 */ mfc1 $t3, $f6
/* AED3D0 80076230 2484FDA0 */ addiu $a0, %lo(D_8015FDA0)
/* AED3D4 80076234 AFA20018 */ sw $v0, 0x18($sp)
/* AED3D8 80076238 46005400 */ add.s $f16, $f10, $f0
/* AED3DC 8007623C 000B6400 */ sll $t4, $t3, 0x10
/* AED3E0 80076240 000C6C03 */ sra $t5, $t4, 0x10
/* AED3E4 80076244 468042A0 */ cvt.s.w $f10, $f8
/* AED3E8 80076248 448D4000 */ mtc1 $t5, $f8
/* AED3EC 8007624C AFA20014 */ sw $v0, 0x14($sp)
/* AED3F0 80076250 AFA20010 */ sw $v0, 0x10($sp)
/* AED3F4 80076254 4600848D */ trunc.w.s $f18, $f16
/* AED3F8 80076258 46005400 */ add.s $f16, $f10, $f0
/* AED3FC 8007625C 44059000 */ mfc1 $a1, $f18
/* AED400 80076260 468042A0 */ cvt.s.w $f10, $f8
/* AED404 80076264 00052C00 */ sll $a1, $a1, 0x10
/* AED408 80076268 00052C03 */ sra $a1, $a1, 0x10
/* AED40C 8007626C 4600848D */ trunc.w.s $f18, $f16
/* AED410 80076270 46005400 */ add.s $f16, $f10, $f0
/* AED414 80076274 44069000 */ mfc1 $a2, $f18
/* AED418 80076278 4600848D */ trunc.w.s $f18, $f16
/* AED41C 8007627C 00063400 */ sll $a2, $a2, 0x10
/* AED420 80076280 00063403 */ sra $a2, $a2, 0x10
/* AED424 80076284 44079000 */ mfc1 $a3, $f18
/* AED428 80076288 00000000 */ nop
/* AED42C 8007628C 00073C00 */ sll $a3, $a3, 0x10
/* AED430 80076290 0C01E763 */ jal Lights_PointNoGlowSetInfo
/* AED434 80076294 00073C03 */ sra $a3, $a3, 0x10
/* AED438 80076298 3C038016 */ lui $v1, %hi(D_8015FDAE) # $v1, 0x8016
/* AED43C 8007629C 2463FDAE */ addiu $v1, %lo(D_8015FDAE) # addiu $v1, $v1, -0x252
/* AED440 800762A0 90620000 */ lbu $v0, ($v1)
/* AED444 800762A4 284100FE */ slti $at, $v0, 0xfe
/* AED448 800762A8 10200002 */ beqz $at, .L800762B4
/* AED44C 800762AC 24580002 */ addiu $t8, $v0, 2
/* AED450 800762B0 A0780000 */ sb $t8, ($v1)
.L800762B4:
/* AED454 800762B4 0C03032E */ jal func_800C0CB8
/* AED458 800762B8 02002025 */ move $a0, $s0
/* AED45C 800762BC 3C038016 */ lui $v1, %hi(D_8015FDAE) # $v1, 0x8016
/* AED460 800762C0 10400029 */ beqz $v0, .L80076368
/* AED464 800762C4 2463FDAE */ addiu $v1, %lo(D_8015FDAE) # addiu $v1, $v1, -0x252
/* AED468 800762C8 00001825 */ move $v1, $zero
/* AED46C 800762CC 3C060001 */ lui $a2, 1
/* AED470 800762D0 2405FF01 */ li $a1, -255
.L800762D4:
/* AED474 800762D4 0003C840 */ sll $t9, $v1, 1
/* AED478 800762D8 02194021 */ addu $t0, $s0, $t9
/* AED47C 800762DC 01061021 */ addu $v0, $t0, $a2
/* AED480 800762E0 84440AB0 */ lh $a0, 0xab0($v0)
/* AED484 800762E4 24630001 */ addiu $v1, $v1, 1
/* AED488 800762E8 00031C00 */ sll $v1, $v1, 0x10
/* AED48C 800762EC 2881FF02 */ slti $at, $a0, -0xfe
/* AED490 800762F0 14200006 */ bnez $at, .L8007630C
/* AED494 800762F4 00031C03 */ sra $v1, $v1, 0x10
/* AED498 800762F8 844A0AB6 */ lh $t2, 0xab6($v0)
/* AED49C 800762FC 2489FFF4 */ addiu $t1, $a0, -0xc
/* AED4A0 80076300 A4490AB0 */ sh $t1, 0xab0($v0)
/* AED4A4 80076304 254BFFF4 */ addiu $t3, $t2, -0xc
/* AED4A8 80076308 A44B0AB6 */ sh $t3, 0xab6($v0)
.L8007630C:
/* AED4AC 8007630C 28610003 */ slti $at, $v1, 3
/* AED4B0 80076310 1420FFF0 */ bnez $at, .L800762D4
/* AED4B4 80076314 A4450ABC */ sh $a1, 0xabc($v0)
/* AED4B8 80076318 02061021 */ addu $v0, $s0, $a2
/* AED4BC 8007631C 84430AC4 */ lh $v1, 0xac4($v0)
/* AED4C0 80076320 844C0AF8 */ lh $t4, 0xaf8($v0)
/* AED4C4 80076324 246EFF9C */ addiu $t6, $v1, -0x64
/* AED4C8 80076328 01836821 */ addu $t5, $t4, $v1
/* AED4CC 8007632C 29A10385 */ slti $at, $t5, 0x385
/* AED4D0 80076330 14200003 */ bnez $at, .L80076340
/* AED4D4 80076334 3C010001 */ lui $at, 1
/* AED4D8 80076338 00300821 */ addu $at, $at, $s0
/* AED4DC 8007633C A42E0AC4 */ sh $t6, 0xac4($at)
.L80076340:
/* AED4E0 80076340 84430AC2 */ lh $v1, 0xac2($v0)
/* AED4E4 80076344 844F0AF6 */ lh $t7, 0xaf6($v0)
/* AED4E8 80076348 2479FFF6 */ addiu $t9, $v1, -0xa
/* AED4EC 8007634C 01E3C021 */ addu $t8, $t7, $v1
/* AED4F0 80076350 2B0103B7 */ slti $at, $t8, 0x3b7
/* AED4F4 80076354 1420000F */ bnez $at, .L80076394
/* AED4F8 80076358 3C010001 */ lui $at, 1
/* AED4FC 8007635C 00300821 */ addu $at, $at, $s0
/* AED500 80076360 1000000C */ b .L80076394
/* AED504 80076364 A4390AC2 */ sh $t9, 0xac2($at)
.L80076368:
/* AED508 80076368 3C010001 */ lui $at, 1
/* AED50C 8007636C 3C060001 */ lui $a2, 1
/* AED510 80076370 00300821 */ addu $at, $at, $s0
/* AED514 80076374 24080001 */ li $t0, 1
/* AED518 80076378 A0280B05 */ sb $t0, 0xb05($at)
/* AED51C 8007637C 02061021 */ addu $v0, $s0, $a2
/* AED520 80076380 A0400B06 */ sb $zero, 0xb06($v0)
/* AED524 80076384 A0400B07 */ sb $zero, 0xb07($v0)
/* AED528 80076388 A0400B08 */ sb $zero, 0xb08($v0)
/* AED52C 8007638C 90690000 */ lbu $t1, ($v1)
/* AED530 80076390 A0490B09 */ sb $t1, 0xb09($v0)
.L80076394:
/* AED534 80076394 8FBF002C */ lw $ra, 0x2c($sp)
/* AED538 80076398 8FB00028 */ lw $s0, 0x28($sp)
/* AED53C 8007639C 27BD0038 */ addiu $sp, $sp, 0x38
/* AED540 800763A0 03E00008 */ jr $ra
/* AED544 800763A4 00000000 */ nop

View file

@ -1,209 +0,0 @@
glabel Kankyo_FadeOutGameOverLights
/* AED548 800763A8 27BDFFC0 */ addiu $sp, $sp, -0x40
/* AED54C 800763AC AFB2002C */ sw $s2, 0x2c($sp)
/* AED550 800763B0 3C128016 */ lui $s2, %hi(D_8015FDAE)
/* AED554 800763B4 2652FDAE */ addiu $s2, %lo(D_8015FDAE) # addiu $s2, $s2, -0x252
/* AED558 800763B8 92420000 */ lbu $v0, ($s2)
/* AED55C 800763BC AFBF003C */ sw $ra, 0x3c($sp)
/* AED560 800763C0 AFB50038 */ sw $s5, 0x38($sp)
/* AED564 800763C4 AFB40034 */ sw $s4, 0x34($sp)
/* AED568 800763C8 AFB30030 */ sw $s3, 0x30($sp)
/* AED56C 800763CC AFB10028 */ sw $s1, 0x28($sp)
/* AED570 800763D0 AFB00024 */ sw $s0, 0x24($sp)
/* AED574 800763D4 28410003 */ slti $at, $v0, 3
/* AED578 800763D8 0080A825 */ move $s5, $a0
/* AED57C 800763DC 14200004 */ bnez $at, .L800763F0
/* AED580 800763E0 8C911C44 */ lw $s1, 0x1c44($a0)
/* AED584 800763E4 244EFFFD */ addiu $t6, $v0, -3
/* AED588 800763E8 10000002 */ b .L800763F4
/* AED58C 800763EC A24E0000 */ sb $t6, ($s2)
.L800763F0:
/* AED590 800763F0 A2400000 */ sb $zero, ($s2)
.L800763F4:
/* AED594 800763F4 92500000 */ lbu $s0, ($s2)
/* AED598 800763F8 24010001 */ li $at, 1
/* AED59C 800763FC 02A02025 */ move $a0, $s5
/* AED5A0 80076400 1601000D */ bne $s0, $at, .L80076438
/* AED5A4 80076404 02001025 */ move $v0, $s0
/* AED5A8 80076408 26B007A8 */ addiu $s0, $s5, 0x7a8
/* AED5AC 8007640C 3C068016 */ lui $a2, %hi(D_8015FD84)
/* AED5B0 80076410 8CC6FD84 */ lw $a2, %lo(D_8015FD84)($a2)
/* AED5B4 80076414 0C01E9F1 */ jal LightContext_RemoveLight
/* AED5B8 80076418 02002825 */ move $a1, $s0
/* AED5BC 8007641C 3C068016 */ lui $a2, %hi(D_8015FD98)
/* AED5C0 80076420 8CC6FD98 */ lw $a2, %lo(D_8015FD98)($a2)
/* AED5C4 80076424 02A02025 */ move $a0, $s5
/* AED5C8 80076428 0C01E9F1 */ jal LightContext_RemoveLight
/* AED5CC 8007642C 02002825 */ move $a1, $s0
/* AED5D0 80076430 10000063 */ b .L800765C0
/* AED5D4 80076434 00000000 */ nop
.L80076438:
/* AED5D8 80076438 28410002 */ slti $at, $v0, 2
/* AED5DC 8007643C 14200060 */ bnez $at, .L800765C0
/* AED5E0 80076440 00000000 */ nop
/* AED5E4 80076444 C6240024 */ lwc1 $f4, 0x24($s1)
/* AED5E8 80076448 3C014120 */ li $at, 0x41200000 # 0.000000
/* AED5EC 8007644C 44810000 */ mtc1 $at, $f0
/* AED5F0 80076450 4600218D */ trunc.w.s $f6, $f4
/* AED5F4 80076454 C6240028 */ lwc1 $f4, 0x28($s1)
/* AED5F8 80076458 3C048016 */ lui $a0, %hi(D_8015FD88)
/* AED5FC 8007645C 240A00FF */ li $t2, 255
/* AED600 80076460 44183000 */ mfc1 $t8, $f6
/* AED604 80076464 4600218D */ trunc.w.s $f6, $f4
/* AED608 80076468 C624002C */ lwc1 $f4, 0x2c($s1)
/* AED60C 8007646C 0018CC00 */ sll $t9, $t8, 0x10
/* AED610 80076470 00194403 */ sra $t0, $t9, 0x10
/* AED614 80076474 44884000 */ mtc1 $t0, $f8
/* AED618 80076478 440B3000 */ mfc1 $t3, $f6
/* AED61C 8007647C 4600218D */ trunc.w.s $f6, $f4
/* AED620 80076480 AFAA001C */ sw $t2, 0x1c($sp)
/* AED624 80076484 000B6400 */ sll $t4, $t3, 0x10
/* AED628 80076488 468042A0 */ cvt.s.w $f10, $f8
/* AED62C 8007648C 000C6C03 */ sra $t5, $t4, 0x10
/* AED630 80076490 448D4000 */ mtc1 $t5, $f8
/* AED634 80076494 44183000 */ mfc1 $t8, $f6
/* AED638 80076498 AFB00018 */ sw $s0, 0x18($sp)
/* AED63C 8007649C AFB00014 */ sw $s0, 0x14($sp)
/* AED640 800764A0 46005401 */ sub.s $f16, $f10, $f0
/* AED644 800764A4 0018CC00 */ sll $t9, $t8, 0x10
/* AED648 800764A8 00194403 */ sra $t0, $t9, 0x10
/* AED64C 800764AC 468042A0 */ cvt.s.w $f10, $f8
/* AED650 800764B0 44884000 */ mtc1 $t0, $f8
/* AED654 800764B4 AFB00010 */ sw $s0, 0x10($sp)
/* AED658 800764B8 2484FD88 */ addiu $a0, %lo(D_8015FD88)
/* AED65C 800764BC 4600848D */ trunc.w.s $f18, $f16
/* AED660 800764C0 46005400 */ add.s $f16, $f10, $f0
/* AED664 800764C4 44059000 */ mfc1 $a1, $f18
/* AED668 800764C8 468042A0 */ cvt.s.w $f10, $f8
/* AED66C 800764CC 00052C00 */ sll $a1, $a1, 0x10
/* AED670 800764D0 00052C03 */ sra $a1, $a1, 0x10
/* AED674 800764D4 4600848D */ trunc.w.s $f18, $f16
/* AED678 800764D8 46005401 */ sub.s $f16, $f10, $f0
/* AED67C 800764DC 44069000 */ mfc1 $a2, $f18
/* AED680 800764E0 4600848D */ trunc.w.s $f18, $f16
/* AED684 800764E4 00063400 */ sll $a2, $a2, 0x10
/* AED688 800764E8 00063403 */ sra $a2, $a2, 0x10
/* AED68C 800764EC 44079000 */ mfc1 $a3, $f18
/* AED690 800764F0 00000000 */ nop
/* AED694 800764F4 00073C00 */ sll $a3, $a3, 0x10
/* AED698 800764F8 0C01E763 */ jal Lights_PointNoGlowSetInfo
/* AED69C 800764FC 00073C03 */ sra $a3, $a3, 0x10
/* AED6A0 80076500 C6240024 */ lwc1 $f4, 0x24($s1)
/* AED6A4 80076504 3C014120 */ li $at, 0x41200000 # 0.000000
/* AED6A8 80076508 44810000 */ mtc1 $at, $f0
/* AED6AC 8007650C 4600218D */ trunc.w.s $f6, $f4
/* AED6B0 80076510 C6240028 */ lwc1 $f4, 0x28($s1)
/* AED6B4 80076514 92500000 */ lbu $s0, ($s2)
/* AED6B8 80076518 3C048016 */ lui $a0, %hi(D_8015FDA0)
/* AED6BC 8007651C 440C3000 */ mfc1 $t4, $f6
/* AED6C0 80076520 4600218D */ trunc.w.s $f6, $f4
/* AED6C4 80076524 C624002C */ lwc1 $f4, 0x2c($s1)
/* AED6C8 80076528 000C6C00 */ sll $t5, $t4, 0x10
/* AED6CC 8007652C 000D7403 */ sra $t6, $t5, 0x10
/* AED6D0 80076530 448E4000 */ mtc1 $t6, $f8
/* AED6D4 80076534 44193000 */ mfc1 $t9, $f6
/* AED6D8 80076538 4600218D */ trunc.w.s $f6, $f4
/* AED6DC 8007653C 241800FF */ li $t8, 255
/* AED6E0 80076540 00194400 */ sll $t0, $t9, 0x10
/* AED6E4 80076544 468042A0 */ cvt.s.w $f10, $f8
/* AED6E8 80076548 00084C03 */ sra $t1, $t0, 0x10
/* AED6EC 8007654C 44894000 */ mtc1 $t1, $f8
/* AED6F0 80076550 440C3000 */ mfc1 $t4, $f6
/* AED6F4 80076554 AFB8001C */ sw $t8, 0x1c($sp)
/* AED6F8 80076558 2484FDA0 */ addiu $a0, %lo(D_8015FDA0)
/* AED6FC 8007655C 46005400 */ add.s $f16, $f10, $f0
/* AED700 80076560 000C6C00 */ sll $t5, $t4, 0x10
/* AED704 80076564 000D7403 */ sra $t6, $t5, 0x10
/* AED708 80076568 468042A0 */ cvt.s.w $f10, $f8
/* AED70C 8007656C 448E4000 */ mtc1 $t6, $f8
/* AED710 80076570 AFB00018 */ sw $s0, 0x18($sp)
/* AED714 80076574 AFB00014 */ sw $s0, 0x14($sp)
/* AED718 80076578 AFB00010 */ sw $s0, 0x10($sp)
/* AED71C 8007657C 4600848D */ trunc.w.s $f18, $f16
/* AED720 80076580 46005400 */ add.s $f16, $f10, $f0
/* AED724 80076584 44059000 */ mfc1 $a1, $f18
/* AED728 80076588 468042A0 */ cvt.s.w $f10, $f8
/* AED72C 8007658C 00052C00 */ sll $a1, $a1, 0x10
/* AED730 80076590 00052C03 */ sra $a1, $a1, 0x10
/* AED734 80076594 4600848D */ trunc.w.s $f18, $f16
/* AED738 80076598 46005400 */ add.s $f16, $f10, $f0
/* AED73C 8007659C 44069000 */ mfc1 $a2, $f18
/* AED740 800765A0 4600848D */ trunc.w.s $f18, $f16
/* AED744 800765A4 00063400 */ sll $a2, $a2, 0x10
/* AED748 800765A8 00063403 */ sra $a2, $a2, 0x10
/* AED74C 800765AC 44079000 */ mfc1 $a3, $f18
/* AED750 800765B0 00000000 */ nop
/* AED754 800765B4 00073C00 */ sll $a3, $a3, 0x10
/* AED758 800765B8 0C01E763 */ jal Lights_PointNoGlowSetInfo
/* AED75C 800765BC 00073C03 */ sra $a3, $a3, 0x10
.L800765C0:
/* AED760 800765C0 0C03032E */ jal func_800C0CB8
/* AED764 800765C4 02A02025 */ move $a0, $s5
/* AED768 800765C8 10400025 */ beqz $v0, .L80076660
/* AED76C 800765CC 3C140001 */ lui $s4, 1
/* AED770 800765D0 3C130001 */ lui $s3, (0x00010AB6 >> 16) # lui $s3, 1
/* AED774 800765D4 3C120001 */ lui $s2, (0x00010AB0 >> 16) # lui $s2, 1
/* AED778 800765D8 36520AB0 */ ori $s2, (0x00010AB0 & 0xFFFF) # ori $s2, $s2, 0xab0
/* AED77C 800765DC 36730AB6 */ ori $s3, (0x00010AB6 & 0xFFFF) # ori $s3, $s3, 0xab6
/* AED780 800765E0 00008025 */ move $s0, $zero
/* AED784 800765E4 3C140001 */ lui $s4, 1
.L800765E8:
/* AED788 800765E8 0010C840 */ sll $t9, $s0, 1
/* AED78C 800765EC 02B98821 */ addu $s1, $s5, $t9
/* AED790 800765F0 24080001 */ li $t0, 1
/* AED794 800765F4 AFA80010 */ sw $t0, 0x10($sp)
/* AED798 800765F8 02322021 */ addu $a0, $s1, $s2
/* AED79C 800765FC 00002825 */ move $a1, $zero
/* AED7A0 80076600 24060005 */ li $a2, 5
/* AED7A4 80076604 0C01E1A7 */ jal Math_SmoothStepToS
/* AED7A8 80076608 2407000C */ li $a3, 12
/* AED7AC 8007660C 24090001 */ li $t1, 1
/* AED7B0 80076610 AFA90010 */ sw $t1, 0x10($sp)
/* AED7B4 80076614 02332021 */ addu $a0, $s1, $s3
/* AED7B8 80076618 00002825 */ move $a1, $zero
/* AED7BC 8007661C 24060005 */ li $a2, 5
/* AED7C0 80076620 0C01E1A7 */ jal Math_SmoothStepToS
/* AED7C4 80076624 2407000C */ li $a3, 12
/* AED7C8 80076628 26100001 */ addiu $s0, $s0, 1
/* AED7CC 8007662C 00108400 */ sll $s0, $s0, 0x10
/* AED7D0 80076630 00108403 */ sra $s0, $s0, 0x10
/* AED7D4 80076634 2A010003 */ slti $at, $s0, 3
/* AED7D8 80076638 02345021 */ addu $t2, $s1, $s4
/* AED7DC 8007663C 1420FFEA */ bnez $at, .L800765E8
/* AED7E0 80076640 A5400ABC */ sh $zero, 0xabc($t2)
/* AED7E4 80076644 3C010001 */ lui $at, 1
/* AED7E8 80076648 00350821 */ addu $at, $at, $s5
/* AED7EC 8007664C A4200AC4 */ sh $zero, 0xac4($at)
/* AED7F0 80076650 3C010001 */ lui $at, 1
/* AED7F4 80076654 00350821 */ addu $at, $at, $s5
/* AED7F8 80076658 10000011 */ b .L800766A0
/* AED7FC 8007665C A4200AC2 */ sh $zero, 0xac2($at)
.L80076660:
/* AED800 80076660 3C010001 */ lui $at, 1
/* AED804 80076664 00350821 */ addu $at, $at, $s5
/* AED808 80076668 240B0001 */ li $t3, 1
/* AED80C 8007666C A02B0B05 */ sb $t3, 0xb05($at)
/* AED810 80076670 02B41021 */ addu $v0, $s5, $s4
/* AED814 80076674 A0400B06 */ sb $zero, 0xb06($v0)
/* AED818 80076678 A0400B07 */ sb $zero, 0xb07($v0)
/* AED81C 8007667C A0400B08 */ sb $zero, 0xb08($v0)
/* AED820 80076680 924C0000 */ lbu $t4, ($s2)
/* AED824 80076684 3C010001 */ lui $at, 1
/* AED828 80076688 00350821 */ addu $at, $at, $s5
/* AED82C 8007668C A04C0B09 */ sb $t4, 0xb09($v0)
/* AED830 80076690 924D0000 */ lbu $t5, ($s2)
/* AED834 80076694 55A00003 */ bnezl $t5, .L800766A4
/* AED838 80076698 8FBF003C */ lw $ra, 0x3c($sp)
/* AED83C 8007669C A0200B05 */ sb $zero, 0xb05($at)
.L800766A0:
/* AED840 800766A0 8FBF003C */ lw $ra, 0x3c($sp)
.L800766A4:
/* AED844 800766A4 8FB00024 */ lw $s0, 0x24($sp)
/* AED848 800766A8 8FB10028 */ lw $s1, 0x28($sp)
/* AED84C 800766AC 8FB2002C */ lw $s2, 0x2c($sp)
/* AED850 800766B0 8FB30030 */ lw $s3, 0x30($sp)
/* AED854 800766B4 8FB40034 */ lw $s4, 0x34($sp)
/* AED858 800766B8 8FB50038 */ lw $s5, 0x38($sp)
/* AED85C 800766BC 03E00008 */ jr $ra
/* AED860 800766C0 27BD0040 */ addiu $sp, $sp, 0x40

View file

@ -1,122 +0,0 @@
glabel Kankyo_InitGameOverLights
/* AED0B4 80075F14 27BDFFC8 */ addiu $sp, $sp, -0x38
/* AED0B8 80075F18 AFBF0024 */ sw $ra, 0x24($sp)
/* AED0BC 80075F1C AFA40038 */ sw $a0, 0x38($sp)
/* AED0C0 80075F20 3C014120 */ li $at, 0x41200000 # 0.000000
/* AED0C4 80075F24 44810000 */ mtc1 $at, $f0
/* AED0C8 80075F28 8C831C44 */ lw $v1, 0x1c44($a0)
/* AED0CC 80075F2C 3C018016 */ lui $at, %hi(D_8015FDAE)
/* AED0D0 80075F30 A020FDAE */ sb $zero, %lo(D_8015FDAE)($at)
/* AED0D4 80075F34 C4640024 */ lwc1 $f4, 0x24($v1)
/* AED0D8 80075F38 3C048016 */ lui $a0, %hi(D_8015FD88)
/* AED0DC 80075F3C 240A00FF */ li $t2, 255
/* AED0E0 80075F40 4600218D */ trunc.w.s $f6, $f4
/* AED0E4 80075F44 C4640028 */ lwc1 $f4, 0x28($v1)
/* AED0E8 80075F48 2484FD88 */ addiu $a0, %lo(D_8015FD88) # addiu $a0, $a0, -0x278
/* AED0EC 80075F4C 44183000 */ mfc1 $t8, $f6
/* AED0F0 80075F50 4600218D */ trunc.w.s $f6, $f4
/* AED0F4 80075F54 C464002C */ lwc1 $f4, 0x2c($v1)
/* AED0F8 80075F58 0018CC00 */ sll $t9, $t8, 0x10
/* AED0FC 80075F5C 00194403 */ sra $t0, $t9, 0x10
/* AED100 80075F60 44884000 */ mtc1 $t0, $f8
/* AED104 80075F64 440B3000 */ mfc1 $t3, $f6
/* AED108 80075F68 4600218D */ trunc.w.s $f6, $f4
/* AED10C 80075F6C AFAA001C */ sw $t2, 0x1c($sp)
/* AED110 80075F70 000B6400 */ sll $t4, $t3, 0x10
/* AED114 80075F74 468042A0 */ cvt.s.w $f10, $f8
/* AED118 80075F78 000C6C03 */ sra $t5, $t4, 0x10
/* AED11C 80075F7C 448D4000 */ mtc1 $t5, $f8
/* AED120 80075F80 44183000 */ mfc1 $t8, $f6
/* AED124 80075F84 AFA00018 */ sw $zero, 0x18($sp)
/* AED128 80075F88 AFA00014 */ sw $zero, 0x14($sp)
/* AED12C 80075F8C 46005401 */ sub.s $f16, $f10, $f0
/* AED130 80075F90 0018CC00 */ sll $t9, $t8, 0x10
/* AED134 80075F94 00194403 */ sra $t0, $t9, 0x10
/* AED138 80075F98 468042A0 */ cvt.s.w $f10, $f8
/* AED13C 80075F9C 44884000 */ mtc1 $t0, $f8
/* AED140 80075FA0 AFA00010 */ sw $zero, 0x10($sp)
/* AED144 80075FA4 AFA30030 */ sw $v1, 0x30($sp)
/* AED148 80075FA8 4600848D */ trunc.w.s $f18, $f16
/* AED14C 80075FAC 46005400 */ add.s $f16, $f10, $f0
/* AED150 80075FB0 44059000 */ mfc1 $a1, $f18
/* AED154 80075FB4 468042A0 */ cvt.s.w $f10, $f8
/* AED158 80075FB8 00052C00 */ sll $a1, $a1, 0x10
/* AED15C 80075FBC 00052C03 */ sra $a1, $a1, 0x10
/* AED160 80075FC0 4600848D */ trunc.w.s $f18, $f16
/* AED164 80075FC4 46005401 */ sub.s $f16, $f10, $f0
/* AED168 80075FC8 44069000 */ mfc1 $a2, $f18
/* AED16C 80075FCC 4600848D */ trunc.w.s $f18, $f16
/* AED170 80075FD0 00063400 */ sll $a2, $a2, 0x10
/* AED174 80075FD4 00063403 */ sra $a2, $a2, 0x10
/* AED178 80075FD8 44079000 */ mfc1 $a3, $f18
/* AED17C 80075FDC 00000000 */ nop
/* AED180 80075FE0 00073C00 */ sll $a3, $a3, 0x10
/* AED184 80075FE4 0C01E763 */ jal Lights_PointNoGlowSetInfo
/* AED188 80075FE8 00073C03 */ sra $a3, $a3, 0x10
/* AED18C 80075FEC 8FA40038 */ lw $a0, 0x38($sp)
/* AED190 80075FF0 3C068016 */ lui $a2, %hi(D_8015FD88)
/* AED194 80075FF4 24C6FD88 */ addiu $a2, %lo(D_8015FD88) # addiu $a2, $a2, -0x278
/* AED198 80075FF8 248507A8 */ addiu $a1, $a0, 0x7a8
/* AED19C 80075FFC 0C01E9D9 */ jal LightContext_InsertLight
/* AED1A0 80076000 AFA5002C */ sw $a1, 0x2c($sp)
/* AED1A4 80076004 3C014120 */ li $at, 0x41200000 # 0.000000
/* AED1A8 80076008 44810000 */ mtc1 $at, $f0
/* AED1AC 8007600C 8FA30030 */ lw $v1, 0x30($sp)
/* AED1B0 80076010 3C018016 */ lui $at, %hi(D_8015FD84)
/* AED1B4 80076014 AC22FD84 */ sw $v0, %lo(D_8015FD84)($at)
/* AED1B8 80076018 C4640024 */ lwc1 $f4, 0x24($v1)
/* AED1BC 8007601C 3C048016 */ lui $a0, %hi(D_8015FDA0)
/* AED1C0 80076020 241800FF */ li $t8, 255
/* AED1C4 80076024 4600218D */ trunc.w.s $f6, $f4
/* AED1C8 80076028 C4640028 */ lwc1 $f4, 0x28($v1)
/* AED1CC 8007602C 2484FDA0 */ addiu $a0, %lo(D_8015FDA0) # addiu $a0, $a0, -0x260
/* AED1D0 80076030 440C3000 */ mfc1 $t4, $f6
/* AED1D4 80076034 4600218D */ trunc.w.s $f6, $f4
/* AED1D8 80076038 C464002C */ lwc1 $f4, 0x2c($v1)
/* AED1DC 8007603C 000C6C00 */ sll $t5, $t4, 0x10
/* AED1E0 80076040 000D7403 */ sra $t6, $t5, 0x10
/* AED1E4 80076044 448E4000 */ mtc1 $t6, $f8
/* AED1E8 80076048 44193000 */ mfc1 $t9, $f6
/* AED1EC 8007604C 4600218D */ trunc.w.s $f6, $f4
/* AED1F0 80076050 AFB8001C */ sw $t8, 0x1c($sp)
/* AED1F4 80076054 00194400 */ sll $t0, $t9, 0x10
/* AED1F8 80076058 468042A0 */ cvt.s.w $f10, $f8
/* AED1FC 8007605C 00084C03 */ sra $t1, $t0, 0x10
/* AED200 80076060 44894000 */ mtc1 $t1, $f8
/* AED204 80076064 440C3000 */ mfc1 $t4, $f6
/* AED208 80076068 AFA00018 */ sw $zero, 0x18($sp)
/* AED20C 8007606C AFA00014 */ sw $zero, 0x14($sp)
/* AED210 80076070 46005400 */ add.s $f16, $f10, $f0
/* AED214 80076074 000C6C00 */ sll $t5, $t4, 0x10
/* AED218 80076078 000D7403 */ sra $t6, $t5, 0x10
/* AED21C 8007607C 468042A0 */ cvt.s.w $f10, $f8
/* AED220 80076080 448E4000 */ mtc1 $t6, $f8
/* AED224 80076084 AFA00010 */ sw $zero, 0x10($sp)
/* AED228 80076088 4600848D */ trunc.w.s $f18, $f16
/* AED22C 8007608C 46005400 */ add.s $f16, $f10, $f0
/* AED230 80076090 44059000 */ mfc1 $a1, $f18
/* AED234 80076094 468042A0 */ cvt.s.w $f10, $f8
/* AED238 80076098 00052C00 */ sll $a1, $a1, 0x10
/* AED23C 8007609C 00052C03 */ sra $a1, $a1, 0x10
/* AED240 800760A0 4600848D */ trunc.w.s $f18, $f16
/* AED244 800760A4 46005400 */ add.s $f16, $f10, $f0
/* AED248 800760A8 44069000 */ mfc1 $a2, $f18
/* AED24C 800760AC 4600848D */ trunc.w.s $f18, $f16
/* AED250 800760B0 00063400 */ sll $a2, $a2, 0x10
/* AED254 800760B4 00063403 */ sra $a2, $a2, 0x10
/* AED258 800760B8 44079000 */ mfc1 $a3, $f18
/* AED25C 800760BC 00000000 */ nop
/* AED260 800760C0 00073C00 */ sll $a3, $a3, 0x10
/* AED264 800760C4 0C01E763 */ jal Lights_PointNoGlowSetInfo
/* AED268 800760C8 00073C03 */ sra $a3, $a3, 0x10
/* AED26C 800760CC 3C068016 */ lui $a2, %hi(D_8015FDA0) # $a2, 0x8016
/* AED270 800760D0 24C6FDA0 */ addiu $a2, %lo(D_8015FDA0) # addiu $a2, $a2, -0x260
/* AED274 800760D4 8FA40038 */ lw $a0, 0x38($sp)
/* AED278 800760D8 0C01E9D9 */ jal LightContext_InsertLight
/* AED27C 800760DC 8FA5002C */ lw $a1, 0x2c($sp)
/* AED280 800760E0 8FBF0024 */ lw $ra, 0x24($sp)
/* AED284 800760E4 3C018016 */ lui $at, %hi(D_8015FD98) # $at, 0x8016
/* AED288 800760E8 AC22FD98 */ sw $v0, %lo(D_8015FD98)($at)
/* AED28C 800760EC 03E00008 */ jr $ra
/* AED290 800760F0 27BD0038 */ addiu $sp, $sp, 0x38

View file

@ -1,15 +0,0 @@
glabel func_8006F0A0
/* AE6240 8006F0A0 000473C3 */ sra $t6, $a0, 0xf
/* AE6244 8006F0A4 31CF0007 */ andi $t7, $t6, 7
/* AE6248 8006F0A8 3C198012 */ lui $t9, %hi(D_8011FAF0) # $t9, 0x8012
/* AE624C 8006F0AC 2739FAF0 */ addiu $t9, %lo(D_8011FAF0) # addiu $t9, $t9, -0x510
/* AE6250 8006F0B0 000FC0C0 */ sll $t8, $t7, 3
/* AE6254 8006F0B4 03192821 */ addu $a1, $t8, $t9
/* AE6258 8006F0B8 8CAA0000 */ lw $t2, ($a1)
/* AE625C 8006F0BC 00044103 */ sra $t0, $a0, 4
/* AE6260 8006F0C0 8CAC0004 */ lw $t4, 4($a1)
/* AE6264 8006F0C4 310907FF */ andi $t1, $t0, 0x7ff
/* AE6268 8006F0C8 01495804 */ sllv $t3, $t1, $t2
/* AE626C 8006F0CC 03E00008 */ jr $ra
/* AE6270 8006F0D0 018B1021 */ addu $v0, $t4, $t3

View file

@ -1,12 +0,0 @@
glabel func_8006F0D4
/* AE6274 8006F0D4 00057080 */ sll $t6, $a1, 2
/* AE6278 8006F0D8 01C57021 */ addu $t6, $t6, $a1
/* AE627C 8006F0DC 000E71C0 */ sll $t6, $t6, 7
/* AE6280 8006F0E0 00047840 */ sll $t7, $a0, 1
/* AE6284 8006F0E4 01CFC021 */ addu $t8, $t6, $t7
/* AE6288 8006F0E8 3C038017 */ lui $v1, %hi(gZBuffer)
/* AE628C 8006F0EC 00781821 */ addu $v1, $v1, $t8
/* AE6290 8006F0F0 946359C0 */ lhu $v1, %lo(gZBuffer)($v1)
/* AE6294 8006F0F4 03E00008 */ jr $ra
/* AE6298 8006F0F8 3062FFFF */ andi $v0, $v1, 0xffff

View file

@ -1,19 +0,0 @@
glabel func_8006F0FC
/* AE629C 8006F0FC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* AE62A0 8006F100 AFA40018 */ sw $a0, 0x18($sp)
/* AE62A4 8006F104 AFA5001C */ sw $a1, 0x1c($sp)
/* AE62A8 8006F108 AFBF0014 */ sw $ra, 0x14($sp)
/* AE62AC 8006F10C 3C058016 */ lui $a1, %hi(D_8015FD80) # $a1, 0x8016
/* AE62B0 8006F110 3C048016 */ lui $a0, %hi(D_8015FD7E) # $a0, 0x8016
/* AE62B4 8006F114 8484FD7E */ lh $a0, %lo(D_8015FD7E)($a0)
/* AE62B8 8006F118 0C01BC35 */ jal func_8006F0D4
/* AE62BC 8006F11C 84A5FD80 */ lh $a1, %lo(D_8015FD80)($a1)
/* AE62C0 8006F120 3C018012 */ lui $at, %hi(D_8011FB44) # $at, 0x8012
/* AE62C4 8006F124 A422FB44 */ sh $v0, %lo(D_8011FB44)($at)
/* AE62C8 8006F128 0C01EA6D */ jal Lights_GlowCheck
/* AE62CC 8006F12C 8FA4001C */ lw $a0, 0x1c($sp)
/* AE62D0 8006F130 8FBF0014 */ lw $ra, 0x14($sp)
/* AE62D4 8006F134 27BD0018 */ addiu $sp, $sp, 0x18
/* AE62D8 8006F138 03E00008 */ jr $ra
/* AE62DC 8006F13C 00000000 */ nop

View file

@ -1,564 +0,0 @@
.rdata
glabel D_8013C240
.asciz "\x1b[43;30m\n\nフィールド常駐以外、太陽設定よって強制解除\n\x1b[m"
# EUC-JP: | "Sun setting except field resident! So forced release!"?
.balign 4
.late_rodata
glabel jtbl_8013C790
.word L8006F4A8
.word L8006F4CC
.word L8006F4CC
.word L8006F4CC
.word L8006F4F0
.text
glabel func_8006F140
/* AE62E0 8006F140 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AE62E4 8006F144 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AE62E8 8006F148 9502000C */ lhu $v0, 0xc($t0)
/* AE62EC 8006F14C 27BDFFA8 */ addiu $sp, $sp, -0x58
/* AE62F0 8006F150 3401C001 */ li $at, 49153
/* AE62F4 8006F154 AFB10028 */ sw $s1, 0x28($sp)
/* AE62F8 8006F158 AFB00024 */ sw $s0, 0x24($sp)
/* AE62FC 8006F15C 0041082A */ slt $at, $v0, $at
/* AE6300 8006F160 00A08025 */ move $s0, $a1
/* AE6304 8006F164 00808825 */ move $s1, $a0
/* AE6308 8006F168 AFBF002C */ sw $ra, 0x2c($sp)
/* AE630C 8006F16C AFA60060 */ sw $a2, 0x60($sp)
/* AE6310 8006F170 10200003 */ beqz $at, .L8006F180
/* AE6314 8006F174 A5001422 */ sh $zero, 0x1422($t0)
/* AE6318 8006F178 28414555 */ slti $at, $v0, 0x4555
/* AE631C 8006F17C 10200003 */ beqz $at, .L8006F18C
.L8006F180:
/* AE6320 8006F180 240E0001 */ li $t6, 1
/* AE6324 8006F184 10000002 */ b .L8006F190
/* AE6328 8006F188 AD0E0010 */ sw $t6, 0x10($t0)
.L8006F18C:
/* AE632C 8006F18C AD000010 */ sw $zero, 0x10($t0)
.L8006F190:
/* AE6330 8006F190 8E380000 */ lw $t8, ($s1)
/* AE6334 8006F194 3C0F8007 */ lui $t7, %hi(func_8006F0FC)
/* AE6338 8006F198 25EFF0FC */ addiu $t7, %lo(func_8006F0FC) # addiu $t7, $t7, -0xf04
/* AE633C 8006F19C AF0F02EC */ sw $t7, 0x2ec($t8)
/* AE6340 8006F1A0 8E390000 */ lw $t9, ($s1)
/* AE6344 8006F1A4 26040028 */ addiu $a0, $s0, 0x28
/* AE6348 8006F1A8 240B0050 */ li $t3, 80
/* AE634C 8006F1AC AF3102F0 */ sw $s1, 0x2f0($t9)
/* AE6350 8006F1B0 240C0050 */ li $t4, 80
/* AE6354 8006F1B4 240D0050 */ li $t5, 80
/* AE6358 8006F1B8 AFAD0018 */ sw $t5, 0x18($sp)
/* AE635C 8006F1BC AFAC0014 */ sw $t4, 0x14($sp)
/* AE6360 8006F1C0 AFA40038 */ sw $a0, 0x38($sp)
/* AE6364 8006F1C4 AFAB0010 */ sw $t3, 0x10($sp)
/* AE6368 8006F1C8 24050050 */ li $a1, 80
/* AE636C 8006F1CC 24060050 */ li $a2, 80
/* AE6370 8006F1D0 0C01E79F */ jal Lights_DirectionalSetInfo
/* AE6374 8006F1D4 24070050 */ li $a3, 80
/* AE6378 8006F1D8 262507A8 */ addiu $a1, $s1, 0x7a8
/* AE637C 8006F1DC AFA50034 */ sw $a1, 0x34($sp)
/* AE6380 8006F1E0 02202025 */ move $a0, $s1
/* AE6384 8006F1E4 0C01E9D9 */ jal LightContext_InsertLight
/* AE6388 8006F1E8 8FA60038 */ lw $a2, 0x38($sp)
/* AE638C 8006F1EC 26040036 */ addiu $a0, $s0, 0x36
/* AE6390 8006F1F0 240E0050 */ li $t6, 80
/* AE6394 8006F1F4 240F0050 */ li $t7, 80
/* AE6398 8006F1F8 24180050 */ li $t8, 80
/* AE639C 8006F1FC AFB80018 */ sw $t8, 0x18($sp)
/* AE63A0 8006F200 AFAF0014 */ sw $t7, 0x14($sp)
/* AE63A4 8006F204 AFAE0010 */ sw $t6, 0x10($sp)
/* AE63A8 8006F208 AFA40038 */ sw $a0, 0x38($sp)
/* AE63AC 8006F20C 24050050 */ li $a1, 80
/* AE63B0 8006F210 24060050 */ li $a2, 80
/* AE63B4 8006F214 0C01E79F */ jal Lights_DirectionalSetInfo
/* AE63B8 8006F218 24070050 */ li $a3, 80
/* AE63BC 8006F21C 02202025 */ move $a0, $s1
/* AE63C0 8006F220 8FA50034 */ lw $a1, 0x34($sp)
/* AE63C4 8006F224 0C01E9D9 */ jal LightContext_InsertLight
/* AE63C8 8006F228 8FA60038 */ lw $a2, 0x38($sp)
/* AE63CC 8006F22C 44800000 */ mtc1 $zero, $f0
/* AE63D0 8006F230 24030063 */ li $v1, 99
/* AE63D4 8006F234 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AE63D8 8006F238 44812000 */ mtc1 $at, $f4
/* AE63DC 8006F23C A2030010 */ sb $v1, 0x10($s0)
/* AE63E0 8006F240 A2030011 */ sb $v1, 0x11($s0)
/* AE63E4 8006F244 3C038016 */ lui $v1, %hi(D_8015FD70) # $v1, 0x8016
/* AE63E8 8006F248 A2000019 */ sb $zero, 0x19($s0)
/* AE63EC 8006F24C A600001A */ sh $zero, 0x1a($s0)
/* AE63F0 8006F250 A2000021 */ sb $zero, 0x21($s0)
/* AE63F4 8006F254 A6000022 */ sh $zero, 0x22($s0)
/* AE63F8 8006F258 A2000044 */ sb $zero, 0x44($s0)
/* AE63FC 8006F25C A200001F */ sb $zero, 0x1f($s0)
/* AE6400 8006F260 A2000020 */ sb $zero, 0x20($s0)
/* AE6404 8006F264 A20000BD */ sb $zero, 0xbd($s0)
/* AE6408 8006F268 A20000BE */ sb $zero, 0xbe($s0)
/* AE640C 8006F26C A20000DC */ sb $zero, 0xdc($s0)
/* AE6410 8006F270 A20000DD */ sb $zero, 0xdd($s0)
/* AE6414 8006F274 A20000DE */ sb $zero, 0xde($s0)
/* AE6418 8006F278 A20000DF */ sb $zero, 0xdf($s0)
/* AE641C 8006F27C A20000E0 */ sb $zero, 0xe0($s0)
/* AE6420 8006F280 2463FD70 */ addiu $v1, %lo(D_8015FD70) # addiu $v1, $v1, -0x290
/* AE6424 8006F284 A20000E1 */ sb $zero, 0xe1($s0)
/* AE6428 8006F288 A20000E2 */ sb $zero, 0xe2($s0)
/* AE642C 8006F28C A20000E3 */ sb $zero, 0xe3($s0)
/* AE6430 8006F290 A20000E4 */ sb $zero, 0xe4($s0)
/* AE6434 8006F294 A20000E5 */ sb $zero, 0xe5($s0)
/* AE6438 8006F298 A20000E9 */ sb $zero, 0xe9($s0)
/* AE643C 8006F29C A20000EA */ sb $zero, 0xea($s0)
/* AE6440 8006F2A0 A20000EB */ sb $zero, 0xeb($s0)
/* AE6444 8006F2A4 A20000EC */ sb $zero, 0xec($s0)
/* AE6448 8006F2A8 A20000ED */ sb $zero, 0xed($s0)
/* AE644C 8006F2AC A20000E6 */ sb $zero, 0xe6($s0)
/* AE6450 8006F2B0 A20000E7 */ sb $zero, 0xe7($s0)
/* AE6454 8006F2B4 A20000E8 */ sb $zero, 0xe8($s0)
/* AE6458 8006F2B8 E6000084 */ swc1 $f0, 0x84($s0)
/* AE645C 8006F2BC E6000088 */ swc1 $f0, 0x88($s0)
/* AE6460 8006F2C0 E60400D8 */ swc1 $f4, 0xd8($s0)
/* AE6464 8006F2C4 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AE6468 8006F2C8 A0600000 */ sb $zero, ($v1)
/* AE646C 8006F2CC A0600001 */ sb $zero, 1($v1)
/* AE6470 8006F2D0 A0600002 */ sb $zero, 2($v1)
/* AE6474 8006F2D4 A0600003 */ sb $zero, 3($v1)
/* AE6478 8006F2D8 3C018016 */ lui $at, %hi(D_8015FD7C) # $at, 0x8016
/* AE647C 8006F2DC 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AE6480 8006F2E0 A420FD7C */ sh $zero, %lo(D_8015FD7C)($at)
/* AE6484 8006F2E4 A1001410 */ sb $zero, 0x1410($t0)
/* AE6488 8006F2E8 A60000A0 */ sh $zero, 0xa0($s0)
/* AE648C 8006F2EC 860200A0 */ lh $v0, 0xa0($s0)
/* AE6490 8006F2F0 24018000 */ li $at, -32768
/* AE6494 8006F2F4 A602009E */ sh $v0, 0x9e($s0)
/* AE6498 8006F2F8 A602009C */ sh $v0, 0x9c($s0)
/* AE649C 8006F2FC A602009A */ sh $v0, 0x9a($s0)
/* AE64A0 8006F300 A6020098 */ sh $v0, 0x98($s0)
/* AE64A4 8006F304 A6020096 */ sh $v0, 0x96($s0)
/* AE64A8 8006F308 A6020094 */ sh $v0, 0x94($s0)
/* AE64AC 8006F30C A6020092 */ sh $v0, 0x92($s0)
/* AE64B0 8006F310 A6020090 */ sh $v0, 0x90($s0)
/* AE64B4 8006F314 A602008E */ sh $v0, 0x8e($s0)
/* AE64B8 8006F318 A602008C */ sh $v0, 0x8c($s0)
/* AE64BC 8006F31C 8503000C */ lh $v1, 0xc($t0)
/* AE64C0 8006F320 00612021 */ addu $a0, $v1, $at
/* AE64C4 8006F324 00042400 */ sll $a0, $a0, 0x10
/* AE64C8 8006F328 0C01DE1C */ jal Math_SinS
/* AE64CC 8006F32C 00042403 */ sra $a0, $a0, 0x10
/* AE64D0 8006F330 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AE64D4 8006F334 44813000 */ mtc1 $at, $f6
/* AE64D8 8006F338 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AE64DC 8006F33C 44818000 */ mtc1 $at, $f16
/* AE64E0 8006F340 46060202 */ mul.s $f8, $f0, $f6
/* AE64E4 8006F344 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AE64E8 8006F348 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AE64EC 8006F34C 24018000 */ li $at, -32768
/* AE64F0 8006F350 46004287 */ neg.s $f10, $f8
/* AE64F4 8006F354 46105482 */ mul.s $f18, $f10, $f16
/* AE64F8 8006F358 E6120004 */ swc1 $f18, 4($s0)
/* AE64FC 8006F35C 9503000C */ lhu $v1, 0xc($t0)
/* AE6500 8006F360 00612021 */ addu $a0, $v1, $at
/* AE6504 8006F364 00042400 */ sll $a0, $a0, 0x10
/* AE6508 8006F368 0C01DE0D */ jal Math_CosS
/* AE650C 8006F36C 00042403 */ sra $a0, $a0, 0x10
/* AE6510 8006F370 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AE6514 8006F374 44812000 */ mtc1 $at, $f4
/* AE6518 8006F378 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AE651C 8006F37C 44814000 */ mtc1 $at, $f8
/* AE6520 8006F380 46040182 */ mul.s $f6, $f0, $f4
/* AE6524 8006F384 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AE6528 8006F388 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AE652C 8006F38C 24018000 */ li $at, -32768
/* AE6530 8006F390 46083282 */ mul.s $f10, $f6, $f8
/* AE6534 8006F394 E60A0008 */ swc1 $f10, 8($s0)
/* AE6538 8006F398 9503000C */ lhu $v1, 0xc($t0)
/* AE653C 8006F39C 00612021 */ addu $a0, $v1, $at
/* AE6540 8006F3A0 00042400 */ sll $a0, $a0, 0x10
/* AE6544 8006F3A4 0C01DE0D */ jal Math_CosS
/* AE6548 8006F3A8 00042403 */ sra $a0, $a0, 0x10
/* AE654C 8006F3AC 3C0141A0 */ li $at, 0x41A00000 # 0.000000
/* AE6550 8006F3B0 44818000 */ mtc1 $at, $f16
/* AE6554 8006F3B4 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AE6558 8006F3B8 44812000 */ mtc1 $at, $f4
/* AE655C 8006F3BC 46100482 */ mul.s $f18, $f0, $f16
/* AE6560 8006F3C0 24070050 */ li $a3, 80
/* AE6564 8006F3C4 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* AE6568 8006F3C8 240500FF */ li $a1, 255
/* AE656C 8006F3CC 3419FFFF */ li $t9, 65535
/* AE6570 8006F3D0 2463FA90 */ addiu $v1, %lo(gGameInfo) # addiu $v1, $v1, -0x570
/* AE6574 8006F3D4 A60700A8 */ sh $a3, 0xa8($s0)
/* AE6578 8006F3D8 46049182 */ mul.s $f6, $f18, $f4
/* AE657C 8006F3DC A60700AA */ sh $a3, 0xaa($s0)
/* AE6580 8006F3E0 A60700AC */ sh $a3, 0xac($s0)
/* AE6584 8006F3E4 A20000BC */ sb $zero, 0xbc($s0)
/* AE6588 8006F3E8 A20500BF */ sb $a1, 0xbf($s0)
/* AE658C 8006F3EC A61900D6 */ sh $t9, 0xd6($s0)
/* AE6590 8006F3F0 A6000002 */ sh $zero, 2($s0)
/* AE6594 8006F3F4 E606000C */ swc1 $f6, 0xc($s0)
/* AE6598 8006F3F8 8C6D0000 */ lw $t5, ($v1)
/* AE659C 8006F3FC 3C048012 */ lui $a0, %hi(D_8011FB40) # $a0, 0x8012
/* AE65A0 8006F400 2484FB40 */ addiu $a0, %lo(D_8011FB40) # addiu $a0, $a0, -0x4c0
/* AE65A4 8006F404 A4800000 */ sh $zero, ($a0)
/* AE65A8 8006F408 A5A00032 */ sh $zero, 0x32($t5)
/* AE65AC 8006F40C 8C6E0000 */ lw $t6, ($v1)
/* AE65B0 8006F410 240A0001 */ li $t2, 1
/* AE65B4 8006F414 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AE65B8 8006F418 A5CA0026 */ sh $t2, 0x26($t6)
/* AE65BC 8006F41C 8C6F0000 */ lw $t7, ($v1)
/* AE65C0 8006F420 3C010001 */ lui $at, 1
/* AE65C4 8006F424 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AE65C8 8006F428 85E2085A */ lh $v0, 0x85a($t7)
/* AE65CC 8006F42C 02213021 */ addu $a2, $s1, $at
/* AE65D0 8006F430 3C048012 */ lui $a0, %hi(D_8011FB30) # $a0, 0x8012
/* AE65D4 8006F434 10400002 */ beqz $v0, .L8006F440
/* AE65D8 8006F438 2458FFFF */ addiu $t8, $v0, -1
/* AE65DC 8006F43C A1181415 */ sb $t8, 0x1415($t0)
.L8006F440:
/* AE65E0 8006F440 A0C00B12 */ sb $zero, 0xb12($a2)
/* AE65E4 8006F444 A0C00B13 */ sb $zero, 0xb13($a2)
/* AE65E8 8006F448 A0C00B14 */ sb $zero, 0xb14($a2)
/* AE65EC 8006F44C A0C00B15 */ sb $zero, 0xb15($a2)
/* AE65F0 8006F450 A0C00B16 */ sb $zero, 0xb16($a2)
/* AE65F4 8006F454 911913C3 */ lbu $t9, 0x13c3($t0)
/* AE65F8 8006F458 2484FB30 */ addiu $a0, %lo(D_8011FB30) # addiu $a0, $a0, -0x4d0
/* AE65FC 8006F45C 24090001 */ li $t1, 1
/* AE6600 8006F460 53200046 */ beql $t9, $zero, .L8006F57C
/* AE6604 8006F464 A0800000 */ sb $zero, ($a0)
/* AE6608 8006F468 8D0B1360 */ lw $t3, 0x1360($t0)
/* AE660C 8006F46C 3C048012 */ lui $a0, %hi(D_8011FB30) # $a0, 0x8012
/* AE6610 8006F470 2484FB30 */ addiu $a0, %lo(D_8011FB30) # addiu $a0, $a0, -0x4d0
/* AE6614 8006F474 29610004 */ slti $at, $t3, 4
/* AE6618 8006F478 1020003D */ beqz $at, .L8006F570
/* AE661C 8006F47C 00000000 */ nop
/* AE6620 8006F480 908C0000 */ lbu $t4, ($a0)
/* AE6624 8006F484 258DFFFF */ addiu $t5, $t4, -1
/* AE6628 8006F488 2DA10005 */ sltiu $at, $t5, 5
/* AE662C 8006F48C 10200021 */ beqz $at, .L8006F514
/* AE6630 8006F490 000D6880 */ sll $t5, $t5, 2
/* AE6634 8006F494 3C018014 */ lui $at, %hi(jtbl_8013C790)
/* AE6638 8006F498 002D0821 */ addu $at, $at, $t5
/* AE663C 8006F49C 8C2DC790 */ lw $t5, %lo(jtbl_8013C790)($at)
/* AE6640 8006F4A0 01A00008 */ jr $t5
/* AE6644 8006F4A4 00000000 */ nop
glabel L8006F4A8
/* AE6648 8006F4A8 24020003 */ li $v0, 3
/* AE664C 8006F4AC 24090001 */ li $t1, 1
/* AE6650 8006F4B0 A2090017 */ sb $t1, 0x17($s0)
/* AE6654 8006F4B4 A2090018 */ sb $t1, 0x18($s0)
/* AE6658 8006F4B8 A202001F */ sb $v0, 0x1f($s0)
/* AE665C 8006F4BC A2020020 */ sb $v0, 0x20($s0)
/* AE6660 8006F4C0 A0C00B15 */ sb $zero, 0xb15($a2)
/* AE6664 8006F4C4 10000013 */ b .L8006F514
/* AE6668 8006F4C8 A0C00B14 */ sb $zero, 0xb14($a2)
glabel L8006F4CC
/* AE666C 8006F4CC 24020002 */ li $v0, 2
/* AE6670 8006F4D0 24090001 */ li $t1, 1
/* AE6674 8006F4D4 A2090017 */ sb $t1, 0x17($s0)
/* AE6678 8006F4D8 A2090018 */ sb $t1, 0x18($s0)
/* AE667C 8006F4DC A202001F */ sb $v0, 0x1f($s0)
/* AE6680 8006F4E0 A2020020 */ sb $v0, 0x20($s0)
/* AE6684 8006F4E4 A0C00B15 */ sb $zero, 0xb15($a2)
/* AE6688 8006F4E8 1000000A */ b .L8006F514
/* AE668C 8006F4EC A0C00B14 */ sb $zero, 0xb14($a2)
glabel L8006F4F0
/* AE6690 8006F4F0 24020004 */ li $v0, 4
/* AE6694 8006F4F4 24090001 */ li $t1, 1
/* AE6698 8006F4F8 A2090017 */ sb $t1, 0x17($s0)
/* AE669C 8006F4FC A2090018 */ sb $t1, 0x18($s0)
/* AE66A0 8006F500 A202001F */ sb $v0, 0x1f($s0)
/* AE66A4 8006F504 A2020020 */ sb $v0, 0x20($s0)
/* AE66A8 8006F508 A0C00B15 */ sb $zero, 0xb15($a2)
/* AE66AC 8006F50C 10000001 */ b .L8006F514
/* AE66B0 8006F510 A0C00B14 */ sb $zero, 0xb14($a2)
.L8006F514:
/* AE66B4 8006F514 90CE1E14 */ lbu $t6, 0x1e14($a2)
/* AE66B8 8006F518 154E0015 */ bne $t2, $t6, .L8006F570
/* AE66BC 8006F51C 00000000 */ nop
/* AE66C0 8006F520 90820000 */ lbu $v0, ($a0)
/* AE66C4 8006F524 24010003 */ li $at, 3
/* AE66C8 8006F528 24180040 */ li $t8, 64
/* AE66CC 8006F52C 14410004 */ bne $v0, $at, .L8006F540
/* AE66D0 8006F530 24090001 */ li $t1, 1
/* AE66D4 8006F534 A0D80B15 */ sb $t8, 0xb15($a2)
/* AE66D8 8006F538 10000010 */ b .L8006F57C
/* AE66DC 8006F53C A0D80B14 */ sb $t8, 0xb14($a2)
.L8006F540:
/* AE66E0 8006F540 24010004 */ li $at, 4
/* AE66E4 8006F544 14410005 */ bne $v0, $at, .L8006F55C
/* AE66E8 8006F548 24090001 */ li $t1, 1
/* AE66EC 8006F54C 24020014 */ li $v0, 20
/* AE66F0 8006F550 A0C20B12 */ sb $v0, 0xb12($a2)
/* AE66F4 8006F554 10000009 */ b .L8006F57C
/* AE66F8 8006F558 A0C20B13 */ sb $v0, 0xb13($a2)
.L8006F55C:
/* AE66FC 8006F55C 24010005 */ li $at, 5
/* AE6700 8006F560 14410003 */ bne $v0, $at, .L8006F570
/* AE6704 8006F564 2402001E */ li $v0, 30
/* AE6708 8006F568 A0C20B12 */ sb $v0, 0xb12($a2)
/* AE670C 8006F56C A0C20B13 */ sb $v0, 0xb13($a2)
.L8006F570:
/* AE6710 8006F570 10000002 */ b .L8006F57C
/* AE6714 8006F574 24090001 */ li $t1, 1
/* AE6718 8006F578 A0800000 */ sb $zero, ($a0)
.L8006F57C:
/* AE671C 8006F57C 3C018012 */ lui $at, %hi(D_8011FB38) # $at, 0x8012
/* AE6720 8006F580 A020FB38 */ sb $zero, %lo(D_8011FB38)($at)
/* AE6724 8006F584 3C018012 */ lui $at, %hi(D_8011FB34) # $at, 0x8012
/* AE6728 8006F588 A020FB34 */ sb $zero, %lo(D_8011FB34)($at)
/* AE672C 8006F58C 3C018012 */ lui $at, %hi(D_8011FB3C) # $at, 0x8012
/* AE6730 8006F590 A020FB3C */ sb $zero, %lo(D_8011FB3C)($at)
/* AE6734 8006F594 8C790000 */ lw $t9, ($v1)
/* AE6738 8006F598 A10013C3 */ sb $zero, 0x13c3($t0)
/* AE673C 8006F59C 2404FFB0 */ li $a0, -80
/* AE6740 8006F5A0 A7270B5A */ sh $a3, 0xb5a($t9)
/* AE6744 8006F5A4 8C6B0000 */ lw $t3, ($v1)
/* AE6748 8006F5A8 2418000A */ li $t8, 10
/* AE674C 8006F5AC 3C018016 */ lui $at, %hi(D_8015FCC8) # $at, 0x8016
/* AE6750 8006F5B0 A5670B5C */ sh $a3, 0xb5c($t3)
/* AE6754 8006F5B4 8C6C0000 */ lw $t4, ($v1)
/* AE6758 8006F5B8 00001025 */ move $v0, $zero
/* AE675C 8006F5BC A5870B5E */ sh $a3, 0xb5e($t4)
/* AE6760 8006F5C0 8C6D0000 */ lw $t5, ($v1)
/* AE6764 8006F5C4 A5A40B60 */ sh $a0, 0xb60($t5)
/* AE6768 8006F5C8 8C6E0000 */ lw $t6, ($v1)
/* AE676C 8006F5CC A5C40B62 */ sh $a0, 0xb62($t6)
/* AE6770 8006F5D0 8C6F0000 */ lw $t7, ($v1)
/* AE6774 8006F5D4 A5E40B64 */ sh $a0, 0xb64($t7)
/* AE6778 8006F5D8 8C790000 */ lw $t9, ($v1)
/* AE677C 8006F5DC A7380B66 */ sh $t8, 0xb66($t9)
/* AE6780 8006F5E0 8C6B0000 */ lw $t3, ($v1)
/* AE6784 8006F5E4 A5600B68 */ sh $zero, 0xb68($t3)
/* AE6788 8006F5E8 8C6C0000 */ lw $t4, ($v1)
/* AE678C 8006F5EC A5800B6A */ sh $zero, 0xb6a($t4)
/* AE6790 8006F5F0 8C6D0000 */ lw $t5, ($v1)
/* AE6794 8006F5F4 A5A00B6C */ sh $zero, 0xb6c($t5)
/* AE6798 8006F5F8 8C6E0000 */ lw $t6, ($v1)
/* AE679C 8006F5FC A5C00B6E */ sh $zero, 0xb6e($t6)
/* AE67A0 8006F600 8C6F0000 */ lw $t7, ($v1)
/* AE67A4 8006F604 3C038016 */ lui $v1, %hi(D_8015FD10) # $v1, 0x8016
/* AE67A8 8006F608 2463FD10 */ addiu $v1, %lo(D_8015FD10) # addiu $v1, $v1, -0x2f0
/* AE67AC 8006F60C A5E00B70 */ sh $zero, 0xb70($t7)
/* AE67B0 8006F610 A029FCC8 */ sb $t1, %lo(D_8015FCC8)($at)
.L8006F614:
/* AE67B4 8006F614 0002C140 */ sll $t8, $v0, 5
/* AE67B8 8006F618 24420001 */ addiu $v0, $v0, 1
/* AE67BC 8006F61C 304200FF */ andi $v0, $v0, 0xff
/* AE67C0 8006F620 28410003 */ slti $at, $v0, 3
/* AE67C4 8006F624 0078C821 */ addu $t9, $v1, $t8
/* AE67C8 8006F628 1420FFFA */ bnez $at, .L8006F614
/* AE67CC 8006F62C A3250000 */ sb $a1, ($t9)
/* AE67D0 8006F630 A4C01D30 */ sh $zero, 0x1d30($a2)
/* AE67D4 8006F634 A4C01D32 */ sh $zero, 0x1d32($a2)
/* AE67D8 8006F638 00001025 */ move $v0, $zero
.L8006F63C:
/* AE67DC 8006F63C 00025880 */ sll $t3, $v0, 2
/* AE67E0 8006F640 24420001 */ addiu $v0, $v0, 1
/* AE67E4 8006F644 304200FF */ andi $v0, $v0, 0xff
/* AE67E8 8006F648 2841000A */ slti $at, $v0, 0xa
/* AE67EC 8006F64C 022B6021 */ addu $t4, $s1, $t3
/* AE67F0 8006F650 1420FFFA */ bnez $at, .L8006F63C
/* AE67F4 8006F654 AD801D8C */ sw $zero, 0x1d8c($t4)
/* AE67F8 8006F658 3C010001 */ lui $at, (0x000117A4 >> 16) # lui $at, 1
/* AE67FC 8006F65C 342117A4 */ ori $at, (0x000117A4 & 0xFFFF) # ori $at, $at, 0x17a4
/* AE6800 8006F660 02212021 */ addu $a0, $s1, $at
/* AE6804 8006F664 24050002 */ li $a1, 2
/* AE6808 8006F668 0C02604B */ jal Object_GetIndex
/* AE680C 8006F66C AFA60034 */ sw $a2, 0x34($sp)
/* AE6810 8006F670 8FA60034 */ lw $a2, 0x34($sp)
/* AE6814 8006F674 04410009 */ bgez $v0, .L8006F69C
/* AE6818 8006F678 24090001 */ li $t1, 1
/* AE681C 8006F67C 90CD0A3A */ lbu $t5, 0xa3a($a2)
/* AE6820 8006F680 3C010001 */ lui $at, 1
/* AE6824 8006F684 00310821 */ addu $at, $at, $s1
/* AE6828 8006F688 15A00004 */ bnez $t5, .L8006F69C
/* AE682C 8006F68C 3C048014 */ lui $a0, %hi(D_8013C240) # $a0, 0x8014
/* AE6830 8006F690 A0290A3A */ sb $t1, 0xa3a($at)
/* AE6834 8006F694 0C00084C */ jal osSyncPrintf
/* AE6838 8006F698 2484C240 */ addiu $a0, %lo(D_8013C240) # addiu $a0, $a0, -0x3dc0
.L8006F69C:
/* AE683C 8006F69C 3C018016 */ lui $at, %hi(D_8015FCF0) # $at, 0x8016
/* AE6840 8006F6A0 0C02A857 */ jal func_800AA15C
/* AE6844 8006F6A4 A020FCF0 */ sb $zero, %lo(D_8015FCF0)($at)
/* AE6848 8006F6A8 8FBF002C */ lw $ra, 0x2c($sp)
/* AE684C 8006F6AC 8FB00024 */ lw $s0, 0x24($sp)
/* AE6850 8006F6B0 8FB10028 */ lw $s1, 0x28($sp)
/* AE6854 8006F6B4 03E00008 */ jr $ra
/* AE6858 8006F6B8 27BD0058 */ addiu $sp, $sp, 0x58
/* AE685C 8006F6BC AFA50004 */ sw $a1, 4($sp)
/* AE6860 8006F6C0 AFA60008 */ sw $a2, 8($sp)
/* AE6864 8006F6C4 AFA7000C */ sw $a3, 0xc($sp)
/* AE6868 8006F6C8 90890000 */ lbu $t1, ($a0)
/* AE686C 8006F6CC 30A500FF */ andi $a1, $a1, 0xff
/* AE6870 8006F6D0 30C600FF */ andi $a2, $a2, 0xff
/* AE6874 8006F6D4 00A91823 */ subu $v1, $a1, $t1
/* AE6878 8006F6D8 00031C00 */ sll $v1, $v1, 0x10
/* AE687C 8006F6DC 00031C03 */ sra $v1, $v1, 0x10
/* AE6880 8006F6E0 10A90043 */ beq $a1, $t1, .L8006F7F0
/* AE6884 8006F6E4 00A04025 */ move $t0, $a1
/* AE6888 8006F6E8 0066001A */ div $zero, $v1, $a2
/* AE688C 8006F6EC 93AB0013 */ lbu $t3, 0x13($sp)
/* AE6890 8006F6F0 14C00002 */ bnez $a2, .L8006F6FC
/* AE6894 8006F6F4 00000000 */ nop
/* AE6898 8006F6F8 0007000D */ break 7
.L8006F6FC:
/* AE689C 8006F6FC 2401FFFF */ li $at, -1
/* AE68A0 8006F700 14C10004 */ bne $a2, $at, .L8006F714
/* AE68A4 8006F704 3C018000 */ lui $at, 0x8000
/* AE68A8 8006F708 14610002 */ bne $v1, $at, .L8006F714
/* AE68AC 8006F70C 00000000 */ nop
/* AE68B0 8006F710 0006000D */ break 6
.L8006F714:
/* AE68B4 8006F714 00003812 */ mflo $a3
/* AE68B8 8006F718 00075400 */ sll $t2, $a3, 0x10
/* AE68BC 8006F71C 000B6400 */ sll $t4, $t3, 0x10
/* AE68C0 8006F720 000C6403 */ sra $t4, $t4, 0x10
/* AE68C4 8006F724 000A5403 */ sra $t2, $t2, 0x10
/* AE68C8 8006F728 00071400 */ sll $v0, $a3, 0x10
/* AE68CC 8006F72C 014C082A */ slt $at, $t2, $t4
/* AE68D0 8006F730 10200007 */ beqz $at, .L8006F750
/* AE68D4 8006F734 00021403 */ sra $v0, $v0, 0x10
/* AE68D8 8006F738 000B3023 */ negu $a2, $t3
/* AE68DC 8006F73C 00063400 */ sll $a2, $a2, 0x10
/* AE68E0 8006F740 00063403 */ sra $a2, $a2, 0x10
/* AE68E4 8006F744 00CA082A */ slt $at, $a2, $t2
/* AE68E8 8006F748 54200016 */ bnezl $at, .L8006F7A4
/* AE68EC 8006F74C 014C082A */ slt $at, $t2, $t4
.L8006F750:
/* AE68F0 8006F750 93A5000F */ lbu $a1, 0xf($sp)
/* AE68F4 8006F754 00057400 */ sll $t6, $a1, 0x10
/* AE68F8 8006F758 000E7C03 */ sra $t7, $t6, 0x10
/* AE68FC 8006F75C 01EA082A */ slt $at, $t7, $t2
/* AE6900 8006F760 10200003 */ beqz $at, .L8006F770
/* AE6904 8006F764 00053023 */ negu $a2, $a1
/* AE6908 8006F768 00051400 */ sll $v0, $a1, 0x10
/* AE690C 8006F76C 00021403 */ sra $v0, $v0, 0x10
.L8006F770:
/* AE6910 8006F770 0006C400 */ sll $t8, $a2, 0x10
/* AE6914 8006F774 0018CC03 */ sra $t9, $t8, 0x10
/* AE6918 8006F778 0059082A */ slt $at, $v0, $t9
/* AE691C 8006F77C 50200004 */ beql $at, $zero, .L8006F790
/* AE6920 8006F780 00406825 */ move $t5, $v0
/* AE6924 8006F784 00061400 */ sll $v0, $a2, 0x10
/* AE6928 8006F788 00021403 */ sra $v0, $v0, 0x10
/* AE692C 8006F78C 00406825 */ move $t5, $v0
.L8006F790:
/* AE6930 8006F790 012D7021 */ addu $t6, $t1, $t5
/* AE6934 8006F794 A08E0000 */ sb $t6, ($a0)
/* AE6938 8006F798 03E00008 */ jr $ra
/* AE693C 8006F79C 306200FF */ andi $v0, $v1, 0xff
/* AE6940 8006F7A0 014C082A */ slt $at, $t2, $t4
.L8006F7A4:
/* AE6944 8006F7A4 10200008 */ beqz $at, .L8006F7C8
/* AE6948 8006F7A8 012CC021 */ addu $t8, $t1, $t4
/* AE694C 8006F7AC 331900FF */ andi $t9, $t8, 0xff
/* AE6950 8006F7B0 000B1400 */ sll $v0, $t3, 0x10
/* AE6954 8006F7B4 0119082A */ slt $at, $t0, $t9
/* AE6958 8006F7B8 00021403 */ sra $v0, $v0, 0x10
/* AE695C 8006F7BC 10200002 */ beqz $at, .L8006F7C8
/* AE6960 8006F7C0 A0980000 */ sb $t8, ($a0)
/* AE6964 8006F7C4 A0850000 */ sb $a1, ($a0)
.L8006F7C8:
/* AE6968 8006F7C8 00C2082A */ slt $at, $a2, $v0
/* AE696C 8006F7CC 10200008 */ beqz $at, .L8006F7F0
/* AE6970 8006F7D0 00000000 */ nop
/* AE6974 8006F7D4 908D0000 */ lbu $t5, ($a0)
/* AE6978 8006F7D8 01A67821 */ addu $t7, $t5, $a2
/* AE697C 8006F7DC 31F800FF */ andi $t8, $t7, 0xff
/* AE6980 8006F7E0 0308082A */ slt $at, $t8, $t0
/* AE6984 8006F7E4 10200002 */ beqz $at, .L8006F7F0
/* AE6988 8006F7E8 A08F0000 */ sb $t7, ($a0)
/* AE698C 8006F7EC A0850000 */ sb $a1, ($a0)
.L8006F7F0:
/* AE6990 8006F7F0 03E00008 */ jr $ra
/* AE6994 8006F7F4 306200FF */ andi $v0, $v1, 0xff
/* AE6998 8006F7F8 AFA50004 */ sw $a1, 4($sp)
/* AE699C 8006F7FC AFA60008 */ sw $a2, 8($sp)
/* AE69A0 8006F800 AFA7000C */ sw $a3, 0xc($sp)
/* AE69A4 8006F804 80880000 */ lb $t0, ($a0)
/* AE69A8 8006F808 00052E00 */ sll $a1, $a1, 0x18
/* AE69AC 8006F80C 00052E03 */ sra $a1, $a1, 0x18
/* AE69B0 8006F810 00A81823 */ subu $v1, $a1, $t0
/* AE69B4 8006F814 00031C00 */ sll $v1, $v1, 0x10
/* AE69B8 8006F818 30C600FF */ andi $a2, $a2, 0xff
/* AE69BC 8006F81C 10A80045 */ beq $a1, $t0, .L8006F934
/* AE69C0 8006F820 00031C03 */ sra $v1, $v1, 0x10
/* AE69C4 8006F824 0066001A */ div $zero, $v1, $a2
/* AE69C8 8006F828 93AA0013 */ lbu $t2, 0x13($sp)
/* AE69CC 8006F82C 14C00002 */ bnez $a2, .L8006F838
/* AE69D0 8006F830 00000000 */ nop
/* AE69D4 8006F834 0007000D */ break 7
.L8006F838:
/* AE69D8 8006F838 2401FFFF */ li $at, -1
/* AE69DC 8006F83C 14C10004 */ bne $a2, $at, .L8006F850
/* AE69E0 8006F840 3C018000 */ lui $at, 0x8000
/* AE69E4 8006F844 14610002 */ bne $v1, $at, .L8006F850
/* AE69E8 8006F848 00000000 */ nop
/* AE69EC 8006F84C 0006000D */ break 6
.L8006F850:
/* AE69F0 8006F850 00003812 */ mflo $a3
/* AE69F4 8006F854 00074C00 */ sll $t1, $a3, 0x10
/* AE69F8 8006F858 000A5C00 */ sll $t3, $t2, 0x10
/* AE69FC 8006F85C 000B5C03 */ sra $t3, $t3, 0x10
/* AE6A00 8006F860 00094C03 */ sra $t1, $t1, 0x10
/* AE6A04 8006F864 00071400 */ sll $v0, $a3, 0x10
/* AE6A08 8006F868 012B082A */ slt $at, $t1, $t3
/* AE6A0C 8006F86C 10200007 */ beqz $at, .L8006F88C
/* AE6A10 8006F870 00021403 */ sra $v0, $v0, 0x10
/* AE6A14 8006F874 000A3023 */ negu $a2, $t2
/* AE6A18 8006F878 00063400 */ sll $a2, $a2, 0x10
/* AE6A1C 8006F87C 00063403 */ sra $a2, $a2, 0x10
/* AE6A20 8006F880 00C9082A */ slt $at, $a2, $t1
/* AE6A24 8006F884 54200016 */ bnezl $at, .L8006F8E0
/* AE6A28 8006F888 012B082A */ slt $at, $t1, $t3
.L8006F88C:
/* AE6A2C 8006F88C 93A5000F */ lbu $a1, 0xf($sp)
/* AE6A30 8006F890 00057400 */ sll $t6, $a1, 0x10
/* AE6A34 8006F894 000E7C03 */ sra $t7, $t6, 0x10
/* AE6A38 8006F898 01E9082A */ slt $at, $t7, $t1
/* AE6A3C 8006F89C 10200003 */ beqz $at, .L8006F8AC
/* AE6A40 8006F8A0 00053023 */ negu $a2, $a1
/* AE6A44 8006F8A4 00051400 */ sll $v0, $a1, 0x10
/* AE6A48 8006F8A8 00021403 */ sra $v0, $v0, 0x10
.L8006F8AC:
/* AE6A4C 8006F8AC 0006C400 */ sll $t8, $a2, 0x10
/* AE6A50 8006F8B0 0018CC03 */ sra $t9, $t8, 0x10
/* AE6A54 8006F8B4 0059082A */ slt $at, $v0, $t9
/* AE6A58 8006F8B8 50200004 */ beql $at, $zero, .L8006F8CC
/* AE6A5C 8006F8BC 00406825 */ move $t5, $v0
/* AE6A60 8006F8C0 00061400 */ sll $v0, $a2, 0x10
/* AE6A64 8006F8C4 00021403 */ sra $v0, $v0, 0x10
/* AE6A68 8006F8C8 00406825 */ move $t5, $v0
.L8006F8CC:
/* AE6A6C 8006F8CC 010D7021 */ addu $t6, $t0, $t5
/* AE6A70 8006F8D0 A08E0000 */ sb $t6, ($a0)
/* AE6A74 8006F8D4 03E00008 */ jr $ra
/* AE6A78 8006F8D8 306200FF */ andi $v0, $v1, 0xff
/* AE6A7C 8006F8DC 012B082A */ slt $at, $t1, $t3
.L8006F8E0:
/* AE6A80 8006F8E0 10200009 */ beqz $at, .L8006F908
/* AE6A84 8006F8E4 010BC821 */ addu $t9, $t0, $t3
/* AE6A88 8006F8E8 A0990000 */ sb $t9, ($a0)
/* AE6A8C 8006F8EC 808C0000 */ lb $t4, ($a0)
/* AE6A90 8006F8F0 000A1400 */ sll $v0, $t2, 0x10
/* AE6A94 8006F8F4 00021403 */ sra $v0, $v0, 0x10
/* AE6A98 8006F8F8 00AC082A */ slt $at, $a1, $t4
/* AE6A9C 8006F8FC 50200003 */ beql $at, $zero, .L8006F90C
/* AE6AA0 8006F900 00C2082A */ slt $at, $a2, $v0
/* AE6AA4 8006F904 A0850000 */ sb $a1, ($a0)
.L8006F908:
/* AE6AA8 8006F908 00C2082A */ slt $at, $a2, $v0
.L8006F90C:
/* AE6AAC 8006F90C 10200009 */ beqz $at, .L8006F934
/* AE6AB0 8006F910 00000000 */ nop
/* AE6AB4 8006F914 808D0000 */ lb $t5, ($a0)
/* AE6AB8 8006F918 01A6C021 */ addu $t8, $t5, $a2
/* AE6ABC 8006F91C A0980000 */ sb $t8, ($a0)
/* AE6AC0 8006F920 80990000 */ lb $t9, ($a0)
/* AE6AC4 8006F924 0325082A */ slt $at, $t9, $a1
/* AE6AC8 8006F928 10200002 */ beqz $at, .L8006F934
/* AE6ACC 8006F92C 00000000 */ nop
/* AE6AD0 8006F930 A0850000 */ sb $a1, ($a0)
.L8006F934:
/* AE6AD4 8006F934 03E00008 */ jr $ra
/* AE6AD8 8006F938 306200FF */ andi $v0, $v1, 0xff

View file

@ -1,35 +0,0 @@
glabel func_8006F93C
/* AE6ADC 8006F93C AFA40000 */ sw $a0, ($sp)
/* AE6AE0 8006F940 AFA50004 */ sw $a1, 4($sp)
/* AE6AE4 8006F944 30A5FFFF */ andi $a1, $a1, 0xffff
/* AE6AE8 8006F948 3084FFFF */ andi $a0, $a0, 0xffff
/* AE6AEC 8006F94C 00857023 */ subu $t6, $a0, $a1
/* AE6AF0 8006F950 448E2000 */ mtc1 $t6, $f4
/* AE6AF4 8006F954 44803000 */ mtc1 $zero, $f6
/* AE6AF8 8006F958 AFA60008 */ sw $a2, 8($sp)
/* AE6AFC 8006F95C 46802020 */ cvt.s.w $f0, $f4
/* AE6B00 8006F960 30C6FFFF */ andi $a2, $a2, 0xffff
/* AE6B04 8006F964 00867823 */ subu $t7, $a0, $a2
/* AE6B08 8006F968 46003032 */ c.eq.s $f6, $f0
/* AE6B0C 8006F96C 00000000 */ nop
/* AE6B10 8006F970 4503000E */ bc1tl .L8006F9AC
/* AE6B14 8006F974 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AE6B18 8006F978 448F4000 */ mtc1 $t7, $f8
/* AE6B1C 8006F97C 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AE6B20 8006F980 44816000 */ mtc1 $at, $f12
/* AE6B24 8006F984 468042A0 */ cvt.s.w $f10, $f8
/* AE6B28 8006F988 46005403 */ div.s $f16, $f10, $f0
/* AE6B2C 8006F98C 46106081 */ sub.s $f2, $f12, $f16
/* AE6B30 8006F990 4602603E */ c.le.s $f12, $f2
/* AE6B34 8006F994 00000000 */ nop
/* AE6B38 8006F998 45030004 */ bc1tl .L8006F9AC
/* AE6B3C 8006F99C 3C013F80 */ lui $at, 0x3f80
/* AE6B40 8006F9A0 03E00008 */ jr $ra
/* AE6B44 8006F9A4 46001006 */ mov.s $f0, $f2
/* AE6B48 8006F9A8 3C013F80 */ li $at, 0x3F800000 # 0.000000
.L8006F9AC:
/* AE6B4C 8006F9AC 44810000 */ mtc1 $at, $f0
/* AE6B50 8006F9B0 00000000 */ nop
/* AE6B54 8006F9B4 03E00008 */ jr $ra
/* AE6B58 8006F9B8 00000000 */ nop

View file

@ -1,142 +0,0 @@
.rdata
glabel D_8013C280
.asciz "\x1b[41;37m\nend_frameとstart_frameのフレーム関係がおかしい!!!\x1b[m"
# EUC-JP: start_frame!!! | The frame relation between end_frame and start_frame is wrong
.balign 4
glabel D_8013C2C0
.asciz "\x1b[41;37m\nby get_parcent_forAccelBrake!!!!!!!!!\x1b[m"
.balign 4
.text
glabel func_8006F9BC
/* AE6B5C 8006F9BC 27BDFFC0 */ addiu $sp, $sp, -0x40
/* AE6B60 8006F9C0 30A3FFFF */ andi $v1, $a1, 0xffff
/* AE6B64 8006F9C4 30C2FFFF */ andi $v0, $a2, 0xffff
/* AE6B68 8006F9C8 AFA7004C */ sw $a3, 0x4c($sp)
/* AE6B6C 8006F9CC 0062082A */ slt $at, $v1, $v0
/* AE6B70 8006F9D0 30E7FFFF */ andi $a3, $a3, 0xffff
/* AE6B74 8006F9D4 AFBF001C */ sw $ra, 0x1c($sp)
/* AE6B78 8006F9D8 F7B40010 */ sdc1 $f20, 0x10($sp)
/* AE6B7C 8006F9DC AFA40040 */ sw $a0, 0x40($sp)
/* AE6B80 8006F9E0 AFA50044 */ sw $a1, 0x44($sp)
/* AE6B84 8006F9E4 14200004 */ bnez $at, .L8006F9F8
/* AE6B88 8006F9E8 AFA60048 */ sw $a2, 0x48($sp)
/* AE6B8C 8006F9EC 44800000 */ mtc1 $zero, $f0
/* AE6B90 8006F9F0 10000064 */ b .L8006FB84
/* AE6B94 8006F9F4 8FBF001C */ lw $ra, 0x1c($sp)
.L8006F9F8:
/* AE6B98 8006F9F8 97A40042 */ lhu $a0, 0x42($sp)
/* AE6B9C 8006F9FC 0044082A */ slt $at, $v0, $a0
/* AE6BA0 8006FA00 14200004 */ bnez $at, .L8006FA14
/* AE6BA4 8006FA04 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AE6BA8 8006FA08 44810000 */ mtc1 $at, $f0
/* AE6BAC 8006FA0C 1000005D */ b .L8006FB84
/* AE6BB0 8006FA10 8FBF001C */ lw $ra, 0x1c($sp)
.L8006FA14:
/* AE6BB4 8006FA14 44832000 */ mtc1 $v1, $f4
/* AE6BB8 8006FA18 44843000 */ mtc1 $a0, $f6
/* AE6BBC 8006FA1C 3C048014 */ lui $a0, %hi(D_8013C280)
/* AE6BC0 8006FA20 46802020 */ cvt.s.w $f0, $f4
/* AE6BC4 8006FA24 468030A0 */ cvt.s.w $f2, $f6
/* AE6BC8 8006FA28 4600103E */ c.le.s $f2, $f0
/* AE6BCC 8006FA2C 00000000 */ nop
/* AE6BD0 8006FA30 4501000C */ bc1t .L8006FA64
/* AE6BD4 8006FA34 00000000 */ nop
/* AE6BD8 8006FA38 97AE0052 */ lhu $t6, 0x52($sp)
/* AE6BDC 8006FA3C 44874000 */ mtc1 $a3, $f8
/* AE6BE0 8006FA40 46001481 */ sub.s $f18, $f2, $f0
/* AE6BE4 8006FA44 448E5000 */ mtc1 $t6, $f10
/* AE6BE8 8006FA48 468043A0 */ cvt.s.w $f14, $f8
/* AE6BEC 8006FA4C 46805520 */ cvt.s.w $f20, $f10
/* AE6BF0 8006FA50 46147100 */ add.s $f4, $f14, $f20
/* AE6BF4 8006FA54 4604903C */ c.lt.s $f18, $f4
/* AE6BF8 8006FA58 00000000 */ nop
/* AE6BFC 8006FA5C 4502000A */ bc1fl .L8006FA88
/* AE6C00 8006FA60 46129200 */ add.s $f8, $f18, $f18
.L8006FA64:
/* AE6C04 8006FA64 0C00084C */ jal osSyncPrintf
/* AE6C08 8006FA68 2484C280 */ addiu $a0, %lo(D_8013C280)
/* AE6C0C 8006FA6C 3C048014 */ lui $a0, %hi(D_8013C2C0)
/* AE6C10 8006FA70 0C00084C */ jal osSyncPrintf
/* AE6C14 8006FA74 2484C2C0 */ addiu $a0, %lo(D_8013C2C0) # addiu $a0, $a0, -0x3d40
/* AE6C18 8006FA78 44800000 */ mtc1 $zero, $f0
/* AE6C1C 8006FA7C 10000041 */ b .L8006FB84
/* AE6C20 8006FA80 8FBF001C */ lw $ra, 0x1c($sp)
/* AE6C24 8006FA84 46129200 */ add.s $f8, $f18, $f18
.L8006FA88:
/* AE6C28 8006FA88 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AE6C2C 8006FA8C 44813000 */ mtc1 $at, $f6
/* AE6C30 8006FA90 460E4281 */ sub.s $f10, $f8, $f14
/* AE6C34 8006FA94 44804000 */ mtc1 $zero, $f8
/* AE6C38 8006FA98 46145101 */ sub.s $f4, $f10, $f20
/* AE6C3C 8006FA9C 46087032 */ c.eq.s $f14, $f8
/* AE6C40 8006FAA0 46043403 */ div.s $f16, $f6, $f4
/* AE6C44 8006FAA4 45010011 */ bc1t .L8006FAEC
/* AE6C48 8006FAA8 E7B00024 */ swc1 $f16, 0x24($sp)
/* AE6C4C 8006FAAC 44825000 */ mtc1 $v0, $f10
/* AE6C50 8006FAB0 00000000 */ nop
/* AE6C54 8006FAB4 468051A0 */ cvt.s.w $f6, $f10
/* AE6C58 8006FAB8 46003301 */ sub.s $f12, $f6, $f0
/* AE6C5C 8006FABC 460E603E */ c.le.s $f12, $f14
/* AE6C60 8006FAC0 00000000 */ nop
/* AE6C64 8006FAC4 45000006 */ bc1f .L8006FAE0
/* AE6C68 8006FAC8 00000000 */ nop
/* AE6C6C 8006FACC 460C8102 */ mul.s $f4, $f16, $f12
/* AE6C70 8006FAD0 00000000 */ nop
/* AE6C74 8006FAD4 460C2202 */ mul.s $f8, $f4, $f12
/* AE6C78 8006FAD8 10000029 */ b .L8006FB80
/* AE6C7C 8006FADC 460E4003 */ div.s $f0, $f8, $f14
.L8006FAE0:
/* AE6C80 8006FAE0 460E8082 */ mul.s $f2, $f16, $f14
/* AE6C84 8006FAE4 10000006 */ b .L8006FB00
/* AE6C88 8006FAE8 46149101 */ sub.s $f4, $f18, $f20
.L8006FAEC:
/* AE6C8C 8006FAEC 44825000 */ mtc1 $v0, $f10
/* AE6C90 8006FAF0 44801000 */ mtc1 $zero, $f2
/* AE6C94 8006FAF4 468051A0 */ cvt.s.w $f6, $f10
/* AE6C98 8006FAF8 46003301 */ sub.s $f12, $f6, $f0
/* AE6C9C 8006FAFC 46149101 */ sub.s $f4, $f18, $f20
.L8006FB00:
/* AE6CA0 8006FB00 4604603E */ c.le.s $f12, $f4
/* AE6CA4 8006FB04 00000000 */ nop
/* AE6CA8 8006FB08 45020008 */ bc1fl .L8006FB2C
/* AE6CAC 8006FB0C 460E9201 */ sub.s $f8, $f18, $f14
/* AE6CB0 8006FB10 46108200 */ add.s $f8, $f16, $f16
/* AE6CB4 8006FB14 460E6281 */ sub.s $f10, $f12, $f14
/* AE6CB8 8006FB18 460A4182 */ mul.s $f6, $f8, $f10
/* AE6CBC 8006FB1C 46061080 */ add.s $f2, $f2, $f6
/* AE6CC0 8006FB20 10000017 */ b .L8006FB80
/* AE6CC4 8006FB24 46001006 */ mov.s $f0, $f2
/* AE6CC8 8006FB28 460E9201 */ sub.s $f8, $f18, $f14
.L8006FB2C:
/* AE6CCC 8006FB2C 46108100 */ add.s $f4, $f16, $f16
/* AE6CD0 8006FB30 46144281 */ sub.s $f10, $f8, $f20
/* AE6CD4 8006FB34 44804000 */ mtc1 $zero, $f8
/* AE6CD8 8006FB38 460A2182 */ mul.s $f6, $f4, $f10
/* AE6CDC 8006FB3C 4608A032 */ c.eq.s $f20, $f8
/* AE6CE0 8006FB40 00000000 */ nop
/* AE6CE4 8006FB44 4501000D */ bc1t .L8006FB7C
/* AE6CE8 8006FB48 46061080 */ add.s $f2, $f2, $f6
/* AE6CEC 8006FB4C 46148102 */ mul.s $f4, $f16, $f20
/* AE6CF0 8006FB50 4612603C */ c.lt.s $f12, $f18
/* AE6CF4 8006FB54 00000000 */ nop
/* AE6CF8 8006FB58 45000008 */ bc1f .L8006FB7C
/* AE6CFC 8006FB5C 46041080 */ add.s $f2, $f2, $f4
/* AE6D00 8006FB60 460C9001 */ sub.s $f0, $f18, $f12
/* AE6D04 8006FB64 C7AA0024 */ lwc1 $f10, 0x24($sp)
/* AE6D08 8006FB68 46005182 */ mul.s $f6, $f10, $f0
/* AE6D0C 8006FB6C 00000000 */ nop
/* AE6D10 8006FB70 46003202 */ mul.s $f8, $f6, $f0
/* AE6D14 8006FB74 46144103 */ div.s $f4, $f8, $f20
/* AE6D18 8006FB78 46041081 */ sub.s $f2, $f2, $f4
.L8006FB7C:
/* AE6D1C 8006FB7C 46001006 */ mov.s $f0, $f2
.L8006FB80:
/* AE6D20 8006FB80 8FBF001C */ lw $ra, 0x1c($sp)
.L8006FB84:
/* AE6D24 8006FB84 D7B40010 */ ldc1 $f20, 0x10($sp)
/* AE6D28 8006FB88 27BD0040 */ addiu $sp, $sp, 0x40
/* AE6D2C 8006FB8C 03E00008 */ jr $ra
/* AE6D30 8006FB90 00000000 */ nop

View file

@ -1,68 +0,0 @@
glabel func_8006FB94
/* AE6D34 8006FB94 AFA50004 */ sw $a1, 4($sp)
/* AE6D38 8006FB98 908200DD */ lbu $v0, 0xdd($a0)
/* AE6D3C 8006FB9C 10400038 */ beqz $v0, .L8006FC80
/* AE6D40 8006FBA0 00000000 */ nop
/* AE6D44 8006FBA4 908300DE */ lbu $v1, 0xde($a0)
/* AE6D48 8006FBA8 24010001 */ li $at, 1
/* AE6D4C 8006FBAC 10600006 */ beqz $v1, .L8006FBC8
/* AE6D50 8006FBB0 00000000 */ nop
/* AE6D54 8006FBB4 24010001 */ li $at, 1
/* AE6D58 8006FBB8 10610019 */ beq $v1, $at, .L8006FC20
/* AE6D5C 8006FBBC 3C088012 */ lui $t0, %hi(D_8011FB3C)
/* AE6D60 8006FBC0 03E00008 */ jr $ra
/* AE6D64 8006FBC4 00000000 */ nop
.L8006FBC8:
/* AE6D68 8006FBC8 1441002D */ bne $v0, $at, .L8006FC80
/* AE6D6C 8006FBCC 3C0E8012 */ lui $t6, %hi(D_8011FB3C) # $t6, 0x8012
/* AE6D70 8006FBD0 91CEFB3C */ lbu $t6, %lo(D_8011FB3C)($t6)
/* AE6D74 8006FBD4 24020001 */ li $v0, 1
/* AE6D78 8006FBD8 240F0064 */ li $t7, 100
/* AE6D7C 8006FBDC 15C00028 */ bnez $t6, .L8006FC80
/* AE6D80 8006FBE0 24050002 */ li $a1, 2
/* AE6D84 8006FBE4 A0820019 */ sb $v0, 0x19($a0)
/* AE6D88 8006FBE8 A0800017 */ sb $zero, 0x17($a0)
/* AE6D8C 8006FBEC A0820018 */ sb $v0, 0x18($a0)
/* AE6D90 8006FBF0 A48F001A */ sh $t7, 0x1a($a0)
/* AE6D94 8006FBF4 A0820021 */ sb $v0, 0x21($a0)
/* AE6D98 8006FBF8 A080001F */ sb $zero, 0x1f($a0)
/* AE6D9C 8006FBFC A0850020 */ sb $a1, 0x20($a0)
/* AE6DA0 8006FC00 3C018012 */ lui $at, %hi(D_8011FB34) # $at, 0x8012
/* AE6DA4 8006FC04 A025FB34 */ sb $a1, %lo(D_8011FB34)($at)
/* AE6DA8 8006FC08 909800DE */ lbu $t8, 0xde($a0)
/* AE6DAC 8006FC0C A48F0022 */ sh $t7, 0x22($a0)
/* AE6DB0 8006FC10 A48F0024 */ sh $t7, 0x24($a0)
/* AE6DB4 8006FC14 27190001 */ addiu $t9, $t8, 1
/* AE6DB8 8006FC18 03E00008 */ jr $ra
/* AE6DBC 8006FC1C A09900DE */ sb $t9, 0xde($a0)
.L8006FC20:
/* AE6DC0 8006FC20 9108FB3C */ lbu $t0, %lo(D_8011FB3C)($t0)
/* AE6DC4 8006FC24 24010002 */ li $at, 2
/* AE6DC8 8006FC28 15000015 */ bnez $t0, .L8006FC80
/* AE6DCC 8006FC2C 00000000 */ nop
/* AE6DD0 8006FC30 14410013 */ bne $v0, $at, .L8006FC80
/* AE6DD4 8006FC34 24090064 */ li $t1, 100
/* AE6DD8 8006FC38 3C018012 */ lui $at, %hi(D_8011FB30) # $at, 0x8012
/* AE6DDC 8006FC3C A020FB30 */ sb $zero, %lo(D_8011FB30)($at)
/* AE6DE0 8006FC40 24020001 */ li $v0, 1
/* AE6DE4 8006FC44 24050002 */ li $a1, 2
/* AE6DE8 8006FC48 A0820019 */ sb $v0, 0x19($a0)
/* AE6DEC 8006FC4C A0820017 */ sb $v0, 0x17($a0)
/* AE6DF0 8006FC50 A0800018 */ sb $zero, 0x18($a0)
/* AE6DF4 8006FC54 A489001A */ sh $t1, 0x1a($a0)
/* AE6DF8 8006FC58 A0820021 */ sb $v0, 0x21($a0)
/* AE6DFC 8006FC5C A085001F */ sb $a1, 0x1f($a0)
/* AE6E00 8006FC60 A0800020 */ sb $zero, 0x20($a0)
/* AE6E04 8006FC64 3C018012 */ lui $at, %hi(D_8011FB34) # $at, 0x8012
/* AE6E08 8006FC68 A020FB34 */ sb $zero, %lo(D_8011FB34)($at)
/* AE6E0C 8006FC6C A4890022 */ sh $t1, 0x22($a0)
/* AE6E10 8006FC70 A4890024 */ sh $t1, 0x24($a0)
/* AE6E14 8006FC74 A08000EE */ sb $zero, 0xee($a0)
/* AE6E18 8006FC78 A08000DD */ sb $zero, 0xdd($a0)
/* AE6E1C 8006FC7C A08000DE */ sb $zero, 0xde($a0)
.L8006FC80:
/* AE6E20 8006FC80 03E00008 */ jr $ra
/* AE6E24 8006FC84 00000000 */ nop

View file

@ -1,53 +0,0 @@
.rdata
glabel D_8013C390
.asciz "\x1b[43;30m\n水ポリゴンデータに水中カラーが設定されておりません!\x1b[m"
# EUC-JP: | Underwater color is not set in the water poly data
.balign 4
.text
glabel func_80070600
/* AE77A0 80070600 27BDFFE8 */ addiu $sp, $sp, -0x18
/* AE77A4 80070604 2401001F */ li $at, 31
/* AE77A8 80070608 AFBF0014 */ sw $ra, 0x14($sp)
/* AE77AC 8007060C 14A10008 */ bne $a1, $at, .L80070630
/* AE77B0 80070610 00803025 */ move $a2, $a0
/* AE77B4 80070614 3C048014 */ lui $a0, %hi(D_8013C390) # $a0, 0x8014
/* AE77B8 80070618 2484C390 */ addiu $a0, %lo(D_8013C390) # addiu $a0, $a0, -0x3c70
/* AE77BC 8007061C AFA0001C */ sw $zero, 0x1c($sp)
/* AE77C0 80070620 0C00084C */ jal osSyncPrintf
/* AE77C4 80070624 AFA60018 */ sw $a2, 0x18($sp)
/* AE77C8 80070628 8FA5001C */ lw $a1, 0x1c($sp)
/* AE77CC 8007062C 8FA60018 */ lw $a2, 0x18($sp)
.L80070630:
/* AE77D0 80070630 3C010001 */ lui $at, 1
/* AE77D4 80070634 00C11021 */ addu $v0, $a2, $at
/* AE77D8 80070638 904E0A42 */ lbu $t6, 0xa42($v0)
/* AE77DC 8007063C 3C010001 */ lui $at, 1
/* AE77E0 80070640 00260821 */ addu $at, $at, $a2
/* AE77E4 80070644 55C0000F */ bnezl $t6, .L80070684
/* AE77E8 80070648 A0200AE0 */ sb $zero, 0xae0($at)
/* AE77EC 8007064C 904F0A44 */ lbu $t7, 0xa44($v0)
/* AE77F0 80070650 3C018012 */ lui $at, %hi(D_8011FB34) # $at, 0x8012
/* AE77F4 80070654 A02FFB34 */ sb $t7, %lo(D_8011FB34)($at)
/* AE77F8 80070658 90580A43 */ lbu $t8, 0xa43($v0)
/* AE77FC 8007065C 3C010001 */ lui $at, 1
/* AE7800 80070660 00260821 */ addu $at, $at, $a2
/* AE7804 80070664 50B8000B */ beql $a1, $t8, .L80070694
/* AE7808 80070668 8FBF0014 */ lw $ra, 0x14($sp)
/* AE780C 8007066C A0250A43 */ sb $a1, 0xa43($at)
/* AE7810 80070670 3C010001 */ lui $at, 1
/* AE7814 80070674 00260821 */ addu $at, $at, $a2
/* AE7818 80070678 10000005 */ b .L80070690
/* AE781C 8007067C A0250A44 */ sb $a1, 0xa44($at)
/* AE7820 80070680 A0200AE0 */ sb $zero, 0xae0($at)
.L80070684:
/* AE7824 80070684 3C010001 */ lui $at, 1
/* AE7828 80070688 00260821 */ addu $at, $at, $a2
/* AE782C 8007068C A0250AE3 */ sb $a1, 0xae3($at)
.L80070690:
/* AE7830 80070690 8FBF0014 */ lw $ra, 0x14($sp)
.L80070694:
/* AE7834 80070694 27BD0018 */ addiu $sp, $sp, 0x18
/* AE7838 80070698 03E00008 */ jr $ra
/* AE783C 8007069C 00000000 */ nop

View file

@ -1,34 +0,0 @@
glabel func_800706A0
/* AE7840 800706A0 3C0E0001 */ lui $t6, 1
/* AE7844 800706A4 01C47021 */ addu $t6, $t6, $a0
/* AE7848 800706A8 91CE0A42 */ lbu $t6, 0xa42($t6)
/* AE784C 800706AC 3C028012 */ lui $v0, %hi(D_8011FB34) # $v0, 0x8012
/* AE7850 800706B0 2442FB34 */ addiu $v0, %lo(D_8011FB34) # addiu $v0, $v0, -0x4cc
/* AE7854 800706B4 55C0000B */ bnezl $t6, .L800706E4
/* AE7858 800706B8 3C010001 */ lui $at, 1
/* AE785C 800706BC 904F0000 */ lbu $t7, ($v0)
/* AE7860 800706C0 3C010001 */ lui $at, 1
/* AE7864 800706C4 00240821 */ addu $at, $at, $a0
/* AE7868 800706C8 A02F0A43 */ sb $t7, 0xa43($at)
/* AE786C 800706CC 90580000 */ lbu $t8, ($v0)
/* AE7870 800706D0 3C010001 */ lui $at, 1
/* AE7874 800706D4 00240821 */ addu $at, $at, $a0
/* AE7878 800706D8 03E00008 */ jr $ra
/* AE787C 800706DC A0380A44 */ sb $t8, 0xa44($at)
/* AE7880 800706E0 3C010001 */ lui $at, 1
.L800706E4:
/* AE7884 800706E4 00240821 */ addu $at, $at, $a0
/* AE7888 800706E8 A0200AE0 */ sb $zero, 0xae0($at)
/* AE788C 800706EC 3C010001 */ lui $at, 1
/* AE7890 800706F0 00240821 */ addu $at, $at, $a0
/* AE7894 800706F4 241900FF */ li $t9, 255
/* AE7898 800706F8 A0390AE3 */ sb $t9, 0xae3($at)
/* AE789C 800706FC 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AE78A0 80070700 44812000 */ mtc1 $at, $f4
/* AE78A4 80070704 3C010001 */ lui $at, 1
/* AE78A8 80070708 00240821 */ addu $at, $at, $a0
/* AE78AC 8007070C E4240AFC */ swc1 $f4, 0xafc($at)
/* AE78B0 80070710 03E00008 */ jr $ra
/* AE78B4 80070714 00000000 */ nop

View file

@ -1,433 +0,0 @@
.rdata
glabel D_8013C3D0
.asciz "T%03d "
.balign 4
glabel D_8013C3D8
.asciz "E%03d"
.balign 4
glabel D_8013C3E0
.asciz "%s"
.balign 4
glabel D_8013C3E4
.asciz "ZELDATIME "
.balign 4
glabel D_8013C3F0
.asciz "%02d"
.balign 4
glabel D_8013C3F8
.asciz "%s"
.balign 4
glabel D_8013C3FC
.asciz ":"
.balign 4
glabel D_8013C400
.asciz "%s"
.balign 4
glabel D_8013C404
.asciz " "
.balign 4
glabel D_8013C408
.asciz "%02d"
.balign 4
glabel D_8013C410
.asciz "%s"
.balign 4
glabel D_8013C414
.asciz "VRBOXTIME "
.balign 4
glabel D_8013C420
.asciz "%02d"
.balign 4
glabel D_8013C428
.asciz "%s"
.balign 4
glabel D_8013C42C
.asciz ":"
.balign 4
glabel D_8013C430
.asciz "%s"
.balign 4
glabel D_8013C434
.asciz " "
.balign 4
glabel D_8013C438
.asciz "%02d"
.balign 4
glabel D_8013C440
.asciz "%s"
.balign 4
glabel D_8013C444
.asciz "YORU"
.balign 4
glabel D_8013C44C
.asciz "%s"
.balign 4
glabel D_8013C450
.asciz "HIRU"
.balign 4
.text
glabel func_80070718
/* AE78B8 80070718 27BDFF98 */ addiu $sp, $sp, -0x68
/* AE78BC 8007071C AFB00020 */ sw $s0, 0x20($sp)
/* AE78C0 80070720 27B00038 */ addiu $s0, $sp, 0x38
/* AE78C4 80070724 AFBF0024 */ sw $ra, 0x24($sp)
/* AE78C8 80070728 AFA40068 */ sw $a0, 0x68($sp)
/* AE78CC 8007072C AFA5006C */ sw $a1, 0x6c($sp)
/* AE78D0 80070730 0C03EEE3 */ jal GfxPrint_Init
/* AE78D4 80070734 02002025 */ move $a0, $s0
/* AE78D8 80070738 8FAE006C */ lw $t6, 0x6c($sp)
/* AE78DC 8007073C 02002025 */ move $a0, $s0
/* AE78E0 80070740 0C03EF07 */ jal GfxPrint_Open
/* AE78E4 80070744 8DC50000 */ lw $a1, ($t6)
/* AE78E8 80070748 02002025 */ move $a0, $s0
/* AE78EC 8007074C 24050016 */ li $a1, 22
/* AE78F0 80070750 0C03ED07 */ jal GfxPrint_SetPos
/* AE78F4 80070754 24060007 */ li $a2, 7
/* AE78F8 80070758 240F0040 */ li $t7, 64
/* AE78FC 8007075C AFAF0010 */ sw $t7, 0x10($sp)
/* AE7900 80070760 02002025 */ move $a0, $s0
/* AE7904 80070764 2405009B */ li $a1, 155
/* AE7908 80070768 2406009B */ li $a2, 155
/* AE790C 8007076C 0C03ECEB */ jal GfxPrint_SetColor
/* AE7910 80070770 240700FF */ li $a3, 255
/* AE7914 80070774 3C068016 */ lui $a2, %hi(gSaveContext+0x14) # $a2, 0x8016
/* AE7918 80070778 3C058014 */ lui $a1, %hi(D_8013C3D0) # $a1, 0x8014
/* AE791C 8007077C 24A5C3D0 */ addiu $a1, %lo(D_8013C3D0) # addiu $a1, $a1, -0x3c30
/* AE7920 80070780 8CC6E674 */ lw $a2, %lo(gSaveContext+0x14)($a2)
/* AE7924 80070784 0C03EF2D */ jal GfxPrint_Printf
/* AE7928 80070788 02002025 */ move $a0, $s0
/* AE792C 8007078C 3C068016 */ lui $a2, %hi(gSaveContext+0x18) # $a2, 0x8016
/* AE7930 80070790 3C058014 */ lui $a1, %hi(D_8013C3D8) # $a1, 0x8014
/* AE7934 80070794 24A5C3D8 */ addiu $a1, %lo(D_8013C3D8) # addiu $a1, $a1, -0x3c28
/* AE7938 80070798 8CC6E678 */ lw $a2, %lo(gSaveContext+0x18)($a2)
/* AE793C 8007079C 0C03EF2D */ jal GfxPrint_Printf
/* AE7940 800707A0 02002025 */ move $a0, $s0
/* AE7944 800707A4 24180040 */ li $t8, 64
/* AE7948 800707A8 AFB80010 */ sw $t8, 0x10($sp)
/* AE794C 800707AC 02002025 */ move $a0, $s0
/* AE7950 800707B0 240500FF */ li $a1, 255
/* AE7954 800707B4 240600FF */ li $a2, 255
/* AE7958 800707B8 0C03ECEB */ jal GfxPrint_SetColor
/* AE795C 800707BC 24070037 */ li $a3, 55
/* AE7960 800707C0 02002025 */ move $a0, $s0
/* AE7964 800707C4 24050016 */ li $a1, 22
/* AE7968 800707C8 0C03ED07 */ jal GfxPrint_SetPos
/* AE796C 800707CC 24060008 */ li $a2, 8
/* AE7970 800707D0 3C058014 */ lui $a1, %hi(D_8013C3E0) # $a1, 0x8014
/* AE7974 800707D4 3C068014 */ lui $a2, %hi(D_8013C3E4) # $a2, 0x8014
/* AE7978 800707D8 24C6C3E4 */ addiu $a2, %lo(D_8013C3E4) # addiu $a2, $a2, -0x3c1c
/* AE797C 800707DC 24A5C3E0 */ addiu $a1, %lo(D_8013C3E0) # addiu $a1, $a1, -0x3c20
/* AE7980 800707E0 0C03EF2D */ jal GfxPrint_Printf
/* AE7984 800707E4 02002025 */ move $a0, $s0
/* AE7988 800707E8 24190040 */ li $t9, 64
/* AE798C 800707EC AFB90010 */ sw $t9, 0x10($sp)
/* AE7990 800707F0 02002025 */ move $a0, $s0
/* AE7994 800707F4 240500FF */ li $a1, 255
/* AE7998 800707F8 240600FF */ li $a2, 255
/* AE799C 800707FC 0C03ECEB */ jal GfxPrint_SetColor
/* AE79A0 80070800 240700FF */ li $a3, 255
/* AE79A4 80070804 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AE79A8 80070808 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AE79AC 8007080C 3C058014 */ lui $a1, %hi(D_8013C3F0)
/* AE79B0 80070810 24A5C3F0 */ addiu $a1, %lo(D_8013C3F0) # addiu $a1, $a1, -0x3c10
/* AE79B4 80070814 44822000 */ mtc1 $v0, $f4
/* AE79B8 80070818 02002025 */ move $a0, $s0
/* AE79BC 8007081C 04410005 */ bgez $v0, .L80070834
/* AE79C0 80070820 468021A0 */ cvt.s.w $f6, $f4
/* AE79C4 80070824 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AE79C8 80070828 44814000 */ mtc1 $at, $f8
/* AE79CC 8007082C 00000000 */ nop
/* AE79D0 80070830 46083180 */ add.s $f6, $f6, $f8
.L80070834:
/* AE79D4 80070834 3C013CB4 */ li $at, 0x3CB40000 # 0.000000
/* AE79D8 80070838 44815000 */ mtc1 $at, $f10
/* AE79DC 8007083C 3C014270 */ li $at, 0x42700000 # 0.000000
/* AE79E0 80070840 44819000 */ mtc1 $at, $f18
/* AE79E4 80070844 460A3402 */ mul.s $f16, $f6, $f10
/* AE79E8 80070848 24060001 */ li $a2, 1
/* AE79EC 8007084C 46128103 */ div.s $f4, $f16, $f18
/* AE79F0 80070850 4448F800 */ cfc1 $t0, $31
/* AE79F4 80070854 44C6F800 */ ctc1 $a2, $31
/* AE79F8 80070858 00000000 */ nop
/* AE79FC 8007085C 46002224 */ cvt.w.s $f8, $f4
/* AE7A00 80070860 4446F800 */ cfc1 $a2, $31
/* AE7A04 80070864 00000000 */ nop
/* AE7A08 80070868 30C60078 */ andi $a2, $a2, 0x78
/* AE7A0C 8007086C 10C00012 */ beqz $a2, .L800708B8
/* AE7A10 80070870 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AE7A14 80070874 44814000 */ mtc1 $at, $f8
/* AE7A18 80070878 24060001 */ li $a2, 1
/* AE7A1C 8007087C 46082201 */ sub.s $f8, $f4, $f8
/* AE7A20 80070880 44C6F800 */ ctc1 $a2, $31
/* AE7A24 80070884 00000000 */ nop
/* AE7A28 80070888 46004224 */ cvt.w.s $f8, $f8
/* AE7A2C 8007088C 4446F800 */ cfc1 $a2, $31
/* AE7A30 80070890 00000000 */ nop
/* AE7A34 80070894 30C60078 */ andi $a2, $a2, 0x78
/* AE7A38 80070898 14C00005 */ bnez $a2, .L800708B0
/* AE7A3C 8007089C 00000000 */ nop
/* AE7A40 800708A0 44064000 */ mfc1 $a2, $f8
/* AE7A44 800708A4 3C018000 */ lui $at, 0x8000
/* AE7A48 800708A8 10000007 */ b .L800708C8
/* AE7A4C 800708AC 00C13025 */ or $a2, $a2, $at
.L800708B0:
/* AE7A50 800708B0 10000005 */ b .L800708C8
/* AE7A54 800708B4 2406FFFF */ li $a2, -1
.L800708B8:
/* AE7A58 800708B8 44064000 */ mfc1 $a2, $f8
/* AE7A5C 800708BC 00000000 */ nop
/* AE7A60 800708C0 04C0FFFB */ bltz $a2, .L800708B0
/* AE7A64 800708C4 00000000 */ nop
.L800708C8:
/* AE7A68 800708C8 44C8F800 */ ctc1 $t0, $31
/* AE7A6C 800708CC 0C03EF2D */ jal GfxPrint_Printf
/* AE7A70 800708D0 30C600FF */ andi $a2, $a2, 0xff
/* AE7A74 800708D4 3C098016 */ lui $t1, %hi(gSaveContext+0xc) # $t1, 0x8016
/* AE7A78 800708D8 9529E66C */ lhu $t1, %lo(gSaveContext+0xc)($t1)
/* AE7A7C 800708DC 312A001F */ andi $t2, $t1, 0x1f
/* AE7A80 800708E0 29410010 */ slti $at, $t2, 0x10
/* AE7A84 800708E4 10200007 */ beqz $at, .L80070904
/* AE7A88 800708E8 3C0B8012 */ lui $t3, %hi(D_8011FB40) # $t3, 0x8012
/* AE7A8C 800708EC 956BFB40 */ lhu $t3, %lo(D_8011FB40)($t3)
/* AE7A90 800708F0 3C058014 */ lui $a1, %hi(D_8013C400) # $a1, 0x8014
/* AE7A94 800708F4 24A5C400 */ addiu $a1, %lo(D_8013C400) # addiu $a1, $a1, -0x3c00
/* AE7A98 800708F8 29610006 */ slti $at, $t3, 6
/* AE7A9C 800708FC 14200009 */ bnez $at, .L80070924
/* AE7AA0 80070900 02002025 */ move $a0, $s0
.L80070904:
/* AE7AA4 80070904 3C058014 */ lui $a1, %hi(D_8013C3F8) # $a1, 0x8014
/* AE7AA8 80070908 3C068014 */ lui $a2, %hi(D_8013C3FC) # $a2, 0x8014
/* AE7AAC 8007090C 24C6C3FC */ addiu $a2, %lo(D_8013C3FC) # addiu $a2, $a2, -0x3c04
/* AE7AB0 80070910 24A5C3F8 */ addiu $a1, %lo(D_8013C3F8) # addiu $a1, $a1, -0x3c08
/* AE7AB4 80070914 0C03EF2D */ jal GfxPrint_Printf
/* AE7AB8 80070918 02002025 */ move $a0, $s0
/* AE7ABC 8007091C 10000004 */ b .L80070930
/* AE7AC0 80070920 00000000 */ nop
.L80070924:
/* AE7AC4 80070924 3C068014 */ lui $a2, %hi(D_8013C404) # $a2, 0x8014
/* AE7AC8 80070928 0C03EF2D */ jal GfxPrint_Printf
/* AE7ACC 8007092C 24C6C404 */ addiu $a2, %lo(D_8013C404) # addiu $a2, $a2, -0x3bfc
.L80070930:
/* AE7AD0 80070930 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AE7AD4 80070934 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AE7AD8 80070938 3C058014 */ lui $a1, %hi(D_8013C408)
/* AE7ADC 8007093C 24A5C408 */ addiu $a1, %lo(D_8013C408) # addiu $a1, $a1, -0x3bf8
/* AE7AE0 80070940 44823000 */ mtc1 $v0, $f6
/* AE7AE4 80070944 02002025 */ move $a0, $s0
/* AE7AE8 80070948 04410005 */ bgez $v0, .L80070960
/* AE7AEC 8007094C 468032A0 */ cvt.s.w $f10, $f6
/* AE7AF0 80070950 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AE7AF4 80070954 44818000 */ mtc1 $at, $f16
/* AE7AF8 80070958 00000000 */ nop
/* AE7AFC 8007095C 46105280 */ add.s $f10, $f10, $f16
.L80070960:
/* AE7B00 80070960 3C013CB4 */ li $at, 0x3CB40000 # 0.000000
/* AE7B04 80070964 44819000 */ mtc1 $at, $f18
/* AE7B08 80070968 2401003C */ li $at, 60
/* AE7B0C 8007096C 46125102 */ mul.s $f4, $f10, $f18
/* AE7B10 80070970 4600220D */ trunc.w.s $f8, $f4
/* AE7B14 80070974 44064000 */ mfc1 $a2, $f8
/* AE7B18 80070978 00000000 */ nop
/* AE7B1C 8007097C 00063400 */ sll $a2, $a2, 0x10
/* AE7B20 80070980 00063403 */ sra $a2, $a2, 0x10
/* AE7B24 80070984 00C1001A */ div $zero, $a2, $at
/* AE7B28 80070988 00003010 */ mfhi $a2
/* AE7B2C 8007098C 0C03EF2D */ jal GfxPrint_Printf
/* AE7B30 80070990 00000000 */ nop
/* AE7B34 80070994 240D0040 */ li $t5, 64
/* AE7B38 80070998 AFAD0010 */ sw $t5, 0x10($sp)
/* AE7B3C 8007099C 02002025 */ move $a0, $s0
/* AE7B40 800709A0 240500FF */ li $a1, 255
/* AE7B44 800709A4 240600FF */ li $a2, 255
/* AE7B48 800709A8 0C03ECEB */ jal GfxPrint_SetColor
/* AE7B4C 800709AC 24070037 */ li $a3, 55
/* AE7B50 800709B0 02002025 */ move $a0, $s0
/* AE7B54 800709B4 24050016 */ li $a1, 22
/* AE7B58 800709B8 0C03ED07 */ jal GfxPrint_SetPos
/* AE7B5C 800709BC 24060009 */ li $a2, 9
/* AE7B60 800709C0 3C058014 */ lui $a1, %hi(D_8013C410) # $a1, 0x8014
/* AE7B64 800709C4 3C068014 */ lui $a2, %hi(D_8013C414) # $a2, 0x8014
/* AE7B68 800709C8 24C6C414 */ addiu $a2, %lo(D_8013C414) # addiu $a2, $a2, -0x3bec
/* AE7B6C 800709CC 24A5C410 */ addiu $a1, %lo(D_8013C410) # addiu $a1, $a1, -0x3bf0
/* AE7B70 800709D0 0C03EF2D */ jal GfxPrint_Printf
/* AE7B74 800709D4 02002025 */ move $a0, $s0
/* AE7B78 800709D8 240E0040 */ li $t6, 64
/* AE7B7C 800709DC AFAE0010 */ sw $t6, 0x10($sp)
/* AE7B80 800709E0 02002025 */ move $a0, $s0
/* AE7B84 800709E4 240500FF */ li $a1, 255
/* AE7B88 800709E8 240600FF */ li $a2, 255
/* AE7B8C 800709EC 0C03ECEB */ jal GfxPrint_SetColor
/* AE7B90 800709F0 240700FF */ li $a3, 255
/* AE7B94 800709F4 3C028016 */ lui $v0, %hi(gSaveContext+0x141a) # $v0, 0x8016
/* AE7B98 800709F8 9442FA7A */ lhu $v0, %lo(gSaveContext+0x141a)($v0)
/* AE7B9C 800709FC 3C058014 */ lui $a1, %hi(D_8013C420)
/* AE7BA0 80070A00 24A5C420 */ addiu $a1, %lo(D_8013C420) # addiu $a1, $a1, -0x3be0
/* AE7BA4 80070A04 44823000 */ mtc1 $v0, $f6
/* AE7BA8 80070A08 02002025 */ move $a0, $s0
/* AE7BAC 80070A0C 04410005 */ bgez $v0, .L80070A24
/* AE7BB0 80070A10 46803420 */ cvt.s.w $f16, $f6
/* AE7BB4 80070A14 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AE7BB8 80070A18 44815000 */ mtc1 $at, $f10
/* AE7BBC 80070A1C 00000000 */ nop
/* AE7BC0 80070A20 460A8400 */ add.s $f16, $f16, $f10
.L80070A24:
/* AE7BC4 80070A24 3C013CB4 */ li $at, 0x3CB40000 # 0.000000
/* AE7BC8 80070A28 44819000 */ mtc1 $at, $f18
/* AE7BCC 80070A2C 3C014270 */ li $at, 0x42700000 # 0.000000
/* AE7BD0 80070A30 44814000 */ mtc1 $at, $f8
/* AE7BD4 80070A34 46128102 */ mul.s $f4, $f16, $f18
/* AE7BD8 80070A38 24060001 */ li $a2, 1
/* AE7BDC 80070A3C 46082183 */ div.s $f6, $f4, $f8
/* AE7BE0 80070A40 444FF800 */ cfc1 $t7, $31
/* AE7BE4 80070A44 44C6F800 */ ctc1 $a2, $31
/* AE7BE8 80070A48 00000000 */ nop
/* AE7BEC 80070A4C 460032A4 */ cvt.w.s $f10, $f6
/* AE7BF0 80070A50 4446F800 */ cfc1 $a2, $31
/* AE7BF4 80070A54 00000000 */ nop
/* AE7BF8 80070A58 30C60078 */ andi $a2, $a2, 0x78
/* AE7BFC 80070A5C 10C00012 */ beqz $a2, .L80070AA8
/* AE7C00 80070A60 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AE7C04 80070A64 44815000 */ mtc1 $at, $f10
/* AE7C08 80070A68 24060001 */ li $a2, 1
/* AE7C0C 80070A6C 460A3281 */ sub.s $f10, $f6, $f10
/* AE7C10 80070A70 44C6F800 */ ctc1 $a2, $31
/* AE7C14 80070A74 00000000 */ nop
/* AE7C18 80070A78 460052A4 */ cvt.w.s $f10, $f10
/* AE7C1C 80070A7C 4446F800 */ cfc1 $a2, $31
/* AE7C20 80070A80 00000000 */ nop
/* AE7C24 80070A84 30C60078 */ andi $a2, $a2, 0x78
/* AE7C28 80070A88 14C00005 */ bnez $a2, .L80070AA0
/* AE7C2C 80070A8C 00000000 */ nop
/* AE7C30 80070A90 44065000 */ mfc1 $a2, $f10
/* AE7C34 80070A94 3C018000 */ lui $at, 0x8000
/* AE7C38 80070A98 10000007 */ b .L80070AB8
/* AE7C3C 80070A9C 00C13025 */ or $a2, $a2, $at
.L80070AA0:
/* AE7C40 80070AA0 10000005 */ b .L80070AB8
/* AE7C44 80070AA4 2406FFFF */ li $a2, -1
.L80070AA8:
/* AE7C48 80070AA8 44065000 */ mfc1 $a2, $f10
/* AE7C4C 80070AAC 00000000 */ nop
/* AE7C50 80070AB0 04C0FFFB */ bltz $a2, .L80070AA0
/* AE7C54 80070AB4 00000000 */ nop
.L80070AB8:
/* AE7C58 80070AB8 44CFF800 */ ctc1 $t7, $31
/* AE7C5C 80070ABC 0C03EF2D */ jal GfxPrint_Printf
/* AE7C60 80070AC0 30C600FF */ andi $a2, $a2, 0xff
/* AE7C64 80070AC4 3C188016 */ lui $t8, %hi(gSaveContext+0x141a) # $t8, 0x8016
/* AE7C68 80070AC8 9718FA7A */ lhu $t8, %lo(gSaveContext+0x141a)($t8)
/* AE7C6C 80070ACC 3C088012 */ lui $t0, %hi(D_8011FB40) # $t0, 0x8012
/* AE7C70 80070AD0 02002025 */ move $a0, $s0
/* AE7C74 80070AD4 3319001F */ andi $t9, $t8, 0x1f
/* AE7C78 80070AD8 2B210010 */ slti $at, $t9, 0x10
/* AE7C7C 80070ADC 10200007 */ beqz $at, .L80070AFC
/* AE7C80 80070AE0 3C058014 */ lui $a1, %hi(D_8013C428) # $a1, 0x8014
/* AE7C84 80070AE4 9508FB40 */ lhu $t0, %lo(D_8011FB40)($t0)
/* AE7C88 80070AE8 3C068014 */ lui $a2, %hi(D_8013C434) # $a2, 0x8014
/* AE7C8C 80070AEC 24C6C434 */ addiu $a2, %lo(D_8013C434) # addiu $a2, $a2, -0x3bcc
/* AE7C90 80070AF0 29010006 */ slti $at, $t0, 6
/* AE7C94 80070AF4 14200007 */ bnez $at, .L80070B14
/* AE7C98 80070AF8 00000000 */ nop
.L80070AFC:
/* AE7C9C 80070AFC 3C068014 */ lui $a2, %hi(D_8013C42C) # $a2, 0x8014
/* AE7CA0 80070B00 24C6C42C */ addiu $a2, %lo(D_8013C42C) # addiu $a2, $a2, -0x3bd4
/* AE7CA4 80070B04 0C03EF2D */ jal GfxPrint_Printf
/* AE7CA8 80070B08 24A5C428 */ addiu $a1, %lo(D_8013C428) # addiu $a1, $a1, -0x3bd8
/* AE7CAC 80070B0C 10000005 */ b .L80070B24
/* AE7CB0 80070B10 00000000 */ nop
.L80070B14:
/* AE7CB4 80070B14 3C058014 */ lui $a1, %hi(D_8013C430) # $a1, 0x8014
/* AE7CB8 80070B18 24A5C430 */ addiu $a1, %lo(D_8013C430) # addiu $a1, $a1, -0x3bd0
/* AE7CBC 80070B1C 0C03EF2D */ jal GfxPrint_Printf
/* AE7CC0 80070B20 02002025 */ move $a0, $s0
.L80070B24:
/* AE7CC4 80070B24 3C028016 */ lui $v0, %hi(gSaveContext+0x141a) # $v0, 0x8016
/* AE7CC8 80070B28 9442FA7A */ lhu $v0, %lo(gSaveContext+0x141a)($v0)
/* AE7CCC 80070B2C 3C058014 */ lui $a1, %hi(D_8013C438)
/* AE7CD0 80070B30 24A5C438 */ addiu $a1, %lo(D_8013C438) # addiu $a1, $a1, -0x3bc8
/* AE7CD4 80070B34 44828000 */ mtc1 $v0, $f16
/* AE7CD8 80070B38 02002025 */ move $a0, $s0
/* AE7CDC 80070B3C 04410005 */ bgez $v0, .L80070B54
/* AE7CE0 80070B40 468084A0 */ cvt.s.w $f18, $f16
/* AE7CE4 80070B44 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AE7CE8 80070B48 44812000 */ mtc1 $at, $f4
/* AE7CEC 80070B4C 00000000 */ nop
/* AE7CF0 80070B50 46049480 */ add.s $f18, $f18, $f4
.L80070B54:
/* AE7CF4 80070B54 3C013CB4 */ li $at, 0x3CB40000 # 0.000000
/* AE7CF8 80070B58 44814000 */ mtc1 $at, $f8
/* AE7CFC 80070B5C 2401003C */ li $at, 60
/* AE7D00 80070B60 46089182 */ mul.s $f6, $f18, $f8
/* AE7D04 80070B64 4600328D */ trunc.w.s $f10, $f6
/* AE7D08 80070B68 44065000 */ mfc1 $a2, $f10
/* AE7D0C 80070B6C 00000000 */ nop
/* AE7D10 80070B70 00063400 */ sll $a2, $a2, 0x10
/* AE7D14 80070B74 00063403 */ sra $a2, $a2, 0x10
/* AE7D18 80070B78 00C1001A */ div $zero, $a2, $at
/* AE7D1C 80070B7C 00003010 */ mfhi $a2
/* AE7D20 80070B80 0C03EF2D */ jal GfxPrint_Printf
/* AE7D24 80070B84 00000000 */ nop
/* AE7D28 80070B88 240A0040 */ li $t2, 64
/* AE7D2C 80070B8C AFAA0010 */ sw $t2, 0x10($sp)
/* AE7D30 80070B90 02002025 */ move $a0, $s0
/* AE7D34 80070B94 24050037 */ li $a1, 55
/* AE7D38 80070B98 240600FF */ li $a2, 255
/* AE7D3C 80070B9C 0C03ECEB */ jal GfxPrint_SetColor
/* AE7D40 80070BA0 240700FF */ li $a3, 255
/* AE7D44 80070BA4 02002025 */ move $a0, $s0
/* AE7D48 80070BA8 24050016 */ li $a1, 22
/* AE7D4C 80070BAC 0C03ED07 */ jal GfxPrint_SetPos
/* AE7D50 80070BB0 24060006 */ li $a2, 6
/* AE7D54 80070BB4 3C0B8016 */ lui $t3, %hi(gSaveContext+0x10) # $t3, 0x8016
/* AE7D58 80070BB8 8D6BE670 */ lw $t3, %lo(gSaveContext+0x10)($t3)
/* AE7D5C 80070BBC 3C058014 */ lui $a1, %hi(D_8013C44C) # $a1, 0x8014
/* AE7D60 80070BC0 24A5C44C */ addiu $a1, %lo(D_8013C44C) # addiu $a1, $a1, -0x3bb4
/* AE7D64 80070BC4 11600009 */ beqz $t3, .L80070BEC
/* AE7D68 80070BC8 02002025 */ move $a0, $s0
/* AE7D6C 80070BCC 3C058014 */ lui $a1, %hi(D_8013C440) # $a1, 0x8014
/* AE7D70 80070BD0 3C068014 */ lui $a2, %hi(D_8013C444) # $a2, 0x8014
/* AE7D74 80070BD4 24C6C444 */ addiu $a2, %lo(D_8013C444) # addiu $a2, $a2, -0x3bbc
/* AE7D78 80070BD8 24A5C440 */ addiu $a1, %lo(D_8013C440) # addiu $a1, $a1, -0x3bc0
/* AE7D7C 80070BDC 0C03EF2D */ jal GfxPrint_Printf
/* AE7D80 80070BE0 02002025 */ move $a0, $s0
/* AE7D84 80070BE4 10000004 */ b .L80070BF8
/* AE7D88 80070BE8 00000000 */ nop
.L80070BEC:
/* AE7D8C 80070BEC 3C068014 */ lui $a2, %hi(D_8013C450) # $a2, 0x8014
/* AE7D90 80070BF0 0C03EF2D */ jal GfxPrint_Printf
/* AE7D94 80070BF4 24C6C450 */ addiu $a2, %lo(D_8013C450) # addiu $a2, $a2, -0x3bb0
.L80070BF8:
/* AE7D98 80070BF8 0C03EF19 */ jal GfxPrint_Close
/* AE7D9C 80070BFC 02002025 */ move $a0, $s0
/* AE7DA0 80070C00 8FAC006C */ lw $t4, 0x6c($sp)
/* AE7DA4 80070C04 02002025 */ move $a0, $s0
/* AE7DA8 80070C08 0C03EF05 */ jal GfxPrint_Destroy
/* AE7DAC 80070C0C AD820000 */ sw $v0, ($t4)
/* AE7DB0 80070C10 8FBF0024 */ lw $ra, 0x24($sp)
/* AE7DB4 80070C14 8FB00020 */ lw $s0, 0x20($sp)
/* AE7DB8 80070C18 27BD0068 */ addiu $sp, $sp, 0x68
/* AE7DBC 80070C1C 03E00008 */ jr $ra
/* AE7DC0 80070C20 00000000 */ nop

View file

@ -1,610 +0,0 @@
.rdata
glabel D_8013C55C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C56C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C57C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C58C
.asciz "../z_kankyo.c"
.balign 4
.late_rodata
glabel D_8013C7AC
.float 0.8
glabel D_8013C7B0
.float 0.8
glabel D_8013C7B4
.float 0.8
.text
glabel func_800730DC
/* AEA27C 800730DC 27BDFF78 */ addiu $sp, $sp, -0x88
/* AEA280 800730E0 AFBF0024 */ sw $ra, 0x24($sp)
/* AEA284 800730E4 AFB10020 */ sw $s1, 0x20($sp)
/* AEA288 800730E8 AFB0001C */ sw $s0, 0x1c($sp)
/* AEA28C 800730EC 8C850000 */ lw $a1, ($a0)
/* AEA290 800730F0 00808825 */ move $s1, $a0
/* AEA294 800730F4 3C068014 */ lui $a2, %hi(D_8013C55C) # $a2, 0x8014
/* AEA298 800730F8 24C6C55C */ addiu $a2, %lo(D_8013C55C) # addiu $a2, $a2, -0x3aa4
/* AEA29C 800730FC 27A40060 */ addiu $a0, $sp, 0x60
/* AEA2A0 80073100 240708DA */ li $a3, 2266
/* AEA2A4 80073104 0C031AB1 */ jal Graph_OpenDisps
/* AEA2A8 80073108 00A08025 */ move $s0, $a1
/* AEA2AC 8007310C 922E1D6C */ lbu $t6, 0x1d6c($s1)
/* AEA2B0 80073110 3C028016 */ lui $v0, %hi(gSaveContext+0xc)
/* AEA2B4 80073114 11C0004C */ beqz $t6, .L80073248
/* AEA2B8 80073118 00000000 */ nop
/* AEA2BC 8007311C 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AEA2C0 80073120 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AEA2C4 80073124 24018000 */ li $at, -32768
/* AEA2C8 80073128 00412021 */ addu $a0, $v0, $at
/* AEA2CC 8007312C 00042400 */ sll $a0, $a0, 0x10
/* AEA2D0 80073130 0C01DE1C */ jal Math_SinS
/* AEA2D4 80073134 00042403 */ sra $a0, $a0, 0x10
/* AEA2D8 80073138 3C018014 */ lui $at, %hi(D_8013C7AC)
/* AEA2DC 8007313C C422C7AC */ lwc1 $f2, %lo(D_8013C7AC)($at)
/* AEA2E0 80073140 3C010001 */ lui $at, (0x00010A28 >> 16) # lui $at, 1
/* AEA2E4 80073144 34210A28 */ ori $at, (0x00010A28 & 0xFFFF) # ori $at, $at, 0xa28
/* AEA2E8 80073148 02212021 */ addu $a0, $s1, $at
/* AEA2EC 8007314C 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AEA2F0 80073150 44812000 */ mtc1 $at, $f4
/* AEA2F4 80073154 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA2F8 80073158 44815000 */ mtc1 $at, $f10
/* AEA2FC 8007315C 46040182 */ mul.s $f6, $f0, $f4
/* AEA300 80073160 44071000 */ mfc1 $a3, $f2
/* AEA304 80073164 3C063F80 */ lui $a2, 0x3f80
/* AEA308 80073168 E7A20010 */ swc1 $f2, 0x10($sp)
/* AEA30C 8007316C 46003207 */ neg.s $f8, $f6
/* AEA310 80073170 460A4102 */ mul.s $f4, $f8, $f10
/* AEA314 80073174 44052000 */ mfc1 $a1, $f4
/* AEA318 80073178 0C01E0C4 */ jal Math_SmoothStepToF
/* AEA31C 8007317C 00000000 */ nop
/* AEA320 80073180 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AEA324 80073184 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AEA328 80073188 24018000 */ li $at, -32768
/* AEA32C 8007318C 00412021 */ addu $a0, $v0, $at
/* AEA330 80073190 00042400 */ sll $a0, $a0, 0x10
/* AEA334 80073194 0C01DE0D */ jal Math_CosS
/* AEA338 80073198 00042403 */ sra $a0, $a0, 0x10
/* AEA33C 8007319C 3C018014 */ lui $at, %hi(D_8013C7B0)
/* AEA340 800731A0 C422C7B0 */ lwc1 $f2, %lo(D_8013C7B0)($at)
/* AEA344 800731A4 3C010001 */ lui $at, (0x00010A2C >> 16) # lui $at, 1
/* AEA348 800731A8 34210A2C */ ori $at, (0x00010A2C & 0xFFFF) # ori $at, $at, 0xa2c
/* AEA34C 800731AC 02212021 */ addu $a0, $s1, $at
/* AEA350 800731B0 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AEA354 800731B4 44813000 */ mtc1 $at, $f6
/* AEA358 800731B8 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA35C 800731BC 44815000 */ mtc1 $at, $f10
/* AEA360 800731C0 46060202 */ mul.s $f8, $f0, $f6
/* AEA364 800731C4 44071000 */ mfc1 $a3, $f2
/* AEA368 800731C8 AFA40030 */ sw $a0, 0x30($sp)
/* AEA36C 800731CC 3C063F80 */ lui $a2, 0x3f80
/* AEA370 800731D0 E7A20010 */ swc1 $f2, 0x10($sp)
/* AEA374 800731D4 460A4102 */ mul.s $f4, $f8, $f10
/* AEA378 800731D8 44052000 */ mfc1 $a1, $f4
/* AEA37C 800731DC 0C01E0C4 */ jal Math_SmoothStepToF
/* AEA380 800731E0 00000000 */ nop
/* AEA384 800731E4 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AEA388 800731E8 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AEA38C 800731EC 24018000 */ li $at, -32768
/* AEA390 800731F0 00412021 */ addu $a0, $v0, $at
/* AEA394 800731F4 00042400 */ sll $a0, $a0, 0x10
/* AEA398 800731F8 0C01DE0D */ jal Math_CosS
/* AEA39C 800731FC 00042403 */ sra $a0, $a0, 0x10
/* AEA3A0 80073200 3C0141A0 */ li $at, 0x41A00000 # 0.000000
/* AEA3A4 80073204 44813000 */ mtc1 $at, $f6
/* AEA3A8 80073208 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA3AC 8007320C 44815000 */ mtc1 $at, $f10
/* AEA3B0 80073210 46060202 */ mul.s $f8, $f0, $f6
/* AEA3B4 80073214 3C018014 */ lui $at, %hi(D_8013C7B4)
/* AEA3B8 80073218 C426C7B4 */ lwc1 $f6, %lo(D_8013C7B4)($at)
/* AEA3BC 8007321C 3C073F4C */ lui $a3, (0x3F4CCCCD >> 16) # lui $a3, 0x3f4c
/* AEA3C0 80073220 34E7CCCD */ ori $a3, (0x3F4CCCCD & 0xFFFF) # ori $a3, $a3, 0xcccd
/* AEA3C4 80073224 8FA40030 */ lw $a0, 0x30($sp)
/* AEA3C8 80073228 3C063F80 */ lui $a2, 0x3f80
/* AEA3CC 8007322C 460A4102 */ mul.s $f4, $f8, $f10
/* AEA3D0 80073230 E7A60010 */ swc1 $f6, 0x10($sp)
/* AEA3D4 80073234 44052000 */ mfc1 $a1, $f4
/* AEA3D8 80073238 0C01E0C4 */ jal Math_SmoothStepToF
/* AEA3DC 8007323C 00000000 */ nop
/* AEA3E0 80073240 10000031 */ b .L80073308
/* AEA3E4 80073244 00000000 */ nop
.L80073248:
/* AEA3E8 80073248 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AEA3EC 8007324C 24018000 */ li $at, -32768
/* AEA3F0 80073250 00412021 */ addu $a0, $v0, $at
/* AEA3F4 80073254 00042400 */ sll $a0, $a0, 0x10
/* AEA3F8 80073258 0C01DE1C */ jal Math_SinS
/* AEA3FC 8007325C 00042403 */ sra $a0, $a0, 0x10
/* AEA400 80073260 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AEA404 80073264 44814000 */ mtc1 $at, $f8
/* AEA408 80073268 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA40C 8007326C 44813000 */ mtc1 $at, $f6
/* AEA410 80073270 46080282 */ mul.s $f10, $f0, $f8
/* AEA414 80073274 3C010001 */ lui $at, 1
/* AEA418 80073278 00310821 */ addu $at, $at, $s1
/* AEA41C 8007327C 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AEA420 80073280 46005107 */ neg.s $f4, $f10
/* AEA424 80073284 46062202 */ mul.s $f8, $f4, $f6
/* AEA428 80073288 E4280A28 */ swc1 $f8, 0xa28($at)
/* AEA42C 8007328C 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AEA430 80073290 24018000 */ li $at, -32768
/* AEA434 80073294 00412021 */ addu $a0, $v0, $at
/* AEA438 80073298 00042400 */ sll $a0, $a0, 0x10
/* AEA43C 8007329C 0C01DE0D */ jal Math_CosS
/* AEA440 800732A0 00042403 */ sra $a0, $a0, 0x10
/* AEA444 800732A4 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AEA448 800732A8 44815000 */ mtc1 $at, $f10
/* AEA44C 800732AC 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA450 800732B0 44813000 */ mtc1 $at, $f6
/* AEA454 800732B4 460A0102 */ mul.s $f4, $f0, $f10
/* AEA458 800732B8 3C010001 */ lui $at, 1
/* AEA45C 800732BC 00310821 */ addu $at, $at, $s1
/* AEA460 800732C0 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AEA464 800732C4 46062202 */ mul.s $f8, $f4, $f6
/* AEA468 800732C8 E4280A2C */ swc1 $f8, 0xa2c($at)
/* AEA46C 800732CC 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AEA470 800732D0 24018000 */ li $at, -32768
/* AEA474 800732D4 00412021 */ addu $a0, $v0, $at
/* AEA478 800732D8 00042400 */ sll $a0, $a0, 0x10
/* AEA47C 800732DC 0C01DE0D */ jal Math_CosS
/* AEA480 800732E0 00042403 */ sra $a0, $a0, 0x10
/* AEA484 800732E4 3C0141A0 */ li $at, 0x41A00000 # 0.000000
/* AEA488 800732E8 44815000 */ mtc1 $at, $f10
/* AEA48C 800732EC 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA490 800732F0 44813000 */ mtc1 $at, $f6
/* AEA494 800732F4 460A0102 */ mul.s $f4, $f0, $f10
/* AEA498 800732F8 3C010001 */ lui $at, 1
/* AEA49C 800732FC 00310821 */ addu $at, $at, $s1
/* AEA4A0 80073300 46062202 */ mul.s $f8, $f4, $f6
/* AEA4A4 80073304 E4280A30 */ swc1 $f8, 0xa30($at)
.L80073308:
/* AEA4A8 80073308 3C028016 */ lui $v0, %hi(gSaveContext) # $v0, 0x8016
/* AEA4AC 8007330C 2442E660 */ addiu $v0, %lo(gSaveContext) # addiu $v0, $v0, -0x19a0
/* AEA4B0 80073310 8C4F0000 */ lw $t7, ($v0)
/* AEA4B4 80073314 240100CD */ li $at, 205
/* AEA4B8 80073318 55E10006 */ bnel $t7, $at, .L80073334
/* AEA4BC 8007331C C63200E8 */ lwc1 $f18, 0xe8($s1)
/* AEA4C0 80073320 8C581360 */ lw $t8, 0x1360($v0)
/* AEA4C4 80073324 24010005 */ li $at, 5
/* AEA4C8 80073328 1301018C */ beq $t8, $at, .L8007395C
/* AEA4CC 8007332C 00000000 */ nop
/* AEA4D0 80073330 C63200E8 */ lwc1 $f18, 0xe8($s1)
.L80073334:
/* AEA4D4 80073334 C63000E0 */ lwc1 $f16, 0xe0($s1)
/* AEA4D8 80073338 C62A00E4 */ lwc1 $f10, 0xe4($s1)
/* AEA4DC 8007333C 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEA4E0 80073340 02214021 */ addu $t0, $s1, $at
/* AEA4E4 80073344 C5080A30 */ lwc1 $f8, 0xa30($t0)
/* AEA4E8 80073348 C5060A28 */ lwc1 $f6, 0xa28($t0)
/* AEA4EC 8007334C C5040A2C */ lwc1 $f4, 0xa2c($t0)
/* AEA4F0 80073350 46089200 */ add.s $f8, $f18, $f8
/* AEA4F4 80073354 00003825 */ move $a3, $zero
/* AEA4F8 80073358 AFA80030 */ sw $t0, 0x30($sp)
/* AEA4FC 8007335C 46068300 */ add.s $f12, $f16, $f6
/* AEA500 80073360 44064000 */ mfc1 $a2, $f8
/* AEA504 80073364 0C034261 */ jal Matrix_Translate
/* AEA508 80073368 46045380 */ add.s $f14, $f10, $f4
/* AEA50C 8007336C 8FA80030 */ lw $t0, 0x30($sp)
/* AEA510 80073370 3C01437F */ li $at, 0x437F0000 # 0.000000
/* AEA514 80073374 44818000 */ mtc1 $at, $f16
/* AEA518 80073378 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA51C 8007337C 44815000 */ mtc1 $at, $f10
/* AEA520 80073380 C5080A2C */ lwc1 $f8, 0xa2c($t0)
/* AEA524 80073384 3C0142A0 */ li $at, 0x42A00000 # 0.000000
/* AEA528 80073388 44809000 */ mtc1 $zero, $f18
/* AEA52C 8007338C 460A4103 */ div.s $f4, $f8, $f10
/* AEA530 80073390 44814000 */ mtc1 $at, $f8
/* AEA534 80073394 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEA538 80073398 44815000 */ mtc1 $at, $f10
/* AEA53C 8007339C E7A4007C */ swc1 $f4, 0x7c($sp)
/* AEA540 800733A0 C7A6007C */ lwc1 $f6, 0x7c($sp)
/* AEA544 800733A4 46083083 */ div.s $f2, $f6, $f8
/* AEA548 800733A8 46101302 */ mul.s $f12, $f2, $f16
/* AEA54C 800733AC 4612603C */ c.lt.s $f12, $f18
/* AEA550 800733B0 00000000 */ nop
/* AEA554 800733B4 45020003 */ bc1fl .L800733C4
/* AEA558 800733B8 460C803C */ c.lt.s $f16, $f12
/* AEA55C 800733BC 46009306 */ mov.s $f12, $f18
/* AEA560 800733C0 460C803C */ c.lt.s $f16, $f12
.L800733C4:
/* AEA564 800733C4 00000000 */ nop
/* AEA568 800733C8 45020003 */ bc1fl .L800733D8
/* AEA56C 800733CC 4612103C */ c.lt.s $f2, $f18
/* AEA570 800733D0 46008306 */ mov.s $f12, $f16
/* AEA574 800733D4 4612103C */ c.lt.s $f2, $f18
.L800733D8:
/* AEA578 800733D8 46001006 */ mov.s $f0, $f2
/* AEA57C 800733DC 460C8301 */ sub.s $f12, $f16, $f12
/* AEA580 800733E0 45020003 */ bc1fl .L800733F0
/* AEA584 800733E4 4600503C */ c.lt.s $f10, $f0
/* AEA588 800733E8 46009006 */ mov.s $f0, $f18
/* AEA58C 800733EC 4600503C */ c.lt.s $f10, $f0
.L800733F0:
/* AEA590 800733F0 00000000 */ nop
/* AEA594 800733F4 45000003 */ bc1f .L80073404
/* AEA598 800733F8 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEA59C 800733FC 44810000 */ mtc1 $at, $f0
/* AEA5A0 80073400 00000000 */ nop
.L80073404:
/* AEA5A4 80073404 3C014296 */ li $at, 0x42960000 # 0.000000
/* AEA5A8 80073408 44812000 */ mtc1 $at, $f4
/* AEA5AC 8007340C 240B0001 */ li $t3, 1
/* AEA5B0 80073410 8E0302C0 */ lw $v1, 0x2c0($s0)
/* AEA5B4 80073414 46040182 */ mul.s $f6, $f0, $f4
/* AEA5B8 80073418 3C09FA00 */ lui $t1, 0xfa00
/* AEA5BC 8007341C 24790008 */ addiu $t9, $v1, 8
/* AEA5C0 80073420 AE1902C0 */ sw $t9, 0x2c0($s0)
/* AEA5C4 80073424 3C05FF00 */ lui $a1, 0xff00
/* AEA5C8 80073428 AC690000 */ sw $t1, ($v1)
/* AEA5CC 8007342C 444AF800 */ cfc1 $t2, $31
/* AEA5D0 80073430 44CBF800 */ ctc1 $t3, $31
/* AEA5D4 80073434 00000000 */ nop
/* AEA5D8 80073438 46003224 */ cvt.w.s $f8, $f6
/* AEA5DC 8007343C 444BF800 */ cfc1 $t3, $31
/* AEA5E0 80073440 00000000 */ nop
/* AEA5E4 80073444 316B0078 */ andi $t3, $t3, 0x78
/* AEA5E8 80073448 11600012 */ beqz $t3, .L80073494
/* AEA5EC 8007344C 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEA5F0 80073450 44814000 */ mtc1 $at, $f8
/* AEA5F4 80073454 240B0001 */ li $t3, 1
/* AEA5F8 80073458 46083201 */ sub.s $f8, $f6, $f8
/* AEA5FC 8007345C 44CBF800 */ ctc1 $t3, $31
/* AEA600 80073460 00000000 */ nop
/* AEA604 80073464 46004224 */ cvt.w.s $f8, $f8
/* AEA608 80073468 444BF800 */ cfc1 $t3, $31
/* AEA60C 8007346C 00000000 */ nop
/* AEA610 80073470 316B0078 */ andi $t3, $t3, 0x78
/* AEA614 80073474 15600005 */ bnez $t3, .L8007348C
/* AEA618 80073478 00000000 */ nop
/* AEA61C 8007347C 440B4000 */ mfc1 $t3, $f8
/* AEA620 80073480 3C018000 */ lui $at, 0x8000
/* AEA624 80073484 10000007 */ b .L800734A4
/* AEA628 80073488 01615825 */ or $t3, $t3, $at
.L8007348C:
/* AEA62C 8007348C 10000005 */ b .L800734A4
/* AEA630 80073490 240BFFFF */ li $t3, -1
.L80073494:
/* AEA634 80073494 440B4000 */ mfc1 $t3, $f8
/* AEA638 80073498 00000000 */ nop
/* AEA63C 8007349C 0560FFFB */ bltz $t3, .L8007348C
/* AEA640 800734A0 00000000 */ nop
.L800734A4:
/* AEA644 800734A4 3C01431B */ li $at, 0x431B0000 # 0.000000
/* AEA648 800734A8 44CAF800 */ ctc1 $t2, $31
/* AEA64C 800734AC 44815000 */ mtc1 $at, $f10
/* AEA650 800734B0 24090001 */ li $t1, 1
/* AEA654 800734B4 256D00B4 */ addiu $t5, $t3, 0xb4
/* AEA658 800734B8 460A0102 */ mul.s $f4, $f0, $f10
/* AEA65C 800734BC 31AE00FF */ andi $t6, $t5, 0xff
/* AEA660 800734C0 000E7C00 */ sll $t7, $t6, 0x10
/* AEA664 800734C4 01E5C025 */ or $t8, $t7, $a1
/* AEA668 800734C8 4459F800 */ cfc1 $t9, $31
/* AEA66C 800734CC 44C9F800 */ ctc1 $t1, $31
/* AEA670 800734D0 00000000 */ nop
/* AEA674 800734D4 460021A4 */ cvt.w.s $f6, $f4
/* AEA678 800734D8 4449F800 */ cfc1 $t1, $31
/* AEA67C 800734DC 00000000 */ nop
/* AEA680 800734E0 31290078 */ andi $t1, $t1, 0x78
/* AEA684 800734E4 11200012 */ beqz $t1, .L80073530
/* AEA688 800734E8 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEA68C 800734EC 44813000 */ mtc1 $at, $f6
/* AEA690 800734F0 24090001 */ li $t1, 1
/* AEA694 800734F4 46062181 */ sub.s $f6, $f4, $f6
/* AEA698 800734F8 44C9F800 */ ctc1 $t1, $31
/* AEA69C 800734FC 00000000 */ nop
/* AEA6A0 80073500 460031A4 */ cvt.w.s $f6, $f6
/* AEA6A4 80073504 4449F800 */ cfc1 $t1, $31
/* AEA6A8 80073508 00000000 */ nop
/* AEA6AC 8007350C 31290078 */ andi $t1, $t1, 0x78
/* AEA6B0 80073510 15200005 */ bnez $t1, .L80073528
/* AEA6B4 80073514 00000000 */ nop
/* AEA6B8 80073518 44093000 */ mfc1 $t1, $f6
/* AEA6BC 8007351C 3C018000 */ lui $at, 0x8000
/* AEA6C0 80073520 10000007 */ b .L80073540
/* AEA6C4 80073524 01214825 */ or $t1, $t1, $at
.L80073528:
/* AEA6C8 80073528 10000005 */ b .L80073540
/* AEA6CC 8007352C 2409FFFF */ li $t1, -1
.L80073530:
/* AEA6D0 80073530 44093000 */ mfc1 $t1, $f6
/* AEA6D4 80073534 00000000 */ nop
/* AEA6D8 80073538 0520FFFB */ bltz $t1, .L80073528
/* AEA6DC 8007353C 00000000 */ nop
.L80073540:
/* AEA6E0 80073540 44D9F800 */ ctc1 $t9, $31
/* AEA6E4 80073544 01205025 */ move $t2, $t1
/* AEA6E8 80073548 254B0064 */ addiu $t3, $t2, 0x64
/* AEA6EC 8007354C 46100202 */ mul.s $f8, $f0, $f16
/* AEA6F0 80073550 24040001 */ li $a0, 1
/* AEA6F4 80073554 316C00FF */ andi $t4, $t3, 0xff
/* AEA6F8 80073558 000C6A00 */ sll $t5, $t4, 8
/* AEA6FC 8007355C 030D7025 */ or $t6, $t8, $t5
/* AEA700 80073560 35CF00FF */ ori $t7, $t6, 0xff
/* AEA704 80073564 AC6F0004 */ sw $t7, 4($v1)
/* AEA708 80073568 444AF800 */ cfc1 $t2, $31
/* AEA70C 8007356C 44C4F800 */ ctc1 $a0, $31
/* AEA710 80073570 8E0302C0 */ lw $v1, 0x2c0($s0)
/* AEA714 80073574 3C09FB00 */ lui $t1, 0xfb00
/* AEA718 80073578 460042A4 */ cvt.w.s $f10, $f8
/* AEA71C 8007357C 24790008 */ addiu $t9, $v1, 8
/* AEA720 80073580 AE1902C0 */ sw $t9, 0x2c0($s0)
/* AEA724 80073584 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEA728 80073588 4444F800 */ cfc1 $a0, $31
/* AEA72C 8007358C AC690000 */ sw $t1, ($v1)
/* AEA730 80073590 30840078 */ andi $a0, $a0, 0x78
/* AEA734 80073594 50800013 */ beql $a0, $zero, .L800735E4
/* AEA738 80073598 44045000 */ mfc1 $a0, $f10
/* AEA73C 8007359C 44815000 */ mtc1 $at, $f10
/* AEA740 800735A0 24040001 */ li $a0, 1
/* AEA744 800735A4 460A4281 */ sub.s $f10, $f8, $f10
/* AEA748 800735A8 44C4F800 */ ctc1 $a0, $31
/* AEA74C 800735AC 00000000 */ nop
/* AEA750 800735B0 460052A4 */ cvt.w.s $f10, $f10
/* AEA754 800735B4 4444F800 */ cfc1 $a0, $31
/* AEA758 800735B8 00000000 */ nop
/* AEA75C 800735BC 30840078 */ andi $a0, $a0, 0x78
/* AEA760 800735C0 14800005 */ bnez $a0, .L800735D8
/* AEA764 800735C4 00000000 */ nop
/* AEA768 800735C8 44045000 */ mfc1 $a0, $f10
/* AEA76C 800735CC 3C018000 */ lui $at, 0x8000
/* AEA770 800735D0 10000007 */ b .L800735F0
/* AEA774 800735D4 00812025 */ or $a0, $a0, $at
.L800735D8:
/* AEA778 800735D8 10000005 */ b .L800735F0
/* AEA77C 800735DC 2404FFFF */ li $a0, -1
/* AEA780 800735E0 44045000 */ mfc1 $a0, $f10
.L800735E4:
/* AEA784 800735E4 00000000 */ nop
/* AEA788 800735E8 0480FFFB */ bltz $a0, .L800735D8
/* AEA78C 800735EC 00000000 */ nop
.L800735F0:
/* AEA790 800735F0 44CAF800 */ ctc1 $t2, $31
/* AEA794 800735F4 240F0001 */ li $t7, 1
/* AEA798 800735F8 308400FF */ andi $a0, $a0, 0xff
/* AEA79C 800735FC 00045C00 */ sll $t3, $a0, 0x10
/* AEA7A0 80073600 444EF800 */ cfc1 $t6, $31
/* AEA7A4 80073604 44CFF800 */ ctc1 $t7, $31
/* AEA7A8 80073608 01656025 */ or $t4, $t3, $a1
/* AEA7AC 8007360C 0004C200 */ sll $t8, $a0, 8
/* AEA7B0 80073610 46006124 */ cvt.w.s $f4, $f12
/* AEA7B4 80073614 01986825 */ or $t5, $t4, $t8
/* AEA7B8 80073618 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEA7BC 8007361C 444FF800 */ cfc1 $t7, $31
/* AEA7C0 80073620 00000000 */ nop
/* AEA7C4 80073624 31EF0078 */ andi $t7, $t7, 0x78
/* AEA7C8 80073628 51E00013 */ beql $t7, $zero, .L80073678
/* AEA7CC 8007362C 440F2000 */ mfc1 $t7, $f4
/* AEA7D0 80073630 44812000 */ mtc1 $at, $f4
/* AEA7D4 80073634 240F0001 */ li $t7, 1
/* AEA7D8 80073638 46046101 */ sub.s $f4, $f12, $f4
/* AEA7DC 8007363C 44CFF800 */ ctc1 $t7, $31
/* AEA7E0 80073640 00000000 */ nop
/* AEA7E4 80073644 46002124 */ cvt.w.s $f4, $f4
/* AEA7E8 80073648 444FF800 */ cfc1 $t7, $31
/* AEA7EC 8007364C 00000000 */ nop
/* AEA7F0 80073650 31EF0078 */ andi $t7, $t7, 0x78
/* AEA7F4 80073654 15E00005 */ bnez $t7, .L8007366C
/* AEA7F8 80073658 00000000 */ nop
/* AEA7FC 8007365C 440F2000 */ mfc1 $t7, $f4
/* AEA800 80073660 3C018000 */ lui $at, 0x8000
/* AEA804 80073664 10000007 */ b .L80073684
/* AEA808 80073668 01E17825 */ or $t7, $t7, $at
.L8007366C:
/* AEA80C 8007366C 10000005 */ b .L80073684
/* AEA810 80073670 240FFFFF */ li $t7, -1
/* AEA814 80073674 440F2000 */ mfc1 $t7, $f4
.L80073678:
/* AEA818 80073678 00000000 */ nop
/* AEA81C 8007367C 05E0FFFB */ bltz $t7, .L8007366C
/* AEA820 80073680 00000000 */ nop
.L80073684:
/* AEA824 80073684 44CEF800 */ ctc1 $t6, $31
/* AEA828 80073688 3C014120 */ li $at, 0x41200000 # 0.000000
/* AEA82C 8007368C 44814000 */ mtc1 $at, $f8
/* AEA830 80073690 46000180 */ add.s $f6, $f0, $f0
/* AEA834 80073694 31F900FF */ andi $t9, $t7, 0xff
/* AEA838 80073698 01B94825 */ or $t1, $t5, $t9
/* AEA83C 8007369C AC690004 */ sw $t1, 4($v1)
/* AEA840 800736A0 46083300 */ add.s $f12, $f6, $f8
/* AEA844 800736A4 AFA80030 */ sw $t0, 0x30($sp)
/* AEA848 800736A8 24070001 */ li $a3, 1
/* AEA84C 800736AC 44066000 */ mfc1 $a2, $f12
/* AEA850 800736B0 0C0342A3 */ jal Matrix_Scale
/* AEA854 800736B4 46006386 */ mov.s $f14, $f12
/* AEA858 800736B8 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AEA85C 800736BC 8FA80030 */ lw $t0, 0x30($sp)
/* AEA860 800736C0 3C0BDA38 */ lui $t3, (0xDA380003 >> 16) # lui $t3, 0xda38
/* AEA864 800736C4 244A0008 */ addiu $t2, $v0, 8
/* AEA868 800736C8 AE0A02C0 */ sw $t2, 0x2c0($s0)
/* AEA86C 800736CC 356B0003 */ ori $t3, (0xDA380003 & 0xFFFF) # ori $t3, $t3, 3
/* AEA870 800736D0 AC4B0000 */ sw $t3, ($v0)
/* AEA874 800736D4 8E240000 */ lw $a0, ($s1)
/* AEA878 800736D8 3C058014 */ lui $a1, %hi(D_8013C56C) # $a1, 0x8014
/* AEA87C 800736DC 24A5C56C */ addiu $a1, %lo(D_8013C56C) # addiu $a1, $a1, -0x3a94
/* AEA880 800736E0 2406093C */ li $a2, 2364
/* AEA884 800736E4 AFA20054 */ sw $v0, 0x54($sp)
/* AEA888 800736E8 0C0346A2 */ jal Matrix_NewMtx
/* AEA88C 800736EC AFA80030 */ sw $t0, 0x30($sp)
/* AEA890 800736F0 8FA30054 */ lw $v1, 0x54($sp)
/* AEA894 800736F4 8FA80030 */ lw $t0, 0x30($sp)
/* AEA898 800736F8 AC620004 */ sw $v0, 4($v1)
/* AEA89C 800736FC 8E240000 */ lw $a0, ($s1)
/* AEA8A0 80073700 0C024EB4 */ jal func_80093AD0
/* AEA8A4 80073704 AFA80030 */ sw $t0, 0x30($sp)
/* AEA8A8 80073708 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AEA8AC 8007370C 8FA80030 */ lw $t0, 0x30($sp)
/* AEA8B0 80073710 3C0E0405 */ li $t6, 0x04050000 # 0.000000
/* AEA8B4 80073714 244C0008 */ addiu $t4, $v0, 8
/* AEA8B8 80073718 AE0C02C0 */ sw $t4, 0x2c0($s0)
/* AEA8BC 8007371C 25CED1C0 */ addiu $t6, %lo(gSunDL) # addiu $t6, $t6, -0x2e40
/* AEA8C0 80073720 3C18DE00 */ li $t8, 0xDE000000 # 0.000000
/* AEA8C4 80073724 AC580000 */ sw $t8, ($v0)
/* AEA8C8 80073728 AC4E0004 */ sw $t6, 4($v0)
/* AEA8CC 8007372C C62A00E0 */ lwc1 $f10, 0xe0($s1)
/* AEA8D0 80073730 C5040A28 */ lwc1 $f4, 0xa28($t0)
/* AEA8D4 80073734 C62600E4 */ lwc1 $f6, 0xe4($s1)
/* AEA8D8 80073738 C5080A2C */ lwc1 $f8, 0xa2c($t0)
/* AEA8DC 8007373C 46045301 */ sub.s $f12, $f10, $f4
/* AEA8E0 80073740 C62A00E8 */ lwc1 $f10, 0xe8($s1)
/* AEA8E4 80073744 C5040A30 */ lwc1 $f4, 0xa30($t0)
/* AEA8E8 80073748 46083381 */ sub.s $f14, $f6, $f8
/* AEA8EC 8007374C 00003825 */ move $a3, $zero
/* AEA8F0 80073750 46045181 */ sub.s $f6, $f10, $f4
/* AEA8F4 80073754 44063000 */ mfc1 $a2, $f6
/* AEA8F8 80073758 0C034261 */ jal Matrix_Translate
/* AEA8FC 8007375C 00000000 */ nop
/* AEA900 80073760 C7B0007C */ lwc1 $f16, 0x7c($sp)
/* AEA904 80073764 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AEA908 80073768 44814000 */ mtc1 $at, $f8
/* AEA90C 8007376C 46008407 */ neg.s $f16, $f16
/* AEA910 80073770 44809000 */ mtc1 $zero, $f18
/* AEA914 80073774 46088003 */ div.s $f0, $f16, $f8
/* AEA918 80073778 3C01C170 */ li $at, 0xC1700000 # 0.000000
/* AEA91C 8007377C 44815000 */ mtc1 $at, $f10
/* AEA920 80073780 4612003C */ c.lt.s $f0, $f18
/* AEA924 80073784 00000000 */ nop
/* AEA928 80073788 45000002 */ bc1f .L80073794
/* AEA92C 8007378C 00000000 */ nop
/* AEA930 80073790 46009006 */ mov.s $f0, $f18
.L80073794:
/* AEA934 80073794 46005102 */ mul.s $f4, $f10, $f0
/* AEA938 80073798 3C0141C8 */ li $at, 0x41C80000 # 0.000000
/* AEA93C 8007379C 44813000 */ mtc1 $at, $f6
/* AEA940 800737A0 24070001 */ li $a3, 1
/* AEA944 800737A4 E7B00030 */ swc1 $f16, 0x30($sp)
/* AEA948 800737A8 46062300 */ add.s $f12, $f4, $f6
/* AEA94C 800737AC 44066000 */ mfc1 $a2, $f12
/* AEA950 800737B0 0C0342A3 */ jal Matrix_Scale
/* AEA954 800737B4 46006386 */ mov.s $f14, $f12
/* AEA958 800737B8 3C0142A0 */ li $at, 0x42A00000 # 0.000000
/* AEA95C 800737BC C7B00030 */ lwc1 $f16, 0x30($sp)
/* AEA960 800737C0 44814000 */ mtc1 $at, $f8
/* AEA964 800737C4 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEA968 800737C8 44815000 */ mtc1 $at, $f10
/* AEA96C 800737CC 46088083 */ div.s $f2, $f16, $f8
/* AEA970 800737D0 44809000 */ mtc1 $zero, $f18
/* AEA974 800737D4 3C0DDA38 */ lui $t5, (0xDA380003 >> 16) # lui $t5, 0xda38
/* AEA978 800737D8 3C013F80 */ lui $at, 0x3f80
/* AEA97C 800737DC 35AD0003 */ ori $t5, (0xDA380003 & 0xFFFF) # ori $t5, $t5, 3
/* AEA980 800737E0 3C058014 */ lui $a1, %hi(D_8013C57C) # $a1, 0x8014
/* AEA984 800737E4 4602503C */ c.lt.s $f10, $f2
/* AEA988 800737E8 00000000 */ nop
/* AEA98C 800737EC 45020004 */ bc1fl .L80073800
/* AEA990 800737F0 3C01437F */ li $at, 0x437F0000 # 0.000000
/* AEA994 800737F4 44811000 */ mtc1 $at, $f2
/* AEA998 800737F8 00000000 */ nop
/* AEA99C 800737FC 3C01437F */ li $at, 0x437F0000 # 0.000000
.L80073800:
/* AEA9A0 80073800 44812000 */ mtc1 $at, $f4
/* AEA9A4 80073804 00000000 */ nop
/* AEA9A8 80073808 46041002 */ mul.s $f0, $f2, $f4
/* AEA9AC 8007380C 4600903C */ c.lt.s $f18, $f0
/* AEA9B0 80073810 00000000 */ nop
/* AEA9B4 80073814 45000051 */ bc1f .L8007395C
/* AEA9B8 80073818 00000000 */ nop
/* AEA9BC 8007381C 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AEA9C0 80073820 24A5C57C */ addiu $a1, %lo(D_8013C57C) # addiu $a1, $a1, -0x3a84
/* AEA9C4 80073824 24060966 */ li $a2, 2406
/* AEA9C8 80073828 244F0008 */ addiu $t7, $v0, 8
/* AEA9CC 8007382C AE0F02C0 */ sw $t7, 0x2c0($s0)
/* AEA9D0 80073830 AC4D0000 */ sw $t5, ($v0)
/* AEA9D4 80073834 8E240000 */ lw $a0, ($s1)
/* AEA9D8 80073838 E7A00030 */ swc1 $f0, 0x30($sp)
/* AEA9DC 8007383C 0C0346A2 */ jal Matrix_NewMtx
/* AEA9E0 80073840 AFA2004C */ sw $v0, 0x4c($sp)
/* AEA9E4 80073844 8FA3004C */ lw $v1, 0x4c($sp)
/* AEA9E8 80073848 C7A00030 */ lwc1 $f0, 0x30($sp)
/* AEA9EC 8007384C AC620004 */ sw $v0, 4($v1)
/* AEA9F0 80073850 8E240000 */ lw $a0, ($s1)
/* AEA9F4 80073854 0C024E63 */ jal func_8009398C
/* AEA9F8 80073858 E7A00030 */ swc1 $f0, 0x30($sp)
/* AEA9FC 8007385C 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AEAA00 80073860 444CF800 */ cfc1 $t4, $31
/* AEAA04 80073864 24040001 */ li $a0, 1
/* AEAA08 80073868 44C4F800 */ ctc1 $a0, $31
/* AEAA0C 8007386C C7A00030 */ lwc1 $f0, 0x30($sp)
/* AEAA10 80073870 24590008 */ addiu $t9, $v0, 8
/* AEAA14 80073874 AE1902C0 */ sw $t9, 0x2c0($s0)
/* AEAA18 80073878 460001A4 */ cvt.w.s $f6, $f0
/* AEAA1C 8007387C 3C09E700 */ lui $t1, 0xe700
/* AEAA20 80073880 AC490000 */ sw $t1, ($v0)
/* AEAA24 80073884 AC400004 */ sw $zero, 4($v0)
/* AEAA28 80073888 8E0302C0 */ lw $v1, 0x2c0($s0)
/* AEAA2C 8007388C 4444F800 */ cfc1 $a0, $31
/* AEAA30 80073890 3C0BFA00 */ lui $t3, 0xfa00
/* AEAA34 80073894 246A0008 */ addiu $t2, $v1, 8
/* AEAA38 80073898 AE0A02C0 */ sw $t2, 0x2c0($s0)
/* AEAA3C 8007389C 30840078 */ andi $a0, $a0, 0x78
/* AEAA40 800738A0 10800013 */ beqz $a0, .L800738F0
/* AEAA44 800738A4 AC6B0000 */ sw $t3, ($v1)
/* AEAA48 800738A8 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEAA4C 800738AC 44813000 */ mtc1 $at, $f6
/* AEAA50 800738B0 24040001 */ li $a0, 1
/* AEAA54 800738B4 46060181 */ sub.s $f6, $f0, $f6
/* AEAA58 800738B8 44C4F800 */ ctc1 $a0, $31
/* AEAA5C 800738BC 00000000 */ nop
/* AEAA60 800738C0 460031A4 */ cvt.w.s $f6, $f6
/* AEAA64 800738C4 4444F800 */ cfc1 $a0, $31
/* AEAA68 800738C8 00000000 */ nop
/* AEAA6C 800738CC 30840078 */ andi $a0, $a0, 0x78
/* AEAA70 800738D0 14800005 */ bnez $a0, .L800738E8
/* AEAA74 800738D4 00000000 */ nop
/* AEAA78 800738D8 44043000 */ mfc1 $a0, $f6
/* AEAA7C 800738DC 3C018000 */ lui $at, 0x8000
/* AEAA80 800738E0 10000007 */ b .L80073900
/* AEAA84 800738E4 00812025 */ or $a0, $a0, $at
.L800738E8:
/* AEAA88 800738E8 10000005 */ b .L80073900
/* AEAA8C 800738EC 2404FFFF */ li $a0, -1
.L800738F0:
/* AEAA90 800738F0 44043000 */ mfc1 $a0, $f6
/* AEAA94 800738F4 00000000 */ nop
/* AEAA98 800738F8 0480FFFB */ bltz $a0, .L800738E8
/* AEAA9C 800738FC 00000000 */ nop
.L80073900:
/* AEAAA0 80073900 3C01F0FF */ lui $at, (0xF0FFB400 >> 16) # lui $at, 0xf0ff
/* AEAAA4 80073904 3421B400 */ ori $at, (0xF0FFB400 & 0xFFFF) # ori $at, $at, 0xb400
/* AEAAA8 80073908 308400FF */ andi $a0, $a0, 0xff
/* AEAAAC 8007390C 0081C025 */ or $t8, $a0, $at
/* AEAAB0 80073910 AC780004 */ sw $t8, 4($v1)
/* AEAAB4 80073914 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AEAAB8 80073918 3C015046 */ lui $at, (0x50461400 >> 16) # lui $at, 0x5046
/* AEAABC 8007391C 34211400 */ ori $at, (0x50461400 & 0xFFFF) # ori $at, $at, 0x1400
/* AEAAC0 80073920 244E0008 */ addiu $t6, $v0, 8
/* AEAAC4 80073924 AE0E02C0 */ sw $t6, 0x2c0($s0)
/* AEAAC8 80073928 00816825 */ or $t5, $a0, $at
/* AEAACC 8007392C 3C0FFB00 */ lui $t7, 0xfb00
/* AEAAD0 80073930 AC4F0000 */ sw $t7, ($v0)
/* AEAAD4 80073934 AC4D0004 */ sw $t5, 4($v0)
/* AEAAD8 80073938 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AEAADC 8007393C 3C0A0404 */ lui $t2, %hi(gMoonDL) # $t2, 0x404
/* AEAAE0 80073940 44CCF800 */ ctc1 $t4, $31
/* AEAAE4 80073944 24590008 */ addiu $t9, $v0, 8
/* AEAAE8 80073948 AE1902C0 */ sw $t9, 0x2c0($s0)
/* AEAAEC 8007394C 254A8F00 */ addiu $t2, %lo(gMoonDL) # addiu $t2, $t2, -0x7100
/* AEAAF0 80073950 3C09DE00 */ lui $t1, 0xde00
/* AEAAF4 80073954 AC490000 */ sw $t1, ($v0)
/* AEAAF8 80073958 AC4A0004 */ sw $t2, 4($v0)
.L8007395C:
/* AEAAFC 8007395C 3C068014 */ lui $a2, %hi(D_8013C58C) # $a2, 0x8014
/* AEAB00 80073960 24C6C58C */ addiu $a2, %lo(D_8013C58C) # addiu $a2, $a2, -0x3a74
/* AEAB04 80073964 27A40060 */ addiu $a0, $sp, 0x60
/* AEAB08 80073968 8E250000 */ lw $a1, ($s1)
/* AEAB0C 8007396C 0C031AD5 */ jal Graph_CloseDisps
/* AEAB10 80073970 2407097D */ li $a3, 2429
/* AEAB14 80073974 8FBF0024 */ lw $ra, 0x24($sp)
/* AEAB18 80073978 8FB0001C */ lw $s0, 0x1c($sp)
/* AEAB1C 8007397C 8FB10020 */ lw $s1, 0x20($sp)
/* AEAB20 80073980 03E00008 */ jr $ra
/* AEAB24 80073984 27BD0088 */ addiu $sp, $sp, 0x88

View file

@ -1,56 +0,0 @@
glabel func_80073988
/* AEAB28 80073988 27BDFFC0 */ addiu $sp, $sp, -0x40
/* AEAB2C 8007398C 3C010001 */ lui $at, 1
/* AEAB30 80073990 AFBF003C */ sw $ra, 0x3c($sp)
/* AEAB34 80073994 AFB00038 */ sw $s0, 0x38($sp)
/* AEAB38 80073998 AFA50044 */ sw $a1, 0x44($sp)
/* AEAB3C 8007399C AFA60048 */ sw $a2, 0x48($sp)
/* AEAB40 800739A0 AFA7004C */ sw $a3, 0x4c($sp)
/* AEAB44 800739A4 00811021 */ addu $v0, $a0, $at
/* AEAB48 800739A8 904E0B13 */ lbu $t6, 0xb13($v0)
/* AEAB4C 800739AC 00808025 */ move $s0, $a0
/* AEAB50 800739B0 55C00026 */ bnezl $t6, .L80073A4C
/* AEAB54 800739B4 8FBF003C */ lw $ra, 0x3c($sp)
/* AEAB58 800739B8 904F0A3B */ lbu $t7, 0xa3b($v0)
/* AEAB5C 800739BC 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AEAB60 800739C0 55E00022 */ bnezl $t7, .L80073A4C
/* AEAB64 800739C4 8FBF003C */ lw $ra, 0x3c($sp)
/* AEAB68 800739C8 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AEAB6C 800739CC 24018000 */ li $at, -32768
/* AEAB70 800739D0 00412021 */ addu $a0, $v0, $at
/* AEAB74 800739D4 00042400 */ sll $a0, $a0, 0x10
/* AEAB78 800739D8 0C01DE0D */ jal Math_CosS
/* AEAB7C 800739DC 00042403 */ sra $a0, $a0, 0x10
/* AEAB80 800739E0 27B80050 */ addiu $t8, $sp, 0x50
/* AEAB84 800739E4 8F080000 */ lw $t0, ($t8)
/* AEAB88 800739E8 3C010001 */ lui $at, (0x00010A24 >> 16) # lui $at, 1
/* AEAB8C 800739EC 34210A24 */ ori $at, (0x00010A24 & 0xFFFF) # ori $at, $at, 0xa24
/* AEAB90 800739F0 02012821 */ addu $a1, $s0, $at
/* AEAB94 800739F4 8E070000 */ lw $a3, ($s0)
/* AEAB98 800739F8 3C0142F0 */ li $at, 0x42F00000 # 0.000000
/* AEAB9C 800739FC AFA80010 */ sw $t0, 0x10($sp)
/* AEABA0 80073A00 8F190004 */ lw $t9, 4($t8)
/* AEABA4 80073A04 44812000 */ mtc1 $at, $f4
/* AEABA8 80073A08 240907D0 */ li $t1, 2000
/* AEABAC 80073A0C AFB90014 */ sw $t9, 0x14($sp)
/* AEABB0 80073A10 46040182 */ mul.s $f6, $f0, $f4
/* AEABB4 80073A14 8F080008 */ lw $t0, 8($t8)
/* AEABB8 80073A18 240A0172 */ li $t2, 370
/* AEABBC 80073A1C 240B0190 */ li $t3, 400
/* AEABC0 80073A20 240C0001 */ li $t4, 1
/* AEABC4 80073A24 AFAC002C */ sw $t4, 0x2c($sp)
/* AEABC8 80073A28 AFAB0028 */ sw $t3, 0x28($sp)
/* AEABCC 80073A2C AFAA0020 */ sw $t2, 0x20($sp)
/* AEABD0 80073A30 E7A60024 */ swc1 $f6, 0x24($sp)
/* AEABD4 80073A34 AFA9001C */ sw $t1, 0x1c($sp)
/* AEABD8 80073A38 02002025 */ move $a0, $s0
/* AEABDC 80073A3C 260600B8 */ addiu $a2, $s0, 0xb8
/* AEABE0 80073A40 0C01CE97 */ jal func_80073A5C
/* AEABE4 80073A44 AFA80018 */ sw $t0, 0x18($sp)
/* AEABE8 80073A48 8FBF003C */ lw $ra, 0x3c($sp)
.L80073A4C:
/* AEABEC 80073A4C 8FB00038 */ lw $s0, 0x38($sp)
/* AEABF0 80073A50 27BD0040 */ addiu $sp, $sp, 0x40
/* AEABF4 80073A54 03E00008 */ jr $ra
/* AEABF8 80073A58 00000000 */ nop

View file

@ -1,37 +0,0 @@
glabel func_80074CE8
/* AEBE88 80074CE8 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEBE8C 80074CEC 00811021 */ addu $v0, $a0, $at
/* AEBE90 80074CF0 904E0AE1 */ lbu $t6, 0xae1($v0)
/* AEBE94 80074CF4 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEBE98 80074CF8 10AE001A */ beq $a1, $t6, .L80074D64
/* AEBE9C 80074CFC 00000000 */ nop
/* AEBEA0 80074D00 C4440AFC */ lwc1 $f4, 0xafc($v0)
/* AEBEA4 80074D04 44813000 */ mtc1 $at, $f6
/* AEBEA8 80074D08 00000000 */ nop
/* AEBEAC 80074D0C 4604303E */ c.le.s $f6, $f4
/* AEBEB0 80074D10 00000000 */ nop
/* AEBEB4 80074D14 45000013 */ bc1f .L80074D64
/* AEBEB8 80074D18 00000000 */ nop
/* AEBEBC 80074D1C 904F0AE3 */ lbu $t7, 0xae3($v0)
/* AEBEC0 80074D20 240100FF */ li $at, 255
/* AEBEC4 80074D24 15E1000F */ bne $t7, $at, .L80074D64
/* AEBEC8 80074D28 2CA1001F */ sltiu $at, $a1, 0x1f
/* AEBECC 80074D2C 54200003 */ bnezl $at, .L80074D3C
/* AEBED0 80074D30 44804000 */ mtc1 $zero, $f8
/* AEBED4 80074D34 00002825 */ move $a1, $zero
/* AEBED8 80074D38 44804000 */ mtc1 $zero, $f8
.L80074D3C:
/* AEBEDC 80074D3C 3C010001 */ lui $at, 1
/* AEBEE0 80074D40 00240821 */ addu $at, $at, $a0
/* AEBEE4 80074D44 E4280AFC */ swc1 $f8, 0xafc($at)
/* AEBEE8 80074D48 90580AE1 */ lbu $t8, 0xae1($v0)
/* AEBEEC 80074D4C 3C010001 */ lui $at, 1
/* AEBEF0 80074D50 00240821 */ addu $at, $at, $a0
/* AEBEF4 80074D54 A0380AE2 */ sb $t8, 0xae2($at)
/* AEBEF8 80074D58 3C010001 */ lui $at, 1
/* AEBEFC 80074D5C 00240821 */ addu $at, $at, $a0
/* AEBF00 80074D60 A0250AE1 */ sb $a1, 0xae1($at)
.L80074D64:
/* AEBF04 80074D64 03E00008 */ jr $ra
/* AEBF08 80074D68 00000000 */ nop

View file

@ -1,195 +0,0 @@
.rdata
glabel D_8013C60C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C61C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C62C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C63C
.asciz "../z_kankyo.c"
.balign 4
.late_rodata
glabel D_8013C7F4
.float 0.02
.text
glabel func_80074D6C
/* AEBF0C 80074D6C 27BDFF98 */ addiu $sp, $sp, -0x68
/* AEBF10 80074D70 3C010001 */ lui $at, 1
/* AEBF14 80074D74 AFBF001C */ sw $ra, 0x1c($sp)
/* AEBF18 80074D78 AFB00018 */ sw $s0, 0x18($sp)
/* AEBF1C 80074D7C 00814821 */ addu $t1, $a0, $at
/* AEBF20 80074D80 91221E14 */ lbu $v0, 0x1e14($t1)
/* AEBF24 80074D84 00808025 */ move $s0, $a0
/* AEBF28 80074D88 50400005 */ beql $v0, $zero, .L80074DA0
/* AEBF2C 80074D8C 2401001D */ li $at, 29
/* AEBF30 80074D90 848E07B2 */ lh $t6, 0x7b2($a0)
/* AEBF34 80074D94 29C103D4 */ slti $at, $t6, 0x3d4
/* AEBF38 80074D98 14200003 */ bnez $at, .L80074DA8
/* AEBF3C 80074D9C 2401001D */ li $at, 29
.L80074DA0:
/* AEBF40 80074DA0 54410065 */ bnel $v0, $at, .L80074F38
/* AEBF44 80074DA4 912E0B0D */ lbu $t6, 0xb0d($t1)
.L80074DA8:
/* AEBF48 80074DA8 8E050000 */ lw $a1, ($s0)
/* AEBF4C 80074DAC 3C068014 */ lui $a2, %hi(D_8013C60C) # $a2, 0x8014
/* AEBF50 80074DB0 24C6C60C */ addiu $a2, %lo(D_8013C60C) # addiu $a2, $a2, -0x39f4
/* AEBF54 80074DB4 AFA90028 */ sw $t1, 0x28($sp)
/* AEBF58 80074DB8 27A40050 */ addiu $a0, $sp, 0x50
/* AEBF5C 80074DBC 24070BD8 */ li $a3, 3032
/* AEBF60 80074DC0 0C031AB1 */ jal Graph_OpenDisps
/* AEBF64 80074DC4 AFA50060 */ sw $a1, 0x60($sp)
/* AEBF68 80074DC8 0C024E2D */ jal func_800938B4
/* AEBF6C 80074DCC 8E040000 */ lw $a0, ($s0)
/* AEBF70 80074DD0 860F07B2 */ lh $t7, 0x7b2($s0)
/* AEBF74 80074DD4 241803E8 */ li $t8, 1000
/* AEBF78 80074DD8 8FA90028 */ lw $t1, 0x28($sp)
/* AEBF7C 80074DDC 030FC823 */ subu $t9, $t8, $t7
/* AEBF80 80074DE0 44992000 */ mtc1 $t9, $f4
/* AEBF84 80074DE4 3C018014 */ lui $at, %hi(D_8013C7F4)
/* AEBF88 80074DE8 C428C7F4 */ lwc1 $f8, %lo(D_8013C7F4)($at)
/* AEBF8C 80074DEC 468021A0 */ cvt.s.w $f6, $f4
/* AEBF90 80074DF0 912A1E14 */ lbu $t2, 0x1e14($t1)
/* AEBF94 80074DF4 2401001D */ li $at, 29
/* AEBF98 80074DF8 8FA80060 */ lw $t0, 0x60($sp)
/* AEBF9C 80074DFC 3C0CFA00 */ lui $t4, 0xfa00
/* AEBFA0 80074E00 27A40050 */ addiu $a0, $sp, 0x50
/* AEBFA4 80074E04 46083002 */ mul.s $f0, $f6, $f8
/* AEBFA8 80074E08 15410004 */ bne $t2, $at, .L80074E1C
/* AEBFAC 80074E0C 3C068014 */ lui $a2, %hi(D_8013C61C) # $a2, 0x8014
/* AEBFB0 80074E10 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEBFB4 80074E14 44810000 */ mtc1 $at, $f0
/* AEBFB8 80074E18 00000000 */ nop
.L80074E1C:
/* AEBFBC 80074E1C 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEBFC0 80074E20 44811000 */ mtc1 $at, $f2
/* AEBFC4 80074E24 24C6C61C */ addiu $a2, %lo(D_8013C61C) # addiu $a2, $a2, -0x39e4
/* AEBFC8 80074E28 24070BE3 */ li $a3, 3043
/* AEBFCC 80074E2C 4600103C */ c.lt.s $f2, $f0
/* AEBFD0 80074E30 00000000 */ nop
/* AEBFD4 80074E34 45020003 */ bc1fl .L80074E44
/* AEBFD8 80074E38 8D0202C0 */ lw $v0, 0x2c0($t0)
/* AEBFDC 80074E3C 46001006 */ mov.s $f0, $f2
/* AEBFE0 80074E40 8D0202C0 */ lw $v0, 0x2c0($t0)
.L80074E44:
/* AEBFE4 80074E44 3C01437F */ li $at, 0x437F0000 # 0.000000
/* AEBFE8 80074E48 44815000 */ mtc1 $at, $f10
/* AEBFEC 80074E4C 244B0008 */ addiu $t3, $v0, 8
/* AEBFF0 80074E50 AD0B02C0 */ sw $t3, 0x2c0($t0)
/* AEBFF4 80074E54 46005402 */ mul.s $f16, $f10, $f0
/* AEBFF8 80074E58 AC4C0000 */ sw $t4, ($v0)
/* AEBFFC 80074E5C 921907AF */ lbu $t9, 0x7af($s0)
/* AEC000 80074E60 920E07B1 */ lbu $t6, 0x7b1($s0)
/* AEC004 80074E64 920D07B0 */ lbu $t5, 0x7b0($s0)
/* AEC008 80074E68 00195600 */ sll $t2, $t9, 0x18
/* AEC00C 80074E6C 000EC200 */ sll $t8, $t6, 8
/* AEC010 80074E70 030A5825 */ or $t3, $t8, $t2
/* AEC014 80074E74 24180001 */ li $t8, 1
/* AEC018 80074E78 4459F800 */ cfc1 $t9, $31
/* AEC01C 80074E7C 44D8F800 */ ctc1 $t8, $31
/* AEC020 80074E80 000D7400 */ sll $t6, $t5, 0x10
/* AEC024 80074E84 016E7825 */ or $t7, $t3, $t6
/* AEC028 80074E88 460084A4 */ cvt.w.s $f18, $f16
/* AEC02C 80074E8C 3C014F00 */ lui $at, 0x4f00
/* AEC030 80074E90 3C0BF64F */ li $t3, 0xF64F0000 # 0.000000
/* AEC034 80074E94 4458F800 */ cfc1 $t8, $31
/* AEC038 80074E98 00000000 */ nop
/* AEC03C 80074E9C 33180078 */ andi $t8, $t8, 0x78
/* AEC040 80074EA0 53000013 */ beql $t8, $zero, .L80074EF0
/* AEC044 80074EA4 44189000 */ mfc1 $t8, $f18
/* AEC048 80074EA8 44819000 */ mtc1 $at, $f18
/* AEC04C 80074EAC 24180001 */ li $t8, 1
/* AEC050 80074EB0 46128481 */ sub.s $f18, $f16, $f18
/* AEC054 80074EB4 44D8F800 */ ctc1 $t8, $31
/* AEC058 80074EB8 00000000 */ nop
/* AEC05C 80074EBC 460094A4 */ cvt.w.s $f18, $f18
/* AEC060 80074EC0 4458F800 */ cfc1 $t8, $31
/* AEC064 80074EC4 00000000 */ nop
/* AEC068 80074EC8 33180078 */ andi $t8, $t8, 0x78
/* AEC06C 80074ECC 17000005 */ bnez $t8, .L80074EE4
/* AEC070 80074ED0 00000000 */ nop
/* AEC074 80074ED4 44189000 */ mfc1 $t8, $f18
/* AEC078 80074ED8 3C018000 */ lui $at, 0x8000
/* AEC07C 80074EDC 10000007 */ b .L80074EFC
/* AEC080 80074EE0 0301C025 */ or $t8, $t8, $at
.L80074EE4:
/* AEC084 80074EE4 10000005 */ b .L80074EFC
/* AEC088 80074EE8 2418FFFF */ li $t8, -1
/* AEC08C 80074EEC 44189000 */ mfc1 $t8, $f18
.L80074EF0:
/* AEC090 80074EF0 00000000 */ nop
/* AEC094 80074EF4 0700FFFB */ bltz $t8, .L80074EE4
/* AEC098 80074EF8 00000000 */ nop
.L80074EFC:
/* AEC09C 80074EFC 330A00FF */ andi $t2, $t8, 0xff
/* AEC0A0 80074F00 01EA6025 */ or $t4, $t7, $t2
/* AEC0A4 80074F04 AC4C0004 */ sw $t4, 4($v0)
/* AEC0A8 80074F08 8D0302C0 */ lw $v1, 0x2c0($t0)
/* AEC0AC 80074F0C 356BC3BC */ ori $t3, $t3, 0xc3bc
/* AEC0B0 80074F10 44D9F800 */ ctc1 $t9, $31
/* AEC0B4 80074F14 246D0008 */ addiu $t5, $v1, 8
/* AEC0B8 80074F18 AD0D02C0 */ sw $t5, 0x2c0($t0)
/* AEC0BC 80074F1C AC600004 */ sw $zero, 4($v1)
/* AEC0C0 80074F20 AC6B0000 */ sw $t3, ($v1)
/* AEC0C4 80074F24 8E050000 */ lw $a1, ($s0)
/* AEC0C8 80074F28 0C031AD5 */ jal Graph_CloseDisps
/* AEC0CC 80074F2C AFA90028 */ sw $t1, 0x28($sp)
/* AEC0D0 80074F30 8FA90028 */ lw $t1, 0x28($sp)
/* AEC0D4 80074F34 912E0B0D */ lbu $t6, 0xb0d($t1)
.L80074F38:
/* AEC0D8 80074F38 3C068014 */ lui $a2, %hi(D_8013C62C) # $a2, 0x8014
/* AEC0DC 80074F3C 24C6C62C */ addiu $a2, %lo(D_8013C62C) # addiu $a2, $a2, -0x39d4
/* AEC0E0 80074F40 11C00027 */ beqz $t6, .L80074FE0
/* AEC0E4 80074F44 27A40034 */ addiu $a0, $sp, 0x34
/* AEC0E8 80074F48 8E050000 */ lw $a1, ($s0)
/* AEC0EC 80074F4C AFA90028 */ sw $t1, 0x28($sp)
/* AEC0F0 80074F50 24070BE8 */ li $a3, 3048
/* AEC0F4 80074F54 0C031AB1 */ jal Graph_OpenDisps
/* AEC0F8 80074F58 AFA50044 */ sw $a1, 0x44($sp)
/* AEC0FC 80074F5C 0C024E2D */ jal func_800938B4
/* AEC100 80074F60 8E040000 */ lw $a0, ($s0)
/* AEC104 80074F64 8FA80044 */ lw $t0, 0x44($sp)
/* AEC108 80074F68 8FA90028 */ lw $t1, 0x28($sp)
/* AEC10C 80074F6C 3C18FA00 */ lui $t8, 0xfa00
/* AEC110 80074F70 8D0302C0 */ lw $v1, 0x2c0($t0)
/* AEC114 80074F74 3C068014 */ lui $a2, %hi(D_8013C63C) # $a2, 0x8014
/* AEC118 80074F78 24C6C63C */ addiu $a2, %lo(D_8013C63C) # addiu $a2, $a2, -0x39c4
/* AEC11C 80074F7C 24790008 */ addiu $t9, $v1, 8
/* AEC120 80074F80 AD1902C0 */ sw $t9, 0x2c0($t0)
/* AEC124 80074F84 AC780000 */ sw $t8, ($v1)
/* AEC128 80074F88 912D0B0E */ lbu $t5, 0xb0e($t1)
/* AEC12C 80074F8C 912A0B11 */ lbu $t2, 0xb11($t1)
/* AEC130 80074F90 91380B0F */ lbu $t8, 0xb0f($t1)
/* AEC134 80074F94 000D5E00 */ sll $t3, $t5, 0x18
/* AEC138 80074F98 014B7025 */ or $t6, $t2, $t3
/* AEC13C 80074F9C 912A0B10 */ lbu $t2, 0xb10($t1)
/* AEC140 80074FA0 00187C00 */ sll $t7, $t8, 0x10
/* AEC144 80074FA4 01CF6025 */ or $t4, $t6, $t7
/* AEC148 80074FA8 000A5A00 */ sll $t3, $t2, 8
/* AEC14C 80074FAC 018BC825 */ or $t9, $t4, $t3
/* AEC150 80074FB0 AC790004 */ sw $t9, 4($v1)
/* AEC154 80074FB4 8D0302C0 */ lw $v1, 0x2c0($t0)
/* AEC158 80074FB8 3C0EF64F */ lui $t6, (0xF64FC3BC >> 16) # lui $t6, 0xf64f
/* AEC15C 80074FBC 35CEC3BC */ ori $t6, (0xF64FC3BC & 0xFFFF) # ori $t6, $t6, 0xc3bc
/* AEC160 80074FC0 24780008 */ addiu $t8, $v1, 8
/* AEC164 80074FC4 AD1802C0 */ sw $t8, 0x2c0($t0)
/* AEC168 80074FC8 AC600004 */ sw $zero, 4($v1)
/* AEC16C 80074FCC AC6E0000 */ sw $t6, ($v1)
/* AEC170 80074FD0 8E050000 */ lw $a1, ($s0)
/* AEC174 80074FD4 27A40034 */ addiu $a0, $sp, 0x34
/* AEC178 80074FD8 0C031AD5 */ jal Graph_CloseDisps
/* AEC17C 80074FDC 24070BF0 */ li $a3, 3056
.L80074FE0:
/* AEC180 80074FE0 8FBF001C */ lw $ra, 0x1c($sp)
/* AEC184 80074FE4 8FB00018 */ lw $s0, 0x18($sp)
/* AEC188 80074FE8 27BD0068 */ addiu $sp, $sp, 0x68
/* AEC18C 80074FEC 03E00008 */ jr $ra
/* AEC190 80074FF0 00000000 */ nop

View file

@ -1,63 +0,0 @@
.rdata
glabel D_8013C64C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C65C
.asciz "../z_kankyo.c"
.balign 4
.text
glabel func_80074FF4
/* AEC194 80074FF4 27BDFFC8 */ addiu $sp, $sp, -0x38
/* AEC198 80074FF8 AFBF0014 */ sw $ra, 0x14($sp)
/* AEC19C 80074FFC AFA40038 */ sw $a0, 0x38($sp)
/* AEC1A0 80075000 AFA5003C */ sw $a1, 0x3c($sp)
/* AEC1A4 80075004 AFA60040 */ sw $a2, 0x40($sp)
/* AEC1A8 80075008 AFA70044 */ sw $a3, 0x44($sp)
/* AEC1AC 8007500C 8C850000 */ lw $a1, ($a0)
/* AEC1B0 80075010 3C068014 */ lui $a2, %hi(D_8013C64C) # $a2, 0x8014
/* AEC1B4 80075014 24C6C64C */ addiu $a2, %lo(D_8013C64C) # addiu $a2, $a2, -0x39b4
/* AEC1B8 80075018 27A40024 */ addiu $a0, $sp, 0x24
/* AEC1BC 8007501C 24070BFD */ li $a3, 3069
/* AEC1C0 80075020 0C031AB1 */ jal Graph_OpenDisps
/* AEC1C4 80075024 AFA50034 */ sw $a1, 0x34($sp)
/* AEC1C8 80075028 8FAF0038 */ lw $t7, 0x38($sp)
/* AEC1CC 8007502C 0C024E2D */ jal func_800938B4
/* AEC1D0 80075030 8DE40000 */ lw $a0, ($t7)
/* AEC1D4 80075034 8FA80034 */ lw $t0, 0x34($sp)
/* AEC1D8 80075038 3C19FA00 */ lui $t9, 0xfa00
/* AEC1DC 8007503C 3C068014 */ lui $a2, %hi(D_8013C65C) # $a2, 0x8014
/* AEC1E0 80075040 8D0302C0 */ lw $v1, 0x2c0($t0)
/* AEC1E4 80075044 24C6C65C */ addiu $a2, %lo(D_8013C65C) # addiu $a2, $a2, -0x39a4
/* AEC1E8 80075048 27A40024 */ addiu $a0, $sp, 0x24
/* AEC1EC 8007504C 24780008 */ addiu $t8, $v1, 8
/* AEC1F0 80075050 AD1802C0 */ sw $t8, 0x2c0($t0)
/* AEC1F4 80075054 AC790000 */ sw $t9, ($v1)
/* AEC1F8 80075058 93AD0043 */ lbu $t5, 0x43($sp)
/* AEC1FC 8007505C 93AA003F */ lbu $t2, 0x3f($sp)
/* AEC200 80075060 93B90047 */ lbu $t9, 0x47($sp)
/* AEC204 80075064 000D7400 */ sll $t6, $t5, 0x10
/* AEC208 80075068 93AD004B */ lbu $t5, 0x4b($sp)
/* AEC20C 8007506C 000A5E00 */ sll $t3, $t2, 0x18
/* AEC210 80075070 016E7825 */ or $t7, $t3, $t6
/* AEC214 80075074 00194A00 */ sll $t1, $t9, 8
/* AEC218 80075078 01E95025 */ or $t2, $t7, $t1
/* AEC21C 8007507C 014D5825 */ or $t3, $t2, $t5
/* AEC220 80075080 AC6B0004 */ sw $t3, 4($v1)
/* AEC224 80075084 8D0302C0 */ lw $v1, 0x2c0($t0)
/* AEC228 80075088 3C18F64F */ lui $t8, (0xF64FC3BC >> 16) # lui $t8, 0xf64f
/* AEC22C 8007508C 3718C3BC */ ori $t8, (0xF64FC3BC & 0xFFFF) # ori $t8, $t8, 0xc3bc
/* AEC230 80075090 246E0008 */ addiu $t6, $v1, 8
/* AEC234 80075094 AD0E02C0 */ sw $t6, 0x2c0($t0)
/* AEC238 80075098 AC600004 */ sw $zero, 4($v1)
/* AEC23C 8007509C AC780000 */ sw $t8, ($v1)
/* AEC240 800750A0 8FB90038 */ lw $t9, 0x38($sp)
/* AEC244 800750A4 24070C07 */ li $a3, 3079
/* AEC248 800750A8 0C031AD5 */ jal Graph_CloseDisps
/* AEC24C 800750AC 8F250000 */ lw $a1, ($t9)
/* AEC250 800750B0 8FBF0014 */ lw $ra, 0x14($sp)
/* AEC254 800750B4 27BD0038 */ addiu $sp, $sp, 0x38
/* AEC258 800750B8 03E00008 */ jr $ra
/* AEC25C 800750BC 00000000 */ nop

View file

@ -1,215 +0,0 @@
.late_rodata
glabel D_8013C7F8
.float 0.1
glabel D_8013C7FC
.float 2.9
.text
glabel func_800750C0
/* AEC260 800750C0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* AEC264 800750C4 3C010001 */ lui $at, 1
/* AEC268 800750C8 AFBF001C */ sw $ra, 0x1c($sp)
/* AEC26C 800750CC AFA40020 */ sw $a0, 0x20($sp)
/* AEC270 800750D0 00811021 */ addu $v0, $a0, $at
/* AEC274 800750D4 904E0B03 */ lbu $t6, 0xb03($v0)
/* AEC278 800750D8 3C038016 */ lui $v1, %hi(D_8015FD70) # $v1, 0x8016
/* AEC27C 800750DC 2463FD70 */ addiu $v1, %lo(D_8015FD70) # addiu $v1, $v1, -0x290
/* AEC280 800750E0 11C000A6 */ beqz $t6, .L8007537C
/* AEC284 800750E4 00000000 */ nop
/* AEC288 800750E8 90640000 */ lbu $a0, ($v1)
/* AEC28C 800750EC 24010001 */ li $at, 1
/* AEC290 800750F0 10800008 */ beqz $a0, .L80075114
/* AEC294 800750F4 00000000 */ nop
/* AEC298 800750F8 1081005E */ beq $a0, $at, .L80075274
/* AEC29C 800750FC 3C088016 */ lui $t0, %hi(D_8015FD7C)
/* AEC2A0 80075100 24050002 */ li $a1, 2
/* AEC2A4 80075104 5085007E */ beql $a0, $a1, .L80075300
/* AEC2A8 80075108 84440AB0 */ lh $a0, 0xab0($v0)
/* AEC2AC 8007510C 1000009B */ b .L8007537C
/* AEC2B0 80075110 00000000 */ nop
.L80075114:
/* AEC2B4 80075114 0C03F66B */ jal Rand_ZeroOne
/* AEC2B8 80075118 00000000 */ nop
/* AEC2BC 8007511C 3C018014 */ lui $at, %hi(D_8013C7F8)
/* AEC2C0 80075120 C424C7F8 */ lwc1 $f4, %lo(D_8013C7F8)($at)
/* AEC2C4 80075124 3C038016 */ lui $v1, %hi(D_8015FD70) # $v1, 0x8016
/* AEC2C8 80075128 2463FD70 */ addiu $v1, %lo(D_8015FD70) # addiu $v1, $v1, -0x290
/* AEC2CC 8007512C 4604003C */ c.lt.s $f0, $f4
/* AEC2D0 80075130 3C014248 */ li $at, 0x42480000 # 0.000000
/* AEC2D4 80075134 45000006 */ bc1f .L80075150
/* AEC2D8 80075138 00000000 */ nop
/* AEC2DC 8007513C C4660008 */ lwc1 $f6, 8($v1)
/* AEC2E0 80075140 44814000 */ mtc1 $at, $f8
/* AEC2E4 80075144 00000000 */ nop
/* AEC2E8 80075148 46083280 */ add.s $f10, $f6, $f8
/* AEC2EC 8007514C E46A0008 */ swc1 $f10, 8($v1)
.L80075150:
/* AEC2F0 80075150 0C03F66B */ jal Rand_ZeroOne
/* AEC2F4 80075154 00000000 */ nop
/* AEC2F8 80075158 3C038016 */ lui $v1, %hi(D_8015FD70)
/* AEC2FC 8007515C 2463FD70 */ addiu $v1, %lo(D_8015FD70) # addiu $v1, $v1, -0x290
/* AEC300 80075160 C4700008 */ lwc1 $f16, 8($v1)
/* AEC304 80075164 3C0143FA */ li $at, 0x43FA0000 # 0.000000
/* AEC308 80075168 44812000 */ mtc1 $at, $f4
/* AEC30C 8007516C 46008480 */ add.s $f18, $f16, $f0
/* AEC310 80075170 240400C8 */ li $a0, 200
/* AEC314 80075174 240F00FF */ li $t7, 255
/* AEC318 80075178 E4720008 */ swc1 $f18, 8($v1)
/* AEC31C 8007517C C4660008 */ lwc1 $f6, 8($v1)
/* AEC320 80075180 4606203C */ c.lt.s $f4, $f6
/* AEC324 80075184 00000000 */ nop
/* AEC328 80075188 45000038 */ bc1f .L8007526C
/* AEC32C 8007518C 00000000 */ nop
/* AEC330 80075190 44804000 */ mtc1 $zero, $f8
/* AEC334 80075194 A0640001 */ sb $a0, 1($v1)
/* AEC338 80075198 A0640002 */ sb $a0, 2($v1)
/* AEC33C 8007519C A06F0003 */ sb $t7, 3($v1)
/* AEC340 800751A0 A0640004 */ sb $a0, 4($v1)
/* AEC344 800751A4 0C03F66B */ jal Rand_ZeroOne
/* AEC348 800751A8 E4680008 */ swc1 $f8, 8($v1)
/* AEC34C 800751AC 3C018014 */ lui $at, %hi(D_8013C7FC)
/* AEC350 800751B0 C42AC7FC */ lwc1 $f10, %lo(D_8013C7FC)($at)
/* AEC354 800751B4 24050001 */ li $a1, 1
/* AEC358 800751B8 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEC35C 800751BC 460A0402 */ mul.s $f16, $f0, $f10
/* AEC360 800751C0 8FA40020 */ lw $a0, 0x20($sp)
/* AEC364 800751C4 4458F800 */ cfc1 $t8, $31
/* AEC368 800751C8 44C5F800 */ ctc1 $a1, $31
/* AEC36C 800751CC 00000000 */ nop
/* AEC370 800751D0 460084A4 */ cvt.w.s $f18, $f16
/* AEC374 800751D4 4445F800 */ cfc1 $a1, $31
/* AEC378 800751D8 00000000 */ nop
/* AEC37C 800751DC 30A50078 */ andi $a1, $a1, 0x78
/* AEC380 800751E0 50A00013 */ beql $a1, $zero, .L80075230
/* AEC384 800751E4 44059000 */ mfc1 $a1, $f18
/* AEC388 800751E8 44819000 */ mtc1 $at, $f18
/* AEC38C 800751EC 24050001 */ li $a1, 1
/* AEC390 800751F0 46128481 */ sub.s $f18, $f16, $f18
/* AEC394 800751F4 44C5F800 */ ctc1 $a1, $31
/* AEC398 800751F8 00000000 */ nop
/* AEC39C 800751FC 460094A4 */ cvt.w.s $f18, $f18
/* AEC3A0 80075200 4445F800 */ cfc1 $a1, $31
/* AEC3A4 80075204 00000000 */ nop
/* AEC3A8 80075208 30A50078 */ andi $a1, $a1, 0x78
/* AEC3AC 8007520C 14A00005 */ bnez $a1, .L80075224
/* AEC3B0 80075210 00000000 */ nop
/* AEC3B4 80075214 44059000 */ mfc1 $a1, $f18
/* AEC3B8 80075218 3C018000 */ lui $at, 0x8000
/* AEC3BC 8007521C 10000007 */ b .L8007523C
/* AEC3C0 80075220 00A12825 */ or $a1, $a1, $at
.L80075224:
/* AEC3C4 80075224 10000005 */ b .L8007523C
/* AEC3C8 80075228 2405FFFF */ li $a1, -1
/* AEC3CC 8007522C 44059000 */ mfc1 $a1, $f18
.L80075230:
/* AEC3D0 80075230 00000000 */ nop
/* AEC3D4 80075234 04A0FFFB */ bltz $a1, .L80075224
/* AEC3D8 80075238 00000000 */ nop
.L8007523C:
/* AEC3DC 8007523C 44D8F800 */ ctc1 $t8, $31
/* AEC3E0 80075240 24A50001 */ addiu $a1, $a1, 1
/* AEC3E4 80075244 0C01D4F1 */ jal func_800753C4
/* AEC3E8 80075248 30A500FF */ andi $a1, $a1, 0xff
/* AEC3EC 8007524C 3C038016 */ lui $v1, %hi(D_8015FD70) # $v1, 0x8016
/* AEC3F0 80075250 2463FD70 */ addiu $v1, %lo(D_8015FD70) # addiu $v1, $v1, -0x290
/* AEC3F4 80075254 90790000 */ lbu $t9, ($v1)
/* AEC3F8 80075258 3C088016 */ lui $t0, %hi(D_8015FD7C) # $t0, 0x8016
/* AEC3FC 8007525C 2508FD7C */ addiu $t0, %lo(D_8015FD7C) # addiu $t0, $t0, -0x284
/* AEC400 80075260 27290001 */ addiu $t1, $t9, 1
/* AEC404 80075264 A5000000 */ sh $zero, ($t0)
/* AEC408 80075268 A0690000 */ sb $t1, ($v1)
.L8007526C:
/* AEC40C 8007526C 10000043 */ b .L8007537C
/* AEC410 80075270 00000000 */ nop
.L80075274:
/* AEC414 80075274 240400C8 */ li $a0, 200
/* AEC418 80075278 240A00FF */ li $t2, 255
/* AEC41C 8007527C A0640001 */ sb $a0, 1($v1)
/* AEC420 80075280 A0640002 */ sb $a0, 2($v1)
/* AEC424 80075284 A06A0003 */ sb $t2, 3($v1)
/* AEC428 80075288 844B0AB0 */ lh $t3, 0xab0($v0)
/* AEC42C 8007528C 844D0AB2 */ lh $t5, 0xab2($v0)
/* AEC430 80075290 844F0AB4 */ lh $t7, 0xab4($v0)
/* AEC434 80075294 256C0050 */ addiu $t4, $t3, 0x50
/* AEC438 80075298 25AE0050 */ addiu $t6, $t5, 0x50
/* AEC43C 8007529C 25F80064 */ addiu $t8, $t7, 0x64
/* AEC440 800752A0 2508FD7C */ addiu $t0, %lo(D_8015FD7C)
/* AEC444 800752A4 A44C0AB0 */ sh $t4, 0xab0($v0)
/* AEC448 800752A8 A44E0AB2 */ sh $t6, 0xab2($v0)
/* AEC44C 800752AC A4580AB4 */ sh $t8, 0xab4($v0)
/* AEC450 800752B0 85190000 */ lh $t9, ($t0)
/* AEC454 800752B4 906B0004 */ lbu $t3, 4($v1)
/* AEC458 800752B8 2404000F */ li $a0, 15
/* AEC45C 800752BC 27290064 */ addiu $t1, $t9, 0x64
/* AEC460 800752C0 A5090000 */ sh $t1, ($t0)
/* AEC464 800752C4 850A0000 */ lh $t2, ($t0)
/* AEC468 800752C8 00002825 */ move $a1, $zero
/* AEC46C 800752CC 014B082A */ slt $at, $t2, $t3
/* AEC470 800752D0 1420002A */ bnez $at, .L8007537C
/* AEC474 800752D4 00000000 */ nop
/* AEC478 800752D8 0C03DB56 */ jal func_800F6D58
/* AEC47C 800752DC 00003025 */ move $a2, $zero
/* AEC480 800752E0 3C038016 */ lui $v1, %hi(D_8015FD70) # $v1, 0x8016
/* AEC484 800752E4 2463FD70 */ addiu $v1, %lo(D_8015FD70) # addiu $v1, $v1, -0x290
/* AEC488 800752E8 906C0000 */ lbu $t4, ($v1)
/* AEC48C 800752EC A0600004 */ sb $zero, 4($v1)
/* AEC490 800752F0 258D0001 */ addiu $t5, $t4, 1
/* AEC494 800752F4 10000021 */ b .L8007537C
/* AEC498 800752F8 A06D0000 */ sb $t5, ($v1)
/* AEC49C 800752FC 84440AB0 */ lh $a0, 0xab0($v0)
.L80075300:
/* AEC4A0 80075300 3C088016 */ lui $t0, %hi(D_8015FD7C) # $t0, 0x8016
/* AEC4A4 80075304 2508FD7C */ addiu $t0, %lo(D_8015FD7C) # addiu $t0, $t0, -0x284
/* AEC4A8 80075308 58800007 */ blezl $a0, .L80075328
/* AEC4AC 8007530C 84440AB4 */ lh $a0, 0xab4($v0)
/* AEC4B0 80075310 844F0AB2 */ lh $t7, 0xab2($v0)
/* AEC4B4 80075314 248EFFF6 */ addiu $t6, $a0, -0xa
/* AEC4B8 80075318 A44E0AB0 */ sh $t6, 0xab0($v0)
/* AEC4BC 8007531C 25F8FFF6 */ addiu $t8, $t7, -0xa
/* AEC4C0 80075320 A4580AB2 */ sh $t8, 0xab2($v0)
/* AEC4C4 80075324 84440AB4 */ lh $a0, 0xab4($v0)
.L80075328:
/* AEC4C8 80075328 18800002 */ blez $a0, .L80075334
/* AEC4CC 8007532C 2499FFF6 */ addiu $t9, $a0, -0xa
/* AEC4D0 80075330 A4590AB4 */ sh $t9, 0xab4($v0)
.L80075334:
/* AEC4D4 80075334 85090000 */ lh $t1, ($t0)
/* AEC4D8 80075338 906B0004 */ lbu $t3, 4($v1)
/* AEC4DC 8007533C 252AFFF6 */ addiu $t2, $t1, -0xa
/* AEC4E0 80075340 A50A0000 */ sh $t2, ($t0)
/* AEC4E4 80075344 850C0000 */ lh $t4, ($t0)
/* AEC4E8 80075348 016C082A */ slt $at, $t3, $t4
/* AEC4EC 8007534C 1420000B */ bnez $at, .L8007537C
/* AEC4F0 80075350 00000000 */ nop
/* AEC4F4 80075354 A4400AB0 */ sh $zero, 0xab0($v0)
/* AEC4F8 80075358 A4400AB2 */ sh $zero, 0xab2($v0)
/* AEC4FC 8007535C A4400AB4 */ sh $zero, 0xab4($v0)
/* AEC500 80075360 A0600000 */ sb $zero, ($v1)
/* AEC504 80075364 904D0B03 */ lbu $t5, 0xb03($v0)
/* AEC508 80075368 8FAE0020 */ lw $t6, 0x20($sp)
/* AEC50C 8007536C 3C010001 */ lui $at, 1
/* AEC510 80075370 14AD0002 */ bne $a1, $t5, .L8007537C
/* AEC514 80075374 002E0821 */ addu $at, $at, $t6
/* AEC518 80075378 A0200B03 */ sb $zero, 0xb03($at)
.L8007537C:
/* AEC51C 8007537C 3C038016 */ lui $v1, %hi(D_8015FD70) # $v1, 0x8016
/* AEC520 80075380 2463FD70 */ addiu $v1, %lo(D_8015FD70) # addiu $v1, $v1, -0x290
/* AEC524 80075384 906F0000 */ lbu $t7, ($v1)
/* AEC528 80075388 3C088016 */ lui $t0, %hi(D_8015FD7C) # $t0, 0x8016
/* AEC52C 8007538C 2508FD7C */ addiu $t0, %lo(D_8015FD7C) # addiu $t0, $t0, -0x284
/* AEC530 80075390 51E00009 */ beql $t7, $zero, .L800753B8
/* AEC534 80075394 8FBF001C */ lw $ra, 0x1c($sp)
/* AEC538 80075398 85180000 */ lh $t8, ($t0)
/* AEC53C 8007539C 8FA40020 */ lw $a0, 0x20($sp)
/* AEC540 800753A0 90650001 */ lbu $a1, 1($v1)
/* AEC544 800753A4 90660002 */ lbu $a2, 2($v1)
/* AEC548 800753A8 90670003 */ lbu $a3, 3($v1)
/* AEC54C 800753AC 0C01D3FD */ jal func_80074FF4
/* AEC550 800753B0 AFB80010 */ sw $t8, 0x10($sp)
/* AEC554 800753B4 8FBF001C */ lw $ra, 0x1c($sp)
.L800753B8:
/* AEC558 800753B8 27BD0020 */ addiu $sp, $sp, 0x20
/* AEC55C 800753BC 03E00008 */ jr $ra
/* AEC560 800753C0 00000000 */ nop

View file

@ -1,31 +0,0 @@
glabel func_800753C4
/* AEC564 800753C4 AFA50004 */ sw $a1, 4($sp)
/* AEC568 800753C8 3C078016 */ lui $a3, %hi(D_8015FD10) # $a3, 0x8016
/* AEC56C 800753CC 30A500FF */ andi $a1, $a1, 0xff
/* AEC570 800753D0 AFA40000 */ sw $a0, ($sp)
/* AEC574 800753D4 00001025 */ move $v0, $zero
/* AEC578 800753D8 24E7FD10 */ addiu $a3, %lo(D_8015FD10) # addiu $a3, $a3, -0x2f0
/* AEC57C 800753DC 00001825 */ move $v1, $zero
/* AEC580 800753E0 240600FF */ li $a2, 255
/* AEC584 800753E4 00037140 */ sll $t6, $v1, 5
.L800753E8:
/* AEC588 800753E8 00EE2021 */ addu $a0, $a3, $t6
/* AEC58C 800753EC 908F0000 */ lbu $t7, ($a0)
/* AEC590 800753F0 24630001 */ addiu $v1, $v1, 1
/* AEC594 800753F4 00031C00 */ sll $v1, $v1, 0x10
/* AEC598 800753F8 14CF0007 */ bne $a2, $t7, .L80075418
/* AEC59C 800753FC 00031C03 */ sra $v1, $v1, 0x10
/* AEC5A0 80075400 24420001 */ addiu $v0, $v0, 1
/* AEC5A4 80075404 00021400 */ sll $v0, $v0, 0x10
/* AEC5A8 80075408 00021403 */ sra $v0, $v0, 0x10
/* AEC5AC 8007540C 0045082A */ slt $at, $v0, $a1
/* AEC5B0 80075410 10200004 */ beqz $at, .L80075424
/* AEC5B4 80075414 A0800000 */ sb $zero, ($a0)
.L80075418:
/* AEC5B8 80075418 28610003 */ slti $at, $v1, 3
/* AEC5BC 8007541C 5420FFF2 */ bnezl $at, .L800753E8
/* AEC5C0 80075420 00037140 */ sll $t6, $v1, 5
.L80075424:
/* AEC5C4 80075424 03E00008 */ jr $ra
/* AEC5C8 80075428 00000000 */ nop

View file

@ -1,323 +0,0 @@
.rdata
glabel D_8013C66C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C67C
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C68C
.asciz "../z_kankyo.c"
.balign 4
.late_rodata
glabel D_8013C800
.float 5000
glabel D_8013C804
.float 9500
glabel D_8013C808
.float 0.017453292
.text
glabel func_8007542C
/* AEC5CC 8007542C 27BDFF20 */ addiu $sp, $sp, -0xe0
/* AEC5D0 80075430 3C0F8012 */ lui $t7, %hi(D_8011FE88) # $t7, 0x8012
/* AEC5D4 80075434 AFBF0064 */ sw $ra, 0x64($sp)
/* AEC5D8 80075438 AFB70060 */ sw $s7, 0x60($sp)
/* AEC5DC 8007543C AFB6005C */ sw $s6, 0x5c($sp)
/* AEC5E0 80075440 AFB50058 */ sw $s5, 0x58($sp)
/* AEC5E4 80075444 AFB40054 */ sw $s4, 0x54($sp)
/* AEC5E8 80075448 AFB30050 */ sw $s3, 0x50($sp)
/* AEC5EC 8007544C AFB2004C */ sw $s2, 0x4c($sp)
/* AEC5F0 80075450 AFB10048 */ sw $s1, 0x48($sp)
/* AEC5F4 80075454 AFB00044 */ sw $s0, 0x44($sp)
/* AEC5F8 80075458 F7BE0038 */ sdc1 $f30, 0x38($sp)
/* AEC5FC 8007545C F7BC0030 */ sdc1 $f28, 0x30($sp)
/* AEC600 80075460 F7BA0028 */ sdc1 $f26, 0x28($sp)
/* AEC604 80075464 F7B80020 */ sdc1 $f24, 0x20($sp)
/* AEC608 80075468 F7B60018 */ sdc1 $f22, 0x18($sp)
/* AEC60C 8007546C F7B40010 */ sdc1 $f20, 0x10($sp)
/* AEC610 80075470 AFA500E4 */ sw $a1, 0xe4($sp)
/* AEC614 80075474 25EFFE88 */ addiu $t7, %lo(D_8011FE88) # addiu $t7, $t7, -0x178
/* AEC618 80075478 8DF90000 */ lw $t9, ($t7)
/* AEC61C 8007547C 27AE00B8 */ addiu $t6, $sp, 0xb8
/* AEC620 80075480 8DF80004 */ lw $t8, 4($t7)
/* AEC624 80075484 ADD90000 */ sw $t9, ($t6)
/* AEC628 80075488 8DF90008 */ lw $t9, 8($t7)
/* AEC62C 8007548C 3C098012 */ lui $t1, %hi(D_8011FE94) # $t1, 0x8012
/* AEC630 80075490 2529FE94 */ addiu $t1, %lo(D_8011FE94) # addiu $t1, $t1, -0x16c
/* AEC634 80075494 ADD80004 */ sw $t8, 4($t6)
/* AEC638 80075498 ADD90008 */ sw $t9, 8($t6)
/* AEC63C 8007549C 8D2B0000 */ lw $t3, ($t1)
/* AEC640 800754A0 27A800AC */ addiu $t0, $sp, 0xac
/* AEC644 800754A4 8D2A0004 */ lw $t2, 4($t1)
/* AEC648 800754A8 AD0B0000 */ sw $t3, ($t0)
/* AEC64C 800754AC 8D2B0008 */ lw $t3, 8($t1)
/* AEC650 800754B0 AD0A0004 */ sw $t2, 4($t0)
/* AEC654 800754B4 00809825 */ move $s3, $a0
/* AEC658 800754B8 AD0B0008 */ sw $t3, 8($t0)
/* AEC65C 800754BC 8C850000 */ lw $a1, ($a0)
/* AEC660 800754C0 3C068014 */ lui $a2, %hi(D_8013C66C) # $a2, 0x8014
/* AEC664 800754C4 24C6C66C */ addiu $a2, %lo(D_8013C66C) # addiu $a2, $a2, -0x3994
/* AEC668 800754C8 27A40098 */ addiu $a0, $sp, 0x98
/* AEC66C 800754CC 24070CB5 */ li $a3, 3253
/* AEC670 800754D0 0C031AB1 */ jal Graph_OpenDisps
/* AEC674 800754D4 00A09025 */ move $s2, $a1
/* AEC678 800754D8 3C018014 */ lui $at, %hi(D_8013C800)
/* AEC67C 800754DC C43EC800 */ lwc1 $f30, %lo(D_8013C800)($at)
/* AEC680 800754E0 3C018014 */ lui $at, %hi(D_8013C804)
/* AEC684 800754E4 C43CC804 */ lwc1 $f28, %lo(D_8013C804)($at)
/* AEC688 800754E8 3C0141B0 */ li $at, 0x41B00000 # 0.000000
/* AEC68C 800754EC 4481D000 */ mtc1 $at, $f26
/* AEC690 800754F0 3C018014 */ lui $at, %hi(D_8013C808)
/* AEC694 800754F4 C438C808 */ lwc1 $f24, %lo(D_8013C808)($at)
/* AEC698 800754F8 3C013F00 */ li $at, 0x3F000000 # 0.000000
/* AEC69C 800754FC 4481B000 */ mtc1 $at, $f22
/* AEC6A0 80075500 0000A025 */ move $s4, $zero
/* AEC6A4 80075504 24170002 */ li $s7, 2
.L80075508:
/* AEC6A8 80075508 3C0D8016 */ lui $t5, %hi(D_8015FD10)
/* AEC6AC 8007550C 25ADFD10 */ addiu $t5, %lo(D_8015FD10) # addiu $t5, $t5, -0x2f0
/* AEC6B0 80075510 00146140 */ sll $t4, $s4, 5
/* AEC6B4 80075514 018D8021 */ addu $s0, $t4, $t5
/* AEC6B8 80075518 92030000 */ lbu $v1, ($s0)
/* AEC6BC 8007551C 24010001 */ li $at, 1
/* AEC6C0 80075520 50600008 */ beql $v1, $zero, .L80075544
/* AEC6C4 80075524 C66E00E0 */ lwc1 $f14, 0xe0($s3)
/* AEC6C8 80075528 50610047 */ beql $v1, $at, .L80075648
/* AEC6CC 8007552C 920C001F */ lbu $t4, 0x1f($s0)
/* AEC6D0 80075530 5077004F */ beql $v1, $s7, .L80075670
/* AEC6D4 80075534 9202001E */ lbu $v0, 0x1e($s0)
/* AEC6D8 80075538 10000055 */ b .L80075690
/* AEC6DC 8007553C 00000000 */ nop
/* AEC6E0 80075540 C66E00E0 */ lwc1 $f14, 0xe0($s3)
.L80075544:
/* AEC6E4 80075544 C66400EC */ lwc1 $f4, 0xec($s3)
/* AEC6E8 80075548 C66600F4 */ lwc1 $f6, 0xf4($s3)
/* AEC6EC 8007554C C66800E8 */ lwc1 $f8, 0xe8($s3)
/* AEC6F0 80075550 460E2081 */ sub.s $f2, $f4, $f14
/* AEC6F4 80075554 46083301 */ sub.s $f12, $f6, $f8
/* AEC6F8 80075558 46021282 */ mul.s $f10, $f2, $f2
/* AEC6FC 8007555C 00000000 */ nop
/* AEC700 80075560 460C6402 */ mul.s $f16, $f12, $f12
/* AEC704 80075564 46105000 */ add.s $f0, $f10, $f16
/* AEC708 80075568 46000004 */ sqrt.s $f0, $f0
/* AEC70C 8007556C 46001483 */ div.s $f18, $f2, $f0
/* AEC710 80075570 46006503 */ div.s $f20, $f12, $f0
/* AEC714 80075574 461C9102 */ mul.s $f4, $f18, $f28
/* AEC718 80075578 46047180 */ add.s $f6, $f14, $f4
/* AEC71C 8007557C 0C03F66B */ jal Rand_ZeroOne
/* AEC720 80075580 E6060010 */ swc1 $f6, 0x10($s0)
/* AEC724 80075584 3C01447A */ li $at, 0x447A0000 # 0.000000
/* AEC728 80075588 44814000 */ mtc1 $at, $f8
/* AEC72C 8007558C 3C01457A */ li $at, 0x457A0000 # 0.000000
/* AEC730 80075590 44818000 */ mtc1 $at, $f16
/* AEC734 80075594 46080282 */ mul.s $f10, $f0, $f8
/* AEC738 80075598 46105480 */ add.s $f18, $f10, $f16
/* AEC73C 8007559C 461CA182 */ mul.s $f6, $f20, $f28
/* AEC740 800755A0 E6120014 */ swc1 $f18, 0x14($s0)
/* AEC744 800755A4 C66400E8 */ lwc1 $f4, 0xe8($s3)
/* AEC748 800755A8 46062200 */ add.s $f8, $f4, $f6
/* AEC74C 800755AC 0C03F66B */ jal Rand_ZeroOne
/* AEC750 800755B0 E6080018 */ swc1 $f8, 0x18($s0)
/* AEC754 800755B4 46160281 */ sub.s $f10, $f0, $f22
/* AEC758 800755B8 44809000 */ mtc1 $zero, $f18
/* AEC75C 800755BC 461E5402 */ mul.s $f16, $f10, $f30
/* AEC760 800755C0 E6120008 */ swc1 $f18, 8($s0)
/* AEC764 800755C4 0C03F66B */ jal Rand_ZeroOne
/* AEC768 800755C8 E6100004 */ swc1 $f16, 4($s0)
/* AEC76C 800755CC 46160101 */ sub.s $f4, $f0, $f22
/* AEC770 800755D0 A200001E */ sb $zero, 0x1e($s0)
/* AEC774 800755D4 461E2182 */ mul.s $f6, $f4, $f30
/* AEC778 800755D8 0C03F66B */ jal Rand_ZeroOne
/* AEC77C 800755DC E606000C */ swc1 $f6, 0xc($s0)
/* AEC780 800755E0 46160201 */ sub.s $f8, $f0, $f22
/* AEC784 800755E4 3C014220 */ li $at, 0x42200000 # 0.000000
/* AEC788 800755E8 44815000 */ mtc1 $at, $f10
/* AEC78C 800755EC 00000000 */ nop
/* AEC790 800755F0 460A4402 */ mul.s $f16, $f8, $f10
/* AEC794 800755F4 4600848D */ trunc.w.s $f18, $f16
/* AEC798 800755F8 440F9000 */ mfc1 $t7, $f18
/* AEC79C 800755FC 0C03F66B */ jal Rand_ZeroOne
/* AEC7A0 80075600 A20F001C */ sb $t7, 0x1c($s0)
/* AEC7A4 80075604 46160101 */ sub.s $f4, $f0, $f22
/* AEC7A8 80075608 3C014220 */ li $at, 0x42200000 # 0.000000
/* AEC7AC 8007560C 44813000 */ mtc1 $at, $f6
/* AEC7B0 80075610 920A0000 */ lbu $t2, ($s0)
/* AEC7B4 80075614 00144080 */ sll $t0, $s4, 2
/* AEC7B8 80075618 46062202 */ mul.s $f8, $f4, $f6
/* AEC7BC 8007561C 01144023 */ subu $t0, $t0, $s4
/* AEC7C0 80075620 25090003 */ addiu $t1, $t0, 3
/* AEC7C4 80075624 254B0001 */ addiu $t3, $t2, 1
/* AEC7C8 80075628 A209001F */ sb $t1, 0x1f($s0)
/* AEC7CC 8007562C A20B0000 */ sb $t3, ($s0)
/* AEC7D0 80075630 316300FF */ andi $v1, $t3, 0xff
/* AEC7D4 80075634 4600428D */ trunc.w.s $f10, $f8
/* AEC7D8 80075638 44195000 */ mfc1 $t9, $f10
/* AEC7DC 8007563C 10000014 */ b .L80075690
/* AEC7E0 80075640 A219001D */ sb $t9, 0x1d($s0)
/* AEC7E4 80075644 920C001F */ lbu $t4, 0x1f($s0)
.L80075648:
/* AEC7E8 80075648 258DFFFF */ addiu $t5, $t4, -1
/* AEC7EC 8007564C 31AE00FF */ andi $t6, $t5, 0xff
/* AEC7F0 80075650 1DC00004 */ bgtz $t6, .L80075664
/* AEC7F4 80075654 A20D001F */ sb $t5, 0x1f($s0)
/* AEC7F8 80075658 920F0000 */ lbu $t7, ($s0)
/* AEC7FC 8007565C 25F80001 */ addiu $t8, $t7, 1
/* AEC800 80075660 A2180000 */ sb $t8, ($s0)
.L80075664:
/* AEC804 80075664 1000000A */ b .L80075690
/* AEC808 80075668 92030000 */ lbu $v1, ($s0)
/* AEC80C 8007566C 9202001E */ lbu $v0, 0x1e($s0)
.L80075670:
/* AEC810 80075670 240800FF */ li $t0, 255
/* AEC814 80075674 28410007 */ slti $at, $v0, 7
/* AEC818 80075678 10200003 */ beqz $at, .L80075688
/* AEC81C 8007567C 24590001 */ addiu $t9, $v0, 1
/* AEC820 80075680 10000002 */ b .L8007568C
/* AEC824 80075684 A219001E */ sb $t9, 0x1e($s0)
.L80075688:
/* AEC828 80075688 A2080000 */ sb $t0, ($s0)
.L8007568C:
/* AEC82C 8007568C 92030000 */ lbu $v1, ($s0)
.L80075690:
/* AEC830 80075690 16E30069 */ bne $s7, $v1, .L80075838
/* AEC834 80075694 00003825 */ move $a3, $zero
/* AEC838 80075698 C6100004 */ lwc1 $f16, 4($s0)
/* AEC83C 8007569C C6120010 */ lwc1 $f18, 0x10($s0)
/* AEC840 800756A0 C608000C */ lwc1 $f8, 0xc($s0)
/* AEC844 800756A4 C60A0018 */ lwc1 $f10, 0x18($s0)
/* AEC848 800756A8 46128300 */ add.s $f12, $f16, $f18
/* AEC84C 800756AC C6040008 */ lwc1 $f4, 8($s0)
/* AEC850 800756B0 C6060014 */ lwc1 $f6, 0x14($s0)
/* AEC854 800756B4 460A4400 */ add.s $f16, $f8, $f10
/* AEC858 800756B8 3C150100 */ lui $s5, 0x100
/* AEC85C 800756BC 3C160403 */ lui $s6, %hi(gEffLightningDL) # $s6, 0x403
/* AEC860 800756C0 26D6CF30 */ addiu $s6, %lo(gEffLightningDL) # addiu $s6, $s6, -0x30d0
/* AEC864 800756C4 44068000 */ mfc1 $a2, $f16
/* AEC868 800756C8 26B50000 */ addiu $s5, $s5, 0
/* AEC86C 800756CC 0C034261 */ jal Matrix_Translate
/* AEC870 800756D0 46062380 */ add.s $f14, $f4, $f6
/* AEC874 800756D4 8209001C */ lb $t1, 0x1c($s0)
/* AEC878 800756D8 24050001 */ li $a1, 1
/* AEC87C 800756DC 44899000 */ mtc1 $t1, $f18
/* AEC880 800756E0 00000000 */ nop
/* AEC884 800756E4 46809120 */ cvt.s.w $f4, $f18
/* AEC888 800756E8 46182302 */ mul.s $f12, $f4, $f24
/* AEC88C 800756EC 0C0342DC */ jal Matrix_RotateX
/* AEC890 800756F0 00000000 */ nop
/* AEC894 800756F4 820A001D */ lb $t2, 0x1d($s0)
/* AEC898 800756F8 24050001 */ li $a1, 1
/* AEC89C 800756FC 448A3000 */ mtc1 $t2, $f6
/* AEC8A0 80075700 00000000 */ nop
/* AEC8A4 80075704 46803220 */ cvt.s.w $f8, $f6
/* AEC8A8 80075708 46184302 */ mul.s $f12, $f8, $f24
/* AEC8AC 8007570C 0C0343B5 */ jal Matrix_RotateZ
/* AEC8B0 80075710 00000000 */ nop
/* AEC8B4 80075714 3C0142C8 */ li $at, 0x42C80000 # 0.000000
/* AEC8B8 80075718 44817000 */ mtc1 $at, $f14
/* AEC8BC 8007571C 4406D000 */ mfc1 $a2, $f26
/* AEC8C0 80075720 4600D306 */ mov.s $f12, $f26
/* AEC8C4 80075724 0C0342A3 */ jal Matrix_Scale
/* AEC8C8 80075728 24070001 */ li $a3, 1
/* AEC8CC 8007572C 8E4202D0 */ lw $v0, 0x2d0($s2)
/* AEC8D0 80075730 3C0CFA00 */ lui $t4, 0xfa00
/* AEC8D4 80075734 240DFF80 */ li $t5, -128
/* AEC8D8 80075738 244B0008 */ addiu $t3, $v0, 8
/* AEC8DC 8007573C AE4B02D0 */ sw $t3, 0x2d0($s2)
/* AEC8E0 80075740 AC4C0000 */ sw $t4, ($v0)
/* AEC8E4 80075744 AC4D0004 */ sw $t5, 4($v0)
/* AEC8E8 80075748 8E4202D0 */ lw $v0, 0x2d0($s2)
/* AEC8EC 8007574C 3C1800FF */ lui $t8, (0x00FFFF80 >> 16) # lui $t8, 0xff
/* AEC8F0 80075750 3718FF80 */ ori $t8, (0x00FFFF80 & 0xFFFF) # ori $t8, $t8, 0xff80
/* AEC8F4 80075754 244E0008 */ addiu $t6, $v0, 8
/* AEC8F8 80075758 AE4E02D0 */ sw $t6, 0x2d0($s2)
/* AEC8FC 8007575C 3C0FFB00 */ lui $t7, 0xfb00
/* AEC900 80075760 AC4F0000 */ sw $t7, ($v0)
/* AEC904 80075764 AC580004 */ sw $t8, 4($v0)
/* AEC908 80075768 8E4202D0 */ lw $v0, 0x2d0($s2)
/* AEC90C 8007576C 3C08DA38 */ lui $t0, (0xDA380003 >> 16) # lui $t0, 0xda38
/* AEC910 80075770 35080003 */ ori $t0, (0xDA380003 & 0xFFFF) # ori $t0, $t0, 3
/* AEC914 80075774 24590008 */ addiu $t9, $v0, 8
/* AEC918 80075778 AE5902D0 */ sw $t9, 0x2d0($s2)
/* AEC91C 8007577C 3C058014 */ lui $a1, %hi(D_8013C67C) # $a1, 0x8014
/* AEC920 80075780 AC480000 */ sw $t0, ($v0)
/* AEC924 80075784 8E640000 */ lw $a0, ($s3)
/* AEC928 80075788 24A5C67C */ addiu $a1, %lo(D_8013C67C) # addiu $a1, $a1, -0x3984
/* AEC92C 8007578C 24060D05 */ li $a2, 3333
/* AEC930 80075790 0C0346A2 */ jal Matrix_NewMtx
/* AEC934 80075794 00408825 */ move $s1, $v0
/* AEC938 80075798 AE220004 */ sw $v0, 4($s1)
/* AEC93C 8007579C 8E4202D0 */ lw $v0, 0x2d0($s2)
/* AEC940 800757A0 3C0ADB06 */ lui $t2, (0xDB060020 >> 16) # lui $t2, 0xdb06
/* AEC944 800757A4 354A0020 */ ori $t2, (0xDB060020 & 0xFFFF) # ori $t2, $t2, 0x20
/* AEC948 800757A8 24490008 */ addiu $t1, $v0, 8
/* AEC94C 800757AC AE4902D0 */ sw $t1, 0x2d0($s2)
/* AEC950 800757B0 AC4A0000 */ sw $t2, ($v0)
/* AEC954 800757B4 920B001E */ lbu $t3, 0x1e($s0)
/* AEC958 800757B8 3C048012 */ lui $a0, %hi(D_8011FEA0)
/* AEC95C 800757BC 3C198016 */ lui $t9, %hi(gSegments)
/* AEC960 800757C0 000B6080 */ sll $t4, $t3, 2
/* AEC964 800757C4 008C2021 */ addu $a0, $a0, $t4
/* AEC968 800757C8 8C84FEA0 */ lw $a0, %lo(D_8011FEA0)($a0)
/* AEC96C 800757CC 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff
/* AEC970 800757D0 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff
/* AEC974 800757D4 00047100 */ sll $t6, $a0, 4
/* AEC978 800757D8 000E7F02 */ srl $t7, $t6, 0x1c
/* AEC97C 800757DC 000FC080 */ sll $t8, $t7, 2
/* AEC980 800757E0 0338C821 */ addu $t9, $t9, $t8
/* AEC984 800757E4 8F396FA8 */ lw $t9, %lo(gSegments)($t9)
/* AEC988 800757E8 00816824 */ and $t5, $a0, $at
/* AEC98C 800757EC 3C018000 */ lui $at, 0x8000
/* AEC990 800757F0 01B94021 */ addu $t0, $t5, $t9
/* AEC994 800757F4 01014821 */ addu $t1, $t0, $at
/* AEC998 800757F8 AC490004 */ sw $t1, 4($v0)
/* AEC99C 800757FC 0C025314 */ jal func_80094C50
/* AEC9A0 80075800 8E640000 */ lw $a0, ($s3)
/* AEC9A4 80075804 8E4202D0 */ lw $v0, 0x2d0($s2)
/* AEC9A8 80075808 3C0BDA38 */ lui $t3, (0xDA380001 >> 16) # lui $t3, 0xda38
/* AEC9AC 8007580C 356B0001 */ ori $t3, (0xDA380001 & 0xFFFF) # ori $t3, $t3, 1
/* AEC9B0 80075810 244A0008 */ addiu $t2, $v0, 8
/* AEC9B4 80075814 AE4A02D0 */ sw $t2, 0x2d0($s2)
/* AEC9B8 80075818 AC550004 */ sw $s5, 4($v0)
/* AEC9BC 8007581C AC4B0000 */ sw $t3, ($v0)
/* AEC9C0 80075820 8E4202D0 */ lw $v0, 0x2d0($s2)
/* AEC9C4 80075824 3C0EDE00 */ lui $t6, 0xde00
/* AEC9C8 80075828 244C0008 */ addiu $t4, $v0, 8
/* AEC9CC 8007582C AE4C02D0 */ sw $t4, 0x2d0($s2)
/* AEC9D0 80075830 AC560004 */ sw $s6, 4($v0)
/* AEC9D4 80075834 AC4E0000 */ sw $t6, ($v0)
.L80075838:
/* AEC9D8 80075838 26940001 */ addiu $s4, $s4, 1
/* AEC9DC 8007583C 0014A400 */ sll $s4, $s4, 0x10
/* AEC9E0 80075840 0014A403 */ sra $s4, $s4, 0x10
/* AEC9E4 80075844 2A810003 */ slti $at, $s4, 3
/* AEC9E8 80075848 1420FF2F */ bnez $at, .L80075508
/* AEC9EC 8007584C 00000000 */ nop
/* AEC9F0 80075850 3C068014 */ lui $a2, %hi(D_8013C68C) # $a2, 0x8014
/* AEC9F4 80075854 24C6C68C */ addiu $a2, %lo(D_8013C68C) # addiu $a2, $a2, -0x3974
/* AEC9F8 80075858 27A40098 */ addiu $a0, $sp, 0x98
/* AEC9FC 8007585C 8E650000 */ lw $a1, ($s3)
/* AECA00 80075860 0C031AD5 */ jal Graph_CloseDisps
/* AECA04 80075864 24070D19 */ li $a3, 3353
/* AECA08 80075868 8FBF0064 */ lw $ra, 0x64($sp)
/* AECA0C 8007586C D7B40010 */ ldc1 $f20, 0x10($sp)
/* AECA10 80075870 D7B60018 */ ldc1 $f22, 0x18($sp)
/* AECA14 80075874 D7B80020 */ ldc1 $f24, 0x20($sp)
/* AECA18 80075878 D7BA0028 */ ldc1 $f26, 0x28($sp)
/* AECA1C 8007587C D7BC0030 */ ldc1 $f28, 0x30($sp)
/* AECA20 80075880 D7BE0038 */ ldc1 $f30, 0x38($sp)
/* AECA24 80075884 8FB00044 */ lw $s0, 0x44($sp)
/* AECA28 80075888 8FB10048 */ lw $s1, 0x48($sp)
/* AECA2C 8007588C 8FB2004C */ lw $s2, 0x4c($sp)
/* AECA30 80075890 8FB30050 */ lw $s3, 0x50($sp)
/* AECA34 80075894 8FB40054 */ lw $s4, 0x54($sp)
/* AECA38 80075898 8FB50058 */ lw $s5, 0x58($sp)
/* AECA3C 8007589C 8FB6005C */ lw $s6, 0x5c($sp)
/* AECA40 800758A0 8FB70060 */ lw $s7, 0x60($sp)
/* AECA44 800758A4 03E00008 */ jr $ra
/* AECA48 800758A8 27BD00E0 */ addiu $sp, $sp, 0xe0

View file

@ -1,214 +0,0 @@
.rdata
glabel D_8013C69C
.asciz "\n\n\nBGMgame_play->sound_info.BGM=[%d] old_bgm=[%d]\n\n"
# EUC-JP: | Configuration
.balign 4
glabel D_8013C6D4
.asciz "\n-----------------\n"
.balign 4
glabel D_8013C6E8
.asciz "\n =[%d]"
# EUC-JP: | Forced BGM
.balign 4
glabel D_8013C6FC
.asciz "\n =[%d]"
# EUC-JP:
.balign 4
glabel D_8013C710
.asciz "\n =[%d]"
# EUC-JP: | Emblem?
.balign 4
glabel D_8013C724
.asciz "\n status=[%d]"
.balign 4
.text
glabel func_800758AC
/* AECA4C 800758AC 27BDFFE0 */ addiu $sp, $sp, -0x20
/* AECA50 800758B0 3C010001 */ lui $at, 1
/* AECA54 800758B4 AFBF0014 */ sw $ra, 0x14($sp)
/* AECA58 800758B8 AFA40020 */ sw $a0, 0x20($sp)
/* AECA5C 800758BC 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AECA60 800758C0 00240821 */ addu $at, $at, $a0
/* AECA64 800758C4 240E00FF */ li $t6, 255
/* AECA68 800758C8 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AECA6C 800758CC A02E0B04 */ sb $t6, 0xb04($at)
/* AECA70 800758D0 8D020000 */ lw $v0, ($t0)
/* AECA74 800758D4 240104DE */ li $at, 1246
/* AECA78 800758D8 10410003 */ beq $v0, $at, .L800758E8
/* AECA7C 800758DC 240105E0 */ li $at, 1504
/* AECA80 800758E0 54410007 */ bnel $v0, $at, .L80075900
/* AECA84 800758E4 9503140E */ lhu $v1, 0x140e($t0)
.L800758E8:
/* AECA88 800758E8 0C03DBED */ jal func_800F6FB4
/* AECA8C 800758EC 24040004 */ li $a0, 4
/* AECA90 800758F0 3C038016 */ lui $v1, %hi(gSaveContext+0x140e) # $v1, 0x8016
/* AECA94 800758F4 10000071 */ b .L80075ABC
/* AECA98 800758F8 9463FA6E */ lhu $v1, %lo(gSaveContext+0x140e)($v1)
/* AECA9C 800758FC 9503140E */ lhu $v1, 0x140e($t0)
.L80075900:
/* AECAA0 80075900 8FB80020 */ lw $t8, 0x20($sp)
/* AECAA4 80075904 5060000C */ beql $v1, $zero, .L80075938
/* AECAA8 80075908 930407A4 */ lbu $a0, 0x7a4($t8)
/* AECAAC 8007590C 0C01DD80 */ jal func_80077600
/* AECAB0 80075910 00000000 */ nop
/* AECAB4 80075914 14400003 */ bnez $v0, .L80075924
/* AECAB8 80075918 3C028016 */ lui $v0, %hi(gSaveContext+0x140e) # $v0, 0x8016
/* AECABC 8007591C 0C03E803 */ jal Audio_QueueSeqCmd
/* AECAC0 80075920 9444FA6E */ lhu $a0, %lo(gSaveContext+0x140e)($v0)
.L80075924:
/* AECAC4 80075924 3C018016 */ lui $at, %hi(gSaveContext+0x140e) # $at, 0x8016
/* AECAC8 80075928 A420FA6E */ sh $zero, %lo(gSaveContext+0x140e)($at)
/* AECACC 8007592C 10000063 */ b .L80075ABC
/* AECAD0 80075930 00001825 */ move $v1, $zero
/* AECAD4 80075934 930407A4 */ lbu $a0, 0x7a4($t8)
.L80075938:
/* AECAD8 80075938 2401007F */ li $at, 127
/* AECADC 8007593C 8FA90020 */ lw $t1, 0x20($sp)
/* AECAE0 80075940 1481000D */ bne $a0, $at, .L80075978
/* AECAE4 80075944 00803825 */ move $a3, $a0
/* AECAE8 80075948 930507A5 */ lbu $a1, 0x7a5($t8)
/* AECAEC 8007594C 24010013 */ li $at, 19
/* AECAF0 80075950 50A10079 */ beql $a1, $at, .L80075B38
/* AECAF4 80075954 8FBF0014 */ lw $ra, 0x14($sp)
/* AECAF8 80075958 911913E1 */ lbu $t9, 0x13e1($t0)
/* AECAFC 8007595C 10B90057 */ beq $a1, $t9, .L80075ABC
/* AECB00 80075960 00000000 */ nop
/* AECB04 80075964 0C03DBED */ jal func_800F6FB4
/* AECB08 80075968 30A400FF */ andi $a0, $a1, 0xff
/* AECB0C 8007596C 3C038016 */ lui $v1, %hi(gSaveContext+0x140e) # $v1, 0x8016
/* AECB10 80075970 10000052 */ b .L80075ABC
/* AECB14 80075974 9463FA6E */ lhu $v1, %lo(gSaveContext+0x140e)($v1)
.L80075978:
/* AECB18 80075978 912507A5 */ lbu $a1, 0x7a5($t1)
/* AECB1C 8007597C 24010013 */ li $at, 19
/* AECB20 80075980 14A10011 */ bne $a1, $at, .L800759C8
/* AECB24 80075984 00A03025 */ move $a2, $a1
/* AECB28 80075988 3C048014 */ lui $a0, %hi(D_8013C69C) # $a0, 0x8014
/* AECB2C 8007598C 2484C69C */ addiu $a0, %lo(D_8013C69C) # addiu $a0, $a0, -0x3964
/* AECB30 80075990 910613E0 */ lbu $a2, 0x13e0($t0)
/* AECB34 80075994 0C00084C */ jal osSyncPrintf
/* AECB38 80075998 00E02825 */ move $a1, $a3
/* AECB3C 8007599C 8FAA0020 */ lw $t2, 0x20($sp)
/* AECB40 800759A0 3C0B8016 */ lui $t3, %hi(gSaveContext+0x13e0) # $t3, 0x8016
/* AECB44 800759A4 916BFA40 */ lbu $t3, %lo(gSaveContext+0x13e0)($t3)
/* AECB48 800759A8 914407A4 */ lbu $a0, 0x7a4($t2)
/* AECB4C 800759AC 108B0003 */ beq $a0, $t3, .L800759BC
/* AECB50 800759B0 00000000 */ nop
/* AECB54 800759B4 0C03D554 */ jal func_800F5550
/* AECB58 800759B8 00000000 */ nop
.L800759BC:
/* AECB5C 800759BC 3C038016 */ lui $v1, %hi(gSaveContext+0x140e) # $v1, 0x8016
/* AECB60 800759C0 1000003E */ b .L80075ABC
/* AECB64 800759C4 9463FA6E */ lhu $v1, %lo(gSaveContext+0x140e)($v1)
.L800759C8:
/* AECB68 800759C8 9502000C */ lhu $v0, 0xc($t0)
/* AECB6C 800759CC 28414AAB */ slti $at, $v0, 0x4aab
/* AECB70 800759D0 14200012 */ bnez $at, .L80075A1C
/* AECB74 800759D4 3401B71D */ li $at, 46877
/* AECB78 800759D8 0041082A */ slt $at, $v0, $at
/* AECB7C 800759DC 50200010 */ beql $at, $zero, .L80075A20
/* AECB80 800759E0 910F13E1 */ lbu $t7, 0x13e1($t0)
/* AECB84 800759E4 910C13E0 */ lbu $t4, 0x13e0($t0)
/* AECB88 800759E8 50EC0006 */ beql $a3, $t4, .L80075A04
/* AECB8C 800759EC 8FAE0020 */ lw $t6, 0x20($sp)
/* AECB90 800759F0 0C03D554 */ jal func_800F5550
/* AECB94 800759F4 00000000 */ nop
/* AECB98 800759F8 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AECB9C 800759FC 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AECBA0 80075A00 8FAE0020 */ lw $t6, 0x20($sp)
.L80075A04:
/* AECBA4 80075A04 3C010001 */ lui $at, 1
/* AECBA8 80075A08 240D0001 */ li $t5, 1
/* AECBAC 80075A0C 002E0821 */ addu $at, $at, $t6
/* AECBB0 80075A10 A02D0B04 */ sb $t5, 0xb04($at)
/* AECBB4 80075A14 10000029 */ b .L80075ABC
/* AECBB8 80075A18 9503140E */ lhu $v1, 0x140e($t0)
.L80075A1C:
/* AECBBC 80075A1C 910F13E1 */ lbu $t7, 0x13e1($t0)
.L80075A20:
/* AECBC0 80075A20 50CF0008 */ beql $a2, $t7, .L80075A44
/* AECBC4 80075A24 3401B71D */ li $at, 46877
/* AECBC8 80075A28 0C03DBED */ jal func_800F6FB4
/* AECBCC 80075A2C 30A400FF */ andi $a0, $a1, 0xff
/* AECBD0 80075A30 3C028016 */ lui $v0, %hi(gSaveContext+0xc) # $v0, 0x8016
/* AECBD4 80075A34 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AECBD8 80075A38 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AECBDC 80075A3C 9442E66C */ lhu $v0, %lo(gSaveContext+0xc)($v0)
/* AECBE0 80075A40 3401B71D */ li $at, 46877
.L80075A44:
/* AECBE4 80075A44 0041082A */ slt $at, $v0, $at
/* AECBE8 80075A48 1420000A */ bnez $at, .L80075A74
/* AECBEC 80075A4C 3401CAAC */ li $at, 51884
/* AECBF0 80075A50 0041082A */ slt $at, $v0, $at
/* AECBF4 80075A54 10200007 */ beqz $at, .L80075A74
/* AECBF8 80075A58 8FB90020 */ lw $t9, 0x20($sp)
/* AECBFC 80075A5C 3C010001 */ lui $at, 1
/* AECC00 80075A60 00390821 */ addu $at, $at, $t9
/* AECC04 80075A64 24180003 */ li $t8, 3
/* AECC08 80075A68 A0380B04 */ sb $t8, 0xb04($at)
/* AECC0C 80075A6C 10000013 */ b .L80075ABC
/* AECC10 80075A70 9503140E */ lhu $v1, 0x140e($t0)
.L80075A74:
/* AECC14 80075A74 3401CAAD */ li $at, 51885
/* AECC18 80075A78 0041082A */ slt $at, $v0, $at
/* AECC1C 80075A7C 10200004 */ beqz $at, .L80075A90
/* AECC20 80075A80 8FAA0020 */ lw $t2, 0x20($sp)
/* AECC24 80075A84 28414555 */ slti $at, $v0, 0x4555
/* AECC28 80075A88 10200007 */ beqz $at, .L80075AA8
/* AECC2C 80075A8C 8FAC0020 */ lw $t4, 0x20($sp)
.L80075A90:
/* AECC30 80075A90 3C010001 */ lui $at, 1
/* AECC34 80075A94 002A0821 */ addu $at, $at, $t2
/* AECC38 80075A98 24090005 */ li $t1, 5
/* AECC3C 80075A9C A0290B04 */ sb $t1, 0xb04($at)
/* AECC40 80075AA0 10000006 */ b .L80075ABC
/* AECC44 80075AA4 9503140E */ lhu $v1, 0x140e($t0)
.L80075AA8:
/* AECC48 80075AA8 3C010001 */ lui $at, 1
/* AECC4C 80075AAC 002C0821 */ addu $at, $at, $t4
/* AECC50 80075AB0 240B0007 */ li $t3, 7
/* AECC54 80075AB4 A02B0B04 */ sb $t3, 0xb04($at)
/* AECC58 80075AB8 9503140E */ lhu $v1, 0x140e($t0)
.L80075ABC:
/* AECC5C 80075ABC 3C048014 */ lui $a0, %hi(D_8013C6D4) # $a0, 0x8014
/* AECC60 80075AC0 2484C6D4 */ addiu $a0, %lo(D_8013C6D4) # addiu $a0, $a0, -0x392c
/* AECC64 80075AC4 0C00084C */ jal osSyncPrintf
/* AECC68 80075AC8 3065FFFF */ andi $a1, $v1, 0xffff
/* AECC6C 80075ACC 3C028016 */ lui $v0, %hi(gSaveContext+0x140e) # $v0, 0x8016
/* AECC70 80075AD0 3C048014 */ lui $a0, %hi(D_8013C6E8) # $a0, 0x8014
/* AECC74 80075AD4 2484C6E8 */ addiu $a0, %lo(D_8013C6E8) # addiu $a0, $a0, -0x3918
/* AECC78 80075AD8 0C00084C */ jal osSyncPrintf
/* AECC7C 80075ADC 9445FA6E */ lhu $a1, %lo(gSaveContext+0x140e)($v0)
/* AECC80 80075AE0 8FAD0020 */ lw $t5, 0x20($sp)
/* AECC84 80075AE4 3C048014 */ lui $a0, %hi(D_8013C6FC) # $a0, 0x8014
/* AECC88 80075AE8 2484C6FC */ addiu $a0, %lo(D_8013C6FC) # addiu $a0, $a0, -0x3904
/* AECC8C 80075AEC 0C00084C */ jal osSyncPrintf
/* AECC90 80075AF0 91A507A4 */ lbu $a1, 0x7a4($t5)
/* AECC94 80075AF4 8FAE0020 */ lw $t6, 0x20($sp)
/* AECC98 80075AF8 3C048014 */ lui $a0, %hi(D_8013C710) # $a0, 0x8014
/* AECC9C 80075AFC 2484C710 */ addiu $a0, %lo(D_8013C710) # addiu $a0, $a0, -0x38f0
/* AECCA0 80075B00 0C00084C */ jal osSyncPrintf
/* AECCA4 80075B04 91C507A5 */ lbu $a1, 0x7a5($t6)
/* AECCA8 80075B08 8FA20020 */ lw $v0, 0x20($sp)
/* AECCAC 80075B0C 3C010001 */ lui $at, 1
/* AECCB0 80075B10 3C048014 */ lui $a0, %hi(D_8013C724) # $a0, 0x8014
/* AECCB4 80075B14 00411021 */ addu $v0, $v0, $at
/* AECCB8 80075B18 90450B04 */ lbu $a1, 0xb04($v0)
/* AECCBC 80075B1C AFA20018 */ sw $v0, 0x18($sp)
/* AECCC0 80075B20 0C00084C */ jal osSyncPrintf
/* AECCC4 80075B24 2484C724 */ addiu $a0, %lo(D_8013C724) # addiu $a0, $a0, -0x38dc
/* AECCC8 80075B28 8FA20018 */ lw $v0, 0x18($sp)
/* AECCCC 80075B2C 0C03D9B0 */ jal Audio_SetEnvReverb
/* AECCD0 80075B30 80441CC0 */ lb $a0, 0x1cc0($v0)
/* AECCD4 80075B34 8FBF0014 */ lw $ra, 0x14($sp)
.L80075B38:
/* AECCD8 80075B38 27BD0020 */ addiu $sp, $sp, 0x20
/* AECCDC 80075B3C 03E00008 */ jr $ra
/* AECCE0 80075B40 00000000 */ nop

View file

@ -1,240 +0,0 @@
.rdata
glabel D_8013C738
.asciz "\n\n\nNa_StartMorinigBgm\n\n"
.balign 4
.late_rodata
glabel jtbl_8013C80C
.word L80075B84
.word L80075BD8
.word L80075C30
.word L80075C6C
.word L80075CB4
.word L80075CE0
.word L80075D30
.word L80075DE4
.word L80075E34
.text
glabel func_80075B44
/* AECCE4 80075B44 27BDFFE0 */ addiu $sp, $sp, -0x20
/* AECCE8 80075B48 AFB00014 */ sw $s0, 0x14($sp)
/* AECCEC 80075B4C 3C010001 */ lui $at, 1
/* AECCF0 80075B50 AFBF001C */ sw $ra, 0x1c($sp)
/* AECCF4 80075B54 AFB10018 */ sw $s1, 0x18($sp)
/* AECCF8 80075B58 00818021 */ addu $s0, $a0, $at
/* AECCFC 80075B5C 92020B04 */ lbu $v0, 0xb04($s0)
/* AECD00 80075B60 00808825 */ move $s1, $a0
/* AECD04 80075B64 2C410009 */ sltiu $at, $v0, 9
/* AECD08 80075B68 102000BA */ beqz $at, .L80075E54
/* AECD0C 80075B6C 00027080 */ sll $t6, $v0, 2
/* AECD10 80075B70 3C018014 */ lui $at, %hi(jtbl_8013C80C)
/* AECD14 80075B74 002E0821 */ addu $at, $at, $t6
/* AECD18 80075B78 8C2EC80C */ lw $t6, %lo(jtbl_8013C80C)($at)
/* AECD1C 80075B7C 01C00008 */ jr $t6
/* AECD20 80075B80 00000000 */ nop
glabel L80075B84
/* AECD24 80075B84 24040056 */ li $a0, 86
/* AECD28 80075B88 24050001 */ li $a1, 1
/* AECD2C 80075B8C 0C03DB56 */ jal func_800F6D58
/* AECD30 80075B90 00003025 */ move $a2, $zero
/* AECD34 80075B94 920F0B12 */ lbu $t7, 0xb12($s0)
/* AECD38 80075B98 55E0000A */ bnezl $t7, .L80075BC4
/* AECD3C 80075B9C 92190B04 */ lbu $t9, 0xb04($s0)
/* AECD40 80075BA0 92180B16 */ lbu $t8, 0xb16($s0)
/* AECD44 80075BA4 3C048014 */ lui $a0, %hi(D_8013C738) # $a0, 0x8014
/* AECD48 80075BA8 57000006 */ bnezl $t8, .L80075BC4
/* AECD4C 80075BAC 92190B04 */ lbu $t9, 0xb04($s0)
/* AECD50 80075BB0 0C00084C */ jal osSyncPrintf
/* AECD54 80075BB4 2484C738 */ addiu $a0, %lo(D_8013C738) # addiu $a0, $a0, -0x38c8
/* AECD58 80075BB8 0C03D544 */ jal func_800F5510
/* AECD5C 80075BBC 922407A4 */ lbu $a0, 0x7a4($s1)
/* AECD60 80075BC0 92190B04 */ lbu $t9, 0xb04($s0)
.L80075BC4:
/* AECD64 80075BC4 3C010001 */ lui $at, 1
/* AECD68 80075BC8 00310821 */ addu $at, $at, $s1
/* AECD6C 80075BCC 27280001 */ addiu $t0, $t9, 1
/* AECD70 80075BD0 100000A0 */ b .L80075E54
/* AECD74 80075BD4 A0280B04 */ sb $t0, 0xb04($at)
glabel L80075BD8
/* AECD78 80075BD8 3C038016 */ lui $v1, %hi(gSaveContext) # $v1, 0x8016
/* AECD7C 80075BDC 2463E660 */ addiu $v1, %lo(gSaveContext) # addiu $v1, $v1, -0x19a0
/* AECD80 80075BE0 9469000C */ lhu $t1, 0xc($v1)
/* AECD84 80075BE4 3401B71D */ li $at, 46877
/* AECD88 80075BE8 0121082A */ slt $at, $t1, $at
/* AECD8C 80075BEC 5420009A */ bnezl $at, .L80075E58
/* AECD90 80075BF0 8FBF001C */ lw $ra, 0x1c($sp)
/* AECD94 80075BF4 920A0B12 */ lbu $t2, 0xb12($s0)
/* AECD98 80075BF8 55400009 */ bnezl $t2, .L80075C20
/* AECD9C 80075BFC 3C010001 */ lui $at, 1
/* AECDA0 80075C00 920B0B16 */ lbu $t3, 0xb16($s0)
/* AECDA4 80075C04 3C0410F0 */ lui $a0, (0x10F000FF >> 16) # lui $a0, 0x10f0
/* AECDA8 80075C08 55600005 */ bnezl $t3, .L80075C20
/* AECDAC 80075C0C 3C010001 */ lui $at, 1
/* AECDB0 80075C10 0C03E803 */ jal Audio_QueueSeqCmd
/* AECDB4 80075C14 348400FF */ ori $a0, (0x10F000FF & 0xFFFF) # ori $a0, $a0, 0xff
/* AECDB8 80075C18 92020B04 */ lbu $v0, 0xb04($s0)
/* AECDBC 80075C1C 3C010001 */ lui $at, 1
.L80075C20:
/* AECDC0 80075C20 00310821 */ addu $at, $at, $s1
/* AECDC4 80075C24 244C0001 */ addiu $t4, $v0, 1
/* AECDC8 80075C28 1000008A */ b .L80075E54
/* AECDCC 80075C2C A02C0B04 */ sb $t4, 0xb04($at)
glabel L80075C30
/* AECDD0 80075C30 3C038016 */ lui $v1, %hi(gSaveContext) # $v1, 0x8016
/* AECDD4 80075C34 2463E660 */ addiu $v1, %lo(gSaveContext) # addiu $v1, $v1, -0x19a0
/* AECDD8 80075C38 946D000C */ lhu $t5, 0xc($v1)
/* AECDDC 80075C3C 3401C001 */ li $at, 49153
/* AECDE0 80075C40 01A1082A */ slt $at, $t5, $at
/* AECDE4 80075C44 54200084 */ bnezl $at, .L80075E58
/* AECDE8 80075C48 8FBF001C */ lw $ra, 0x1c($sp)
/* AECDEC 80075C4C 0C01E233 */ jal func_800788CC
/* AECDF0 80075C50 240428AE */ li $a0, 10414
/* AECDF4 80075C54 920E0B04 */ lbu $t6, 0xb04($s0)
/* AECDF8 80075C58 3C010001 */ lui $at, 1
/* AECDFC 80075C5C 00310821 */ addu $at, $at, $s1
/* AECE00 80075C60 25CF0001 */ addiu $t7, $t6, 1
/* AECE04 80075C64 1000007B */ b .L80075E54
/* AECE08 80075C68 A02F0B04 */ sb $t7, 0xb04($at)
glabel L80075C6C
/* AECE0C 80075C6C 92180B12 */ lbu $t8, 0xb12($s0)
/* AECE10 80075C70 5700000C */ bnezl $t8, .L80075CA4
/* AECE14 80075C74 3C010001 */ lui $at, 1
/* AECE18 80075C78 92190B16 */ lbu $t9, 0xb16($s0)
/* AECE1C 80075C7C 57200009 */ bnezl $t9, .L80075CA4
/* AECE20 80075C80 3C010001 */ lui $at, 1
/* AECE24 80075C84 0C03DBED */ jal func_800F6FB4
/* AECE28 80075C88 922407A5 */ lbu $a0, 0x7a5($s1)
/* AECE2C 80075C8C 24040001 */ li $a0, 1
/* AECE30 80075C90 24050001 */ li $a1, 1
/* AECE34 80075C94 0C03DB56 */ jal func_800F6D58
/* AECE38 80075C98 24060001 */ li $a2, 1
/* AECE3C 80075C9C 92020B04 */ lbu $v0, 0xb04($s0)
/* AECE40 80075CA0 3C010001 */ lui $at, 1
.L80075CA4:
/* AECE44 80075CA4 00310821 */ addu $at, $at, $s1
/* AECE48 80075CA8 24480001 */ addiu $t0, $v0, 1
/* AECE4C 80075CAC 10000069 */ b .L80075E54
/* AECE50 80075CB0 A0280B04 */ sb $t0, 0xb04($at)
glabel L80075CB4
/* AECE54 80075CB4 3C038016 */ lui $v1, %hi(gSaveContext) # $v1, 0x8016
/* AECE58 80075CB8 2463E660 */ addiu $v1, %lo(gSaveContext) # addiu $v1, $v1, -0x19a0
/* AECE5C 80075CBC 9469000C */ lhu $t1, 0xc($v1)
/* AECE60 80075CC0 3401CAAC */ li $at, 51884
/* AECE64 80075CC4 244A0001 */ addiu $t2, $v0, 1
/* AECE68 80075CC8 0121082A */ slt $at, $t1, $at
/* AECE6C 80075CCC 14200061 */ bnez $at, .L80075E54
/* AECE70 80075CD0 3C010001 */ lui $at, 1
/* AECE74 80075CD4 00310821 */ addu $at, $at, $s1
/* AECE78 80075CD8 1000005E */ b .L80075E54
/* AECE7C 80075CDC A02A0B04 */ sb $t2, 0xb04($at)
glabel L80075CE0
/* AECE80 80075CE0 24040001 */ li $a0, 1
/* AECE84 80075CE4 24050001 */ li $a1, 1
/* AECE88 80075CE8 0C03DB56 */ jal func_800F6D58
/* AECE8C 80075CEC 00003025 */ move $a2, $zero
/* AECE90 80075CF0 920B0B12 */ lbu $t3, 0xb12($s0)
/* AECE94 80075CF4 55600009 */ bnezl $t3, .L80075D1C
/* AECE98 80075CF8 920D0B04 */ lbu $t5, 0xb04($s0)
/* AECE9C 80075CFC 920C0B16 */ lbu $t4, 0xb16($s0)
/* AECEA0 80075D00 24040024 */ li $a0, 36
/* AECEA4 80075D04 24050001 */ li $a1, 1
/* AECEA8 80075D08 55800004 */ bnezl $t4, .L80075D1C
/* AECEAC 80075D0C 920D0B04 */ lbu $t5, 0xb04($s0)
/* AECEB0 80075D10 0C03DB56 */ jal func_800F6D58
/* AECEB4 80075D14 24060001 */ li $a2, 1
/* AECEB8 80075D18 920D0B04 */ lbu $t5, 0xb04($s0)
.L80075D1C:
/* AECEBC 80075D1C 3C010001 */ lui $at, 1
/* AECEC0 80075D20 00310821 */ addu $at, $at, $s1
/* AECEC4 80075D24 25AE0001 */ addiu $t6, $t5, 1
/* AECEC8 80075D28 1000004A */ b .L80075E54
/* AECECC 80075D2C A02E0B04 */ sb $t6, 0xb04($at)
glabel L80075D30
/* AECED0 80075D30 3C038016 */ lui $v1, %hi(gSaveContext) # $v1, 0x8016
/* AECED4 80075D34 2463E660 */ addiu $v1, %lo(gSaveContext) # addiu $v1, $v1, -0x19a0
/* AECED8 80075D38 9462000C */ lhu $v0, 0xc($v1)
/* AECEDC 80075D3C 3401CAAC */ li $at, 51884
/* AECEE0 80075D40 0041082A */ slt $at, $v0, $at
/* AECEE4 80075D44 10200043 */ beqz $at, .L80075E54
/* AECEE8 80075D48 28414556 */ slti $at, $v0, 0x4556
/* AECEEC 80075D4C 14200041 */ bnez $at, .L80075E54
/* AECEF0 80075D50 24090001 */ li $t1, 1
/* AECEF4 80075D54 8C6F0014 */ lw $t7, 0x14($v1)
/* AECEF8 80075D58 8C790018 */ lw $t9, 0x18($v1)
/* AECEFC 80075D5C A069141C */ sb $t1, 0x141c($v1)
/* AECF00 80075D60 25F80001 */ addiu $t8, $t7, 1
/* AECF04 80075D64 27280001 */ addiu $t0, $t9, 1
/* AECF08 80075D68 AC780014 */ sw $t8, 0x14($v1)
/* AECF0C 80075D6C AC680018 */ sw $t0, 0x18($v1)
/* AECF10 80075D70 0C01E221 */ jal func_80078884
/* AECF14 80075D74 24042813 */ li $a0, 10259
/* AECF18 80075D78 02202025 */ move $a0, $s1
/* AECF1C 80075D7C 24050021 */ li $a1, 33
/* AECF20 80075D80 0C021A79 */ jal Inventory_ReplaceItem
/* AECF24 80075D84 24060022 */ li $a2, 34
/* AECF28 80075D88 14400006 */ bnez $v0, .L80075DA4
/* AECF2C 80075D8C 02202025 */ move $a0, $s1
/* AECF30 80075D90 2405002D */ li $a1, 45
/* AECF34 80075D94 0C021A79 */ jal Inventory_ReplaceItem
/* AECF38 80075D98 2406002E */ li $a2, 46
/* AECF3C 80075D9C 5040000C */ beql $v0, $zero, .L80075DD0
/* AECF40 80075DA0 920B0B04 */ lbu $t3, 0xb04($s0)
.L80075DA4:
/* AECF44 80075DA4 922A1D6C */ lbu $t2, 0x1d6c($s1)
/* AECF48 80075DA8 55400009 */ bnezl $t2, .L80075DD0
/* AECF4C 80075DAC 920B0B04 */ lbu $t3, 0xb04($s0)
/* AECF50 80075DB0 0C023A62 */ jal Player_InCsMode
/* AECF54 80075DB4 02202025 */ move $a0, $s1
/* AECF58 80075DB8 14400004 */ bnez $v0, .L80075DCC
/* AECF5C 80075DBC 02202025 */ move $a0, $s1
/* AECF60 80075DC0 24053066 */ li $a1, 12390
/* AECF64 80075DC4 0C042DA0 */ jal func_8010B680
/* AECF68 80075DC8 00003025 */ move $a2, $zero
.L80075DCC:
/* AECF6C 80075DCC 920B0B04 */ lbu $t3, 0xb04($s0)
.L80075DD0:
/* AECF70 80075DD0 3C010001 */ lui $at, 1
/* AECF74 80075DD4 00310821 */ addu $at, $at, $s1
/* AECF78 80075DD8 256C0001 */ addiu $t4, $t3, 1
/* AECF7C 80075DDC 1000001D */ b .L80075E54
/* AECF80 80075DE0 A02C0B04 */ sb $t4, 0xb04($at)
glabel L80075DE4
/* AECF84 80075DE4 24040024 */ li $a0, 36
/* AECF88 80075DE8 24050001 */ li $a1, 1
/* AECF8C 80075DEC 0C03DB56 */ jal func_800F6D58
/* AECF90 80075DF0 00003025 */ move $a2, $zero
/* AECF94 80075DF4 920D0B12 */ lbu $t5, 0xb12($s0)
/* AECF98 80075DF8 55A00009 */ bnezl $t5, .L80075E20
/* AECF9C 80075DFC 920F0B04 */ lbu $t7, 0xb04($s0)
/* AECFA0 80075E00 920E0B16 */ lbu $t6, 0xb16($s0)
/* AECFA4 80075E04 24040056 */ li $a0, 86
/* AECFA8 80075E08 24050001 */ li $a1, 1
/* AECFAC 80075E0C 55C00004 */ bnezl $t6, .L80075E20
/* AECFB0 80075E10 920F0B04 */ lbu $t7, 0xb04($s0)
/* AECFB4 80075E14 0C03DB56 */ jal func_800F6D58
/* AECFB8 80075E18 24060001 */ li $a2, 1
/* AECFBC 80075E1C 920F0B04 */ lbu $t7, 0xb04($s0)
.L80075E20:
/* AECFC0 80075E20 3C010001 */ lui $at, 1
/* AECFC4 80075E24 00310821 */ addu $at, $at, $s1
/* AECFC8 80075E28 25F80001 */ addiu $t8, $t7, 1
/* AECFCC 80075E2C 10000009 */ b .L80075E54
/* AECFD0 80075E30 A0380B04 */ sb $t8, 0xb04($at)
glabel L80075E34
/* AECFD4 80075E34 3C038016 */ lui $v1, %hi(gSaveContext) # $v1, 0x8016
/* AECFD8 80075E38 2463E660 */ addiu $v1, %lo(gSaveContext) # addiu $v1, $v1, -0x19a0
/* AECFDC 80075E3C 9479000C */ lhu $t9, 0xc($v1)
/* AECFE0 80075E40 2B214AAC */ slti $at, $t9, 0x4aac
/* AECFE4 80075E44 14200003 */ bnez $at, .L80075E54
/* AECFE8 80075E48 3C010001 */ lui $at, 1
/* AECFEC 80075E4C 00310821 */ addu $at, $at, $s1
/* AECFF0 80075E50 A0200B04 */ sb $zero, 0xb04($at)
.L80075E54:
/* AECFF4 80075E54 8FBF001C */ lw $ra, 0x1c($sp)
.L80075E58:
/* AECFF8 80075E58 8FB00014 */ lw $s0, 0x14($sp)
/* AECFFC 80075E5C 8FB10018 */ lw $s1, 0x18($sp)
/* AED000 80075E60 03E00008 */ jr $ra
/* AED004 80075E64 27BD0020 */ addiu $sp, $sp, 0x20

View file

@ -1,46 +0,0 @@
glabel func_80075E68
/* AED008 80075E68 3C0E8016 */ lui $t6, %hi(D_8015FCF0) # $t6, 0x8016
/* AED00C 80075E6C 91CEFCF0 */ lbu $t6, %lo(D_8015FCF0)($t6)
/* AED010 80075E70 27BDFFB8 */ addiu $sp, $sp, -0x48
/* AED014 80075E74 AFBF0034 */ sw $ra, 0x34($sp)
/* AED018 80075E78 11C00022 */ beqz $t6, .L80075F04
/* AED01C 80075E7C 3C028016 */ lui $v0, %hi(D_8015FCF8) # $v0, 0x8016
/* AED020 80075E80 2442FCF8 */ addiu $v0, %lo(D_8015FCF8) # addiu $v0, $v0, -0x308
/* AED024 80075E84 C4440000 */ lwc1 $f4, ($v0)
/* AED028 80075E88 C4460004 */ lwc1 $f6, 4($v0)
/* AED02C 80075E8C C4480008 */ lwc1 $f8, 8($v0)
/* AED030 80075E90 27AF003C */ addiu $t7, $sp, 0x3c
/* AED034 80075E94 E7A4003C */ swc1 $f4, 0x3c($sp)
/* AED038 80075E98 E7A60040 */ swc1 $f6, 0x40($sp)
/* AED03C 80075E9C E7A80044 */ swc1 $f8, 0x44($sp)
/* AED040 80075EA0 8DF90000 */ lw $t9, ($t7)
/* AED044 80075EA4 8C870000 */ lw $a3, ($a0)
/* AED048 80075EA8 3C010001 */ lui $at, (0x00010A24 >> 16) # lui $at, 1
/* AED04C 80075EAC AFB90010 */ sw $t9, 0x10($sp)
/* AED050 80075EB0 8DF80004 */ lw $t8, 4($t7)
/* AED054 80075EB4 34210A24 */ ori $at, (0x00010A24 & 0xFFFF) # ori $at, $at, 0xa24
/* AED058 80075EB8 00812821 */ addu $a1, $a0, $at
/* AED05C 80075EBC AFB80014 */ sw $t8, 0x14($sp)
/* AED060 80075EC0 8DF90008 */ lw $t9, 8($t7)
/* AED064 80075EC4 3C018016 */ lui $at, %hi(D_8015FD08)
/* AED068 80075EC8 3C088016 */ lui $t0, %hi(D_8015FD04) # $t0, 0x8016
/* AED06C 80075ECC 3C098016 */ lui $t1, %hi(D_8015FD06) # $t1, 0x8016
/* AED070 80075ED0 3C0A8016 */ lui $t2, %hi(D_8015FD0C) # $t2, 0x8016
/* AED074 80075ED4 854AFD0C */ lh $t2, %lo(D_8015FD0C)($t2)
/* AED078 80075ED8 8529FD06 */ lh $t1, %lo(D_8015FD06)($t1)
/* AED07C 80075EDC 8508FD04 */ lh $t0, %lo(D_8015FD04)($t0)
/* AED080 80075EE0 C42AFD08 */ lwc1 $f10, %lo(D_8015FD08)($at)
/* AED084 80075EE4 AFA0002C */ sw $zero, 0x2c($sp)
/* AED088 80075EE8 248600B8 */ addiu $a2, $a0, 0xb8
/* AED08C 80075EEC AFB90018 */ sw $t9, 0x18($sp)
/* AED090 80075EF0 AFAA0028 */ sw $t2, 0x28($sp)
/* AED094 80075EF4 AFA90020 */ sw $t1, 0x20($sp)
/* AED098 80075EF8 AFA8001C */ sw $t0, 0x1c($sp)
/* AED09C 80075EFC 0C01CE97 */ jal func_80073A5C
/* AED0A0 80075F00 E7AA0024 */ swc1 $f10, 0x24($sp)
.L80075F04:
/* AED0A4 80075F04 8FBF0034 */ lw $ra, 0x34($sp)
/* AED0A8 80075F08 27BD0048 */ addiu $sp, $sp, 0x48
/* AED0AC 80075F0C 03E00008 */ jr $ra
/* AED0B0 80075F10 00000000 */ nop

View file

@ -1,32 +0,0 @@
glabel func_800766C4
/* AED864 800766C4 3C010001 */ lui $at, 1
/* AED868 800766C8 00811021 */ addu $v0, $a0, $at
/* AED86C 800766CC 90430B16 */ lbu $v1, 0xb16($v0)
/* AED870 800766D0 90450B12 */ lbu $a1, 0xb12($v0)
/* AED874 800766D4 306600FF */ andi $a2, $v1, 0xff
/* AED878 800766D8 0065082A */ slt $at, $v1, $a1
/* AED87C 800766DC 10200003 */ beqz $at, .L800766EC
/* AED880 800766E0 00000000 */ nop
/* AED884 800766E4 10000001 */ b .L800766EC
/* AED888 800766E8 30A600FF */ andi $a2, $a1, 0xff
.L800766EC:
/* AED88C 800766EC 90450B13 */ lbu $a1, 0xb13($v0)
/* AED890 800766F0 10C5000C */ beq $a2, $a1, .L80076724
/* AED894 800766F4 00000000 */ nop
/* AED898 800766F8 8C8E009C */ lw $t6, 0x9c($a0)
/* AED89C 800766FC 00A6082A */ slt $at, $a1, $a2
/* AED8A0 80076700 31CF0007 */ andi $t7, $t6, 7
/* AED8A4 80076704 15E00007 */ bnez $t7, .L80076724
/* AED8A8 80076708 00000000 */ nop
/* AED8AC 8007670C 10200004 */ beqz $at, .L80076720
/* AED8B0 80076710 24B9FFFE */ addiu $t9, $a1, -2
/* AED8B4 80076714 24B80002 */ addiu $t8, $a1, 2
/* AED8B8 80076718 03E00008 */ jr $ra
/* AED8BC 8007671C A0580B13 */ sb $t8, 0xb13($v0)
.L80076720:
/* AED8C0 80076720 A0590B13 */ sb $t9, 0xb13($v0)
.L80076724:
/* AED8C4 80076724 03E00008 */ jr $ra
/* AED8C8 80076728 00000000 */ nop

View file

@ -1,146 +0,0 @@
.rdata
glabel D_8013C750
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C760
.asciz "../z_kankyo.c"
.balign 4
.text
glabel func_8007672C
/* AED8CC 8007672C 27BDFFA0 */ addiu $sp, $sp, -0x60
/* AED8D0 80076730 93AE0073 */ lbu $t6, 0x73($sp)
/* AED8D4 80076734 AFB00018 */ sw $s0, 0x18($sp)
/* AED8D8 80076738 00808025 */ move $s0, $a0
/* AED8DC 8007673C AFBF001C */ sw $ra, 0x1c($sp)
/* AED8E0 80076740 AFA50064 */ sw $a1, 0x64($sp)
/* AED8E4 80076744 AFA60068 */ sw $a2, 0x68($sp)
/* AED8E8 80076748 11C00075 */ beqz $t6, .L80076920
/* AED8EC 8007674C AFA7006C */ sw $a3, 0x6c($sp)
/* AED8F0 80076750 3C068014 */ lui $a2, %hi(D_8013C750) # $a2, 0x8014
/* AED8F4 80076754 24C6C750 */ addiu $a2, %lo(D_8013C750) # addiu $a2, $a2, -0x38b0
/* AED8F8 80076758 27A4004C */ addiu $a0, $sp, 0x4c
/* AED8FC 8007675C 02002825 */ move $a1, $s0
/* AED900 80076760 0C031AB1 */ jal Graph_OpenDisps
/* AED904 80076764 24070EFB */ li $a3, 3835
/* AED908 80076768 93A50077 */ lbu $a1, 0x77($sp)
/* AED90C 8007676C 30AF0001 */ andi $t7, $a1, 1
/* AED910 80076770 51E0002D */ beql $t7, $zero, .L80076828
/* AED914 80076774 30AB0002 */ andi $t3, $a1, 2
/* AED918 80076778 8E0402C0 */ lw $a0, 0x2c0($s0)
/* AED91C 8007677C 0C024DF0 */ jal func_800937C0
/* AED920 80076780 AFA50024 */ sw $a1, 0x24($sp)
/* AED924 80076784 8FA50024 */ lw $a1, 0x24($sp)
/* AED928 80076788 AE0202C0 */ sw $v0, 0x2c0($s0)
/* AED92C 8007678C 24580008 */ addiu $t8, $v0, 8
/* AED930 80076790 AE1802C0 */ sw $t8, 0x2c0($s0)
/* AED934 80076794 3C19FA00 */ lui $t9, 0xfa00
/* AED938 80076798 AC590000 */ sw $t9, ($v0)
/* AED93C 8007679C 93AC006B */ lbu $t4, 0x6b($sp)
/* AED940 800767A0 93A90067 */ lbu $t1, 0x67($sp)
/* AED944 800767A4 93B8006F */ lbu $t8, 0x6f($sp)
/* AED948 800767A8 93AB0073 */ lbu $t3, 0x73($sp)
/* AED94C 800767AC 000C6C00 */ sll $t5, $t4, 0x10
/* AED950 800767B0 00095600 */ sll $t2, $t1, 0x18
/* AED954 800767B4 014D7025 */ or $t6, $t2, $t5
/* AED958 800767B8 0018CA00 */ sll $t9, $t8, 8
/* AED95C 800767BC 01D94025 */ or $t0, $t6, $t9
/* AED960 800767C0 010B6025 */ or $t4, $t0, $t3
/* AED964 800767C4 AC4C0004 */ sw $t4, 4($v0)
/* AED968 800767C8 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AED96C 800767CC 3C0DE300 */ lui $t5, (0xE3001A01 >> 16) # lui $t5, 0xe300
/* AED970 800767D0 35AD1A01 */ ori $t5, (0xE3001A01 & 0xFFFF) # ori $t5, $t5, 0x1a01
/* AED974 800767D4 244A0008 */ addiu $t2, $v0, 8
/* AED978 800767D8 AE0A02C0 */ sw $t2, 0x2c0($s0)
/* AED97C 800767DC 240F0030 */ li $t7, 48
/* AED980 800767E0 AC4F0004 */ sw $t7, 4($v0)
/* AED984 800767E4 AC4D0000 */ sw $t5, ($v0)
/* AED988 800767E8 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AED98C 800767EC 3C0EE300 */ lui $t6, (0xE3001801 >> 16) # lui $t6, 0xe300
/* AED990 800767F0 35CE1801 */ ori $t6, (0xE3001801 & 0xFFFF) # ori $t6, $t6, 0x1801
/* AED994 800767F4 24580008 */ addiu $t8, $v0, 8
/* AED998 800767F8 AE1802C0 */ sw $t8, 0x2c0($s0)
/* AED99C 800767FC 241900C0 */ li $t9, 192
/* AED9A0 80076800 AC590004 */ sw $t9, 4($v0)
/* AED9A4 80076804 AC4E0000 */ sw $t6, ($v0)
/* AED9A8 80076808 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AED9AC 8007680C 3C08F64F */ lui $t0, (0xF64FC3BC >> 16) # lui $t0, 0xf64f
/* AED9B0 80076810 3508C3BC */ ori $t0, (0xF64FC3BC & 0xFFFF) # ori $t0, $t0, 0xc3bc
/* AED9B4 80076814 24490008 */ addiu $t1, $v0, 8
/* AED9B8 80076818 AE0902C0 */ sw $t1, 0x2c0($s0)
/* AED9BC 8007681C AC400004 */ sw $zero, 4($v0)
/* AED9C0 80076820 AC480000 */ sw $t0, ($v0)
/* AED9C4 80076824 30AB0002 */ andi $t3, $a1, 2
.L80076828:
/* AED9C8 80076828 11600037 */ beqz $t3, .L80076908
/* AED9CC 8007682C 93AA0067 */ lbu $t2, 0x67($sp)
/* AED9D0 80076830 93B8006B */ lbu $t8, 0x6b($sp)
/* AED9D4 80076834 93A8006F */ lbu $t0, 0x6f($sp)
/* AED9D8 80076838 93AF0073 */ lbu $t7, 0x73($sp)
/* AED9DC 8007683C 000A6E00 */ sll $t5, $t2, 0x18
/* AED9E0 80076840 00187400 */ sll $t6, $t8, 0x10
/* AED9E4 80076844 01AEC825 */ or $t9, $t5, $t6
/* AED9E8 80076848 00085A00 */ sll $t3, $t0, 8
/* AED9EC 8007684C 032B6025 */ or $t4, $t9, $t3
/* AED9F0 80076850 8E0402D0 */ lw $a0, 0x2d0($s0)
/* AED9F4 80076854 018FC025 */ or $t8, $t4, $t7
/* AED9F8 80076858 0C024DF0 */ jal func_800937C0
/* AED9FC 8007685C AFB80024 */ sw $t8, 0x24($sp)
/* AEDA00 80076860 AE0202D0 */ sw $v0, 0x2d0($s0)
/* AEDA04 80076864 244D0008 */ addiu $t5, $v0, 8
/* AEDA08 80076868 AE0D02D0 */ sw $t5, 0x2d0($s0)
/* AEDA0C 8007686C 3C0EFA00 */ lui $t6, 0xfa00
/* AEDA10 80076870 AC4E0000 */ sw $t6, ($v0)
/* AEDA14 80076874 8FA90024 */ lw $t1, 0x24($sp)
/* AEDA18 80076878 240100FF */ li $at, 255
/* AEDA1C 8007687C 3C0BE200 */ lui $t3, (0xE200001C >> 16) # lui $t3, 0xe200
/* AEDA20 80076880 AC490004 */ sw $t1, 4($v0)
/* AEDA24 80076884 93A80073 */ lbu $t0, 0x73($sp)
/* AEDA28 80076888 3C0FE300 */ lui $t7, (0xE3001A01 >> 16) # lui $t7, 0xe300
/* AEDA2C 8007688C 356B001C */ ori $t3, (0xE200001C & 0xFFFF) # ori $t3, $t3, 0x1c
/* AEDA30 80076890 15010008 */ bne $t0, $at, .L800768B4
/* AEDA34 80076894 35EF1A01 */ ori $t7, (0xE3001A01 & 0xFFFF) # ori $t7, $t7, 0x1a01
/* AEDA38 80076898 8E0202D0 */ lw $v0, 0x2d0($s0)
/* AEDA3C 8007689C 3C0A0F0A */ lui $t2, (0x0F0A4000 >> 16) # lui $t2, 0xf0a
/* AEDA40 800768A0 354A4000 */ ori $t2, (0x0F0A4000 & 0xFFFF) # ori $t2, $t2, 0x4000
/* AEDA44 800768A4 24590008 */ addiu $t9, $v0, 8
/* AEDA48 800768A8 AE1902D0 */ sw $t9, 0x2d0($s0)
/* AEDA4C 800768AC AC4A0004 */ sw $t2, 4($v0)
/* AEDA50 800768B0 AC4B0000 */ sw $t3, ($v0)
.L800768B4:
/* AEDA54 800768B4 8E0202D0 */ lw $v0, 0x2d0($s0)
/* AEDA58 800768B8 24180030 */ li $t8, 48
/* AEDA5C 800768BC 3C0EE300 */ lui $t6, (0xE3001801 >> 16) # lui $t6, 0xe300
/* AEDA60 800768C0 244C0008 */ addiu $t4, $v0, 8
/* AEDA64 800768C4 AE0C02D0 */ sw $t4, 0x2d0($s0)
/* AEDA68 800768C8 AC580004 */ sw $t8, 4($v0)
/* AEDA6C 800768CC AC4F0000 */ sw $t7, ($v0)
/* AEDA70 800768D0 8E0202D0 */ lw $v0, 0x2d0($s0)
/* AEDA74 800768D4 35CE1801 */ ori $t6, (0xE3001801 & 0xFFFF) # ori $t6, $t6, 0x1801
/* AEDA78 800768D8 240900C0 */ li $t1, 192
/* AEDA7C 800768DC 244D0008 */ addiu $t5, $v0, 8
/* AEDA80 800768E0 AE0D02D0 */ sw $t5, 0x2d0($s0)
/* AEDA84 800768E4 AC490004 */ sw $t1, 4($v0)
/* AEDA88 800768E8 AC4E0000 */ sw $t6, ($v0)
/* AEDA8C 800768EC 8E0202D0 */ lw $v0, 0x2d0($s0)
/* AEDA90 800768F0 3C19F64F */ lui $t9, (0xF64FC3BC >> 16) # lui $t9, 0xf64f
/* AEDA94 800768F4 3739C3BC */ ori $t9, (0xF64FC3BC & 0xFFFF) # ori $t9, $t9, 0xc3bc
/* AEDA98 800768F8 24480008 */ addiu $t0, $v0, 8
/* AEDA9C 800768FC AE0802D0 */ sw $t0, 0x2d0($s0)
/* AEDAA0 80076900 AC400004 */ sw $zero, 4($v0)
/* AEDAA4 80076904 AC590000 */ sw $t9, ($v0)
.L80076908:
/* AEDAA8 80076908 3C068014 */ lui $a2, %hi(D_8013C760) # $a2, 0x8014
/* AEDAAC 8007690C 24C6C760 */ addiu $a2, %lo(D_8013C760) # addiu $a2, $a2, -0x38a0
/* AEDAB0 80076910 27A4004C */ addiu $a0, $sp, 0x4c
/* AEDAB4 80076914 02002825 */ move $a1, $s0
/* AEDAB8 80076918 0C031AD5 */ jal Graph_CloseDisps
/* AEDABC 8007691C 24070F17 */ li $a3, 3863
.L80076920:
/* AEDAC0 80076920 8FBF001C */ lw $ra, 0x1c($sp)
/* AEDAC4 80076924 8FB00018 */ lw $s0, 0x18($sp)
/* AEDAC8 80076928 27BD0060 */ addiu $sp, $sp, 0x60
/* AEDACC 8007692C 03E00008 */ jr $ra
/* AEDAD0 80076930 00000000 */ nop

View file

@ -1,742 +0,0 @@
.rdata
glabel D_8013C770
.asciz "../z_kankyo.c"
.balign 4
glabel D_8013C780
.asciz "../z_kankyo.c"
.balign 4
.late_rodata
glabel D_8013C830
.float 0.16666667
glabel D_8013C834
.float 1.8333334
.text
glabel func_80076934
/* AEDAD4 80076934 27BDFF48 */ addiu $sp, $sp, -0xb8
/* AEDAD8 80076938 3C010001 */ lui $at, 1
/* AEDADC 8007693C AFBF0034 */ sw $ra, 0x34($sp)
/* AEDAE0 80076940 AFA400B8 */ sw $a0, 0xb8($sp)
/* AEDAE4 80076944 AFA500BC */ sw $a1, 0xbc($sp)
/* AEDAE8 80076948 00816021 */ addu $t4, $a0, $at
/* AEDAEC 8007694C 91870B0B */ lbu $a3, 0xb0b($t4)
/* AEDAF0 80076950 91860B0C */ lbu $a2, 0xb0c($t4)
/* AEDAF4 80076954 30A500FF */ andi $a1, $a1, 0xff
/* AEDAF8 80076958 24010001 */ li $at, 1
/* AEDAFC 8007695C 00E04025 */ move $t0, $a3
/* AEDB00 80076960 10A10023 */ beq $a1, $at, .L800769F0
/* AEDB04 80076964 00C04825 */ move $t1, $a2
/* AEDB08 80076968 24010002 */ li $at, 2
/* AEDB0C 8007696C 10A10027 */ beq $a1, $at, .L80076A0C
/* AEDB10 80076970 24010003 */ li $at, 3
/* AEDB14 80076974 10A10006 */ beq $a1, $at, .L80076990
/* AEDB18 80076978 8FAE00B8 */ lw $t6, 0xb8($sp)
/* AEDB1C 8007697C 24010004 */ li $at, 4
/* AEDB20 80076980 10A1003A */ beq $a1, $at, .L80076A6C
/* AEDB24 80076984 8FA300B4 */ lw $v1, 0xb4($sp)
/* AEDB28 80076988 10000043 */ b .L80076A98
/* AEDB2C 8007698C 8FA500B0 */ lw $a1, 0xb0($sp)
.L80076990:
/* AEDB30 80076990 85CF00A4 */ lh $t7, 0xa4($t6)
/* AEDB34 80076994 2401005E */ li $at, 94
/* AEDB38 80076998 8FB900B8 */ lw $t9, 0xb8($sp)
/* AEDB3C 8007699C 15E1000B */ bne $t7, $at, .L800769CC
/* AEDB40 800769A0 24050080 */ li $a1, 128
/* AEDB44 800769A4 81981CBC */ lb $t8, 0x1cbc($t4)
/* AEDB48 800769A8 28C10081 */ slti $at, $a2, 0x81
/* AEDB4C 800769AC 57000008 */ bnezl $t8, .L800769D0
/* AEDB50 800769B0 8F23009C */ lw $v1, 0x9c($t9)
/* AEDB54 800769B4 14200003 */ bnez $at, .L800769C4
/* AEDB58 800769B8 00002825 */ move $a1, $zero
/* AEDB5C 800769BC 10000036 */ b .L80076A98
/* AEDB60 800769C0 240300FF */ li $v1, 255
.L800769C4:
/* AEDB64 800769C4 10000034 */ b .L80076A98
/* AEDB68 800769C8 00061843 */ sra $v1, $a2, 1
.L800769CC:
/* AEDB6C 800769CC 8F23009C */ lw $v1, 0x9c($t9)
.L800769D0:
/* AEDB70 800769D0 240E0080 */ li $t6, 128
/* AEDB74 800769D4 3063007F */ andi $v1, $v1, 0x7f
/* AEDB78 800769D8 28610041 */ slti $at, $v1, 0x41
/* AEDB7C 800769DC 14200002 */ bnez $at, .L800769E8
/* AEDB80 800769E0 00000000 */ nop
/* AEDB84 800769E4 01C31823 */ subu $v1, $t6, $v1
.L800769E8:
/* AEDB88 800769E8 1000002B */ b .L80076A98
/* AEDB8C 800769EC 24630049 */ addiu $v1, $v1, 0x49
.L800769F0:
/* AEDB90 800769F0 28E100FF */ slti $at, $a3, 0xff
/* AEDB94 800769F4 14200003 */ bnez $at, .L80076A04
/* AEDB98 800769F8 240300FF */ li $v1, 255
/* AEDB9C 800769FC 10000026 */ b .L80076A98
/* AEDBA0 80076A00 240500FF */ li $a1, 255
.L80076A04:
/* AEDBA4 80076A04 10000024 */ b .L80076A98
/* AEDBA8 80076A08 24050080 */ li $a1, 128
.L80076A0C:
/* AEDBAC 80076A0C 28C10081 */ slti $at, $a2, 0x81
/* AEDBB0 80076A10 14200003 */ bnez $at, .L80076A20
/* AEDBB4 80076A14 24050080 */ li $a1, 128
/* AEDBB8 80076A18 1000000A */ b .L80076A44
/* AEDBBC 80076A1C 240300FF */ li $v1, 255
.L80076A20:
/* AEDBC0 80076A20 8FAF00B8 */ lw $t7, 0xb8($sp)
/* AEDBC4 80076A24 24180080 */ li $t8, 128
/* AEDBC8 80076A28 8DE3009C */ lw $v1, 0x9c($t7)
/* AEDBCC 80076A2C 3063007F */ andi $v1, $v1, 0x7f
/* AEDBD0 80076A30 28610041 */ slti $at, $v1, 0x41
/* AEDBD4 80076A34 54200003 */ bnezl $at, .L80076A44
/* AEDBD8 80076A38 24630049 */ addiu $v1, $v1, 0x49
/* AEDBDC 80076A3C 03031823 */ subu $v1, $t8, $v1
/* AEDBE0 80076A40 24630049 */ addiu $v1, $v1, 0x49
.L80076A44:
/* AEDBE4 80076A44 0068082A */ slt $at, $v1, $t0
/* AEDBE8 80076A48 14200013 */ bnez $at, .L80076A98
/* AEDBEC 80076A4C 240100FF */ li $at, 255
/* AEDBF0 80076A50 10610011 */ beq $v1, $at, .L80076A98
/* AEDBF4 80076A54 8FAE00B8 */ lw $t6, 0xb8($sp)
/* AEDBF8 80076A58 3C010001 */ lui $at, 1
/* AEDBFC 80076A5C 002E0821 */ addu $at, $at, $t6
/* AEDC00 80076A60 24190003 */ li $t9, 3
/* AEDC04 80076A64 1000000C */ b .L80076A98
/* AEDC08 80076A68 A0390B0A */ sb $t9, 0xb0a($at)
.L80076A6C:
/* AEDC0C 80076A6C 28C10081 */ slti $at, $a2, 0x81
/* AEDC10 80076A70 14200003 */ bnez $at, .L80076A80
/* AEDC14 80076A74 00002825 */ move $a1, $zero
/* AEDC18 80076A78 10000002 */ b .L80076A84
/* AEDC1C 80076A7C 240300FF */ li $v1, 255
.L80076A80:
/* AEDC20 80076A80 00061843 */ sra $v1, $a2, 1
.L80076A84:
/* AEDC24 80076A84 15000004 */ bnez $t0, .L80076A98
/* AEDC28 80076A88 8FAF00B8 */ lw $t7, 0xb8($sp)
/* AEDC2C 80076A8C 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEDC30 80076A90 002F0821 */ addu $at, $at, $t7
/* AEDC34 80076A94 A0200B0A */ sb $zero, 0xb0a($at)
.L80076A98:
/* AEDC38 80076A98 01032023 */ subu $a0, $t0, $v1
/* AEDC3C 80076A9C 04800003 */ bltz $a0, .L80076AAC
/* AEDC40 80076AA0 8FB800B8 */ lw $t8, 0xb8($sp)
/* AEDC44 80076AA4 10000002 */ b .L80076AB0
/* AEDC48 80076AA8 00801025 */ move $v0, $a0
.L80076AAC:
/* AEDC4C 80076AAC 00041023 */ negu $v0, $a0
.L80076AB0:
/* AEDC50 80076AB0 28410009 */ slti $at, $v0, 9
/* AEDC54 80076AB4 50200004 */ beql $at, $zero, .L80076AC8
/* AEDC58 80076AB8 0068082A */ slt $at, $v1, $t0
/* AEDC5C 80076ABC 10000007 */ b .L80076ADC
/* AEDC60 80076AC0 00604025 */ move $t0, $v1
/* AEDC64 80076AC4 0068082A */ slt $at, $v1, $t0
.L80076AC8:
/* AEDC68 80076AC8 50200004 */ beql $at, $zero, .L80076ADC
/* AEDC6C 80076ACC 25080009 */ addiu $t0, $t0, 9
/* AEDC70 80076AD0 10000002 */ b .L80076ADC
/* AEDC74 80076AD4 2508FFF7 */ addiu $t0, $t0, -9
/* AEDC78 80076AD8 25080009 */ addiu $t0, $t0, 9
.L80076ADC:
/* AEDC7C 80076ADC 01251823 */ subu $v1, $t1, $a1
/* AEDC80 80076AE0 04600003 */ bltz $v1, .L80076AF0
/* AEDC84 80076AE4 00031023 */ negu $v0, $v1
/* AEDC88 80076AE8 10000001 */ b .L80076AF0
/* AEDC8C 80076AEC 00601025 */ move $v0, $v1
.L80076AF0:
/* AEDC90 80076AF0 28410009 */ slti $at, $v0, 9
/* AEDC94 80076AF4 10200003 */ beqz $at, .L80076B04
/* AEDC98 80076AF8 3C0D8012 */ lui $t5, %hi(D_8011FEC4)
/* AEDC9C 80076AFC 10000007 */ b .L80076B1C
/* AEDCA0 80076B00 00A04825 */ move $t1, $a1
.L80076B04:
/* AEDCA4 80076B04 00A9082A */ slt $at, $a1, $t1
/* AEDCA8 80076B08 50200004 */ beql $at, $zero, .L80076B1C
/* AEDCAC 80076B0C 25290009 */ addiu $t1, $t1, 9
/* AEDCB0 80076B10 10000002 */ b .L80076B1C
/* AEDCB4 80076B14 2529FFF7 */ addiu $t1, $t1, -9
/* AEDCB8 80076B18 25290009 */ addiu $t1, $t1, 9
.L80076B1C:
/* AEDCBC 80076B1C 3C0140C0 */ li $at, 0x40C00000 # 0.000000
/* AEDCC0 80076B20 44818000 */ mtc1 $at, $f16
/* AEDCC4 80076B24 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEDCC8 80076B28 00380821 */ addu $at, $at, $t8
/* AEDCCC 80076B2C A0280B0B */ sb $t0, 0xb0b($at)
/* AEDCD0 80076B30 01097021 */ addu $t6, $t0, $t1
/* AEDCD4 80076B34 8FB900B8 */ lw $t9, 0xb8($sp)
/* AEDCD8 80076B38 448E3000 */ mtc1 $t6, $f6
/* AEDCDC 80076B3C 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEDCE0 80076B40 00390821 */ addu $at, $at, $t9
/* AEDCE4 80076B44 46803220 */ cvt.s.w $f8, $f6
/* AEDCE8 80076B48 A0290B0C */ sb $t1, 0xb0c($at)
/* AEDCEC 80076B4C 3C014400 */ li $at, 0x44000000 # 0.000000
/* AEDCF0 80076B50 44812000 */ mtc1 $at, $f4
/* AEDCF4 80076B54 3C013CC0 */ li $at, 0x3CC00000 # 0.000000
/* AEDCF8 80076B58 44819000 */ mtc1 $at, $f18
/* AEDCFC 80076B5C 46082281 */ sub.s $f10, $f4, $f8
/* AEDD00 80076B60 3C1F8012 */ lui $ra, %hi(D_8011FED0)
/* AEDD04 80076B64 27FFFED0 */ addiu $ra, %lo(D_8011FED0) # addiu $ra, $ra, -0x130
/* AEDD08 80076B68 25ADFEC4 */ addiu $t5, %lo(D_8011FEC4) # addiu $t5, $t5, -0x13c
/* AEDD0C 80076B6C 46125382 */ mul.s $f14, $f10, $f18
/* AEDD10 80076B70 460E803C */ c.lt.s $f16, $f14
/* AEDD14 80076B74 00000000 */ nop
/* AEDD18 80076B78 45020003 */ bc1fl .L80076B88
/* AEDD1C 80076B7C 918F0A42 */ lbu $t7, 0xa42($t4)
/* AEDD20 80076B80 46008386 */ mov.s $f14, $f16
/* AEDD24 80076B84 918F0A42 */ lbu $t7, 0xa42($t4)
.L80076B88:
/* AEDD28 80076B88 55E00006 */ bnezl $t7, .L80076BA4
/* AEDD2C 80076B8C 91B90003 */ lbu $t9, 3($t5)
/* AEDD30 80076B90 91980AE3 */ lbu $t8, 0xae3($t4)
/* AEDD34 80076B94 240100FF */ li $at, 255
/* AEDD38 80076B98 5301000D */ beql $t8, $at, .L80076BD0
/* AEDD3C 80076B9C AFAC0058 */ sw $t4, 0x58($sp)
/* AEDD40 80076BA0 91B90003 */ lbu $t9, 3($t5)
.L80076BA4:
/* AEDD44 80076BA4 91AE0004 */ lbu $t6, 4($t5)
/* AEDD48 80076BA8 91AF0005 */ lbu $t7, 5($t5)
/* AEDD4C 80076BAC 93E90003 */ lbu $t1, 3($ra)
/* AEDD50 80076BB0 93EA0004 */ lbu $t2, 4($ra)
/* AEDD54 80076BB4 93EB0005 */ lbu $t3, 5($ra)
/* AEDD58 80076BB8 AFAC0058 */ sw $t4, 0x58($sp)
/* AEDD5C 80076BBC A3B900A4 */ sb $t9, 0xa4($sp)
/* AEDD60 80076BC0 A3AE00A5 */ sb $t6, 0xa5($sp)
/* AEDD64 80076BC4 100000AF */ b .L80076E84
/* AEDD68 80076BC8 A3AF00A6 */ sb $t7, 0xa6($sp)
/* AEDD6C 80076BCC AFAC0058 */ sw $t4, 0x58($sp)
.L80076BD0:
/* AEDD70 80076BD0 3C0C8012 */ lui $t4, %hi(D_8011FDD0)
/* AEDD74 80076BD4 3C088012 */ lui $t0, %hi(D_8011FDCC)
/* AEDD78 80076BD8 9108FDCC */ lbu $t0, %lo(D_8011FDCC)($t0)
/* AEDD7C 80076BDC 918CFDD0 */ lbu $t4, %lo(D_8011FDD0)($t4)
/* AEDD80 80076BE0 15880012 */ bne $t4, $t0, .L80076C2C
/* AEDD84 80076BE4 3C0D8012 */ lui $t5, %hi(D_8011FEC4)
/* AEDD88 80076BE8 00083080 */ sll $a2, $t0, 2
/* AEDD8C 80076BEC 25ADFEC4 */ addiu $t5, %lo(D_8011FEC4) # addiu $t5, $t5, -0x13c
/* AEDD90 80076BF0 00C83023 */ subu $a2, $a2, $t0
/* AEDD94 80076BF4 01A61021 */ addu $v0, $t5, $a2
/* AEDD98 80076BF8 3C1F8012 */ lui $ra, %hi(D_8011FED0)
/* AEDD9C 80076BFC 27FFFED0 */ addiu $ra, %lo(D_8011FED0) # addiu $ra, $ra, -0x130
/* AEDDA0 80076C00 90580000 */ lbu $t8, ($v0)
/* AEDDA4 80076C04 90590001 */ lbu $t9, 1($v0)
/* AEDDA8 80076C08 904E0002 */ lbu $t6, 2($v0)
/* AEDDAC 80076C0C 03E61821 */ addu $v1, $ra, $a2
/* AEDDB0 80076C10 90690000 */ lbu $t1, ($v1)
/* AEDDB4 80076C14 906A0001 */ lbu $t2, 1($v1)
/* AEDDB8 80076C18 906B0002 */ lbu $t3, 2($v1)
/* AEDDBC 80076C1C A3B800A4 */ sb $t8, 0xa4($sp)
/* AEDDC0 80076C20 A3B900A5 */ sb $t9, 0xa5($sp)
/* AEDDC4 80076C24 10000097 */ b .L80076E84
/* AEDDC8 80076C28 A3AE00A6 */ sb $t6, 0xa6($sp)
.L80076C2C:
/* AEDDCC 80076C2C 3C0D8012 */ lui $t5, %hi(D_8011FEC4)
/* AEDDD0 80076C30 25ADFEC4 */ addiu $t5, %lo(D_8011FEC4) # addiu $t5, $t5, -0x13c
/* AEDDD4 80076C34 000C3880 */ sll $a3, $t4, 2
/* AEDDD8 80076C38 00EC3823 */ subu $a3, $a3, $t4
/* AEDDDC 80076C3C 01A72021 */ addu $a0, $t5, $a3
/* AEDDE0 80076C40 908F0000 */ lbu $t7, ($a0)
/* AEDDE4 80076C44 3C018012 */ lui $at, %hi(D_8011FDD4)
/* AEDDE8 80076C48 C420FDD4 */ lwc1 $f0, %lo(D_8011FDD4)($at)
/* AEDDEC 80076C4C 448F9000 */ mtc1 $t7, $f18
/* AEDDF0 80076C50 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEDDF4 80076C54 44816000 */ mtc1 $at, $f12
/* AEDDF8 80076C58 46809220 */ cvt.s.w $f8, $f18
/* AEDDFC 80076C5C 00083080 */ sll $a2, $t0, 2
/* AEDE00 80076C60 3C1F8012 */ lui $ra, %hi(D_8011FED0)
/* AEDE04 80076C64 00C83023 */ subu $a2, $a2, $t0
/* AEDE08 80076C68 27FFFED0 */ addiu $ra, %lo(D_8011FED0) # addiu $ra, $ra, -0x130
/* AEDE0C 80076C6C 46006081 */ sub.s $f2, $f12, $f0
/* AEDE10 80076C70 05E10005 */ bgez $t7, .L80076C88
/* AEDE14 80076C74 01A61021 */ addu $v0, $t5, $a2
/* AEDE18 80076C78 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDE1C 80076C7C 44815000 */ mtc1 $at, $f10
/* AEDE20 80076C80 00000000 */ nop
/* AEDE24 80076C84 460A4200 */ add.s $f8, $f8, $f10
.L80076C88:
/* AEDE28 80076C88 90580000 */ lbu $t8, ($v0)
/* AEDE2C 80076C8C 46004482 */ mul.s $f18, $f8, $f0
/* AEDE30 80076C90 44983000 */ mtc1 $t8, $f6
/* AEDE34 80076C94 07010005 */ bgez $t8, .L80076CAC
/* AEDE38 80076C98 46803120 */ cvt.s.w $f4, $f6
/* AEDE3C 80076C9C 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDE40 80076CA0 44815000 */ mtc1 $at, $f10
/* AEDE44 80076CA4 00000000 */ nop
/* AEDE48 80076CA8 460A2100 */ add.s $f4, $f4, $f10
.L80076CAC:
/* AEDE4C 80076CAC 46022202 */ mul.s $f8, $f4, $f2
/* AEDE50 80076CB0 908F0001 */ lbu $t7, 1($a0)
/* AEDE54 80076CB4 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDE58 80076CB8 448F2000 */ mtc1 $t7, $f4
/* AEDE5C 80076CBC 46089180 */ add.s $f6, $f18, $f8
/* AEDE60 80076CC0 468024A0 */ cvt.s.w $f18, $f4
/* AEDE64 80076CC4 4600328D */ trunc.w.s $f10, $f6
/* AEDE68 80076CC8 440E5000 */ mfc1 $t6, $f10
/* AEDE6C 80076CCC 05E10004 */ bgez $t7, .L80076CE0
/* AEDE70 80076CD0 A3AE00A4 */ sb $t6, 0xa4($sp)
/* AEDE74 80076CD4 44814000 */ mtc1 $at, $f8
/* AEDE78 80076CD8 00000000 */ nop
/* AEDE7C 80076CDC 46089480 */ add.s $f18, $f18, $f8
.L80076CE0:
/* AEDE80 80076CE0 90580001 */ lbu $t8, 1($v0)
/* AEDE84 80076CE4 46009182 */ mul.s $f6, $f18, $f0
/* AEDE88 80076CE8 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDE8C 80076CEC 44985000 */ mtc1 $t8, $f10
/* AEDE90 80076CF0 07010004 */ bgez $t8, .L80076D04
/* AEDE94 80076CF4 46805120 */ cvt.s.w $f4, $f10
/* AEDE98 80076CF8 44814000 */ mtc1 $at, $f8
/* AEDE9C 80076CFC 00000000 */ nop
/* AEDEA0 80076D00 46082100 */ add.s $f4, $f4, $f8
.L80076D04:
/* AEDEA4 80076D04 46022482 */ mul.s $f18, $f4, $f2
/* AEDEA8 80076D08 908F0002 */ lbu $t7, 2($a0)
/* AEDEAC 80076D0C 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDEB0 80076D10 448F2000 */ mtc1 $t7, $f4
/* AEDEB4 80076D14 46123280 */ add.s $f10, $f6, $f18
/* AEDEB8 80076D18 468021A0 */ cvt.s.w $f6, $f4
/* AEDEBC 80076D1C 4600520D */ trunc.w.s $f8, $f10
/* AEDEC0 80076D20 440E4000 */ mfc1 $t6, $f8
/* AEDEC4 80076D24 05E10004 */ bgez $t7, .L80076D38
/* AEDEC8 80076D28 A3AE00A5 */ sb $t6, 0xa5($sp)
/* AEDECC 80076D2C 44819000 */ mtc1 $at, $f18
/* AEDED0 80076D30 00000000 */ nop
/* AEDED4 80076D34 46123180 */ add.s $f6, $f6, $f18
.L80076D38:
/* AEDED8 80076D38 90580002 */ lbu $t8, 2($v0)
/* AEDEDC 80076D3C 46003282 */ mul.s $f10, $f6, $f0
/* AEDEE0 80076D40 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDEE4 80076D44 44984000 */ mtc1 $t8, $f8
/* AEDEE8 80076D48 07010004 */ bgez $t8, .L80076D5C
/* AEDEEC 80076D4C 46804120 */ cvt.s.w $f4, $f8
/* AEDEF0 80076D50 44819000 */ mtc1 $at, $f18
/* AEDEF4 80076D54 00000000 */ nop
/* AEDEF8 80076D58 46122100 */ add.s $f4, $f4, $f18
.L80076D5C:
/* AEDEFC 80076D5C 46022182 */ mul.s $f6, $f4, $f2
/* AEDF00 80076D60 03E72821 */ addu $a1, $ra, $a3
/* AEDF04 80076D64 90AF0000 */ lbu $t7, ($a1)
/* AEDF08 80076D68 03E61821 */ addu $v1, $ra, $a2
/* AEDF0C 80076D6C 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDF10 80076D70 448F2000 */ mtc1 $t7, $f4
/* AEDF14 80076D74 46065200 */ add.s $f8, $f10, $f6
/* AEDF18 80076D78 468022A0 */ cvt.s.w $f10, $f4
/* AEDF1C 80076D7C 4600448D */ trunc.w.s $f18, $f8
/* AEDF20 80076D80 440E9000 */ mfc1 $t6, $f18
/* AEDF24 80076D84 05E10004 */ bgez $t7, .L80076D98
/* AEDF28 80076D88 A3AE00A6 */ sb $t6, 0xa6($sp)
/* AEDF2C 80076D8C 44813000 */ mtc1 $at, $f6
/* AEDF30 80076D90 00000000 */ nop
/* AEDF34 80076D94 46065280 */ add.s $f10, $f10, $f6
.L80076D98:
/* AEDF38 80076D98 90780000 */ lbu $t8, ($v1)
/* AEDF3C 80076D9C 46005202 */ mul.s $f8, $f10, $f0
/* AEDF40 80076DA0 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDF44 80076DA4 44989000 */ mtc1 $t8, $f18
/* AEDF48 80076DA8 07010004 */ bgez $t8, .L80076DBC
/* AEDF4C 80076DAC 46809120 */ cvt.s.w $f4, $f18
/* AEDF50 80076DB0 44813000 */ mtc1 $at, $f6
/* AEDF54 80076DB4 00000000 */ nop
/* AEDF58 80076DB8 46062100 */ add.s $f4, $f4, $f6
.L80076DBC:
/* AEDF5C 80076DBC 46022282 */ mul.s $f10, $f4, $f2
/* AEDF60 80076DC0 90AE0001 */ lbu $t6, 1($a1)
/* AEDF64 80076DC4 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDF68 80076DC8 448E2000 */ mtc1 $t6, $f4
/* AEDF6C 80076DCC 460A4480 */ add.s $f18, $f8, $f10
/* AEDF70 80076DD0 46802220 */ cvt.s.w $f8, $f4
/* AEDF74 80076DD4 4600918D */ trunc.w.s $f6, $f18
/* AEDF78 80076DD8 44093000 */ mfc1 $t1, $f6
/* AEDF7C 80076DDC 05C10004 */ bgez $t6, .L80076DF0
/* AEDF80 80076DE0 312900FF */ andi $t1, $t1, 0xff
/* AEDF84 80076DE4 44815000 */ mtc1 $at, $f10
/* AEDF88 80076DE8 00000000 */ nop
/* AEDF8C 80076DEC 460A4200 */ add.s $f8, $f8, $f10
.L80076DF0:
/* AEDF90 80076DF0 906F0001 */ lbu $t7, 1($v1)
/* AEDF94 80076DF4 46004482 */ mul.s $f18, $f8, $f0
/* AEDF98 80076DF8 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDF9C 80076DFC 448F3000 */ mtc1 $t7, $f6
/* AEDFA0 80076E00 05E10004 */ bgez $t7, .L80076E14
/* AEDFA4 80076E04 46803120 */ cvt.s.w $f4, $f6
/* AEDFA8 80076E08 44815000 */ mtc1 $at, $f10
/* AEDFAC 80076E0C 00000000 */ nop
/* AEDFB0 80076E10 460A2100 */ add.s $f4, $f4, $f10
.L80076E14:
/* AEDFB4 80076E14 46022202 */ mul.s $f8, $f4, $f2
/* AEDFB8 80076E18 90B90002 */ lbu $t9, 2($a1)
/* AEDFBC 80076E1C 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDFC0 80076E20 44992000 */ mtc1 $t9, $f4
/* AEDFC4 80076E24 46089180 */ add.s $f6, $f18, $f8
/* AEDFC8 80076E28 468024A0 */ cvt.s.w $f18, $f4
/* AEDFCC 80076E2C 4600328D */ trunc.w.s $f10, $f6
/* AEDFD0 80076E30 440A5000 */ mfc1 $t2, $f10
/* AEDFD4 80076E34 07210004 */ bgez $t9, .L80076E48
/* AEDFD8 80076E38 314A00FF */ andi $t2, $t2, 0xff
/* AEDFDC 80076E3C 44814000 */ mtc1 $at, $f8
/* AEDFE0 80076E40 00000000 */ nop
/* AEDFE4 80076E44 46089480 */ add.s $f18, $f18, $f8
.L80076E48:
/* AEDFE8 80076E48 906E0002 */ lbu $t6, 2($v1)
/* AEDFEC 80076E4C 46009182 */ mul.s $f6, $f18, $f0
/* AEDFF0 80076E50 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEDFF4 80076E54 448E5000 */ mtc1 $t6, $f10
/* AEDFF8 80076E58 05C10004 */ bgez $t6, .L80076E6C
/* AEDFFC 80076E5C 46805120 */ cvt.s.w $f4, $f10
/* AEE000 80076E60 44814000 */ mtc1 $at, $f8
/* AEE004 80076E64 00000000 */ nop
/* AEE008 80076E68 46082100 */ add.s $f4, $f4, $f8
.L80076E6C:
/* AEE00C 80076E6C 46022482 */ mul.s $f18, $f4, $f2
/* AEE010 80076E70 46123280 */ add.s $f10, $f6, $f18
/* AEE014 80076E74 4600520D */ trunc.w.s $f8, $f10
/* AEE018 80076E78 440B4000 */ mfc1 $t3, $f8
/* AEE01C 80076E7C 00000000 */ nop
/* AEE020 80076E80 316B00FF */ andi $t3, $t3, 0xff
.L80076E84:
/* AEE024 80076E84 44892000 */ mtc1 $t1, $f4
/* AEE028 80076E88 3C018014 */ lui $at, %hi(D_8013C830)
/* AEE02C 80076E8C C42CC830 */ lwc1 $f12, %lo(D_8013C830)($at)
/* AEE030 80076E90 460E8001 */ sub.s $f0, $f16, $f14
/* AEE034 80076E94 05210005 */ bgez $t1, .L80076EAC
/* AEE038 80076E98 468021A0 */ cvt.s.w $f6, $f4
/* AEE03C 80076E9C 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE040 80076EA0 44819000 */ mtc1 $at, $f18
/* AEE044 80076EA4 00000000 */ nop
/* AEE048 80076EA8 46123180 */ add.s $f6, $f6, $f18
.L80076EAC:
/* AEE04C 80076EAC 93B800A4 */ lbu $t8, 0xa4($sp)
/* AEE050 80076EB0 460E3282 */ mul.s $f10, $f6, $f14
/* AEE054 80076EB4 44984000 */ mtc1 $t8, $f8
/* AEE058 80076EB8 07010005 */ bgez $t8, .L80076ED0
/* AEE05C 80076EBC 46804120 */ cvt.s.w $f4, $f8
/* AEE060 80076EC0 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE064 80076EC4 44819000 */ mtc1 $at, $f18
/* AEE068 80076EC8 00000000 */ nop
/* AEE06C 80076ECC 46122100 */ add.s $f4, $f4, $f18
.L80076ED0:
/* AEE070 80076ED0 46040182 */ mul.s $f6, $f0, $f4
/* AEE074 80076ED4 24090001 */ li $t1, 1
/* AEE078 80076ED8 46065200 */ add.s $f8, $f10, $f6
/* AEE07C 80076EDC 460C4482 */ mul.s $f18, $f8, $f12
/* AEE080 80076EE0 4459F800 */ cfc1 $t9, $31
/* AEE084 80076EE4 44C9F800 */ ctc1 $t1, $31
/* AEE088 80076EE8 00000000 */ nop
/* AEE08C 80076EEC 46009124 */ cvt.w.s $f4, $f18
/* AEE090 80076EF0 4449F800 */ cfc1 $t1, $31
/* AEE094 80076EF4 00000000 */ nop
/* AEE098 80076EF8 31290078 */ andi $t1, $t1, 0x78
/* AEE09C 80076EFC 11200012 */ beqz $t1, .L80076F48
/* AEE0A0 80076F00 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEE0A4 80076F04 44812000 */ mtc1 $at, $f4
/* AEE0A8 80076F08 24090001 */ li $t1, 1
/* AEE0AC 80076F0C 46049101 */ sub.s $f4, $f18, $f4
/* AEE0B0 80076F10 44C9F800 */ ctc1 $t1, $31
/* AEE0B4 80076F14 00000000 */ nop
/* AEE0B8 80076F18 46002124 */ cvt.w.s $f4, $f4
/* AEE0BC 80076F1C 4449F800 */ cfc1 $t1, $31
/* AEE0C0 80076F20 00000000 */ nop
/* AEE0C4 80076F24 31290078 */ andi $t1, $t1, 0x78
/* AEE0C8 80076F28 15200005 */ bnez $t1, .L80076F40
/* AEE0CC 80076F2C 00000000 */ nop
/* AEE0D0 80076F30 44092000 */ mfc1 $t1, $f4
/* AEE0D4 80076F34 3C018000 */ li $at, 0x80000000 # 0.000000
/* AEE0D8 80076F38 10000007 */ b .L80076F58
/* AEE0DC 80076F3C 01214825 */ or $t1, $t1, $at
.L80076F40:
/* AEE0E0 80076F40 10000005 */ b .L80076F58
/* AEE0E4 80076F44 2409FFFF */ li $t1, -1
.L80076F48:
/* AEE0E8 80076F48 44092000 */ mfc1 $t1, $f4
/* AEE0EC 80076F4C 00000000 */ nop
/* AEE0F0 80076F50 0520FFFB */ bltz $t1, .L80076F40
/* AEE0F4 80076F54 00000000 */ nop
.L80076F58:
/* AEE0F8 80076F58 44D9F800 */ ctc1 $t9, $31
/* AEE0FC 80076F5C 448A5000 */ mtc1 $t2, $f10
/* AEE100 80076F60 312900FF */ andi $t1, $t1, 0xff
/* AEE104 80076F64 05410005 */ bgez $t2, .L80076F7C
/* AEE108 80076F68 468051A0 */ cvt.s.w $f6, $f10
/* AEE10C 80076F6C 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE110 80076F70 44814000 */ mtc1 $at, $f8
/* AEE114 80076F74 00000000 */ nop
/* AEE118 80076F78 46083180 */ add.s $f6, $f6, $f8
.L80076F7C:
/* AEE11C 80076F7C 93AE00A5 */ lbu $t6, 0xa5($sp)
/* AEE120 80076F80 460E3482 */ mul.s $f18, $f6, $f14
/* AEE124 80076F84 448E2000 */ mtc1 $t6, $f4
/* AEE128 80076F88 05C10005 */ bgez $t6, .L80076FA0
/* AEE12C 80076F8C 468022A0 */ cvt.s.w $f10, $f4
/* AEE130 80076F90 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE134 80076F94 44814000 */ mtc1 $at, $f8
/* AEE138 80076F98 00000000 */ nop
/* AEE13C 80076F9C 46085280 */ add.s $f10, $f10, $f8
.L80076FA0:
/* AEE140 80076FA0 460A0182 */ mul.s $f6, $f0, $f10
/* AEE144 80076FA4 240A0001 */ li $t2, 1
/* AEE148 80076FA8 3C0E8016 */ lui $t6, %hi(D_8015FDB0) # $t6, 0x8016
/* AEE14C 80076FAC 46069100 */ add.s $f4, $f18, $f6
/* AEE150 80076FB0 460C2202 */ mul.s $f8, $f4, $f12
/* AEE154 80076FB4 444FF800 */ cfc1 $t7, $31
/* AEE158 80076FB8 44CAF800 */ ctc1 $t2, $31
/* AEE15C 80076FBC 00000000 */ nop
/* AEE160 80076FC0 460042A4 */ cvt.w.s $f10, $f8
/* AEE164 80076FC4 444AF800 */ cfc1 $t2, $31
/* AEE168 80076FC8 00000000 */ nop
/* AEE16C 80076FCC 314A0078 */ andi $t2, $t2, 0x78
/* AEE170 80076FD0 11400012 */ beqz $t2, .L8007701C
/* AEE174 80076FD4 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEE178 80076FD8 44815000 */ mtc1 $at, $f10
/* AEE17C 80076FDC 240A0001 */ li $t2, 1
/* AEE180 80076FE0 460A4281 */ sub.s $f10, $f8, $f10
/* AEE184 80076FE4 44CAF800 */ ctc1 $t2, $31
/* AEE188 80076FE8 00000000 */ nop
/* AEE18C 80076FEC 460052A4 */ cvt.w.s $f10, $f10
/* AEE190 80076FF0 444AF800 */ cfc1 $t2, $31
/* AEE194 80076FF4 00000000 */ nop
/* AEE198 80076FF8 314A0078 */ andi $t2, $t2, 0x78
/* AEE19C 80076FFC 15400005 */ bnez $t2, .L80077014
/* AEE1A0 80077000 00000000 */ nop
/* AEE1A4 80077004 440A5000 */ mfc1 $t2, $f10
/* AEE1A8 80077008 3C018000 */ li $at, 0x80000000 # 0.000000
/* AEE1AC 8007700C 10000007 */ b .L8007702C
/* AEE1B0 80077010 01415025 */ or $t2, $t2, $at
.L80077014:
/* AEE1B4 80077014 10000005 */ b .L8007702C
/* AEE1B8 80077018 240AFFFF */ li $t2, -1
.L8007701C:
/* AEE1BC 8007701C 440A5000 */ mfc1 $t2, $f10
/* AEE1C0 80077020 00000000 */ nop
/* AEE1C4 80077024 0540FFFB */ bltz $t2, .L80077014
/* AEE1C8 80077028 00000000 */ nop
.L8007702C:
/* AEE1CC 8007702C 44CFF800 */ ctc1 $t7, $31
/* AEE1D0 80077030 448B9000 */ mtc1 $t3, $f18
/* AEE1D4 80077034 314A00FF */ andi $t2, $t2, 0xff
/* AEE1D8 80077038 05610005 */ bgez $t3, .L80077050
/* AEE1DC 8007703C 468091A0 */ cvt.s.w $f6, $f18
/* AEE1E0 80077040 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE1E4 80077044 44812000 */ mtc1 $at, $f4
/* AEE1E8 80077048 00000000 */ nop
/* AEE1EC 8007704C 46043180 */ add.s $f6, $f6, $f4
.L80077050:
/* AEE1F0 80077050 93B800A6 */ lbu $t8, 0xa6($sp)
/* AEE1F4 80077054 460E3202 */ mul.s $f8, $f6, $f14
/* AEE1F8 80077058 44985000 */ mtc1 $t8, $f10
/* AEE1FC 8007705C 07010005 */ bgez $t8, .L80077074
/* AEE200 80077060 468054A0 */ cvt.s.w $f18, $f10
/* AEE204 80077064 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE208 80077068 44812000 */ mtc1 $at, $f4
/* AEE20C 8007706C 00000000 */ nop
/* AEE210 80077070 46049480 */ add.s $f18, $f18, $f4
.L80077074:
/* AEE214 80077074 46120182 */ mul.s $f6, $f0, $f18
/* AEE218 80077078 240B0001 */ li $t3, 1
/* AEE21C 8007707C 46064280 */ add.s $f10, $f8, $f6
/* AEE220 80077080 460C5102 */ mul.s $f4, $f10, $f12
/* AEE224 80077084 4459F800 */ cfc1 $t9, $31
/* AEE228 80077088 44CBF800 */ ctc1 $t3, $31
/* AEE22C 8007708C 00000000 */ nop
/* AEE230 80077090 460024A4 */ cvt.w.s $f18, $f4
/* AEE234 80077094 444BF800 */ cfc1 $t3, $31
/* AEE238 80077098 00000000 */ nop
/* AEE23C 8007709C 316B0078 */ andi $t3, $t3, 0x78
/* AEE240 800770A0 11600012 */ beqz $t3, .L800770EC
/* AEE244 800770A4 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* AEE248 800770A8 44819000 */ mtc1 $at, $f18
/* AEE24C 800770AC 240B0001 */ li $t3, 1
/* AEE250 800770B0 46122481 */ sub.s $f18, $f4, $f18
/* AEE254 800770B4 44CBF800 */ ctc1 $t3, $31
/* AEE258 800770B8 00000000 */ nop
/* AEE25C 800770BC 460094A4 */ cvt.w.s $f18, $f18
/* AEE260 800770C0 444BF800 */ cfc1 $t3, $31
/* AEE264 800770C4 00000000 */ nop
/* AEE268 800770C8 316B0078 */ andi $t3, $t3, 0x78
/* AEE26C 800770CC 15600005 */ bnez $t3, .L800770E4
/* AEE270 800770D0 00000000 */ nop
/* AEE274 800770D4 440B9000 */ mfc1 $t3, $f18
/* AEE278 800770D8 3C018000 */ lui $at, 0x8000
/* AEE27C 800770DC 10000007 */ b .L800770FC
/* AEE280 800770E0 01615825 */ or $t3, $t3, $at
.L800770E4:
/* AEE284 800770E4 10000005 */ b .L800770FC
/* AEE288 800770E8 240BFFFF */ li $t3, -1
.L800770EC:
/* AEE28C 800770EC 440B9000 */ mfc1 $t3, $f18
/* AEE290 800770F0 00000000 */ nop
/* AEE294 800770F4 0560FFFB */ bltz $t3, .L800770E4
/* AEE298 800770F8 00000000 */ nop
.L800770FC:
/* AEE29C 800770FC 95CEFDB0 */ lhu $t6, %lo(D_8015FDB0)($t6)
/* AEE2A0 80077100 44D9F800 */ ctc1 $t9, $31
/* AEE2A4 80077104 316B00FF */ andi $t3, $t3, 0xff
/* AEE2A8 80077108 448E4000 */ mtc1 $t6, $f8
/* AEE2AC 8007710C 05C10005 */ bgez $t6, .L80077124
/* AEE2B0 80077110 468040A0 */ cvt.s.w $f2, $f8
/* AEE2B4 80077114 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE2B8 80077118 44813000 */ mtc1 $at, $f6
/* AEE2BC 8007711C 00000000 */ nop
/* AEE2C0 80077120 46061080 */ add.s $f2, $f2, $f6
.L80077124:
/* AEE2C4 80077124 3C018014 */ lui $at, %hi(D_8013C834)
/* AEE2C8 80077128 C42AC834 */ lwc1 $f10, %lo(D_8013C834)($at)
/* AEE2CC 8007712C 3C013FC0 */ li $at, 0x3FC00000 # 0.000000
/* AEE2D0 80077130 44814000 */ mtc1 $at, $f8
/* AEE2D4 80077134 460A1102 */ mul.s $f4, $f2, $f10
/* AEE2D8 80077138 3C013F80 */ lui $at, 0x3f80
/* AEE2DC 8007713C 8FB900B8 */ lw $t9, 0xb8($sp)
/* AEE2E0 80077140 46081182 */ mul.s $f6, $f2, $f8
/* AEE2E4 80077144 3C068014 */ lui $a2, %hi(D_8013C770)
/* AEE2E8 80077148 24C6C770 */ addiu $a2, %lo(D_8013C770) # addiu $a2, $a2, -0x3890
/* AEE2EC 8007714C 27A4007C */ addiu $a0, $sp, 0x7c
/* AEE2F0 80077150 24070FCC */ li $a3, 4044
/* AEE2F4 80077154 4600248D */ trunc.w.s $f18, $f4
/* AEE2F8 80077158 44812000 */ mtc1 $at, $f4
/* AEE2FC 8007715C 4600328D */ trunc.w.s $f10, $f6
/* AEE300 80077160 44189000 */ mfc1 $t8, $f18
/* AEE304 80077164 46041482 */ mul.s $f18, $f2, $f4
/* AEE308 80077168 A7B80096 */ sh $t8, 0x96($sp)
/* AEE30C 8007716C 440E5000 */ mfc1 $t6, $f10
/* AEE310 80077170 00000000 */ nop
/* AEE314 80077174 A7AE0094 */ sh $t6, 0x94($sp)
/* AEE318 80077178 4600920D */ trunc.w.s $f8, $f18
/* AEE31C 8007717C 44184000 */ mfc1 $t8, $f8
/* AEE320 80077180 00000000 */ nop
/* AEE324 80077184 A7B80092 */ sh $t8, 0x92($sp)
/* AEE328 80077188 8F250000 */ lw $a1, ($t9)
/* AEE32C 8007718C E7AE0098 */ swc1 $f14, 0x98($sp)
/* AEE330 80077190 A3AB00A2 */ sb $t3, 0xa2($sp)
/* AEE334 80077194 A3AA00A1 */ sb $t2, 0xa1($sp)
/* AEE338 80077198 A3A900A0 */ sb $t1, 0xa0($sp)
/* AEE33C 8007719C 0C031AB1 */ jal Graph_OpenDisps
/* AEE340 800771A0 AFA5008C */ sw $a1, 0x8c($sp)
/* AEE344 800771A4 8FA3008C */ lw $v1, 0x8c($sp)
/* AEE348 800771A8 0C024FCD */ jal func_80093F34
/* AEE34C 800771AC 8C6402D0 */ lw $a0, 0x2d0($v1)
/* AEE350 800771B0 8FA3008C */ lw $v1, 0x8c($sp)
/* AEE354 800771B4 93A900A0 */ lbu $t1, 0xa0($sp)
/* AEE358 800771B8 93AA00A1 */ lbu $t2, 0xa1($sp)
/* AEE35C 800771BC 93AB00A2 */ lbu $t3, 0xa2($sp)
/* AEE360 800771C0 C7AE0098 */ lwc1 $f14, 0x98($sp)
/* AEE364 800771C4 244E0008 */ addiu $t6, $v0, 8
/* AEE368 800771C8 AC6202D0 */ sw $v0, 0x2d0($v1)
/* AEE36C 800771CC 3C0FE300 */ lui $t7, (0xE3001A01 >> 16) # lui $t7, 0xe300
/* AEE370 800771D0 AC6E02D0 */ sw $t6, 0x2d0($v1)
/* AEE374 800771D4 35EF1A01 */ ori $t7, (0xE3001A01 & 0xFFFF) # ori $t7, $t7, 0x1a01
/* AEE378 800771D8 24180020 */ li $t8, 32
/* AEE37C 800771DC AC580004 */ sw $t8, 4($v0)
/* AEE380 800771E0 AC4F0000 */ sw $t7, ($v0)
/* AEE384 800771E4 8C6202D0 */ lw $v0, 0x2d0($v1)
/* AEE388 800771E8 3C0EE300 */ lui $t6, (0xE3001801 >> 16) # lui $t6, 0xe300
/* AEE38C 800771EC 35CE1801 */ ori $t6, (0xE3001801 & 0xFFFF) # ori $t6, $t6, 0x1801
/* AEE390 800771F0 24590008 */ addiu $t9, $v0, 8
/* AEE394 800771F4 AC7902D0 */ sw $t9, 0x2d0($v1)
/* AEE398 800771F8 240F0080 */ li $t7, 128
/* AEE39C 800771FC AC4F0004 */ sw $t7, 4($v0)
/* AEE3A0 80077200 AC4E0000 */ sw $t6, ($v0)
/* AEE3A4 80077204 8C6202D0 */ lw $v0, 0x2d0($v1)
/* AEE3A8 80077208 3C19FA00 */ lui $t9, (0xFA000080 >> 16) # lui $t9, 0xfa00
/* AEE3AC 8007720C 37390080 */ ori $t9, (0xFA000080 & 0xFFFF) # ori $t9, $t9, 0x80
/* AEE3B0 80077210 24580008 */ addiu $t8, $v0, 8
/* AEE3B4 80077214 AC7802D0 */ sw $t8, 0x2d0($v1)
/* AEE3B8 80077218 AC590000 */ sw $t9, ($v0)
/* AEE3BC 8007721C 93AF00A4 */ lbu $t7, 0xa4($sp)
/* AEE3C0 80077220 93AE00A5 */ lbu $t6, 0xa5($sp)
/* AEE3C4 80077224 00002825 */ move $a1, $zero
/* AEE3C8 80077228 000FC600 */ sll $t8, $t7, 0x18
/* AEE3CC 8007722C 000E7C00 */ sll $t7, $t6, 0x10
/* AEE3D0 80077230 030FC825 */ or $t9, $t8, $t7
/* AEE3D4 80077234 93B800A6 */ lbu $t8, 0xa6($sp)
/* AEE3D8 80077238 00003825 */ move $a3, $zero
/* AEE3DC 8007723C 00187A00 */ sll $t7, $t8, 8
/* AEE3E0 80077240 8FB80058 */ lw $t8, 0x58($sp)
/* AEE3E4 80077244 032F7025 */ or $t6, $t9, $t7
/* AEE3E8 80077248 930F0B0B */ lbu $t7, 0xb0b($t8)
/* AEE3EC 8007724C 01CFC025 */ or $t8, $t6, $t7
/* AEE3F0 80077250 AC580004 */ sw $t8, 4($v0)
/* AEE3F4 80077254 8C6202D0 */ lw $v0, 0x2d0($v1)
/* AEE3F8 80077258 3C0EFB00 */ lui $t6, 0xfb00
/* AEE3FC 8007725C 0009C600 */ sll $t8, $t1, 0x18
/* AEE400 80077260 24590008 */ addiu $t9, $v0, 8
/* AEE404 80077264 AC7902D0 */ sw $t9, 0x2d0($v1)
/* AEE408 80077268 AC4E0000 */ sw $t6, ($v0)
/* AEE40C 8007726C 000A7400 */ sll $t6, $t2, 0x10
/* AEE410 80077270 8FB90058 */ lw $t9, 0x58($sp)
/* AEE414 80077274 030E7825 */ or $t7, $t8, $t6
/* AEE418 80077278 000BC200 */ sll $t8, $t3, 8
/* AEE41C 8007727C 01F87025 */ or $t6, $t7, $t8
/* AEE420 80077280 93380B0C */ lbu $t8, 0xb0c($t9)
/* AEE424 80077284 01D8C825 */ or $t9, $t6, $t8
/* AEE428 80077288 AC590004 */ sw $t9, 4($v0)
/* AEE42C 8007728C 8C6202D0 */ lw $v0, 0x2d0($v1)
/* AEE430 80077290 3C0EDB06 */ lui $t6, (0xDB060020 >> 16) # lui $t6, 0xdb06
/* AEE434 80077294 35CE0020 */ ori $t6, (0xDB060020 & 0xFFFF) # ori $t6, $t6, 0x20
/* AEE438 80077298 244F0008 */ addiu $t7, $v0, 8
/* AEE43C 8007729C AC6F02D0 */ sw $t7, 0x2d0($v1)
/* AEE440 800772A0 AC4E0000 */ sw $t6, ($v0)
/* AEE444 800772A4 8FB800B8 */ lw $t8, 0xb8($sp)
/* AEE448 800772A8 240F0020 */ li $t7, 32
/* AEE44C 800772AC 24190200 */ li $t9, 512
/* AEE450 800772B0 8F040000 */ lw $a0, ($t8)
/* AEE454 800772B4 97B80094 */ lhu $t8, 0x94($sp)
/* AEE458 800772B8 AFAF0014 */ sw $t7, 0x14($sp)
/* AEE45C 800772BC 97AF0092 */ lhu $t7, 0x92($sp)
/* AEE460 800772C0 AFB90010 */ sw $t9, 0x10($sp)
/* AEE464 800772C4 240E0001 */ li $t6, 1
/* AEE468 800772C8 33190FFF */ andi $t9, $t8, 0xfff
/* AEE46C 800772CC AFAE0018 */ sw $t6, 0x18($sp)
/* AEE470 800772D0 AFB9001C */ sw $t9, 0x1c($sp)
/* AEE474 800772D4 24180FFF */ li $t8, 4095
/* AEE478 800772D8 31EE0FFF */ andi $t6, $t7, 0xfff
/* AEE47C 800772DC 97A60096 */ lhu $a2, 0x96($sp)
/* AEE480 800772E0 030EC823 */ subu $t9, $t8, $t6
/* AEE484 800772E4 24180040 */ li $t8, 64
/* AEE488 800772E8 240F0100 */ li $t7, 256
/* AEE48C 800772EC AFAF0024 */ sw $t7, 0x24($sp)
/* AEE490 800772F0 AFB80028 */ sw $t8, 0x28($sp)
/* AEE494 800772F4 AFB90020 */ sw $t9, 0x20($sp)
/* AEE498 800772F8 AFA3008C */ sw $v1, 0x8c($sp)
/* AEE49C 800772FC E7AE0098 */ swc1 $f14, 0x98($sp)
/* AEE4A0 80077300 AFA20068 */ sw $v0, 0x68($sp)
/* AEE4A4 80077304 0C0253D0 */ jal Gfx_TwoTexScroll
/* AEE4A8 80077308 30C60FFF */ andi $a2, $a2, 0xfff
/* AEE4AC 8007730C 8FA80068 */ lw $t0, 0x68($sp)
/* AEE4B0 80077310 8FA3008C */ lw $v1, 0x8c($sp)
/* AEE4B4 80077314 C7AE0098 */ lwc1 $f14, 0x98($sp)
/* AEE4B8 80077318 AD020004 */ sw $v0, 4($t0)
/* AEE4BC 8007731C 8C6202D0 */ lw $v0, 0x2d0($v1)
/* AEE4C0 80077320 3C19E300 */ lui $t9, (0xE3001001 >> 16) # lui $t9, 0xe300
/* AEE4C4 80077324 37391001 */ ori $t9, (0xE3001001 & 0xFFFF) # ori $t9, $t9, 0x1001
/* AEE4C8 80077328 244E0008 */ addiu $t6, $v0, 8
/* AEE4CC 8007732C AC6E02D0 */ sw $t6, 0x2d0($v1)
/* AEE4D0 80077330 AC400004 */ sw $zero, 4($v0)
/* AEE4D4 80077334 AC590000 */ sw $t9, ($v0)
/* AEE4D8 80077338 8C6202D0 */ lw $v0, 0x2d0($v1)
/* AEE4DC 8007733C 3C0E0501 */ lui $t6, %hi(gFieldDL_00CA70) # $t6, 0x501
/* AEE4E0 80077340 25CECA70 */ addiu $t6, %lo(gFieldDL_00CA70) # addiu $t6, $t6, -0x3590
/* AEE4E4 80077344 244F0008 */ addiu $t7, $v0, 8
/* AEE4E8 80077348 AC6F02D0 */ sw $t7, 0x2d0($v1)
/* AEE4EC 8007734C 3C18DE00 */ lui $t8, 0xde00
/* AEE4F0 80077350 AC580000 */ sw $t8, ($v0)
/* AEE4F4 80077354 AC4E0004 */ sw $t6, 4($v0)
/* AEE4F8 80077358 8FB900B8 */ lw $t9, 0xb8($sp)
/* AEE4FC 8007735C 3C068014 */ lui $a2, %hi(D_8013C780) # $a2, 0x8014
/* AEE500 80077360 24C6C780 */ addiu $a2, %lo(D_8013C780) # addiu $a2, $a2, -0x3880
/* AEE504 80077364 8F250000 */ lw $a1, ($t9)
/* AEE508 80077368 27A4007C */ addiu $a0, $sp, 0x7c
/* AEE50C 8007736C 24070FE4 */ li $a3, 4068
/* AEE510 80077370 0C031AD5 */ jal Graph_CloseDisps
/* AEE514 80077374 E7AE0098 */ swc1 $f14, 0x98($sp)
/* AEE518 80077378 C7AE0098 */ lwc1 $f14, 0x98($sp)
/* AEE51C 8007737C 3C028016 */ lui $v0, %hi(D_8015FDB0) # $v0, 0x8016
/* AEE520 80077380 2442FDB0 */ addiu $v0, %lo(D_8015FDB0) # addiu $v0, $v0, -0x250
/* AEE524 80077384 4600718D */ trunc.w.s $f6, $f14
/* AEE528 80077388 944F0000 */ lhu $t7, ($v0)
/* AEE52C 8007738C 8FBF0034 */ lw $ra, 0x34($sp)
/* AEE530 80077390 27BD00B8 */ addiu $sp, $sp, 0xb8
/* AEE534 80077394 440E3000 */ mfc1 $t6, $f6
/* AEE538 80077398 00000000 */ nop
/* AEE53C 8007739C 01EEC821 */ addu $t9, $t7, $t6
/* AEE540 800773A0 03E00008 */ jr $ra
/* AEE544 800773A4 A4590000 */ sh $t9, ($v0)

View file

@ -1,152 +0,0 @@
glabel func_800773A8
/* AEE548 800773A8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* AEE54C 800773AC 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEE550 800773B0 AFBF0014 */ sw $ra, 0x14($sp)
/* AEE554 800773B4 AFA40028 */ sw $a0, 0x28($sp)
/* AEE558 800773B8 AFA60030 */ sw $a2, 0x30($sp)
/* AEE55C 800773BC AFA70034 */ sw $a3, 0x34($sp)
/* AEE560 800773C0 00811821 */ addu $v1, $a0, $at
/* AEE564 800773C4 906E1CBF */ lbu $t6, 0x1cbf($v1)
/* AEE568 800773C8 44856000 */ mtc1 $a1, $f12
/* AEE56C 800773CC 24010005 */ li $at, 5
/* AEE570 800773D0 11C1007A */ beq $t6, $at, .L800775BC
/* AEE574 800773D4 00803025 */ move $a2, $a0
/* AEE578 800773D8 AFA3001C */ sw $v1, 0x1c($sp)
/* AEE57C 800773DC AFA60028 */ sw $a2, 0x28($sp)
/* AEE580 800773E0 0C03032E */ jal func_800C0CB8
/* AEE584 800773E4 E7AC002C */ swc1 $f12, 0x2c($sp)
/* AEE588 800773E8 8FA3001C */ lw $v1, 0x1c($sp)
/* AEE58C 800773EC 8FA60028 */ lw $a2, 0x28($sp)
/* AEE590 800773F0 C7A20034 */ lwc1 $f2, 0x34($sp)
/* AEE594 800773F4 10400071 */ beqz $v0, .L800775BC
/* AEE598 800773F8 C7AC002C */ lwc1 $f12, 0x2c($sp)
/* AEE59C 800773FC 44808000 */ mtc1 $zero, $f16
/* AEE5A0 80077400 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* AEE5A4 80077404 44817000 */ mtc1 $at, $f14
/* AEE5A8 80077408 4610603C */ c.lt.s $f12, $f16
/* AEE5AC 8007740C 00002025 */ move $a0, $zero
/* AEE5B0 80077410 24050003 */ li $a1, 3
/* AEE5B4 80077414 45020003 */ bc1fl .L80077424
/* AEE5B8 80077418 460C703C */ c.lt.s $f14, $f12
/* AEE5BC 8007741C 46008306 */ mov.s $f12, $f16
/* AEE5C0 80077420 460C703C */ c.lt.s $f14, $f12
.L80077424:
/* AEE5C4 80077424 00000000 */ nop
/* AEE5C8 80077428 45020003 */ bc1fl .L80077438
/* AEE5CC 8007742C 4602603C */ c.lt.s $f12, $f2
/* AEE5D0 80077430 46007306 */ mov.s $f12, $f14
/* AEE5D4 80077434 4602603C */ c.lt.s $f12, $f2
.L80077438:
/* AEE5D8 80077438 46026001 */ sub.s $f0, $f12, $f2
/* AEE5DC 8007743C 45020003 */ bc1fl .L8007744C
/* AEE5E0 80077440 846F0AF6 */ lh $t7, 0xaf6($v1)
/* AEE5E4 80077444 46008006 */ mov.s $f0, $f16
/* AEE5E8 80077448 846F0AF6 */ lh $t7, 0xaf6($v1)
.L8007744C:
/* AEE5EC 8007744C C7A40030 */ lwc1 $f4, 0x30($sp)
/* AEE5F0 80077450 46106032 */ c.eq.s $f12, $f16
/* AEE5F4 80077454 448F3000 */ mtc1 $t7, $f6
/* AEE5F8 80077458 3C010001 */ lui $at, 1
/* AEE5FC 8007745C 00260821 */ addu $at, $at, $a2
/* AEE600 80077460 46803220 */ cvt.s.w $f8, $f6
/* AEE604 80077464 46082281 */ sub.s $f10, $f4, $f8
/* AEE608 80077468 46005482 */ mul.s $f18, $f10, $f0
/* AEE60C 8007746C 4600918D */ trunc.w.s $f6, $f18
/* AEE610 80077470 44193000 */ mfc1 $t9, $f6
/* AEE614 80077474 4500000B */ bc1f .L800774A4
/* AEE618 80077478 A4390AC2 */ sh $t9, 0xac2($at)
/* AEE61C 8007747C 3C010001 */ lui $at, 1
/* AEE620 80077480 00C11821 */ addu $v1, $a2, $at
/* AEE624 80077484 00002025 */ move $a0, $zero
/* AEE628 80077488 24050003 */ li $a1, 3
.L8007748C:
/* AEE62C 8007748C 24840001 */ addiu $a0, $a0, 1
/* AEE630 80077490 24630002 */ addiu $v1, $v1, 2
/* AEE634 80077494 1485FFFD */ bne $a0, $a1, .L8007748C
/* AEE638 80077498 A4600ABA */ sh $zero, 0xaba($v1)
/* AEE63C 8007749C 1000001F */ b .L8007751C
/* AEE640 800774A0 C7A00038 */ lwc1 $f0, 0x38($sp)
.L800774A4:
/* AEE644 800774A4 3C0140A0 */ li $at, 0x40A00000 # 0.000000
/* AEE648 800774A8 44812000 */ mtc1 $at, $f4
/* AEE64C 800774AC 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEE650 800774B0 00C11821 */ addu $v1, $a2, $at
/* AEE654 800774B4 46046002 */ mul.s $f0, $f12, $f4
/* AEE658 800774B8 00C11021 */ addu $v0, $a2, $at
/* AEE65C 800774BC 4600703C */ c.lt.s $f14, $f0
/* AEE660 800774C0 00000000 */ nop
/* AEE664 800774C4 45000002 */ bc1f .L800774D0
/* AEE668 800774C8 00000000 */ nop
/* AEE66C 800774CC 46007006 */ mov.s $f0, $f14
.L800774D0:
/* AEE670 800774D0 90480AF3 */ lbu $t0, 0xaf3($v0)
/* AEE674 800774D4 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE678 800774D8 44884000 */ mtc1 $t0, $f8
/* AEE67C 800774DC 05010004 */ bgez $t0, .L800774F0
/* AEE680 800774E0 468042A0 */ cvt.s.w $f10, $f8
/* AEE684 800774E4 44819000 */ mtc1 $at, $f18
/* AEE688 800774E8 00000000 */ nop
/* AEE68C 800774EC 46125280 */ add.s $f10, $f10, $f18
.L800774F0:
/* AEE690 800774F0 46005182 */ mul.s $f6, $f10, $f0
/* AEE694 800774F4 24840001 */ addiu $a0, $a0, 1
/* AEE698 800774F8 24630002 */ addiu $v1, $v1, 2
/* AEE69C 800774FC 24420001 */ addiu $v0, $v0, 1
/* AEE6A0 80077500 4600310D */ trunc.w.s $f4, $f6
/* AEE6A4 80077504 440C2000 */ mfc1 $t4, $f4
/* AEE6A8 80077508 00000000 */ nop
/* AEE6AC 8007750C 000C6823 */ negu $t5, $t4
/* AEE6B0 80077510 1485FFEF */ bne $a0, $a1, .L800774D0
/* AEE6B4 80077514 A46D0ABA */ sh $t5, 0xaba($v1)
/* AEE6B8 80077518 C7A00038 */ lwc1 $f0, 0x38($sp)
.L8007751C:
/* AEE6BC 8007751C 3C010001 */ li $at, 0x00010000 # 0.000000
/* AEE6C0 80077520 00C11821 */ addu $v1, $a2, $at
/* AEE6C4 80077524 4610003E */ c.le.s $f0, $f16
/* AEE6C8 80077528 00002025 */ move $a0, $zero
/* AEE6CC 8007752C 45030024 */ bc1tl .L800775C0
/* AEE6D0 80077530 8FBF0014 */ lw $ra, 0x14($sp)
/* AEE6D4 80077534 46006302 */ mul.s $f12, $f12, $f0
/* AEE6D8 80077538 00C11021 */ addu $v0, $a2, $at
.L8007753C:
/* AEE6DC 8007753C 904E0AE4 */ lbu $t6, 0xae4($v0)
/* AEE6E0 80077540 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE6E4 80077544 448E4000 */ mtc1 $t6, $f8
/* AEE6E8 80077548 05C10004 */ bgez $t6, .L8007755C
/* AEE6EC 8007754C 468044A0 */ cvt.s.w $f18, $f8
/* AEE6F0 80077550 44815000 */ mtc1 $at, $f10
/* AEE6F4 80077554 00000000 */ nop
/* AEE6F8 80077558 460A9480 */ add.s $f18, $f18, $f10
.L8007755C:
/* AEE6FC 8007755C 460C9182 */ mul.s $f6, $f18, $f12
/* AEE700 80077560 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* AEE704 80077564 4600310D */ trunc.w.s $f4, $f6
/* AEE708 80077568 44082000 */ mfc1 $t0, $f4
/* AEE70C 8007756C 00000000 */ nop
/* AEE710 80077570 00084823 */ negu $t1, $t0
/* AEE714 80077574 A4690AB0 */ sh $t1, 0xab0($v1)
/* AEE718 80077578 904A0AEA */ lbu $t2, 0xaea($v0)
/* AEE71C 8007757C 448A4000 */ mtc1 $t2, $f8
/* AEE720 80077580 05410004 */ bgez $t2, .L80077594
/* AEE724 80077584 468042A0 */ cvt.s.w $f10, $f8
/* AEE728 80077588 44819000 */ mtc1 $at, $f18
/* AEE72C 8007758C 00000000 */ nop
/* AEE730 80077590 46125280 */ add.s $f10, $f10, $f18
.L80077594:
/* AEE734 80077594 460C5182 */ mul.s $f6, $f10, $f12
/* AEE738 80077598 24840001 */ addiu $a0, $a0, 1
/* AEE73C 8007759C 24630002 */ addiu $v1, $v1, 2
/* AEE740 800775A0 24420001 */ addiu $v0, $v0, 1
/* AEE744 800775A4 4600310D */ trunc.w.s $f4, $f6
/* AEE748 800775A8 440E2000 */ mfc1 $t6, $f4
/* AEE74C 800775AC 00000000 */ nop
/* AEE750 800775B0 000E7823 */ negu $t7, $t6
/* AEE754 800775B4 1485FFE1 */ bne $a0, $a1, .L8007753C
/* AEE758 800775B8 A46F0AB4 */ sh $t7, 0xab4($v1)
.L800775BC:
/* AEE75C 800775BC 8FBF0014 */ lw $ra, 0x14($sp)
.L800775C0:
/* AEE760 800775C0 27BD0028 */ addiu $sp, $sp, 0x28
/* AEE764 800775C4 03E00008 */ jr $ra
/* AEE768 800775C8 00000000 */ nop

View file

@ -1,12 +0,0 @@
glabel func_80077600
/* AEE7A0 80077600 3C0E8016 */ lui $t6, %hi(gSaveContext+0x140e) # $t6, 0x8016
/* AEE7A4 80077604 95CEFA6E */ lhu $t6, %lo(gSaveContext+0x140e)($t6)
/* AEE7A8 80077608 3401FFFF */ li $at, 65535
/* AEE7AC 8007760C 00001825 */ move $v1, $zero
/* AEE7B0 80077610 15C10002 */ bne $t6, $at, .L8007761C
/* AEE7B4 80077614 00000000 */ nop
/* AEE7B8 80077618 24030001 */ li $v1, 1
.L8007761C:
/* AEE7BC 8007761C 03E00008 */ jr $ra
/* AEE7C0 80077620 00601025 */ move $v0, $v1

View file

@ -1,28 +0,0 @@
glabel func_80077624
/* AEE7C4 80077624 27BDFFE8 */ addiu $sp, $sp, -0x18
/* AEE7C8 80077628 AFBF0014 */ sw $ra, 0x14($sp)
/* AEE7CC 8007762C 908507A5 */ lbu $a1, 0x7a5($a0)
/* AEE7D0 80077630 24010013 */ li $at, 19
/* AEE7D4 80077634 14A10005 */ bne $a1, $at, .L8007764C
/* AEE7D8 80077638 00000000 */ nop
/* AEE7DC 8007763C 0C03DBED */ jal func_800F6FB4
/* AEE7E0 80077640 24040005 */ li $a0, 5
/* AEE7E4 80077644 10000004 */ b .L80077658
/* AEE7E8 80077648 2404000E */ li $a0, 14
.L8007764C:
/* AEE7EC 8007764C 0C03DBED */ jal func_800F6FB4
/* AEE7F0 80077650 30A400FF */ andi $a0, $a1, 0xff
/* AEE7F4 80077654 2404000E */ li $a0, 14
.L80077658:
/* AEE7F8 80077658 24050001 */ li $a1, 1
/* AEE7FC 8007765C 0C03DB56 */ jal func_800F6D58
/* AEE800 80077660 24060001 */ li $a2, 1
/* AEE804 80077664 2404000F */ li $a0, 15
/* AEE808 80077668 24050001 */ li $a1, 1
/* AEE80C 8007766C 0C03DB56 */ jal func_800F6D58
/* AEE810 80077670 24060001 */ li $a2, 1
/* AEE814 80077674 8FBF0014 */ lw $ra, 0x14($sp)
/* AEE818 80077678 27BD0018 */ addiu $sp, $sp, 0x18
/* AEE81C 8007767C 03E00008 */ jr $ra
/* AEE820 80077680 00000000 */ nop

View file

@ -1,27 +0,0 @@
glabel func_80077684
/* AEE824 80077684 27BDFFE8 */ addiu $sp, $sp, -0x18
/* AEE828 80077688 AFBF0014 */ sw $ra, 0x14($sp)
/* AEE82C 8007768C AFA40018 */ sw $a0, 0x18($sp)
/* AEE830 80077690 2404000E */ li $a0, 14
/* AEE834 80077694 24050001 */ li $a1, 1
/* AEE838 80077698 0C03DB56 */ jal func_800F6D58
/* AEE83C 8007769C 00003025 */ move $a2, $zero
/* AEE840 800776A0 2404000F */ li $a0, 15
/* AEE844 800776A4 24050001 */ li $a1, 1
/* AEE848 800776A8 0C03DB56 */ jal func_800F6D58
/* AEE84C 800776AC 00003025 */ move $a2, $zero
/* AEE850 800776B0 0C03E82D */ jal func_800FA0B4
/* AEE854 800776B4 00002025 */ move $a0, $zero
/* AEE858 800776B8 24010001 */ li $at, 1
/* AEE85C 800776BC 14410005 */ bne $v0, $at, .L800776D4
/* AEE860 800776C0 240E0080 */ li $t6, 128
/* AEE864 800776C4 3C018016 */ lui $at, %hi(gSaveContext+0x13e0) # $at, 0x8016
/* AEE868 800776C8 A02EFA40 */ sb $t6, %lo(gSaveContext+0x13e0)($at)
/* AEE86C 800776CC 0C01D62B */ jal func_800758AC
/* AEE870 800776D0 8FA40018 */ lw $a0, 0x18($sp)
.L800776D4:
/* AEE874 800776D4 8FBF0014 */ lw $ra, 0x14($sp)
/* AEE878 800776D8 27BD0018 */ addiu $sp, $sp, 0x18
/* AEE87C 800776DC 03E00008 */ jr $ra
/* AEE880 800776E0 00000000 */ nop

View file

@ -1,67 +0,0 @@
glabel func_800776E4
/* AEE884 800776E4 3C018012 */ lui $at, %hi(D_8011FB30) # $at, 0x8012
/* AEE888 800776E8 3C028016 */ lui $v0, %hi(gSaveContext) # $v0, 0x8016
/* AEE88C 800776EC A020FB30 */ sb $zero, %lo(D_8011FB30)($at)
/* AEE890 800776F0 2442E660 */ addiu $v0, %lo(gSaveContext) # addiu $v0, $v0, -0x19a0
/* AEE894 800776F4 844F1394 */ lh $t7, 0x1394($v0)
/* AEE898 800776F8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* AEE89C 800776FC 240EFFFD */ li $t6, -3
/* AEE8A0 80077700 3C010001 */ lui $at, 1
/* AEE8A4 80077704 AFBF0014 */ sw $ra, 0x14($sp)
/* AEE8A8 80077708 AC400008 */ sw $zero, 8($v0)
/* AEE8AC 8007770C AC4E1364 */ sw $t6, 0x1364($v0)
/* AEE8B0 80077710 00240821 */ addu $at, $at, $a0
/* AEE8B4 80077714 A42F1E1A */ sh $t7, 0x1e1a($at)
/* AEE8B8 80077718 3C010001 */ lui $at, 1
/* AEE8BC 8007771C 00240821 */ addu $at, $at, $a0
/* AEE8C0 80077720 24180014 */ li $t8, 20
/* AEE8C4 80077724 A0381E15 */ sb $t8, 0x1e15($at)
/* AEE8C8 80077728 3C010001 */ lui $at, 1
/* AEE8CC 8007772C 24050003 */ li $a1, 3
/* AEE8D0 80077730 00240821 */ addu $at, $at, $a0
/* AEE8D4 80077734 A0251E5E */ sb $a1, 0x1e5e($at)
/* AEE8D8 80077738 3C030001 */ lui $v1, 1
/* AEE8DC 8007773C A045141D */ sb $a1, 0x141d($v0)
/* AEE8E0 80077740 00641821 */ addu $v1, $v1, $a0
/* AEE8E4 80077744 84631E1A */ lh $v1, 0x1e1a($v1)
/* AEE8E8 80077748 24010053 */ li $at, 83
/* AEE8EC 8007774C 1061001B */ beq $v1, $at, .L800777BC
/* AEE8F0 80077750 240100E4 */ li $at, 228
/* AEE8F4 80077754 10610015 */ beq $v1, $at, .L800777AC
/* AEE8F8 80077758 240100FC */ li $at, 252
/* AEE8FC 8007775C 10610019 */ beq $v1, $at, .L800777C4
/* AEE900 80077760 24010102 */ li $at, 258
/* AEE904 80077764 10610009 */ beq $v1, $at, .L8007778C
/* AEE908 80077768 24010123 */ li $at, 291
/* AEE90C 8007776C 1061000B */ beq $v1, $at, .L8007779C
/* AEE910 80077770 24010147 */ li $at, 327
/* AEE914 80077774 54610014 */ bnel $v1, $at, .L800777C8
/* AEE918 80077778 8FBF0014 */ lw $ra, 0x14($sp)
/* AEE91C 8007777C 0C00D6DD */ jal Flags_SetEventChkInf
/* AEE920 80077780 240400B9 */ li $a0, 185
/* AEE924 80077784 10000010 */ b .L800777C8
/* AEE928 80077788 8FBF0014 */ lw $ra, 0x14($sp)
.L8007778C:
/* AEE92C 8007778C 0C00D6DD */ jal Flags_SetEventChkInf
/* AEE930 80077790 240400B1 */ li $a0, 177
/* AEE934 80077794 1000000C */ b .L800777C8
/* AEE938 80077798 8FBF0014 */ lw $ra, 0x14($sp)
.L8007779C:
/* AEE93C 8007779C 0C00D6DD */ jal Flags_SetEventChkInf
/* AEE940 800777A0 240400B8 */ li $a0, 184
/* AEE944 800777A4 10000008 */ b .L800777C8
/* AEE948 800777A8 8FBF0014 */ lw $ra, 0x14($sp)
.L800777AC:
/* AEE94C 800777AC 0C00D6DD */ jal Flags_SetEventChkInf
/* AEE950 800777B0 240400B6 */ li $a0, 182
/* AEE954 800777B4 10000004 */ b .L800777C8
/* AEE958 800777B8 8FBF0014 */ lw $ra, 0x14($sp)
.L800777BC:
/* AEE95C 800777BC 0C00D6DD */ jal Flags_SetEventChkInf
/* AEE960 800777C0 240400A7 */ li $a0, 167
.L800777C4:
/* AEE964 800777C4 8FBF0014 */ lw $ra, 0x14($sp)
.L800777C8:
/* AEE968 800777C8 27BD0018 */ addiu $sp, $sp, 0x18
/* AEE96C 800777CC 03E00008 */ jr $ra
/* AEE970 800777D0 00000000 */ nop

View file

@ -984,11 +984,11 @@ glabel L800AF25C
/* B26410 800AF270 11E0000C */ beqz $t7, .L800AF2A4
/* B26414 800AF274 2529FC1C */ addiu $t1, %lo(D_8011FC1C) # addiu $t1, $t1, -0x3e4
/* B26418 800AF278 8D181360 */ lw $t8, 0x1360($t0)
/* B2641C 800AF27C 3C028012 */ lui $v0, %hi(D_8011FB30) # $v0, 0x8012
/* B2641C 800AF27C 3C028012 */ lui $v0, %hi(gWeatherMode) # $v0, 0x8012
/* B26420 800AF280 2B010004 */ slti $at, $t8, 4
/* B26424 800AF284 50200008 */ beql $at, $zero, .L800AF2A8
/* B26428 800AF288 0003C8C0 */ sll $t9, $v1, 3
/* B2642C 800AF28C 9042FB30 */ lbu $v0, %lo(D_8011FB30)($v0)
/* B2642C 800AF28C 9042FB30 */ lbu $v0, %lo(gWeatherMode)($v0)
/* B26430 800AF290 18400004 */ blez $v0, .L800AF2A4
/* B26434 800AF294 28410006 */ slti $at, $v0, 6
/* B26438 800AF298 50200003 */ beql $at, $zero, .L800AF2A8
@ -1038,7 +1038,7 @@ glabel L800AF25C
/* B264D8 800AF338 002D0821 */ addu $at, $at, $t5
/* B264DC 800AF33C 9506141A */ lhu $a2, 0x141a($t0)
/* B264E0 800AF340 94E40002 */ lhu $a0, 2($a3)
/* B264E4 800AF344 0C01BE4F */ jal func_8006F93C
/* B264E4 800AF344 0C01BE4F */ jal Environment_LerpWeight
/* B264E8 800AF348 94E50000 */ lhu $a1, ($a3)
/* B264EC 800AF34C 3C01437F */ li $at, 0x437F0000 # 0.000000
/* B264F0 800AF350 44812000 */ mtc1 $at, $f4
@ -1094,8 +1094,8 @@ glabel L800AF25C
/* B265A0 800AF400 000250C0 */ sll $t2, $v0, 3
.L800AF404:
/* B265A4 800AF404 93AE0041 */ lbu $t6, 0x41($sp)
/* B265A8 800AF408 3C188012 */ lui $t8, %hi(D_8011FD3C) # $t8, 0x8012
/* B265AC 800AF40C 2718FD3C */ addiu $t8, %lo(D_8011FD3C) # addiu $t8, $t8, -0x2c4
/* B265A8 800AF408 3C188012 */ lui $t8, %hi(gSkyboxFiles) # $t8, 0x8012
/* B265AC 800AF40C 2718FD3C */ addiu $t8, %lo(gSkyboxFiles) # addiu $t8, $t8, -0x2c4
/* B265B0 800AF410 000E7900 */ sll $t7, $t6, 4
/* B265B4 800AF414 01F81021 */ addu $v0, $t7, $t8
/* B265B8 800AF418 8C590004 */ lw $t9, 4($v0)
@ -1127,8 +1127,8 @@ glabel L800AF25C
/* B2661C 800AF47C 0C0006A8 */ jal DmaMgr_SendRequest1
/* B26620 800AF480 8FA60044 */ lw $a2, 0x44($sp)
/* B26624 800AF484 93AC0040 */ lbu $t4, 0x40($sp)
/* B26628 800AF488 3C0E8012 */ lui $t6, %hi(D_8011FD3C) # $t6, 0x8012
/* B2662C 800AF48C 25CEFD3C */ addiu $t6, %lo(D_8011FD3C) # addiu $t6, $t6, -0x2c4
/* B26628 800AF488 3C0E8012 */ lui $t6, %hi(gSkyboxFiles) # $t6, 0x8012
/* B2662C 800AF48C 25CEFD3C */ addiu $t6, %lo(gSkyboxFiles) # addiu $t6, $t6, -0x2c4
/* B26630 800AF490 000C6900 */ sll $t5, $t4, 4
/* B26634 800AF494 01AE1821 */ addu $v1, $t5, $t6
/* B26638 800AF498 8C6F0004 */ lw $t7, 4($v1)

View file

@ -91,7 +91,7 @@ glabel BossGanon_Draw
/* 0A59C 808E0E0C E61002F4 */ swc1 $f16, 0x02F4($s0) ## 000002F4
/* 0A5A0 808E0E10 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 0A5A4 808E0E14 E60A02F0 */ swc1 $f10, 0x02F0($s0) ## 000002F0
/* 0A5A8 808E0E18 0C02F228 */ jal func_800BC8A0
/* 0A5A8 808E0E18 0C02F228 */ jal Gameplay_SetFog
/* 0A5AC 808E0E1C 8E4502C0 */ lw $a1, 0x02C0($s2) ## 000002C0
/* 0A5B0 808E0E20 AE4202C0 */ sw $v0, 0x02C0($s2) ## 000002C0
/* 0A5B4 808E0E24 0C238F61 */ jal func_808E3D84

View file

@ -1204,18 +1204,18 @@ glabel L808DE3B0
/* 07D14 808DE584 92AE066C */ lbu $t6, 0x066C($s5) ## 0000066C
.L808DE588:
/* 07D18 808DE588 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
/* 07D1C 808DE58C 3C018016 */ lui $at, %hi(D_8015FCF0)
/* 07D1C 808DE58C 3C018016 */ lui $at, %hi(gCustomLensFlareOn)
/* 07D20 808DE590 11C0001C */ beq $t6, $zero, .L808DE604
/* 07D24 808DE594 00000000 */ nop
/* 07D28 808DE598 3C018016 */ lui $at, %hi(D_8015FCF0)
/* 07D2C 808DE59C A02FFCF0 */ sb $t7, %lo(D_8015FCF0)($at)
/* 07D28 808DE598 3C018016 */ lui $at, %hi(gCustomLensFlareOn)
/* 07D2C 808DE59C A02FFCF0 */ sb $t7, %lo(gCustomLensFlareOn)($at)
/* 07D30 808DE5A0 92B8066C */ lbu $t8, 0x066C($s5) ## 0000066C
/* 07D34 808DE5A4 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 07D38 808DE5A8 5701000A */ bnel $t8, $at, .L808DE5D4
/* 07D3C 808DE5AC C6A60670 */ lwc1 $f6, 0x0670($s5) ## 00000670
/* 07D40 808DE5B0 8EA90024 */ lw $t1, 0x0024($s5) ## 00000024
/* 07D44 808DE5B4 3C198016 */ lui $t9, %hi(D_8015FCF8)
/* 07D48 808DE5B8 2739FCF8 */ addiu $t9, %lo(D_8015FCF8)
/* 07D44 808DE5B4 3C198016 */ lui $t9, %hi(gCustomLensFlarePos)
/* 07D48 808DE5B8 2739FCF8 */ addiu $t9, %lo(gCustomLensFlarePos)
/* 07D4C 808DE5BC AF290000 */ sw $t1, 0x0000($t9) ## 8015FCF8
/* 07D50 808DE5C0 8EA80028 */ lw $t0, 0x0028($s5) ## 00000028
/* 07D54 808DE5C4 AF280004 */ sw $t0, 0x0004($t9) ## 8015FCFC
@ -1236,7 +1236,7 @@ glabel L808DE3B0
/* 07D8C 808DE5FC 10000002 */ beq $zero, $zero, .L808DE608
/* 07D90 808DE600 A420FD0C */ sh $zero, %lo(D_8015FD0C)($at)
.L808DE604:
/* 07D94 808DE604 A020FCF0 */ sb $zero, %lo(D_8015FCF0)($at)
/* 07D94 808DE604 A020FCF0 */ sb $zero, %lo(gCustomLensFlareOn)($at)
.L808DE608:
/* 07D98 808DE608 92A20274 */ lbu $v0, 0x0274($s5) ## 00000274
/* 07D9C 808DE60C 3C014248 */ lui $at, 0x4248 ## $at = 42480000

View file

@ -305,10 +305,10 @@ glabel L808DB498
/* 04E78 808DB6E8 8E2B0278 */ lw $t3, 0x0278($s1) ## 00000278
/* 04E7C 808DB6EC 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
/* 04E80 808DB6F0 24080002 */ addiu $t0, $zero, 0x0002 ## $t0 = 00000002
/* 04E84 808DB6F4 3C098016 */ lui $t1, %hi(D_8015FCF8)
/* 04E84 808DB6F4 3C098016 */ lui $t1, %hi(gCustomLensFlarePos)
/* 04E88 808DB6F8 A639066E */ sh $t9, 0x066E($s1) ## 0000066E
/* 04E8C 808DB6FC A228066C */ sb $t0, 0x066C($s1) ## 0000066C
/* 04E90 808DB700 2529FCF8 */ addiu $t1, %lo(D_8015FCF8)
/* 04E90 808DB700 2529FCF8 */ addiu $t1, %lo(gCustomLensFlarePos)
/* 04E94 808DB704 AD2B0000 */ sw $t3, 0x0000($t1) ## 8015FCF8
/* 04E98 808DB708 8E2A027C */ lw $t2, 0x027C($s1) ## 0000027C
/* 04E9C 808DB70C AD2A0004 */ sw $t2, 0x0004($t1) ## 8015FCFC

View file

@ -44,12 +44,12 @@ glabel func_808DC14C
/* 05960 808DC1D0 3C014140 */ lui $at, 0x4140 ## $at = 41400000
/* 05964 808DC1D4 44810000 */ mtc1 $at, $f0 ## $f0 = 12.00
/* 05968 808DC1D8 C6040168 */ lwc1 $f4, 0x0168($s0) ## 00000168
/* 0596C 808DC1DC 3C088016 */ lui $t0, %hi(D_8015FCF8)
/* 0596C 808DC1DC 3C088016 */ lui $t0, %hi(gCustomLensFlarePos)
/* 05970 808DC1E0 44050000 */ mfc1 $a1, $f0
/* 05974 808DC1E4 4600203E */ c.le.s $f4, $f0
/* 05978 808DC1E8 24180002 */ addiu $t8, $zero, 0x0002 ## $t8 = 00000002
/* 0597C 808DC1EC 24190002 */ addiu $t9, $zero, 0x0002 ## $t9 = 00000002
/* 05980 808DC1F0 2508FCF8 */ addiu $t0, %lo(D_8015FCF8)
/* 05980 808DC1F0 2508FCF8 */ addiu $t0, %lo(gCustomLensFlarePos)
/* 05984 808DC1F4 45000009 */ bc1f .L808DC21C
/* 05988 808DC1F8 00000000 */ nop
/* 0598C 808DC1FC 8E0A0260 */ lw $t2, 0x0260($s0) ## 00000260

View file

@ -68,8 +68,8 @@ glabel func_808E1034
/* 0A840 808E10B0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
.L808E10B4:
/* 0A844 808E10B4 862900B6 */ lh $t1, 0x00B6($s1) ## 000000B6
/* 0A848 808E10B8 3C0B8016 */ lui $t3, %hi(D_8015FCF8)
/* 0A84C 808E10BC 256BFCF8 */ addiu $t3, %lo(D_8015FCF8)
/* 0A848 808E10B8 3C0B8016 */ lui $t3, %hi(gCustomLensFlarePos)
/* 0A84C 808E10BC 256BFCF8 */ addiu $t3, %lo(gCustomLensFlarePos)
/* 0A850 808E10C0 252A1000 */ addiu $t2, $t1, 0x1000 ## $t2 = 00001000
/* 0A854 808E10C4 A62A00B6 */ sh $t2, 0x00B6($s1) ## 000000B6
/* 0A858 808E10C8 A467066E */ sh $a3, 0x066E($v1) ## 0000066E

View file

@ -124,7 +124,7 @@ glabel func_80BA4D7C
/* 02454 80BA4EF4 E7B20074 */ swc1 $f18, 0x0074($sp)
/* 02458 80BA4EF8 E7B00070 */ swc1 $f16, 0x0070($sp)
/* 0245C 80BA4EFC E7A2006C */ swc1 $f2, 0x006C($sp)
/* 02460 80BA4F00 0C01BE4F */ jal func_8006F93C
/* 02460 80BA4F00 0C01BE4F */ jal Environment_LerpWeight
/* 02464 80BA4F04 AFA80058 */ sw $t0, 0x0058($sp)
/* 02468 80BA4F08 C7A2006C */ lwc1 $f2, 0x006C($sp)
/* 0246C 80BA4F0C C7AA0060 */ lwc1 $f10, 0x0060($sp)

View file

@ -97,7 +97,7 @@ glabel func_8080F560
/* 0B98C 8080F6CC 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 0B990 8080F6D0 018D7021 */ addu $t6, $t4, $t5
/* 0B994 8080F6D4 A44E07AA */ sh $t6, 0x07AA($v0) ## 801607AA
/* 0B998 8080F6D8 0C01BF22 */ jal func_8006FC88
/* 0B998 8080F6D8 0C01BF22 */ jal Environment_UpdateSkybox
/* 0B99C 8080F6DC 8FA60044 */ lw $a2, 0x0044($sp)
/* 0B9A0 8080F6E0 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 0B9A4 8080F6E4 3C18E700 */ lui $t8, 0xE700 ## $t8 = E7000000

View file

@ -97,7 +97,7 @@ glabel func_808109B8
/* 0CDE4 80810B24 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 0CDE8 80810B28 018D7021 */ addu $t6, $t4, $t5
/* 0CDEC 80810B2C A44E07AA */ sh $t6, 0x07AA($v0) ## 801607AA
/* 0CDF0 80810B30 0C01BF22 */ jal func_8006FC88
/* 0CDF0 80810B30 0C01BF22 */ jal Environment_UpdateSkybox
/* 0CDF4 80810B34 8FA60038 */ lw $a2, 0x0038($sp)
/* 0CDF8 80810B38 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 0CDFC 80810B3C 3C18E700 */ lui $t8, 0xE700 ## $t8 = E7000000

View file

@ -351,9 +351,9 @@ glabel func_808113A8
/* 0DBDC 8081191C 3C080001 */ lui $t0, 0x0001 ## $t0 = 00010000
/* 0DBE0 80811920 3508C8E8 */ ori $t0, $t0, 0xC8E8 ## $t0 = 0001C8E8
/* 0DBE4 80811924 2419000A */ addiu $t9, $zero, 0x000A ## $t9 = 0000000A
/* 0DBE8 80811928 3C018012 */ lui $at, %hi(D_8011FB40)
/* 0DBE8 80811928 3C018012 */ lui $at, %hi(gTimeIncrement)
/* 0DBEC 8081192C 8FA6002C */ lw $a2, 0x002C($sp)
/* 0DBF0 80811930 A439FB40 */ sh $t9, %lo(D_8011FB40)($at)
/* 0DBF0 80811930 A439FB40 */ sh $t9, %lo(gTimeIncrement)($at)
/* 0DBF4 80811934 02081021 */ addu $v0, $s0, $t0
/* 0DBF8 80811938 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 0DBFC 8081193C 24090063 */ addiu $t1, $zero, 0x0063 ## $t1 = 00000063
@ -374,7 +374,7 @@ glabel func_808113A8
/* 0DC38 80811978 02082821 */ addu $a1, $s0, $t0
/* 0DC3C 8081197C 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 0DC40 80811980 E4400084 */ swc1 $f0, 0x0084($v0) ## 00000084
/* 0DC44 80811984 0C01BF22 */ jal func_8006FC88
/* 0DC44 80811984 0C01BF22 */ jal Environment_UpdateSkybox
/* 0DC48 80811988 E4400088 */ swc1 $f0, 0x0088($v0) ## 00000088
/* 0DC4C 8081198C 8FA30030 */ lw $v1, 0x0030($sp)
/* 0DC50 80811990 A22013E6 */ sb $zero, 0x13E6($s1) ## 8015FA46

View file

@ -53,8 +53,9 @@
<Texture Name="gFieldBeehiveFragmentTex" OutName="beehive_fragment" Format="rgba16" Width="16" Height="16" Offset="0x9710"/>
<Texture Name="gFieldSilverRockTex" OutName="silver_rock" Format="ci4" Width="64" Height="64" Offset="0x99F8"/>
<Texture Name="gFieldSilverRockTLUT" OutName="silver_rock_palette" Format="rgba16" Width="4" Height="4" Offset="0x99D0"/>
<!-- Kankyo Stuff-->
<DList Name="gFieldDL_00CA70" Offset="0xCA70"/>
<Texture Name="gFieldSandstorm1Tex" OutName="sandstorm_1" Format="i8" Width="64" Height="32" Offset="0xBA70"/>
<Texture Name="gFieldSandstorm2Tex" OutName="sandstorm_2" Format="ia8" Width="64" Height="32" Offset="0xC270"/>
<DList Name="gFieldSandstormDL" Offset="0xCA70"/>
<Blob Name="gFieldUnaccounted_00CB30" Size="0x800"/>
</File>
</Root>

View file

@ -843,10 +843,10 @@
<DList Name="gCuttableShrubTipDL" Offset="0x356A0"/>
<Texture Name="gCuttableShrubLeafTFragmentTex" OutName="cuttable_shrub_leaf_fragment" Format="rgba16" Width="32" Height="32" Offset="0x35730"/>
<Texture Name="gCuttableShrubTex" OutName="cuttanble_shrub" Format="rgba16" Width="32" Height="32" Offset="0x35F30"/>
<Texture Name="gBurnMark1Tex" OutName="burn_mark_1" Format="i4" Width="64" Height="64" Offset="0x36730"/>
<Texture Name="gBurnMark2Tex" OutName="burn_mark_2" Format="i4" Width="64" Height="64" Offset="0x36F30"/>
<DList Name="gEffBurnMark1DL" Offset="0x37730"/>
<DList Name="gEffBurnMark2DL" Offset="0x37798"/>
<Texture Name="gLensFlareCircleTex" OutName="lens_flare_circle" Format="i4" Width="64" Height="64" Offset="0x36730"/>
<Texture Name="gLensFlareRingTex" OutName="lens_flare_ring" Format="i4" Width="64" Height="64" Offset="0x36F30"/>
<DList Name="gLensFlareCircleDL" Offset="0x37730"/>
<DList Name="gLensFlareRingDL" Offset="0x37798"/>
<DList Name="gEffSparklesDL" Offset="0x37880"/>
<Texture Name="gEffSparklesTex" OutName="eff_sparkles" Format="i4" Width="16" Height="16" Offset="0x378E0"/>
<Texture Name="gEffUnknown13Tex" OutName="eff_unknown_tex_13" Format="i8" Width="16" Height="32" Offset="0x37960"/>

View file

@ -1,61 +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 purpose registers
.section .bss
.balign 16
glabel D_8015FCF0
.space 0x8
glabel D_8015FCF8
.space 0xC
glabel D_8015FD04
.space 0x2
glabel D_8015FD06
.space 0x2
glabel D_8015FD08
.space 0x4
glabel D_8015FD0C
.space 0x4
glabel D_8015FD10
.space 0x60
glabel D_8015FD70
.space 0xC
glabel D_8015FD7C
.space 0x2
glabel D_8015FD7E
.space 0x2
glabel D_8015FD80
.space 0x4
glabel D_8015FD84
.space 0x4
glabel D_8015FD88
.space 0x10
glabel D_8015FD98
.space 0x8
glabel D_8015FDA0
.space 0xE
glabel D_8015FDAE
.space 0x2
glabel D_8015FDB0
.space 0x10

View file

@ -1,117 +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 purpose registers
.section .data
.balign 16
glabel D_8011FAF0
.incbin "baserom.z64", 0xB96C90, 0x40
glabel D_8011FB30
.incbin "baserom.z64", 0xB96CD0, 0x4
glabel D_8011FB34
.incbin "baserom.z64", 0xB96CD4, 0x4
glabel D_8011FB38
.incbin "baserom.z64", 0xB96CD8, 0x4
glabel D_8011FB3C
.incbin "baserom.z64", 0xB96CDC, 0x4
glabel D_8011FB40
.incbin "baserom.z64", 0xB96CE0, 0x4
glabel D_8011FB44
.incbin "baserom.z64", 0xB96CE4, 0x4
glabel D_8011FB48
.incbin "baserom.z64", 0xB96CE8, 0xD4
glabel D_8011FC1C
.incbin "baserom.z64", 0xB96DBC, 0x120
glabel D_8011FD3C
.word _vr_fine0_staticSegmentRomStart
.word _vr_fine0_staticSegmentRomEnd
.word _vr_fine0_pal_staticSegmentRomStart
.word _vr_fine0_pal_staticSegmentRomEnd
.word _vr_fine1_staticSegmentRomStart
.word _vr_fine1_staticSegmentRomEnd
.word _vr_fine1_pal_staticSegmentRomStart
.word _vr_fine1_pal_staticSegmentRomEnd
.word _vr_fine2_staticSegmentRomStart
.word _vr_fine2_staticSegmentRomEnd
.word _vr_fine2_pal_staticSegmentRomStart
.word _vr_fine2_pal_staticSegmentRomEnd
.word _vr_fine3_staticSegmentRomStart
.word _vr_fine3_staticSegmentRomEnd
.word _vr_fine3_pal_staticSegmentRomStart
.word _vr_fine3_pal_staticSegmentRomEnd
.word _vr_cloud0_staticSegmentRomStart
.word _vr_cloud0_staticSegmentRomEnd
.word _vr_cloud0_pal_staticSegmentRomStart
.word _vr_cloud0_pal_staticSegmentRomEnd
.word _vr_cloud1_staticSegmentRomStart
.word _vr_cloud1_staticSegmentRomEnd
.word _vr_cloud1_pal_staticSegmentRomStart
.word _vr_cloud1_pal_staticSegmentRomEnd
.word _vr_cloud2_staticSegmentRomStart
.word _vr_cloud2_staticSegmentRomEnd
.word _vr_cloud2_pal_staticSegmentRomStart
.word _vr_cloud2_pal_staticSegmentRomEnd
.word _vr_cloud3_staticSegmentRomStart
.word _vr_cloud3_staticSegmentRomEnd
.word _vr_cloud3_pal_staticSegmentRomStart
.word _vr_cloud3_pal_staticSegmentRomEnd
.word _vr_holy0_staticSegmentRomStart
.word _vr_holy0_staticSegmentRomEnd
.word _vr_holy0_pal_staticSegmentRomStart
.word _vr_holy0_pal_staticSegmentRomEnd
glabel D_8011FDCC
.incbin "baserom.z64", 0xB96F6C, 0x4
glabel D_8011FDD0
.incbin "baserom.z64", 0xB96F70, 0x4
glabel D_8011FDD4
.incbin "baserom.z64", 0xB96F74, 0x4
glabel D_8011FDD8
.incbin "baserom.z64", 0xB96F78, 0x28
glabel D_8011FE00
.incbin "baserom.z64", 0xB96FA0, 0x20
glabel D_8011FE20
.incbin "baserom.z64", 0xB96FC0, 0x28
glabel D_8011FE48
.incbin "baserom.z64", 0xB96FE8, 0x28
glabel D_8011FE70
.incbin "baserom.z64", 0xB97010, 0xC
glabel D_8011FE7C
.incbin "baserom.z64", 0xB9701C, 0xC
glabel D_8011FE88
.incbin "baserom.z64", 0xB97028, 0xC
glabel D_8011FE94
.incbin "baserom.z64", 0xB97034, 0xC
glabel D_8011FEA0
.incbin "baserom.z64", 0xB97040, 0x24
glabel D_8011FEC4
.incbin "baserom.z64", 0xB97064, 0xC
glabel D_8011FED0
.incbin "baserom.z64", 0xB97070, 0x10

View file

@ -871,47 +871,44 @@ void Font_LoadChar(Font* font, u8 character, u16 codePointIndex);
void Font_LoadMessageBoxEndIcon(Font* font, u16 icon);
void Font_LoadOrderedFont(Font* font);
s32 func_8006F0A0(s32 arg0);
// ? func_8006F0D4(?);
// ? func_8006F0FC(?);
u8 func_8006F140(GlobalContext*, EnvironmentContext*, UNK_TYPE);
f32 func_8006F93C(u16, u16, u16);
f32 func_8006F9BC(u16 endFrame, u16 startFrame, u16 frames, u16, u16);
// ? func_8006FB94(?);
void func_8006FC88(u8 skyboxId, EnvironmentContext* envCtx, SkyboxContext* skyboxCtx);
void func_80070600(GlobalContext* globalCtx, s32 waterboxProperties);
void func_800706A0(GlobalContext* globalCtx);
// ? func_80070718(?);
void func_80070C24(GlobalContext* globalCtx, EnvironmentContext* envCtx, LightContext* lightCtx, PauseContext* pauseCtx,
MessageContext* msgCtx, GameOverContext* gameOverCtx, GraphicsContext* gfxCtx);
void func_800730DC(GlobalContext*);
void func_80073988(GlobalContext*, EnvironmentContext*, View*, GraphicsContext*, Vec3f, UNK_TYPE);
// ? func_80073A5C(?);
f32 func_800746DC();
void func_80074704(GlobalContext*, View*, GraphicsContext*);
void func_80074CE8(GlobalContext* globalCtx, s32 arg1);
void func_80074D6C(GlobalContext*);
// ? func_80074FF4(?);
void func_800750C0(GlobalContext*);
void func_800753C4(GlobalContext*, u8);
void func_8007542C(GlobalContext*, u8);
u16 Environment_GetPixelDepth(s32 x, s32 y);
void Environment_GraphCallback(GraphicsContext* gfxCtx, void* param);
void Environment_Init(GlobalContext* globalCtx, EnvironmentContext* envCtx, s32 unused);
u8 Environment_SmoothStepToU8(u8* pvalue, u8 target, u8 scale, u8 step, u8 minStep);
u8 Environment_SmoothStepToS8(s8* pvalue, s8 target, u8 scale, u8 step, u8 minStep);
f32 Environment_LerpWeight(u16 max, u16 min, u16 val);
f32 Environment_LerpWeightAccelDecel(u16 endFrame, u16 startFrame, u16 curFrame, u16 accelDuration, u16 decelDuration);
void Environment_UpdateSkybox(u8 skyboxId, EnvironmentContext* envCtx, SkyboxContext* skyboxCtx);
void Environment_EnableUnderwaterLights(GlobalContext* globalCtx, s32 waterLightsIndex);
void Environment_DisableUnderwaterLights(GlobalContext* globalCtx);
void Environment_Update(GlobalContext* globalCtx, EnvironmentContext* envCtx, LightContext* lightCtx,
PauseContext* pauseCtx, MessageContext* msgCtx, GameOverContext* gameOverCtx,
GraphicsContext* gfxCtx);
void Environment_DrawSunAndMoon(GlobalContext* globalCtx);
void Environment_DrawSunLensFlare(GlobalContext* globalCtx, EnvironmentContext* envCtx, View* view,
GraphicsContext* gfxCtx, Vec3f pos, s32 unused);
void Environment_DrawLensFlare(GlobalContext* globalCtx, EnvironmentContext* envCtx, View* view,
GraphicsContext* gfxCtx, Vec3f pos, s32 unused, s16 arg6, f32 arg7, s16 arg8, u8 arg9);
void Environment_DrawRain(GlobalContext* globalCtx, View* view, GraphicsContext* gfxCtx);
void func_80074CE8(GlobalContext* globalCtx, u32 arg1);
void Environment_DrawSkyboxFilters(GlobalContext* globalCtx);
void Environment_UpdateLightningStrike(GlobalContext* globalCtx);
void Environment_AddLightningBolts(GlobalContext* globalCtx, u8 num);
void Environment_DrawLightning(GlobalContext* globalCtx, s32 unused);
void func_800758AC(GlobalContext* globalCtx);
// ? func_80075B44(?);
void func_80075E68(GlobalContext* globalCtx);
void Kankyo_InitGameOverLights(GlobalContext* globalCtx);
void Kankyo_FadeInGameOverLights(GlobalContext* globalCtx);
void Kankyo_FadeOutGameOverLights(GlobalContext* globalCtx);
// ? func_800766C4(?);
void func_8007672C(GraphicsContext*, u8, u8, u8, u8, UNK_TYPE);
void func_80076934(GlobalContext* globalCtx, u8);
void func_800773A8(GlobalContext* globalCtx, f32 arg1, f32 arg2, f32 arg3, f32 arg4);
s32 func_800775CC();
void func_800775D8();
s32 func_800775E4();
void Environment_DrawCustomLensFlare(GlobalContext* globalCtx);
void Environment_InitGameOverLights(GlobalContext* globalCtx);
void Environment_FadeInGameOverLights(GlobalContext* globalCtx);
void Environment_FadeOutGameOverLights(GlobalContext* globalCtx);
void Environment_FillScreen(GraphicsContext* gfxCtx, u8 red, u8 green, u8 blue, u8 alpha, u8 drawFlags);
void Environment_DrawSandstorm(GlobalContext* globalCtx, u8 sandstormState);
void Environment_AdjustLights(GlobalContext* globalCtx, f32 arg1, f32 arg2, f32 arg3, f32 arg4);
s32 Environment_GetBgsDayCount(void);
void Environment_ClearBgsDayCount(void);
s32 Environment_GetTotalDays(void);
void func_800775F0(u16);
s32 func_80077600(void);
void func_80077624(GlobalContext* globalCtx);
void func_80077684(GlobalContext* globalCtx);
void func_800776E4(GlobalContext* globalCtx);
void Environment_WarpSongLeave(GlobalContext* globalCtx);
void Lib_MemSet(u8* dest, size_t size, u8 val);
f32 Math_CosS(s16 angle);
f32 Math_SinS(s16 angle);
@ -962,7 +959,7 @@ void Lights_Draw(Lights* lights, GraphicsContext* gfxCtx);
void Lights_BindAll(Lights* lights, LightNode* listHead, Vec3f* vec);
void LightContext_Init(GlobalContext* globalCtx, LightContext* lightCtx);
void LightContext_SetAmbientColor(LightContext* lightCtx, u8 r, u8 g, u8 b);
void func_8007A698(LightContext* lightCtx, u8 arg1, u8 arg2, u8 arg3, s16 numLights, s16 arg5);
void LightContext_SetFog(LightContext* lightCtx, u8 arg1, u8 arg2, u8 arg3, s16 numLights, s16 arg5);
Lights* LightContext_NewLights(LightContext* lightCtx, GraphicsContext* gfxCtx);
void LightContext_InitList(GlobalContext* globalCtx, LightContext* lightCtx);
void LightContext_DestroyList(GlobalContext* globalCtx, LightContext* lightCtx);
@ -1128,9 +1125,9 @@ void Quake_Init(void);
s16 Quake_Add(Camera* cam, u32 callbackIdx);
u32 Quake_RemoveFromIdx(s16 idx);
s16 Quake_Calc(Camera* camera, QuakeCamCalc* camData);
Gfx* Gfx_SetFog(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 n, s32 f);
Gfx* Gfx_SetFogWithSync(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 n, s32 f);
Gfx* Gfx_SetFog2(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 n, s32 f);
Gfx* Gfx_SetFog(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 near, s32 far);
Gfx* Gfx_SetFogWithSync(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 near, s32 far);
Gfx* Gfx_SetFog2(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 near, s32 far);
Gfx* Gfx_CallSetupDL(Gfx* gfx, u32 i);
Gfx* func_800937C0(Gfx* gfx);
Gfx* func_80093808(Gfx* gfx);
@ -1392,7 +1389,7 @@ void func_800AD950(struct_80166500* this);
void func_800AD958(struct_80166500* this, Gfx** gfxp);
void Skybox_Init(GlobalContext* globalCtx, SkyboxContext* skyboxCtx, s16 skyboxId);
Mtx* SkyboxDraw_UpdateMatrix(SkyboxContext* skyboxCtx, f32 x, f32 y, f32 z);
void SkyboxDraw_Draw(SkyboxContext* skyboxCtx, GraphicsContext* gfxCtx, s16 skyboxId, s16 alpha, f32 x, f32 y, f32 z);
void SkyboxDraw_Draw(SkyboxContext* skyboxCtx, GraphicsContext* gfxCtx, s16 skyboxId, s16 blend, f32 x, f32 y, f32 z);
void SkyboxDraw_Update(SkyboxContext* skyboxCtx);
void PlayerCall_InitFuncPtrs(void);
void TransitionUnk_InitGraphics(TransitionUnk* this);
@ -1499,7 +1496,7 @@ void func_800BC490(GlobalContext* globalCtx, s16 point);
s32 func_800BC56C(GlobalContext* globalCtx, s16 arg1);
void func_800BC590(GlobalContext* globalCtx);
void func_800BC5E0(GlobalContext* globalCtx, s32 arg1);
Gfx* func_800BC8A0(GlobalContext* globalCtx, Gfx* gfx);
Gfx* Gameplay_SetFog(GlobalContext* globalCtx, Gfx* gfx);
void Gameplay_Destroy(GameState* thisx);
void Gameplay_Init(GameState* thisx);
void Gameplay_Main(GameState* thisx);
@ -2125,8 +2122,6 @@ void func_800F89A0(u8, Vec3f*);
void func_800F89E8(Vec3f*);
void func_800F9280(u8 seqIdx, u8 seqId, u8 arg2, u16 fadeTimer);
void Audio_QueueSeqCmd(u32 bgmID);
u16 func_800FA0B4(u8 a0);
s32 func_800FA11C(u32, u32);
void func_800F8A44(Vec3f* pos, u16 sfxId);
void func_800F8BA0(u8, u16);
void Audio_StopSfx(u32 sfxId);
@ -2137,8 +2132,11 @@ void func_800F8F88(void);
u8 Audio_IsSfxPlaying(u32 sfxId);
void func_800F905C(void);
void func_800F9474(u8, u16);
void func_800F94FC(u32);
void Audio_ProcessSeqCmd(u32);
void Audio_ProcessSeqCmds(void);
u16 func_800FA0B4(u8 a0);
s32 func_800FA11C(u32 arg0, u32 arg1);
void func_800FA174(u8);
void func_800FA18C(u8, u8);
void Audio_SetVolScale(u8 seqIdx, u8 scaleIdx, u8 targetVol, u8 volFadeTimer);

View file

@ -38,6 +38,14 @@
#define kREG(r) BASE_REG(27, r)
#define bREG(r) BASE_REG(28, r)
#define R_ENV_AMBIENT_COLOR(i) REG(0 + i)
#define R_ENV_LIGHT1_COLOR(i) REG(3 + i)
#define R_ENV_LIGHT2_COLOR(i) REG(6 + i)
#define R_ENV_DISABLE_DBG REG(9)
#define R_ENV_FOG_COLOR(i) REG(10 + i)
#define R_ENV_FOG_FAR REG(13)
#define R_ENV_FOG_NEAR REG(14)
#define R_ENV_TIME_INCREMENT REG(15)
#define R_RUN_SPEED_LIMIT REG(45)
#define R_ENABLE_ARENA_DBG SREG(0)
#define R_UPDATE_RATE SREG(30)
@ -55,7 +63,7 @@
#define R_CAM_MIN_PHI2 OREG(35)
#define R_AT_LERP_MIN OREG(41)
#define R_AT_LERP_SCALE OREG(42)
#define R_CAM_YOFFSET_NORM OREG(46)
#define R_CAM_YOFFSET_NORM OREG(46)
#define R_CAM_FIXED3_FOV PREG(7)
#define R_DBG_CAM_UPDATE PREG(80)
#define R_DBG_REG_UPDATE PREG(82)
@ -78,6 +86,8 @@
#define R_ITEM_ICON_X(i) ZREG(82 + i)
#define R_ITEM_ICON_Y(i) ZREG(86 + i)
#define R_ITEM_ICON_DD(i) ZREG(90 + i)
#define R_ENV_WIND_DIR(i) CREG(16 + i)
#define R_ENV_WIND_SPEED CREG(19)
#define R_A_BTN_Y XREG(16)
#define R_A_BTN_X XREG(17)
#define R_A_ICON_Y XREG(19)
@ -87,6 +97,8 @@
#define R_MAGIC_BAR_X XREG(49)
#define R_MAGIC_BAR_LARGE_Y XREG(50)
#define R_MAGIC_FILL_X XREG(51)
#define R_ENV_LIGHT1_DIR(i) cREG(3 + i)
#define R_ENV_LIGHT2_DIR(i) cREG(6 + i)
#define R_B_LABEL_DD WREG(0)
#define R_OW_MINIMAP_X WREG(29)
#define R_OW_MINIMAP_Y WREG(30)

View file

@ -4,6 +4,7 @@
#include "z64.h"
#include "segment_symbols.h"
extern Mtx D_01000000;
extern Gfx D_06025218[];
extern Gfx D_060252D8[];
extern Gfx D_06025438[];
@ -158,27 +159,13 @@ extern s32 gDbgCamEnabled;
extern s16 D_8011E0B0;
//extern ? D_8011E0D4;
extern GameStateOverlay gGameStateOverlayTable[6];
//extern ? D_8011FAF0;
extern u8 D_8011FB30;
extern u8 gWeatherMode;
extern u8 D_8011FB34;
extern u8 D_8011FB38;
extern u8 D_8011FB3C;
extern u16 D_8011FB40;
//extern ? D_8011FB44;
//extern ? D_8011FB48;
//extern ? D_8011FC1C;
//extern ? D_8011FD3C;
//extern ? D_8011FDCC;
//extern ? D_8011FDD0;
//extern ? D_8011FE00;
//extern ? D_8011FE20;
//extern ? D_8011FE48;
//extern ? D_8011FE70;
//extern ? D_8011FE7C;
//extern ? D_8011FE88;
//extern ? D_8011FE94;
//extern ? D_8011FEC4;
//extern ? D_8011FED0;
extern u8 gSkyboxBlendingEnabled;
extern u16 gTimeIncrement;
extern struct_8011FC1C D_8011FC1C[][9];
extern SkyboxFile gSkyboxFiles[];
extern s32 gZeldaArenaLogSeverity;
extern MapData gMapDataTable;
extern s16 gSpoilingItems[3];
@ -2948,23 +2935,12 @@ extern u16 D_8015FCC4;
//extern ? D_8015FCC6;
extern u8 D_8015FCC8;
//extern ? D_8015FCCA;
extern u8 D_8015FCF0;
extern Vec3f D_8015FCF8;
extern s16 D_8015FD04;
extern u8 gCustomLensFlareOn;
extern Vec3f gCustomLensFlarePos;
extern s16 D_8015FD06;
extern f32 D_8015FD08;
extern s16 D_8015FD0C;
//extern ? D_8015FD10;
extern u8 D_8015FD70;
//extern ? D_8015FD7C;
//extern ? D_8015FD7E;
//extern ? D_8015FD80;
//extern ? D_8015FD84;
//extern ? D_8015FD88;
//extern ? D_8015FD98;
//extern ? D_8015FDA0;
//extern ? D_8015FDAE;
//extern ? D_8015FDB0;
extern LightningStrike gLightningStrike;
//extern ? D_8015FDF8;
extern MapData* gMapData;
//extern ? D_80160020;

View file

@ -11,6 +11,7 @@
#include "z64audio.h"
#include "z64object.h"
#include "z64camera.h"
#include "z64environment.h"
#include "z64cutscene.h"
#include "z64collision_check.h"
#include "z64scene.h"
@ -130,16 +131,16 @@ typedef struct GraphicsContext {
/* 0x01C4 */ char unk_01C4[0xC0];
/* 0x0284 */ OSViMode* viMode;
/* 0x0288 */ char unk_0288[0x20]; // Unused, could this be Zelda 2/3 ?
/* 0x02A8 */ TwoHeadGfxArena overlay; // "Zelda 4"
/* 0x02B8 */ TwoHeadGfxArena polyOpa; // "Zelda 0"
/* 0x02C8 */ TwoHeadGfxArena polyXlu; // "Zelda 1"
/* 0x02A8 */ TwoHeadGfxArena overlay; // "Zelda 4"
/* 0x02B8 */ TwoHeadGfxArena polyOpa; // "Zelda 0"
/* 0x02C8 */ TwoHeadGfxArena polyXlu; // "Zelda 1"
/* 0x02D8 */ u32 gfxPoolIdx;
/* 0x02DC */ u16* curFrameBuffer;
/* 0x02E0 */ char unk_2E0[0x04];
/* 0x02E4 */ u32 viFeatures;
/* 0x02E8 */ s32 fbIdx;
/* 0x02EC */ void (*callback)(struct GraphicsContext*, u32);
/* 0x02F0 */ u32 callbackParam;
/* 0x02EC */ void (*callback)(struct GraphicsContext*, void*);
/* 0x02F0 */ void* callbackParam;
/* 0x02F4 */ f32 xScale;
/* 0x02F8 */ f32 yScale;
/* 0x02FC */ char unk_2FC[0x04];
@ -575,71 +576,7 @@ typedef enum {
typedef struct {
/* 0x00 */ u16 state;
} GameOverContext; // size = 0x02
typedef struct {
/* 0x00 */ char unk_00[0x02];
/* 0x02 */ u16 unk_02;
/* 0x04 */ Vec3f unk_04;
/* 0x10 */ u8 unk_10;
/* 0x11 */ u8 unk_11;
/* 0x12 */ char unk_12[0x1];
/* 0x13 */ u8 unk_13;
/* 0x14 */ char unk_14[0x01];
/* 0x15 */ u8 skyDisabled;
/* 0x16 */ u8 sunMoonDisabled;
/* 0x17 */ u8 gloomySky;
/* 0x18 */ u8 unk_18;
/* 0x19 */ u8 unk_19;
/* 0x1A */ u16 unk_1A;
/* 0x1C */ char unk_1C[0x02];
/* 0x1E */ u8 unk_1E;
/* 0x1F */ u8 unk_1F;
/* 0x20 */ u8 unk_20;
/* 0x21 */ u8 unk_21;
/* 0x22 */ u16 unk_22;
/* 0x24 */ u16 unk_24;
/* 0x26 */ char unk_26[0x04];
/* 0x2A */ s8 unk_2A;
/* 0x2B */ s8 unk_2B;
/* 0x2C */ s8 unk_2C;
/* 0x2D */ char unk_2D[0x5E];
/* 0x8C */ s16 unk_8C[3][3];
/* 0x9E */ s16 unk_9E;
/* 0xA0 */ s16 unk_A0;
/* 0xA2 */ char unk_A2[0x06];
/* 0xA8 */ s16 unk_A8;
/* 0xAA */ s16 unk_AA;
/* 0xAC */ s16 unk_AC;
/* 0xB0 */ f32 unk_B0;
/* 0xB4 */ u8 numLightSettings;
/* 0xB8 */ UNK_PTR lightSettingsList;
/* 0xBC */ u8 unk_BC;
/* 0xBD */ u8 unk_BD;
/* 0xBE */ u8 unk_BE;
/* 0xBF */ u8 unk_BF;
/* 0xC0 */ char unk_C0[0x0F];
/* 0xCF */ u8 unk_CF[3];
/* 0xD2 */ s16 unk_D2;
/* 0xD4 */ char unk_D4[0x02];
/* 0xD6 */ u16 unk_D6;
/* 0xD8 */ f32 unk_D8;
/* 0xDC */ u8 unk_DC;
/* 0xDD */ u8 gloomySkyEvent;
/* 0xDE */ u8 unk_DE;
/* 0xDF */ u8 lightning;
/* 0xE0 */ u8 unk_E0;
/* 0xE1 */ u8 unk_E1;
/* 0xE2 */ u8 unk_E2[4];
/* 0xE6 */ u8 unk_E6;
/* 0xE7 */ u8 unk_E7;
/* 0xE8 */ u8 unk_E8;
/* 0xE9 */ u8 unk_E9;
/* 0xEA */ u8 unk_EA[4];
/* 0xEE */ u8 unk_EE[4];
/* 0xF2 */ u8 unk_F2[4];
/* 0xF6 */ char unk_F6[0x06];
} EnvironmentContext; // size = 0xFC
} GameOverContext; // size = 0x2
typedef struct {
/* 0x00 */ s16 id;
@ -1837,4 +1774,16 @@ typedef struct {
/* 0x04 */ const char* name;
} FlagSetEntry; // size = 0x08
typedef struct {
/* 0x00 */ RomFile file;
/* 0x08 */ RomFile pallete;
} SkyboxFile; // size = 0x10
#define ROM_FILE(name) \
{ (u32) _##name##SegmentRomStart, (u32)_##name##SegmentRomEnd }
#define ROM_FILE_EMPTY(name) \
{ (u32) _##name##SegmentRomStart, (u32)_##name##SegmentRomStart }
#define ROM_FILE_UNSET \
{ 0 }
#endif

129
include/z64environment.h Normal file
View file

@ -0,0 +1,129 @@
#ifndef _Z64ENVIRONMENT_H_
#define _Z64ENVIRONMENT_H_
#include "z64math.h"
#include "z64light.h"
#include "z64dma.h"
#define FILL_SCREEN_OPA (1 << 0)
#define FILL_SCREEN_XLU (1 << 1)
typedef enum {
/* 0 */ LIGHTNING_MODE_OFF, // no lightning
/* 1 */ LIGHTNING_MODE_ON, // request ligtning strikes at random intervals
/* 2 */ LIGHTNING_MODE_LAST // request one lightning strike before turning off
} LightningMode;
typedef enum {
/* 0 */ LIGHTNING_STRIKE_WAIT, // wait between lightning strikes. request bolts when timer hits 0
/* 1 */ LIGHTNING_STRIKE_START, // fade in the flash. note: bolts are requested in the previous state
/* 2 */ LIGHTNING_STRIKE_END // fade out the flash and go back to wait
} LightningStrikeState;
typedef enum {
/* 0 */ SKYBOX_DMA_INACTIVE,
/* 1 */ SKYBOX_DMA_FILE1_START,
/* 2 */ SKYBOX_DMA_FILE1_DONE,
/* 3 */ SKYBOX_DMA_PAL1_START,
/* 11 */ SKYBOX_DMA_FILE2_START = 11,
/* 12 */ SKYBOX_DMA_FILE2_DONE,
/* 13 */ SKYBOX_DMA_PAL2_START
} SkyboxDmaState;
typedef struct {
/* 0x00 */ u8 state;
/* 0x01 */ u8 flashRed;
/* 0x02 */ u8 flashGreen;
/* 0x03 */ u8 flashBlue;
/* 0x04 */ u8 flashAlphaTarget;
/* 0x08 */ f32 delayTimer;
} LightningStrike; // size = 0xC
// describes what skybox files and blending modes to use depending on time of day
typedef struct {
/* 0x00 */ u16 startTime;
/* 0x02 */ u16 endTime;
/* 0x04 */ u8 blend; // if true, blend between.. skyboxes? palletes?
/* 0x05 */ u8 skybox1Index; // whats the difference between _pal and non _pal files?
/* 0x06 */ u8 skybox2Index;
} struct_8011FC1C; // size = 0x8
typedef struct {
/* 0x00 */ u8 ambientColor[3];
/* 0x03 */ s8 light1Dir[3];
/* 0x06 */ u8 light1Color[3];
/* 0x09 */ s8 light2Dir[3];
/* 0x0C */ u8 light2Color[3];
/* 0x0F */ u8 fogColor[3];
/* 0x12 */ s16 fogNear;
/* 0x14 */ s16 fogFar;
} EnvLightSettings; // size = 0x16
// 1.0: 801D8EC4
// dbg: 80222A44
typedef struct {
/* 0x00 */ char unk_00[0x02];
/* 0x02 */ u16 timeIncrement; // how many units of time that pass every update
/* 0x04 */ Vec3f sunPos; // moon position can be found by negating the sun position
/* 0x10 */ u8 skybox1Index;
/* 0x11 */ u8 skybox2Index;
/* 0x12 */ char unk_12[0x01];
/* 0x13 */ u8 skyboxBlend;
/* 0x14 */ char unk_14[0x01];
/* 0x15 */ u8 skyboxDisabled;
/* 0x16 */ u8 sunMoonDisabled;
/* 0x17 */ u8 unk_17; // currentWeatherMode for skybox? (prev called gloomySky)
/* 0x18 */ u8 unk_18; // nextWeatherMode for skybox?
/* 0x19 */ u8 unk_19;
/* 0x1A */ u16 unk_1A;
/* 0x1C */ char unk_1C[0x02];
/* 0x1E */ u8 indoors; // when set, day time has no effect on lighting
/* 0x1F */ u8 unk_1F; // outdoor light index
/* 0x20 */ u8 unk_20; // prev outdoor light index?
/* 0x21 */ u8 unk_21;
/* 0x22 */ u16 unk_22;
/* 0x24 */ u16 unk_24;
/* 0x26 */ char unk_26[0x02];
/* 0x28 */ LightInfo dirLight1; // used for sunlight outdoors
/* 0x36 */ LightInfo dirLight2; // used for moonlight outdoors
/* 0x44 */ s8 skyboxDmaState;
/* 0x48 */ DmaRequest dmaRequest;
/* 0x68 */ OSMesgQueue loadQueue;
/* 0x80 */ OSMesg loadMsg;
/* 0x84 */ f32 unk_84;
/* 0x88 */ f32 unk_88;
/* 0x8C */ s16 adjAmbientColor[3];
/* 0x92 */ s16 adjLight1Color[3];
/* 0x98 */ s16 adjFogColor[3];
/* 0x9E */ s16 adjFogNear;
/* 0xA0 */ s16 adjFogFar;
/* 0xA2 */ char unk_A2[0x06];
/* 0xA8 */ Vec3s windDirection;
/* 0xB0 */ f32 windSpeed;
/* 0xB4 */ u8 numLightSettings;
/* 0xB8 */ EnvLightSettings* lightSettingsList; // list of light settings from the scene file
/* 0xBC */ u8 blendIndoorLights; // when true, blend between indoor light settings when switching
/* 0xBD */ u8 unk_BD; // indoor light index
/* 0xBE */ u8 unk_BE; // prev indoor light index?
/* 0xBF */ u8 unk_BF;
/* 0xC0 */ EnvLightSettings lightSettings;
/* 0xD6 */ u16 unk_D6;
/* 0xD8 */ f32 unk_D8; // indoor light blend weight?
/* 0xDC */ u8 unk_DC;
/* 0xDD */ u8 gloomySkyMode;
/* 0xDE */ u8 unk_DE; // gloomy sky state
/* 0xDF */ u8 lightningMode;
/* 0xE0 */ u8 unk_E0; // env sounds state
/* 0xE1 */ u8 fillScreen;
/* 0xE2 */ u8 screenFillColor[4];
/* 0xE6 */ u8 sandstormState;
/* 0xE7 */ u8 sandstormPrimA;
/* 0xE8 */ u8 sandstormEnvA;
/* 0xE9 */ u8 customSkyboxFilter;
/* 0xEA */ u8 skyboxFilterColor[4];
/* 0xEE */ u8 unk_EE[4];
/* 0xF2 */ u8 unk_F2[4];
/* 0xF6 */ char unk_F6[0x06];
} EnvironmentContext; // size = 0xFC
#endif

View file

@ -45,12 +45,10 @@ typedef struct LightNode {
typedef struct {
/* 0x0 */ LightNode* listHead;
/* 0x4 */ Color_RGB8 ambient;
/* 0x7 */ u8 unk_07;
/* 0x8 */ u8 unk_08;
/* 0x9 */ u8 unk_09;
/* 0xA */ s16 unk_0A;
/* 0xC */ s16 unk_0C;
/* 0x4 */ u8 ambientColor[3];
/* 0x7 */ u8 fogColor[3];
/* 0xA */ s16 fogNear; // how close until fog starts taking effect. range 0 - 1000
/* 0xC */ s16 fogFar; // how far until fog starts to saturate. range 0 - 1000
} LightContext; // size = 0x10
typedef enum {

View file

@ -76,7 +76,9 @@ typedef struct {
/* 0x06 */ s16 yaw; // azimuthal angle
} VecSph; // size = 0x08
#define F32_LERP(v0,v1,t) ((1.0f - (t)) * (v0) + (t) * (v1))
#define LERP(x, y, scale) (((y) - (x)) * (scale) + (x))
#define LERP32(x, y, scale) ((s32)(((y) - (x)) * (scale)) + (x))
#define F32_LERP(v0,v1,t) ((v0) * (1.0f - (t)) + (v1) * (t))
#define F32_LERPIMP(v0, v1, t) (v0 + ((v1 - v0) * t))
#define F32_LERPIMPINV(v0, v1, t) ((v0) + (((v1) - (v0)) / (t)))
#define BINANG_LERPIMP(v0, v1, t) ((v0) + (s16)(BINANG_SUB((v1), (v0)) * (t)))

View file

@ -66,8 +66,8 @@ typedef struct {
/* 0x0008 */ s32 cutsceneIndex;
/* 0x000C */ u16 dayTime; // "zelda_time"
/* 0x0010 */ s32 nightFlag;
/* 0x0014 */ s32 numDays;
/* 0x0018 */ s32 unk_18; // increments with numDays, gets reset by goron for bgs and one other use
/* 0x0014 */ s32 totalDays;
/* 0x0018 */ s32 bgsDayCount; // increments with totalDays, can be cleared with `Environment_ClearBgsDayCount`
/* 0x001C */ char newf[6]; // string "ZELDAZ". start of `info` substruct, originally called "information"
/* 0x0022 */ u16 deaths;
/* 0x0024 */ char playerName[8];
@ -166,12 +166,12 @@ typedef struct {
/* 0x1416 */ u16 nextDayTime; // "next_zelda_time"
/* 0x1418 */ u8 fadeDuration;
/* 0x1419 */ u8 unk_1419; // transition related
/* 0x141A */ u16 environmentTime;
/* 0x141A */ u16 skyboxTime;
/* 0x141C */ u8 dogIsLost;
/* 0x141D */ u8 nextTransition;
/* 0x141E */ char unk_141E[0x0002];
/* 0x1420 */ s16 worldMapArea;
/* 0x1422 */ s16 unk_1422; // day time related
/* 0x1422 */ s16 sunsSongState; // controls the effects of suns song
/* 0x1424 */ s16 healthAccumulator;
} SaveContext; // size = 0x1428
@ -205,4 +205,11 @@ typedef enum {
/* 0x06 */ HS_DAMPE_RACE
} HighScores;
typedef enum {
/* 0 */ SUNSSONG_INACTIVE,
/* 1 */ SUNSSONG_START, // the suns ocarina effect signals that the song has finished playing
/* 2 */ SUNSSONG_SPEED_TIME, // suns was played where time passes, speed up the advancement of time
/* 3 */ SUNSSONG_SPECIAL // time does not advance, but signals the song was played. used for freezing redeads
} SunsSongState;
#endif

View file

@ -57,9 +57,9 @@ typedef struct {
/* 0x00 */ u8 code;
/* 0x01 */ u8 data1;
/* 0x02 */ char pad[2];
/* 0x04 */ s8 unk_04;
/* 0x05 */ s8 unk_05;
/* 0x06 */ s8 unk_06;
/* 0x04 */ u8 x;
/* 0x05 */ u8 y;
/* 0x06 */ u8 z;
/* 0x07 */ u8 unk_07;
} SCmdWindSettings;

2
spec
View file

@ -320,8 +320,6 @@ beginseg
include "build/src/code/z_kaleido_setup.o"
include "build/src/code/z_kanfont.o"
include "build/src/code/z_kankyo.o"
include "build/data/z_kankyo.data.o"
include "build/data/z_kankyo.bss.o"
include "build/src/code/z_lib.o"
include "build/src/code/z_lifemeter.o"
include "build/src/code/z_lights.o"

View file

@ -26,7 +26,7 @@ void osSyncPrintf(const char* fmt, ...) {
va_start(args, fmt);
_Printf(is_proutSyncPrintf, NULL, fmt, args);
va_end(args);
}
@ -36,7 +36,7 @@ void rmonPrintf(const char* fmt, ...) {
va_start(args, fmt);
_Printf(is_proutSyncPrintf, NULL, fmt, args);
va_end(args);
}

View file

@ -1355,9 +1355,9 @@ void func_8002EBCC(Actor* actor, GlobalContext* globalCtx, s32 flag) {
Gfx* displayListHead;
Gfx* displayList;
lightDir.x = globalCtx->envCtx.unk_2A;
lightDir.y = globalCtx->envCtx.unk_2B;
lightDir.z = globalCtx->envCtx.unk_2C;
lightDir.x = globalCtx->envCtx.dirLight1.params.dir.x;
lightDir.y = globalCtx->envCtx.dirLight1.params.dir.y;
lightDir.z = globalCtx->envCtx.dirLight1.params.dir.z;
if (HREG(80) == 6) {
osSyncPrintf("z_actor.c 3637 game_play->view.eye=[%f(%f) %f %f]\n", globalCtx->view.eye.x,
@ -1386,9 +1386,9 @@ void func_8002ED80(Actor* actor, GlobalContext* globalCtx, s32 flag) {
Gfx* displayListHead;
Gfx* displayList;
lightDir.x = globalCtx->envCtx.unk_2A;
lightDir.y = globalCtx->envCtx.unk_2B;
lightDir.z = globalCtx->envCtx.unk_2C;
lightDir.x = globalCtx->envCtx.dirLight1.params.dir.x;
lightDir.y = globalCtx->envCtx.dirLight1.params.dir.y;
lightDir.z = globalCtx->envCtx.dirLight1.params.dir.z;
hilite = func_8002EB44(&actor->world.pos, &globalCtx->view.eye, &lightDir, globalCtx->state.gfxCtx);
@ -3568,9 +3568,9 @@ void Actor_SetColorFilter(Actor* actor, s16 colorFlag, s16 colorIntensityMax, s1
Hilite* func_800342EC(Vec3f* object, GlobalContext* globalCtx) {
Vec3f lightDir;
lightDir.x = globalCtx->envCtx.unk_2A;
lightDir.y = globalCtx->envCtx.unk_2B;
lightDir.z = globalCtx->envCtx.unk_2C;
lightDir.x = globalCtx->envCtx.dirLight1.params.dir.x;
lightDir.y = globalCtx->envCtx.dirLight1.params.dir.y;
lightDir.z = globalCtx->envCtx.dirLight1.params.dir.z;
return func_8002EABC(object, &globalCtx->view.eye, &lightDir, globalCtx->state.gfxCtx);
}
@ -3578,9 +3578,9 @@ Hilite* func_800342EC(Vec3f* object, GlobalContext* globalCtx) {
Hilite* func_8003435C(Vec3f* object, GlobalContext* globalCtx) {
Vec3f lightDir;
lightDir.x = globalCtx->envCtx.unk_2A;
lightDir.y = globalCtx->envCtx.unk_2B;
lightDir.z = globalCtx->envCtx.unk_2C;
lightDir.x = globalCtx->envCtx.dirLight1.params.dir.x;
lightDir.y = globalCtx->envCtx.dirLight1.params.dir.y;
lightDir.z = globalCtx->envCtx.dirLight1.params.dir.z;
return func_8002EB44(object, &globalCtx->view.eye, &lightDir, globalCtx->state.gfxCtx);
}

View file

@ -547,7 +547,7 @@ f32 Camera_GetWaterSurface(Camera* camera, Vec3f* chkPos, s32* envProp) {
if (waterY < chkPos->y) {
// the water's y position is below the check position
// the aka the position is NOT in the water.
// meaning the position is NOT in the water.
return BGCHECK_Y_MIN;
}
@ -1778,7 +1778,7 @@ s32 Camera_Normal2(Camera* camera) {
if (camera->status == CAM_STAT_ACTIVE) {
bgChk.pos = *eyeNext;
if ((camera->globalCtx->envCtx.skyDisabled == 0) || norm2->interfaceFlags & 0x10) {
if (!camera->globalCtx->envCtx.skyboxDisabled || norm2->interfaceFlags & 0x10) {
Camera_BGCheckInfo(camera, at, &bgChk);
*eye = bgChk.pos;
} else {
@ -2110,7 +2110,7 @@ s32 Camera_Parallel1(Camera* camera) {
Camera_Vec3fVecSphGeoAdd(eyeNext, at, &spA8);
if (camera->status == CAM_STAT_ACTIVE) {
sp6C.pos = *eyeNext;
if (camera->globalCtx->envCtx.skyDisabled == 0 || para1->interfaceFlags & 0x10) {
if (!camera->globalCtx->envCtx.skyboxDisabled || para1->interfaceFlags & 0x10) {
Camera_BGCheckInfo(camera, at, &sp6C);
*eye = sp6C.pos;
} else {
@ -2903,7 +2903,7 @@ s32 Camera_Battle1(Camera* camera) {
Camera_Vec3fVecSphGeoAdd(eyeNext, at, &spB4);
spBC.pos = *eyeNext;
if (camera->status == CAM_STAT_ACTIVE) {
if (camera->globalCtx->envCtx.skyDisabled == 0 || batt1->flags & 1) {
if (!camera->globalCtx->envCtx.skyboxDisabled || batt1->flags & 1) {
Camera_BGCheckInfo(camera, at, &spBC);
} else if (batt1->flags & 2) {
func_80043F94(camera, at, &spBC);
@ -3225,7 +3225,7 @@ s32 Camera_KeepOn1(Camera* camera) {
Camera_Vec3fVecSphGeoAdd(eyeNext, at, &spD8);
sp8C.pos = *eyeNext;
if (camera->status == CAM_STAT_ACTIVE) {
if ((camera->globalCtx->envCtx.skyDisabled == 0) || keep1->interfaceFlags & 1) {
if (!camera->globalCtx->envCtx.skyboxDisabled || keep1->interfaceFlags & 1) {
Camera_BGCheckInfo(camera, at, &sp8C);
} else if (keep1->interfaceFlags & 2) {
func_80043F94(camera, at, &sp8C);
@ -4205,7 +4205,7 @@ s32 Camera_Subj3(Camera* camera) {
*eye = *eyeNext;
anim->animTimer--;
if (camera->globalCtx->envCtx.skyDisabled == 0) {
if (!camera->globalCtx->envCtx.skyboxDisabled) {
Camera_BGCheck(camera, at, eye);
} else {
func_80044340(camera, at, eye);
@ -7047,7 +7047,7 @@ void Camera_PrintSettings(Camera* camera) {
s32 Camera_CheckWater(Camera* camera) {
f32 waterY;
s16 newQuakeId;
s32 waterBoxProp;
s32 waterLightsIndex;
s32* waterPrevCamSetting = &camera->waterPrevCamSetting;
s16 waterCamIdx;
s16* quakeId = (s16*)&camera->waterQuakeId;
@ -7115,12 +7115,12 @@ s32 Camera_CheckWater(Camera* camera) {
}
}
if (waterY = Camera_GetWaterSurface(camera, &camera->eye, &waterBoxProp), waterY != BGCHECK_Y_MIN) {
if (waterY = Camera_GetWaterSurface(camera, &camera->eye, &waterLightsIndex), waterY != BGCHECK_Y_MIN) {
camera->waterYPos = waterY;
if (!(camera->unk_14C & 0x100)) {
camera->unk_14C |= 0x100;
osSyncPrintf("kankyo changed water, sound on\n");
func_80070600(camera->globalCtx, waterBoxProp);
Environment_EnableUnderwaterLights(camera->globalCtx, waterLightsIndex);
camera->unk_150 = 0x50;
}
@ -7152,7 +7152,7 @@ s32 Camera_CheckWater(Camera* camera) {
if (camera->unk_14C & 0x100) {
camera->unk_14C &= ~0x100;
osSyncPrintf("kankyo changed water off, sound off\n");
func_800706A0(camera->globalCtx);
Environment_DisableUnderwaterLights(camera->globalCtx);
if (*quakeId != 0) {
Quake_RemoveFromIdx(*quakeId);
}
@ -7567,7 +7567,7 @@ void Camera_Finish(Camera* camera) {
camera->childCamIdx = camera->parentCamIdx = SUBCAM_FREE;
camera->timer = -1;
camera->globalCtx->envCtx.unk_E1 = 0;
camera->globalCtx->envCtx.fillScreen = false;
Gameplay_ClearCamera(camera->globalCtx, camera->thisIdx);
}

View file

@ -15,7 +15,7 @@ void SaveContext_Init(void) {
gSaveContext.cutsceneTrigger = 0;
gSaveContext.chamberCutsceneNum = 0;
gSaveContext.nextDayTime = 0xFFFF;
gSaveContext.environmentTime = 0;
gSaveContext.skyboxTime = 0;
gSaveContext.dogIsLost = true;
gSaveContext.nextTransition = 0xFF;
gSaveContext.unk_13EE = 50;

View file

@ -10,7 +10,7 @@ void func_801109B0(GlobalContext* globalCtx) {
u16 doActionOffset;
u8 temp;
gSaveContext.unk_1422 = 0;
gSaveContext.sunsSongState = SUNSSONG_INACTIVE;
gSaveContext.unk_13E8 = gSaveContext.unk_13EA = 0;
View_Init(&interfaceCtx->view, globalCtx->state.gfxCtx);

View file

@ -170,7 +170,7 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase*
return;
}
temp = func_8006F93C(cmd->endFrame - 1, cmd->startFrame, csCtx->frames);
temp = Environment_LerpWeight(cmd->endFrame - 1, cmd->startFrame, csCtx->frames);
if (csCtx->frames == cmd->startFrame) {
sp3F = 1;
@ -187,9 +187,9 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase*
case 2:
if (sp3F != 0) {
func_800F6D58(0xF, 0, 0);
func_800753C4(globalCtx, 3);
Environment_AddLightningBolts(globalCtx, 3);
if (1) {}
D_8015FD70 = 1;
gLightningStrike.state = LIGHTNING_STRIKE_START;
}
break;
case 3:
@ -201,14 +201,14 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase*
}
break;
case 6:
if (globalCtx->envCtx.unk_A0 < 0x3200) {
globalCtx->envCtx.unk_A0 += 0x23;
if (globalCtx->envCtx.adjFogFar < 12800) {
globalCtx->envCtx.adjFogFar += 35;
}
break;
case 7:
if (sp3F != 0) {
globalCtx->envCtx.unk_19 = 1;
globalCtx->envCtx.gloomySky = 1;
globalCtx->envCtx.unk_17 = 1;
globalCtx->envCtx.unk_18 = 0;
globalCtx->envCtx.unk_1A = 0x3C;
globalCtx->envCtx.unk_21 = 1;
@ -279,12 +279,12 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase*
break;
case 18:
globalCtx->envCtx.unk_EE[0] = 0;
globalCtx->envCtx.gloomySkyEvent = 2;
globalCtx->envCtx.gloomySkyMode = 2;
if (gSaveContext.dayTime < 0x4AAB) {
gSaveContext.dayTime += 30;
}
if (globalCtx->envCtx.unk_EE[1] == 0) {
D_8011FB30 = 0;
gWeatherMode = 0;
func_800F6D58(14, 1, 0);
}
break;
@ -331,16 +331,16 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase*
break;
case 27:
if (globalCtx->state.frames & 8) {
if (globalCtx->envCtx.unk_8C[0][0] < 40) {
globalCtx->envCtx.unk_8C[0][0] += 2;
globalCtx->envCtx.unk_8C[1][1] -= 3;
globalCtx->envCtx.unk_8C[1][2] -= 3;
if (globalCtx->envCtx.adjAmbientColor[0] < 40) {
globalCtx->envCtx.adjAmbientColor[0] += 2;
globalCtx->envCtx.adjLight1Color[1] -= 3;
globalCtx->envCtx.adjLight1Color[2] -= 3;
}
} else {
if (globalCtx->envCtx.unk_8C[0][0] > 2) {
globalCtx->envCtx.unk_8C[0][0] -= 2;
globalCtx->envCtx.unk_8C[1][1] += 3;
globalCtx->envCtx.unk_8C[1][2] += 3;
if (globalCtx->envCtx.adjAmbientColor[0] > 2) {
globalCtx->envCtx.adjAmbientColor[0] -= 2;
globalCtx->envCtx.adjLight1Color[1] += 3;
globalCtx->envCtx.adjLight1Color[2] += 3;
}
}
break;
@ -358,18 +358,18 @@ void func_80064824(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase*
break;
case 32:
if (sp3F != 0) {
globalCtx->envCtx.unk_E6 = 1;
globalCtx->envCtx.sandstormState = 1;
}
func_800788CC(NA_SE_EV_SAND_STORM - SFX_FLAG);
break;
case 33:
gSaveContext.unk_1422 = 1;
gSaveContext.sunsSongState = SUNSSONG_START;
break;
case 34:
if (IS_DAY) {
gSaveContext.dayTime -= D_8011FB40;
gSaveContext.dayTime -= gTimeIncrement;
} else {
gSaveContext.dayTime -= D_8011FB40 * 2;
gSaveContext.dayTime -= gTimeIncrement * 2;
}
break;
case 35:
@ -433,7 +433,7 @@ void func_80065134(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdDayTim
temp2 = (cmd->minute + 1) / (360.0f / 0x4000);
gSaveContext.dayTime = temp1 + temp2;
gSaveContext.environmentTime = temp1 + temp2;
gSaveContext.skyboxTime = temp1 + temp2;
}
}
@ -1174,7 +1174,7 @@ void Cutscene_Command_Terminator(GlobalContext* globalCtx, CutsceneContext* csCt
break;
case 119:
gSaveContext.dayTime = 0x8000;
gSaveContext.environmentTime = 0x8000;
gSaveContext.skyboxTime = 0x8000;
globalCtx->nextEntranceIndex = 0x05F0;
globalCtx->sceneLoadFlag = 0x14;
globalCtx->fadeTransition = 3;
@ -1188,17 +1188,17 @@ void Cutscene_Command_TransitionFX(GlobalContext* globalCtx, CutsceneContext* cs
f32 temp;
if ((csCtx->frames >= cmd->startFrame) && (csCtx->frames <= cmd->endFrame)) {
globalCtx->envCtx.unk_E1 = 1;
temp = func_8006F93C(cmd->endFrame, cmd->startFrame, csCtx->frames);
globalCtx->envCtx.fillScreen = true;
temp = Environment_LerpWeight(cmd->endFrame, cmd->startFrame, csCtx->frames);
switch (cmd->base) {
case 1:
case 5:
globalCtx->envCtx.unk_E2[0] = 0xA0;
globalCtx->envCtx.unk_E2[1] = 0xA0;
globalCtx->envCtx.unk_E2[2] = 0xA0;
globalCtx->envCtx.screenFillColor[0] = 160;
globalCtx->envCtx.screenFillColor[1] = 160;
globalCtx->envCtx.screenFillColor[2] = 160;
if (cmd->base == 1) {
globalCtx->envCtx.unk_E2[3] = 255.0f * temp;
globalCtx->envCtx.screenFillColor[3] = 255.0f * temp;
if ((temp == 0.0f) && (gSaveContext.entranceIndex == 0x006B)) {
Audio_PlaySoundGeneral(NA_SE_SY_WHITE_OUT_S, &D_801333D4, 4, &D_801333E0, &D_801333E0,
&D_801333E8);
@ -1211,40 +1211,40 @@ void Cutscene_Command_TransitionFX(GlobalContext* globalCtx, CutsceneContext* cs
func_800788CC(NA_SE_EV_WHITE_OUT);
}
} else {
globalCtx->envCtx.unk_E2[3] = (1.0f - temp) * 255.0f;
globalCtx->envCtx.screenFillColor[3] = (1.0f - temp) * 255.0f;
}
break;
case 2:
case 6:
globalCtx->envCtx.unk_E2[0] = 0;
globalCtx->envCtx.unk_E2[1] = 0;
globalCtx->envCtx.unk_E2[2] = 0xFF;
globalCtx->envCtx.screenFillColor[0] = 0;
globalCtx->envCtx.screenFillColor[1] = 0;
globalCtx->envCtx.screenFillColor[2] = 255;
if (cmd->base == 2) {
globalCtx->envCtx.unk_E2[3] = 255.0f * temp;
globalCtx->envCtx.screenFillColor[3] = 255.0f * temp;
} else {
globalCtx->envCtx.unk_E2[3] = (1.0f - temp) * 255.0f;
globalCtx->envCtx.screenFillColor[3] = (1.0f - temp) * 255.0f;
}
break;
case 3:
case 7:
globalCtx->envCtx.unk_E2[0] = 0xFF;
globalCtx->envCtx.unk_E2[1] = 0;
globalCtx->envCtx.unk_E2[2] = 0;
globalCtx->envCtx.screenFillColor[0] = 255;
globalCtx->envCtx.screenFillColor[1] = 0;
globalCtx->envCtx.screenFillColor[2] = 0;
if (cmd->base == 3) {
globalCtx->envCtx.unk_E2[3] = (1.0f - temp) * 255.0f;
globalCtx->envCtx.screenFillColor[3] = (1.0f - temp) * 255.0f;
} else {
globalCtx->envCtx.unk_E2[3] = 255.0f * temp;
globalCtx->envCtx.screenFillColor[3] = 255.0f * temp;
}
break;
case 4:
case 8:
globalCtx->envCtx.unk_E2[0] = 0;
globalCtx->envCtx.unk_E2[1] = 0xFF;
globalCtx->envCtx.unk_E2[2] = 0;
globalCtx->envCtx.screenFillColor[0] = 0;
globalCtx->envCtx.screenFillColor[1] = 255;
globalCtx->envCtx.screenFillColor[2] = 0;
if (cmd->base == 4) {
globalCtx->envCtx.unk_E2[3] = (1.0f - temp) * 255.0f;
globalCtx->envCtx.screenFillColor[3] = (1.0f - temp) * 255.0f;
} else {
globalCtx->envCtx.unk_E2[3] = 255.0f * temp;
globalCtx->envCtx.screenFillColor[3] = 255.0f * temp;
}
break;
case 9:
@ -1252,23 +1252,23 @@ void Cutscene_Command_TransitionFX(GlobalContext* globalCtx, CutsceneContext* cs
break;
case 10:
case 11:
globalCtx->envCtx.unk_E2[0] = 0;
globalCtx->envCtx.unk_E2[1] = 0;
globalCtx->envCtx.unk_E2[2] = 0;
globalCtx->envCtx.screenFillColor[0] = 0;
globalCtx->envCtx.screenFillColor[1] = 0;
globalCtx->envCtx.screenFillColor[2] = 0;
if (cmd->base == 10) {
globalCtx->envCtx.unk_E2[3] = (1.0f - temp) * 255.0f;
globalCtx->envCtx.screenFillColor[3] = (1.0f - temp) * 255.0f;
} else {
globalCtx->envCtx.unk_E2[3] = 255.0f * temp;
globalCtx->envCtx.screenFillColor[3] = 255.0f * temp;
}
break;
case 12:
gSaveContext.unk_1410 = 255.0f - (155.0f * temp);
break;
case 13:
globalCtx->envCtx.unk_E2[0] = 0;
globalCtx->envCtx.unk_E2[1] = 0;
globalCtx->envCtx.unk_E2[2] = 0;
globalCtx->envCtx.unk_E2[3] = 255.0f - ((1.0f - temp) * 155.0f);
globalCtx->envCtx.screenFillColor[0] = 0;
globalCtx->envCtx.screenFillColor[1] = 0;
globalCtx->envCtx.screenFillColor[2] = 0;
globalCtx->envCtx.screenFillColor[3] = 255.0f - ((1.0f - temp) * 155.0f);
break;
}
}

View file

@ -56,7 +56,7 @@ void func_80026608(GlobalContext* globalCtx) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_eff_ss_dead.c", 159);
gDPPipeSync(POLY_OPA_DISP++);
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_eff_ss_dead.c", 164);
}
@ -115,7 +115,7 @@ void func_80026A6C(GlobalContext* globalCtx) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_eff_ss_dead.c", 217);
gDPPipeSync(POLY_XLU_DISP++);
POLY_XLU_DISP = func_800BC8A0(globalCtx, POLY_XLU_DISP);
POLY_XLU_DISP = Gameplay_SetFog(globalCtx, POLY_XLU_DISP);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_eff_ss_dead.c", 222);
}

View file

@ -1036,7 +1036,7 @@ void EnItem00_DrawCollectible(EnItem00* this, GlobalContext* globalCtx) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_item00.c", 1594);
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
if (this->actor.params == ITEM00_BOMBS_SPECIAL) {
texIndex = 1;

View file

@ -7,7 +7,7 @@ void FrameAdvance_Init(FrameAdvanceContext* frameAdvCtx) {
/**
* Frame advance allows you to advance through the game one frame at a time on command.
* To enable, hold R and press Dpad Down on the provided controller.
* To enable, hold R and press Dpad Down on the specified controller.
* To advance a frame, hold Z and press R.
* Holding Z and R will advance a frame every half second.
*

View file

@ -9,7 +9,7 @@ void GameOver_FadeInLights(GlobalContext* globalCtx) {
if ((gameOverCtx->state >= GAMEOVER_DEATH_WAIT_GROUND && gameOverCtx->state < GAMEOVER_REVIVE_START) ||
(gameOverCtx->state >= GAMEOVER_REVIVE_RUMBLE && gameOverCtx->state < GAMEOVER_REVIVE_FADE_OUT)) {
Kankyo_FadeInGameOverLights(globalCtx);
Environment_FadeInGameOverLights(globalCtx);
}
}
@ -74,7 +74,7 @@ void GameOver_Update(GlobalContext* globalCtx) {
gSaveContext.buttonStatus[3] = gSaveContext.buttonStatus[4] = BTN_ENABLED;
gSaveContext.unk_13E7 = gSaveContext.unk_13E8 = gSaveContext.unk_13EA = gSaveContext.unk_13EC = 0;
Kankyo_InitGameOverLights(globalCtx);
Environment_InitGameOverLights(globalCtx);
D_80153D80 = 20;
if (1) {}
v90 = VREG(90);
@ -103,7 +103,7 @@ void GameOver_Update(GlobalContext* globalCtx) {
case GAMEOVER_REVIVE_START:
gameOverCtx->state++;
D_80153D80 = 0;
Kankyo_InitGameOverLights(globalCtx);
Environment_InitGameOverLights(globalCtx);
ShrinkWindow_SetVal(0x20);
return;
@ -139,7 +139,7 @@ void GameOver_Update(GlobalContext* globalCtx) {
break;
case GAMEOVER_REVIVE_FADE_OUT:
Kankyo_FadeOutGameOverLights(globalCtx);
Environment_FadeOutGameOverLights(globalCtx);
D_80153D80--;
if (D_80153D80 == 0) {

File diff suppressed because it is too large Load diff

View file

@ -198,29 +198,29 @@ s32 Lights_FreeNode(LightNode* light) {
void LightContext_Init(GlobalContext* globalCtx, LightContext* lightCtx) {
LightContext_InitList(globalCtx, lightCtx);
LightContext_SetAmbientColor(lightCtx, 80, 80, 80);
func_8007A698(lightCtx, 0, 0, 0, 0x3E4, 0x3200);
LightContext_SetFog(lightCtx, 0, 0, 0, 996, 12800);
bzero(&sLightsBuffer, sizeof(sLightsBuffer));
}
void LightContext_SetAmbientColor(LightContext* lightCtx, u8 r, u8 g, u8 b) {
lightCtx->ambient.r = r;
lightCtx->ambient.g = g;
lightCtx->ambient.b = b;
lightCtx->ambientColor[0] = r;
lightCtx->ambientColor[1] = g;
lightCtx->ambientColor[2] = b;
}
void func_8007A698(LightContext* lightCtx, u8 arg1, u8 arg2, u8 arg3, s16 numLights, s16 arg5) {
lightCtx->unk_07 = arg1;
lightCtx->unk_08 = arg2;
lightCtx->unk_09 = arg3;
lightCtx->unk_0A = numLights;
lightCtx->unk_0C = arg5;
void LightContext_SetFog(LightContext* lightCtx, u8 r, u8 g, u8 b, s16 fogNear, s16 fogFar) {
lightCtx->fogColor[0] = r;
lightCtx->fogColor[1] = g;
lightCtx->fogColor[2] = b;
lightCtx->fogNear = fogNear;
lightCtx->fogFar = fogFar;
}
/**
* Allocate a new Lights group and initilize the ambient color with that provided by LightContext
*/
Lights* LightContext_NewLights(LightContext* lightCtx, GraphicsContext* gfxCtx) {
return Lights_New(gfxCtx, lightCtx->ambient.r, lightCtx->ambient.g, lightCtx->ambient.b);
return Lights_New(gfxCtx, lightCtx->ambientColor[0], lightCtx->ambientColor[1], lightCtx->ambientColor[2]);
}
void LightContext_InitList(GlobalContext* globalCtx, LightContext* lightCtx) {

View file

@ -212,8 +212,8 @@ void Map_InitRoomData(GlobalContext* globalCtx, s16 room) {
interfaceCtx->mapRoomNum = 0;
}
if (gSaveContext.unk_1422 != 2) {
gSaveContext.unk_1422 = 0;
if (gSaveContext.sunsSongState != SUNSSONG_SPEED_TIME) {
gSaveContext.sunsSongState = SUNSSONG_INACTIVE;
}
}
@ -559,7 +559,7 @@ void Map_Update(GlobalContext* globalCtx) {
osSyncPrintf("階層切替=%x\n", interfaceCtx->mapRoomNum);
osSyncPrintf(VT_RST);
Map_InitData(globalCtx, interfaceCtx->mapRoomNum);
gSaveContext.unk_1422 = 0;
gSaveContext.sunsSongState = SUNSSONG_INACTIVE;
Map_SavePlayerInitialInfo(globalCtx);
}
}

View file

@ -3789,7 +3789,7 @@ void Interface_Draw(GlobalContext* globalCtx) {
void Interface_Update(GlobalContext* globalCtx) {
static u8 D_80125B60 = 0;
static s16 D_80125B64 = 0;
static s16 sPrevTimeIncrement = 0;
MessageContext* msgCtx = &globalCtx->msgCtx;
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
Player* player = GET_PLAYER(globalCtx);
@ -4098,30 +4098,32 @@ void Interface_Update(GlobalContext* globalCtx) {
}
}
if (gSaveContext.unk_1422 != 0) {
if ((msgCtx->unk_E3F0 != 0x31) && (gSaveContext.unk_1422 == 1)) {
if (gSaveContext.sunsSongState != SUNSSONG_INACTIVE) {
// exit out of ocarina mode after suns song finishes playing
if ((msgCtx->unk_E3F0 != 0x31) && (gSaveContext.sunsSongState == SUNSSONG_START)) {
globalCtx->msgCtx.unk_E3EE = 4;
}
if (globalCtx->envCtx.unk_02 != 0) {
if (gSaveContext.unk_1422 != 2) {
// handle suns song in areas where time moves
if (globalCtx->envCtx.timeIncrement != 0) {
if (gSaveContext.sunsSongState != SUNSSONG_SPEED_TIME) {
D_80125B60 = 0;
if ((gSaveContext.dayTime >= 0x4555) && (gSaveContext.dayTime <= 0xC001)) {
D_80125B60 = 1;
}
gSaveContext.unk_1422 = 2;
D_80125B64 = D_8011FB40;
D_8011FB40 = 400;
gSaveContext.sunsSongState = SUNSSONG_SPEED_TIME;
sPrevTimeIncrement = gTimeIncrement;
gTimeIncrement = 400;
} else if (D_80125B60 == 0) {
if ((gSaveContext.dayTime >= 0x4555) && (gSaveContext.dayTime <= 0xC001)) {
gSaveContext.unk_1422 = 0;
D_8011FB40 = D_80125B64;
gSaveContext.sunsSongState = SUNSSONG_INACTIVE;
gTimeIncrement = sPrevTimeIncrement;
globalCtx->msgCtx.unk_E3EE = 4;
}
} else if (gSaveContext.dayTime > 0xC001) {
gSaveContext.unk_1422 = 0;
D_8011FB40 = D_80125B64;
gSaveContext.sunsSongState = SUNSSONG_INACTIVE;
gTimeIncrement = sPrevTimeIncrement;
globalCtx->msgCtx.unk_E3EE = 4;
}
} else if ((globalCtx->roomCtx.curRoom.unk_03 != 1) && (interfaceCtx->restrictions.sunsSong != 3)) {
@ -4145,12 +4147,12 @@ void Interface_Update(GlobalContext* globalCtx) {
gSaveContext.respawnFlag = -2;
globalCtx->nextEntranceIndex = gSaveContext.entranceIndex;
globalCtx->sceneLoadFlag = 0x14;
gSaveContext.unk_1422 = 0;
gSaveContext.sunsSongState = SUNSSONG_INACTIVE;
func_800F6964(30);
gSaveContext.seqIndex = 0xFF;
gSaveContext.nightSeqIndex = 0xFF;
} else {
gSaveContext.unk_1422 = 3;
gSaveContext.sunsSongState = SUNSSONG_SPECIAL;
}
}
}

View file

@ -135,9 +135,9 @@ void func_800BC88C(GlobalContext* globalCtx) {
globalCtx->transitionCtx.transitionType = -1;
}
Gfx* func_800BC8A0(GlobalContext* globalCtx, Gfx* gfx) {
return Gfx_SetFog2(gfx, globalCtx->lightCtx.unk_07, globalCtx->lightCtx.unk_08, globalCtx->lightCtx.unk_09, 0,
globalCtx->lightCtx.unk_0A, 1000);
Gfx* Gameplay_SetFog(GlobalContext* globalCtx, Gfx* gfx) {
return Gfx_SetFog2(gfx, globalCtx->lightCtx.fogColor[0], globalCtx->lightCtx.fogColor[1],
globalCtx->lightCtx.fogColor[2], 0, globalCtx->lightCtx.fogNear, 1000);
}
void Gameplay_Destroy(GameState* thisx) {
@ -246,7 +246,7 @@ void Gameplay_Init(GameState* thisx) {
if (gSaveContext.nextDayTime != 0xFFFFU) {
gSaveContext.dayTime = gSaveContext.nextDayTime;
gSaveContext.environmentTime = gSaveContext.nextDayTime;
gSaveContext.skyboxTime = gSaveContext.nextDayTime;
}
if (gSaveContext.dayTime > 0xC000 || gSaveContext.dayTime < 0x4555) {
@ -306,8 +306,8 @@ void Gameplay_Init(GameState* thisx) {
if (gSaveContext.nextDayTime != 0xFFFF) {
if (gSaveContext.nextDayTime == 0x8001) {
gSaveContext.numDays++;
gSaveContext.unk_18++;
gSaveContext.totalDays++;
gSaveContext.bgsDayCount++;
gSaveContext.dogIsLost = true;
if (Inventory_ReplaceItem(globalCtx, ITEM_WEIRD_EGG, ITEM_CHICKEN) ||
Inventory_ReplaceItem(globalCtx, ITEM_POCKET_EGG, ITEM_POCKET_CUCCO)) {
@ -606,21 +606,21 @@ void Gameplay_Update(GlobalContext* globalCtx) {
switch (globalCtx->transitionMode) {
case 4:
D_801614C8 = 0;
globalCtx->envCtx.unk_E1 = 1;
globalCtx->envCtx.unk_E2[0] = 0xA0;
globalCtx->envCtx.unk_E2[1] = 0xA0;
globalCtx->envCtx.unk_E2[2] = 0xA0;
globalCtx->envCtx.fillScreen = true;
globalCtx->envCtx.screenFillColor[0] = 160;
globalCtx->envCtx.screenFillColor[1] = 160;
globalCtx->envCtx.screenFillColor[2] = 160;
if (globalCtx->sceneLoadFlag != -0x14) {
globalCtx->envCtx.unk_E2[3] = 0;
globalCtx->envCtx.screenFillColor[3] = 0;
globalCtx->transitionMode = 5;
} else {
globalCtx->envCtx.unk_E2[3] = 0xFF;
globalCtx->envCtx.screenFillColor[3] = 255;
globalCtx->transitionMode = 6;
}
break;
case 5:
globalCtx->envCtx.unk_E2[3] = (D_801614C8 / 20.0f) * 255.0f;
globalCtx->envCtx.screenFillColor[3] = (D_801614C8 / 20.0f) * 255.0f;
if (D_801614C8 >= 20 && 1) {
globalCtx->state.running = 0;
SET_NEXT_GAMESTATE(&globalCtx->state, Gameplay_Init, GlobalContext);
@ -633,13 +633,13 @@ void Gameplay_Update(GlobalContext* globalCtx) {
break;
case 6:
globalCtx->envCtx.unk_E2[3] = (1 - D_801614C8 / 20.0f) * 255.0f;
globalCtx->envCtx.screenFillColor[3] = (1 - D_801614C8 / 20.0f) * 255.0f;
if (D_801614C8 >= 20 && 1) {
gTrnsnUnkState = 0;
R_UPDATE_RATE = 3;
globalCtx->sceneLoadFlag = 0;
globalCtx->transitionMode = 0;
globalCtx->envCtx.unk_E1 = 0;
globalCtx->envCtx.fillScreen = false;
} else {
D_801614C8++;
}
@ -647,15 +647,15 @@ void Gameplay_Update(GlobalContext* globalCtx) {
case 7:
D_801614C8 = 0;
globalCtx->envCtx.unk_E1 = 1;
globalCtx->envCtx.unk_E2[0] = 0xAA;
globalCtx->envCtx.unk_E2[1] = 0xA0;
globalCtx->envCtx.unk_E2[2] = 0x96;
globalCtx->envCtx.fillScreen = true;
globalCtx->envCtx.screenFillColor[0] = 170;
globalCtx->envCtx.screenFillColor[1] = 160;
globalCtx->envCtx.screenFillColor[2] = 150;
if (globalCtx->sceneLoadFlag != -0x14) {
globalCtx->envCtx.unk_E2[3] = 0;
globalCtx->envCtx.screenFillColor[3] = 0;
globalCtx->transitionMode = 5;
} else {
globalCtx->envCtx.unk_E2[3] = 0xFF;
globalCtx->envCtx.screenFillColor[3] = 255;
globalCtx->transitionMode = 6;
}
break;
@ -683,12 +683,12 @@ void Gameplay_Update(GlobalContext* globalCtx) {
case 12:
if (globalCtx->sceneLoadFlag != -0x14) {
globalCtx->envCtx.unk_E6 = 1;
globalCtx->envCtx.sandstormState = 1;
globalCtx->transitionMode = 13;
} else {
globalCtx->envCtx.unk_E6 = 2;
globalCtx->envCtx.unk_E7 = 0xFF;
globalCtx->envCtx.unk_E8 = 0xFF;
globalCtx->envCtx.sandstormState = 2;
globalCtx->envCtx.sandstormPrimA = 255;
globalCtx->envCtx.sandstormEnvA = 255;
globalCtx->transitionMode = 13;
}
break;
@ -697,14 +697,14 @@ void Gameplay_Update(GlobalContext* globalCtx) {
Audio_PlaySoundGeneral(NA_SE_EV_SAND_STORM - SFX_FLAG, &D_801333D4, 4, &D_801333E0, &D_801333E0,
&D_801333E8);
if (globalCtx->sceneLoadFlag == -0x14) {
if (globalCtx->envCtx.unk_E7 < 0x6E) {
if (globalCtx->envCtx.sandstormPrimA < 110) {
gTrnsnUnkState = 0;
R_UPDATE_RATE = 3;
globalCtx->sceneLoadFlag = 0;
globalCtx->transitionMode = 0;
}
} else {
if (globalCtx->envCtx.unk_E8 == 0xFF) {
if (globalCtx->envCtx.sandstormEnvA == 255) {
globalCtx->state.running = 0;
SET_NEXT_GAMESTATE(&globalCtx->state, Gameplay_Init, GlobalContext);
gSaveContext.entranceIndex = globalCtx->nextEntranceIndex;
@ -716,9 +716,9 @@ void Gameplay_Update(GlobalContext* globalCtx) {
case 14:
if (globalCtx->sceneLoadFlag == -0x14) {
globalCtx->envCtx.unk_E6 = 4;
globalCtx->envCtx.unk_E7 = 0xFF;
globalCtx->envCtx.unk_E8 = 0xFF;
globalCtx->envCtx.sandstormState = 4;
globalCtx->envCtx.sandstormPrimA = 255;
globalCtx->envCtx.sandstormEnvA = 255;
// "It's here!!!!!!!!!"
LOG_STRING("来た!!!!!!!!!!!!!!!!!!!!!", "../z_play.c", 3471);
globalCtx->transitionMode = 15;
@ -731,7 +731,7 @@ void Gameplay_Update(GlobalContext* globalCtx) {
Audio_PlaySoundGeneral(NA_SE_EV_SAND_STORM - SFX_FLAG, &D_801333D4, 4, &D_801333E0, &D_801333E0,
&D_801333E8);
if (globalCtx->sceneLoadFlag == -0x14) {
if (globalCtx->envCtx.unk_E7 <= 0) {
if (globalCtx->envCtx.sandstormPrimA <= 0) {
gTrnsnUnkState = 0;
R_UPDATE_RATE = 3;
globalCtx->sceneLoadFlag = 0;
@ -742,17 +742,17 @@ void Gameplay_Update(GlobalContext* globalCtx) {
case 16:
D_801614C8 = 0;
globalCtx->envCtx.unk_E1 = 1;
globalCtx->envCtx.unk_E2[0] = 0;
globalCtx->envCtx.unk_E2[1] = 0;
globalCtx->envCtx.unk_E2[2] = 0;
globalCtx->envCtx.unk_E2[3] = 0xFF;
globalCtx->envCtx.fillScreen = true;
globalCtx->envCtx.screenFillColor[0] = 0;
globalCtx->envCtx.screenFillColor[1] = 0;
globalCtx->envCtx.screenFillColor[2] = 0;
globalCtx->envCtx.screenFillColor[3] = 255;
globalCtx->transitionMode = 17;
break;
case 17:
if (gSaveContext.unk_1410 != 0) {
globalCtx->envCtx.unk_E2[3] = gSaveContext.unk_1410;
globalCtx->envCtx.screenFillColor[3] = gSaveContext.unk_1410;
if (gSaveContext.unk_1410 < 0x65) {
gTrnsnUnkState = 0;
R_UPDATE_RATE = 3;
@ -813,11 +813,12 @@ void Gameplay_Update(GlobalContext* globalCtx) {
osSyncPrintf("FINISH=%d\n", globalCtx->actorCtx.freezeFlashTimer);
if ((globalCtx->actorCtx.freezeFlashTimer > 0) &&
((globalCtx->actorCtx.freezeFlashTimer % 2) != 0)) {
globalCtx->envCtx.unk_E1 = 1;
globalCtx->envCtx.unk_E2[0] = globalCtx->envCtx.unk_E2[1] = globalCtx->envCtx.unk_E2[2] = 150;
globalCtx->envCtx.unk_E2[3] = 80;
globalCtx->envCtx.fillScreen = true;
globalCtx->envCtx.screenFillColor[0] = globalCtx->envCtx.screenFillColor[1] =
globalCtx->envCtx.screenFillColor[2] = 150;
globalCtx->envCtx.screenFillColor[3] = 80;
} else {
globalCtx->envCtx.unk_E1 = 0;
globalCtx->envCtx.fillScreen = false;
}
} else {
if (1 && HREG(63)) {
@ -1031,8 +1032,8 @@ skip:
LOG_NUM("1", 1, "../z_play.c", 3816);
}
func_80070C24(globalCtx, &globalCtx->envCtx, &globalCtx->lightCtx, &globalCtx->pauseCtx, &globalCtx->msgCtx,
&globalCtx->gameOverCtx, globalCtx->state.gfxCtx);
Environment_Update(globalCtx, &globalCtx->envCtx, &globalCtx->lightCtx, &globalCtx->pauseCtx, &globalCtx->msgCtx,
&globalCtx->gameOverCtx, globalCtx->state.gfxCtx);
}
void Gameplay_DrawOverlayElements(GlobalContext* globalCtx) {
@ -1081,10 +1082,10 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
func_80095248(gfxCtx, 0, 0, 0);
if ((HREG(80) != 10) || (HREG(82) != 0)) {
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_XLU_DISP = func_800BC8A0(globalCtx, POLY_XLU_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
POLY_XLU_DISP = Gameplay_SetFog(globalCtx, POLY_XLU_DISP);
func_800AA460(&globalCtx->view, globalCtx->view.fovy, globalCtx->view.zNear, globalCtx->lightCtx.unk_0C);
func_800AA460(&globalCtx->view, globalCtx->view.fovy, globalCtx->view.zNear, globalCtx->lightCtx.fogFar);
func_800AAA50(&globalCtx->view, 15);
Matrix_MtxToMtxF(&globalCtx->view.viewing, &globalCtx->mf_11DA0);
@ -1092,12 +1093,8 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
Matrix_Mult(&globalCtx->mf_11D60, MTXMODE_NEW);
Matrix_Mult(&globalCtx->mf_11DA0, MTXMODE_APPLY);
Matrix_Get(&globalCtx->mf_11D60);
globalCtx->mf_11DA0.mf[3][2] = 0.0f;
globalCtx->mf_11DA0.mf[3][1] = 0.0f;
globalCtx->mf_11DA0.mf[3][0] = 0.0f;
globalCtx->mf_11DA0.mf[2][3] = 0.0f;
globalCtx->mf_11DA0.mf[1][3] = 0.0f;
globalCtx->mf_11DA0.mf[0][3] = 0.0f;
globalCtx->mf_11DA0.mf[0][3] = globalCtx->mf_11DA0.mf[1][3] = globalCtx->mf_11DA0.mf[2][3] =
globalCtx->mf_11DA0.mf[3][0] = globalCtx->mf_11DA0.mf[3][1] = globalCtx->mf_11DA0.mf[3][2] = 0.0f;
Matrix_Transpose(&globalCtx->mf_11DA0);
globalCtx->unk_11DE0 = Matrix_MtxFToMtx(Matrix_CheckFloats(&globalCtx->mf_11DA0, "../z_play.c", 4005),
Graph_Alloc(gfxCtx, sizeof(Mtx)));
@ -1165,12 +1162,12 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
if ((HREG(80) != 10) || (HREG(83) != 0)) {
if (globalCtx->skyboxId && (globalCtx->skyboxId != SKYBOX_UNSET_1D) &&
!globalCtx->envCtx.skyDisabled) {
!globalCtx->envCtx.skyboxDisabled) {
if ((globalCtx->skyboxId == SKYBOX_NORMAL_SKY) ||
(globalCtx->skyboxId == SKYBOX_CUTSCENE_MAP)) {
func_8006FC88(globalCtx->skyboxId, &globalCtx->envCtx, &globalCtx->skyboxCtx);
Environment_UpdateSkybox(globalCtx->skyboxId, &globalCtx->envCtx, &globalCtx->skyboxCtx);
SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId,
globalCtx->envCtx.unk_13, globalCtx->view.eye.x, globalCtx->view.eye.y,
globalCtx->envCtx.skyboxBlend, globalCtx->view.eye.x, globalCtx->view.eye.y,
globalCtx->view.eye.z);
} else if (globalCtx->skyboxCtx.unk_140 == 0) {
SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, 0,
@ -1181,17 +1178,17 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
if ((HREG(80) != 10) || (HREG(90) & 2)) {
if (!globalCtx->envCtx.sunMoonDisabled) {
func_800730DC(globalCtx);
Environment_DrawSunAndMoon(globalCtx);
}
}
if ((HREG(80) != 10) || (HREG(90) & 1)) {
func_80074D6C(globalCtx);
Environment_DrawSkyboxFilters(globalCtx);
}
if ((HREG(80) != 10) || (HREG(90) & 4)) {
func_800750C0(globalCtx);
func_8007542C(globalCtx, 0);
Environment_UpdateLightningStrike(globalCtx);
Environment_DrawLightning(globalCtx, 0);
}
if ((HREG(80) != 10) || (HREG(90) & 8)) {
@ -1226,11 +1223,11 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
}
if (globalCtx->envCtx.unk_EE[1] != 0) {
func_80074704(globalCtx, &globalCtx->view, gfxCtx);
Environment_DrawRain(globalCtx, &globalCtx->view, gfxCtx);
}
if ((HREG(80) != 10) || (HREG(84) != 0)) {
func_8007672C(gfxCtx, 0, 0, 0, globalCtx->unk_11E18, 1);
Environment_FillScreen(gfxCtx, 0, 0, 0, globalCtx->unk_11E18, FILL_SCREEN_OPA);
}
if ((HREG(80) != 10) || (HREG(85) != 0)) {
@ -1239,23 +1236,26 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
if ((HREG(80) != 10) || (HREG(86) != 0)) {
if (!globalCtx->envCtx.sunMoonDisabled) {
sp21C.x = globalCtx->view.eye.x + globalCtx->envCtx.unk_04.x;
sp21C.y = globalCtx->view.eye.y + globalCtx->envCtx.unk_04.y;
sp21C.z = globalCtx->view.eye.z + globalCtx->envCtx.unk_04.z;
func_80073988(globalCtx, &globalCtx->envCtx, &globalCtx->view, gfxCtx, sp21C, 0);
sp21C.x = globalCtx->view.eye.x + globalCtx->envCtx.sunPos.x;
sp21C.y = globalCtx->view.eye.y + globalCtx->envCtx.sunPos.y;
sp21C.z = globalCtx->view.eye.z + globalCtx->envCtx.sunPos.z;
Environment_DrawSunLensFlare(globalCtx, &globalCtx->envCtx, &globalCtx->view, gfxCtx, sp21C, 0);
}
func_80075E68(globalCtx);
Environment_DrawCustomLensFlare(globalCtx);
}
if ((HREG(80) != 10) || (HREG(87) != 0)) {
if (MREG(64) != 0) {
func_8007672C(gfxCtx, MREG(65), MREG(66), MREG(67), MREG(68), 3);
Environment_FillScreen(gfxCtx, MREG(65), MREG(66), MREG(67), MREG(68),
FILL_SCREEN_OPA | FILL_SCREEN_XLU);
}
switch (globalCtx->envCtx.unk_E1) {
switch (globalCtx->envCtx.fillScreen) {
case 1:
func_8007672C(gfxCtx, globalCtx->envCtx.unk_E2[0], globalCtx->envCtx.unk_E2[1],
globalCtx->envCtx.unk_E2[2], globalCtx->envCtx.unk_E2[3], 3);
Environment_FillScreen(
gfxCtx, globalCtx->envCtx.screenFillColor[0], globalCtx->envCtx.screenFillColor[1],
globalCtx->envCtx.screenFillColor[2], globalCtx->envCtx.screenFillColor[3],
FILL_SCREEN_OPA | FILL_SCREEN_XLU);
break;
default:
break;
@ -1263,8 +1263,8 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
}
if ((HREG(80) != 10) || (HREG(88) != 0)) {
if (globalCtx->envCtx.unk_E6 != 0) {
func_80076934(globalCtx, globalCtx->envCtx.unk_E6);
if (globalCtx->envCtx.sandstormState != 0) {
Environment_DrawSandstorm(globalCtx, globalCtx->envCtx.sandstormState);
}
}
@ -1274,7 +1274,6 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
if ((R_PAUSE_MENU_MODE == 1) || (gTrnsnUnkState == 1)) {
Gfx* sp70 = OVERLAY_DISP;
s32 pad[4];
globalCtx->pauseBgPreRender.fbuf = gfxCtx->curFrameBuffer;
globalCtx->pauseBgPreRender.fbufSave = (u16*)gZBuffer;
@ -1303,7 +1302,7 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
Camera_Update(GET_ACTIVE_CAM(globalCtx));
func_800AB944(&globalCtx->view);
globalCtx->view.unk_124 = 0;
if (globalCtx->skyboxId && (globalCtx->skyboxId != SKYBOX_UNSET_1D) && !globalCtx->envCtx.skyDisabled) {
if (globalCtx->skyboxId && (globalCtx->skyboxId != SKYBOX_UNSET_1D) && !globalCtx->envCtx.skyboxDisabled) {
SkyboxDraw_UpdateMatrix(&globalCtx->skyboxCtx, globalCtx->view.eye.x, globalCtx->view.eye.y,
globalCtx->view.eye.z);
}
@ -1439,9 +1438,9 @@ void* Gameplay_LoadFile(GlobalContext* globalCtx, RomFile* file) {
return allocp;
}
void Gameplay_InitSkybox(GlobalContext* globalCtx, s16 skyboxId) {
void Gameplay_InitEnvironment(GlobalContext* globalCtx, s16 skyboxId) {
Skybox_Init(globalCtx, &globalCtx->skyboxCtx, skyboxId);
func_8006F140(globalCtx, &globalCtx->envCtx, 0);
Environment_Init(globalCtx, &globalCtx->envCtx, 0);
}
void Gameplay_InitScene(GlobalContext* globalCtx, s32 spawn) {
@ -1460,7 +1459,7 @@ void Gameplay_InitScene(GlobalContext* globalCtx, s32 spawn) {
YREG(15) = 0;
gSaveContext.worldMapArea = 0;
Scene_ExecuteCommands(globalCtx, globalCtx->sceneSegment);
Gameplay_InitSkybox(globalCtx, globalCtx->skyboxId);
Gameplay_InitEnvironment(globalCtx, globalCtx->skyboxId);
}
void Gameplay_SpawnScene(GlobalContext* globalCtx, s32 sceneNum, s32 spawn) {

View file

@ -847,51 +847,52 @@ Gfx gEmptyDL[] = {
gsSPEndDisplayList(),
};
Gfx* Gfx_SetFog(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 n, s32 f) {
if (f == n) {
f++;
Gfx* Gfx_SetFog(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 near, s32 far) {
if (far == near) {
far++;
}
ASSERT(n != f, "n != f", "../z_rcp.c", 1155);
ASSERT(near != far, "n != f", "../z_rcp.c", 1155);
gDPSetFogColor(gfx++, r, g, b, a);
if (n >= 1000) {
if (near >= 1000) {
gSPFogFactor(gfx++, 0, 0);
} else if (n >= 997) {
} else if (near >= 997) {
gSPFogFactor(gfx++, 0x7FFF, 0x8100);
} else if (n < 0) {
} else if (near < 0) {
gSPFogFactor(gfx++, 0, 255);
} else {
gSPFogPosition(gfx++, n, f);
gSPFogPosition(gfx++, near, far);
}
return gfx;
}
Gfx* Gfx_SetFogWithSync(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 n, s32 f) {
if (f == n) {
f++;
Gfx* Gfx_SetFogWithSync(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 near, s32 far) {
if (far == near) {
far++;
}
ASSERT(n != f, "n != f", "../z_rcp.c", 1187);
ASSERT(near != far, "n != f", "../z_rcp.c", 1187);
gDPPipeSync(gfx++);
gDPSetFogColor(gfx++, r, g, b, a);
if (n >= 1000) {
if (near >= 1000) {
gSPFogFactor(gfx++, 0, 0);
} else if (n >= 997) {
} else if (near >= 997) {
gSPFogFactor(gfx++, 0x7FFF, 0x8100);
} else if (n < 0) {
} else if (near < 0) {
gSPFogFactor(gfx++, 0, 255);
} else {
gSPFogPosition(gfx++, n, f);
gSPFogPosition(gfx++, near, far);
}
return gfx;
}
Gfx* Gfx_SetFog2(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 n, s32 f) {
return Gfx_SetFog(gfx, r, g, b, a, n, f);
Gfx* Gfx_SetFog2(Gfx* gfx, s32 r, s32 g, s32 b, s32 a, s32 near, s32 far) {
return Gfx_SetFog(gfx, r, g, b, a, near, far);
}
Gfx* Gfx_CallSetupDLImpl(Gfx* gfx, u32 i) {

View file

@ -131,7 +131,7 @@ void func_80095D04(GlobalContext* globalCtx, Room* room, u32 flags) {
SkinMatrix_Vec3fMtxFMultXYZW(&globalCtx->mf_11D60, &sp90, &sp84, &sp80);
if (-(f32)polygonDlist->unk_06 < sp84.z) {
temp_f2 = sp84.z - polygonDlist->unk_06;
if (temp_f2 < globalCtx->lightCtx.unk_0C) {
if (temp_f2 < globalCtx->lightCtx.fogFar) {
phi_v0 = spB4;
spA4->unk_00 = polygonDlist;
spA4->unk_04 = temp_f2;

View file

@ -343,67 +343,63 @@ void func_80098CC8(GlobalContext* globalCtx, SceneCmd* cmd) {
// Scene Command 0x11: Skybox Settings
void func_80098D1C(GlobalContext* globalCtx, SceneCmd* cmd) {
globalCtx->skyboxId = cmd->skyboxSettings.skyboxId;
globalCtx->envCtx.gloomySky = globalCtx->envCtx.unk_18 = cmd->skyboxSettings.unk_05;
globalCtx->envCtx.unk_1E = cmd->skyboxSettings.unk_06;
globalCtx->envCtx.unk_17 = globalCtx->envCtx.unk_18 = cmd->skyboxSettings.unk_05;
globalCtx->envCtx.indoors = cmd->skyboxSettings.unk_06;
}
// Scene Command 0x12: Skybox Disables
void func_80098D5C(GlobalContext* globalCtx, SceneCmd* cmd) {
globalCtx->envCtx.skyDisabled = cmd->skyboxDisables.unk_04;
globalCtx->envCtx.skyboxDisabled = cmd->skyboxDisables.unk_04;
globalCtx->envCtx.sunMoonDisabled = cmd->skyboxDisables.unk_05;
}
// Scene Command 0x10: Time Settings
void func_80098D80(GlobalContext* globalCtx, SceneCmd* cmd) {
u32 dayTime;
if ((cmd->timeSettings.hour != 0xFF) && (cmd->timeSettings.min != 0xFF)) {
gSaveContext.environmentTime = gSaveContext.dayTime =
((cmd->timeSettings.hour + (cmd->timeSettings.min / 60.0f)) * 60.0f) / (360.0f / 0x4000);
gSaveContext.skyboxTime = gSaveContext.dayTime =
((cmd->timeSettings.hour + (cmd->timeSettings.min / 60.0f)) * 60.0f) / ((f32)(24 * 60) / 0x10000);
}
if (cmd->timeSettings.unk_06 != 0xFF) {
globalCtx->envCtx.unk_02 = cmd->timeSettings.unk_06;
globalCtx->envCtx.timeIncrement = cmd->timeSettings.unk_06;
} else {
globalCtx->envCtx.unk_02 = 0;
globalCtx->envCtx.timeIncrement = 0;
}
if (gSaveContext.unk_1422 == 0) {
D_8011FB40 = globalCtx->envCtx.unk_02;
if (gSaveContext.sunsSongState == SUNSSONG_INACTIVE) {
gTimeIncrement = globalCtx->envCtx.timeIncrement;
}
dayTime = gSaveContext.dayTime;
globalCtx->envCtx.unk_04.x = -(Math_SinS(dayTime - 0x8000) * 120.0f) * 25.0f;
dayTime = gSaveContext.dayTime;
globalCtx->envCtx.unk_04.y = (Math_CosS(dayTime - 0x8000) * 120.0f) * 25.0f;
dayTime = gSaveContext.dayTime;
globalCtx->envCtx.unk_04.z = (Math_CosS(dayTime - 0x8000) * 20.0f) * 25.0f;
globalCtx->envCtx.sunPos.x = -(Math_SinS(((void)0, gSaveContext.dayTime) - 0x8000) * 120.0f) * 25.0f;
globalCtx->envCtx.sunPos.y = (Math_CosS(((void)0, gSaveContext.dayTime) - 0x8000) * 120.0f) * 25.0f;
globalCtx->envCtx.sunPos.z = (Math_CosS(((void)0, gSaveContext.dayTime) - 0x8000) * 20.0f) * 25.0f;
if (((globalCtx->envCtx.unk_02 == 0) && (gSaveContext.cutsceneIndex < 0xFFF0)) ||
if (((globalCtx->envCtx.timeIncrement == 0) && (gSaveContext.cutsceneIndex < 0xFFF0)) ||
(gSaveContext.entranceIndex == 0x0604)) {
gSaveContext.environmentTime = gSaveContext.dayTime;
if ((gSaveContext.environmentTime >= 0x2AAC) && (gSaveContext.environmentTime < 0x4555)) {
gSaveContext.environmentTime = 0x3556;
} else if ((gSaveContext.environmentTime >= 0x4555) && (gSaveContext.environmentTime < 0x5556)) {
gSaveContext.environmentTime = 0x5556;
} else if ((gSaveContext.environmentTime >= 0xAAAB) && (gSaveContext.environmentTime < 0xB556)) {
gSaveContext.environmentTime = 0xB556;
} else if ((gSaveContext.environmentTime >= 0xC001) && (gSaveContext.environmentTime < 0xCAAC)) {
gSaveContext.environmentTime = 0xCAAC;
gSaveContext.skyboxTime = ((void)0, gSaveContext.dayTime);
if ((gSaveContext.skyboxTime >= 0x2AAC) && (gSaveContext.skyboxTime < 0x4555)) {
gSaveContext.skyboxTime = 0x3556;
} else if ((gSaveContext.skyboxTime >= 0x4555) && (gSaveContext.skyboxTime < 0x5556)) {
gSaveContext.skyboxTime = 0x5556;
} else if ((gSaveContext.skyboxTime >= 0xAAAB) && (gSaveContext.skyboxTime < 0xB556)) {
gSaveContext.skyboxTime = 0xB556;
} else if ((gSaveContext.skyboxTime >= 0xC001) && (gSaveContext.skyboxTime < 0xCAAC)) {
gSaveContext.skyboxTime = 0xCAAC;
}
}
}
// Scene Command 0x05: Wind Settings
void func_80099090(GlobalContext* globalCtx, SceneCmd* cmd) {
s8 temp1 = cmd->windSettings.unk_04;
s8 temp2 = cmd->windSettings.unk_05;
s8 temp3 = cmd->windSettings.unk_06;
s8 x = cmd->windSettings.x;
s8 y = cmd->windSettings.y;
s8 z = cmd->windSettings.z;
globalCtx->envCtx.unk_A8 = temp1;
globalCtx->envCtx.unk_AA = temp2;
globalCtx->envCtx.unk_AC = temp3;
globalCtx->envCtx.unk_B0 = cmd->windSettings.unk_07;
globalCtx->envCtx.windDirection.x = x;
globalCtx->envCtx.windDirection.y = y;
globalCtx->envCtx.windDirection.z = z;
globalCtx->envCtx.windSpeed = cmd->windSettings.unk_07;
}
// Scene Command 0x13: Exit List
@ -501,13 +497,6 @@ void (*gSceneCmdHandlers[])(GlobalContext*, SceneCmd*) = {
func_80099140, func_8009918C, func_8009934C, func_800991A0, func_800993C0,
};
#define ROM_FILE(name) \
{ (u32) _##name##SegmentRomStart, (u32)_##name##SegmentRomEnd }
#define ROM_FILE_EMPTY(name) \
{ (u32) _##name##SegmentRomStart, (u32)_##name##SegmentRomStart }
#define ROM_FILE_UNSET \
{ 0 }
RomFile sNaviMsgFiles[] = {
ROM_FILE(elf_message_field),
ROM_FILE(elf_message_ydan),

View file

@ -1088,10 +1088,10 @@ void func_80099BD8(GlobalContext* globalCtx) {
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_scene_table.c", 5145);
if (gSaveContext.sceneSetupIndex == 5) {
D_8015FCF0 = 1;
D_8015FCF8.x = -20.0f;
D_8015FCF8.y = 1220.0f;
D_8015FCF8.z = -684.0f;
gCustomLensFlareOn = true;
gCustomLensFlarePos.x = -20.0f;
gCustomLensFlarePos.y = 1220.0f;
gCustomLensFlarePos.z = -684.0f;
D_8015FD06 = 10;
D_8015FD08 = 8.0f;
D_8015FD0C = 200;

View file

@ -63,8 +63,8 @@ typedef struct {
/* 0x08 */ s32 cutsceneIndex;
/* 0x0C */ u16 dayTime; // "zelda_time"
/* 0x10 */ s32 nightFlag;
/* 0x14 */ s32 numDays;
/* 0x18 */ s32 unk_18; // increments with numDays, gets reset by goron for bgs and one other use
/* 0x14 */ s32 totalDays;
/* 0x18 */ s32 unk_18; // increments with totalDays, gets reset by goron for bgs and one other use
/* 0x1C */ SaveInfo info; // "information"
} Save; // size = 0x1354
@ -161,8 +161,8 @@ void Sram_InitNewSave(void) {
SaveContext* temp = &gSaveContext;
bzero(&SAVE_INFO, sizeof(SaveInfo));
gSaveContext.numDays = 0;
gSaveContext.unk_18 = 0;
gSaveContext.totalDays = 0;
gSaveContext.bgsDayCount = 0;
SAVE_PLAYER_DATA = sNewSavePlayerData;
gSaveContext.equips = sNewSaveEquips;
@ -250,8 +250,8 @@ void Sram_InitDebugSave(void) {
SaveContext* temp = &gSaveContext;
bzero(&SAVE_INFO, sizeof(SaveInfo));
gSaveContext.numDays = 0;
gSaveContext.unk_18 = 0;
gSaveContext.totalDays = 0;
gSaveContext.bgsDayCount = 0;
SAVE_PLAYER_DATA = sDebugSavePlayerData;
gSaveContext.equips = sDebugSaveEquips;
@ -561,8 +561,8 @@ void Sram_VerifyAndLoadAllSaves(FileChooseContext* fileChooseCtx, SramContext* s
// note that gSaveContext.dayTime is not actually the sizeof(s32)
bzero(&gSaveContext.dayTime, sizeof(s32));
bzero(&gSaveContext.nightFlag, sizeof(s32));
bzero(&gSaveContext.numDays, sizeof(s32));
bzero(&gSaveContext.unk_18, sizeof(s32));
bzero(&gSaveContext.totalDays, sizeof(s32));
bzero(&gSaveContext.bgsDayCount, sizeof(s32));
if (!slotNum) {
Sram_InitDebugSave();

View file

@ -1,5 +1,6 @@
#include "global.h"
#include "vt.h"
#include "z64environment.h"
typedef struct {
/* 0x000 */ s32 unk_0;
@ -11,17 +12,7 @@ typedef struct {
extern Struct_8012AF0C D_8012AF0C[6];
extern Struct_8012AF0C D_8012AEBC[4];
typedef struct {
/* 0x00 */ u16 unk_0; // start
/* 0x02 */ u16 unk_2; // end
/* 0x04 */ u8 unk_4;
/* 0x05 */ u8 unk_5; // img idx 1
/* 0x06 */ u8 unk_6; // img idx 2
/* 0x07 */ char unk_7[0x1];
} Struct_8011FC1C; // size = 0x8
extern Struct_8011FC1C D_8011FC1C[8][9];
extern struct_8011FC1C D_8011FC1C[][9];
typedef struct {
/* 0x00 */ u32 unk_0; // start
@ -30,8 +21,6 @@ typedef struct {
/* 0x0C */ u32 unk_C; // pal end
} Struct_8011FD3C; // size = 0x10
extern Struct_8011FD3C D_8011FD3C[];
s32 func_800ADBB0(SkyboxContext* skyboxCtx, Vtx* roomVtx, s32, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, s32,
s32);
#pragma GLOBAL_ASM("asm/non_matchings/code/z_vr_box/func_800ADBB0.s")
@ -85,64 +74,69 @@ void Skybox_Setup(GlobalContext* globalCtx, SkyboxContext* skyboxCtx, s16 skybox
switch (skyboxId) {
case SKYBOX_NORMAL_SKY:
phi_v1 = 0;
if (gSaveContext.unk_13C3 != 0 && gSaveContext.sceneSetupIndex < 4 && D_8011FB30 > 0 && D_8011FB30 < 6) {
if (gSaveContext.unk_13C3 != 0 && gSaveContext.sceneSetupIndex < 4 && gWeatherMode > 0 &&
gWeatherMode < 6) {
phi_v1 = 1;
}
for (i = 0; i < 9; i++) {
if (gSaveContext.environmentTime >= D_8011FC1C[phi_v1][i].unk_0 &&
(gSaveContext.environmentTime < D_8011FC1C[phi_v1][i].unk_2 ||
D_8011FC1C[phi_v1][i].unk_2 == 0xFFFF)) {
globalCtx->envCtx.unk_10 = sp41 = D_8011FC1C[phi_v1][i].unk_5;
globalCtx->envCtx.unk_11 = sp40 = D_8011FC1C[phi_v1][i].unk_6;
if (D_8011FC1C[phi_v1][i].unk_4 != 0) {
globalCtx->envCtx.unk_13 =
func_8006F93C(D_8011FC1C[phi_v1][i].unk_2, D_8011FC1C[phi_v1][i].unk_0,
((void)0, gSaveContext.environmentTime)) *
if (gSaveContext.skyboxTime >= D_8011FC1C[phi_v1][i].startTime &&
(gSaveContext.skyboxTime < D_8011FC1C[phi_v1][i].endTime ||
D_8011FC1C[phi_v1][i].endTime == 0xFFFF)) {
globalCtx->envCtx.skybox1Index = sp41 = D_8011FC1C[phi_v1][i].skybox1Index;
globalCtx->envCtx.skybox2Index = sp40 = D_8011FC1C[phi_v1][i].skybox2Index;
if (D_8011FC1C[phi_v1][i].blend != 0) {
globalCtx->envCtx.skyboxBlend =
Environment_LerpWeight(D_8011FC1C[phi_v1][i].endTime, D_8011FC1C[phi_v1][i].startTime,
((void)0, gSaveContext.skyboxTime)) *
255.0f;
} else {
globalCtx->envCtx.unk_13 = 0;
globalCtx->envCtx.skyboxBlend = 0;
}
break;
}
}
size = D_8011FD3C[sp41].unk_4 - D_8011FD3C[sp41].unk_0;
size = gSkyboxFiles[sp41].file.vromEnd - gSkyboxFiles[sp41].file.vromStart;
skyboxCtx->staticSegments[0] = GameState_Alloc(&globalCtx->state, size, "../z_vr_box.c", 1054);
ASSERT(skyboxCtx->staticSegments[0] != NULL, "vr_box->vr_box_staticSegment[0] != NULL", "../z_vr_box.c",
1055);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[0], D_8011FD3C[sp41].unk_0, size, "../z_vr_box.c", 1058);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[0], gSkyboxFiles[sp41].file.vromStart, size, "../z_vr_box.c",
1058);
size = D_8011FD3C[sp40].unk_4 - D_8011FD3C[sp40].unk_0;
size = gSkyboxFiles[sp40].file.vromEnd - gSkyboxFiles[sp40].file.vromStart;
skyboxCtx->staticSegments[1] = GameState_Alloc(&globalCtx->state, size, "../z_vr_box.c", 1060);
ASSERT(skyboxCtx->staticSegments[1] != NULL, "vr_box->vr_box_staticSegment[1] != NULL", "../z_vr_box.c",
1061);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[1], D_8011FD3C[sp40].unk_0, size, "../z_vr_box.c", 1064);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[1], gSkyboxFiles[sp40].file.vromStart, size, "../z_vr_box.c",
1064);
// reorderings in the rest of this case
if (((u8)(sp41 & 4) >> 2) != (sp41 & 1)) {
size = D_8011FD3C[sp41].unk_C - D_8011FD3C[sp41].unk_8;
size = gSkyboxFiles[sp41].pallete.vromEnd - gSkyboxFiles[sp41].pallete.vromStart;
skyboxCtx->staticSegments[2] = GameState_Alloc(&globalCtx->state, size * 2, "../z_vr_box.c", 1072);
ASSERT(skyboxCtx->staticSegments[2] != NULL, "vr_box->vr_box_staticSegment[2] != NULL", "../z_vr_box.c",
1073);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[2], D_8011FD3C[sp41].unk_8, size, "../z_vr_box.c", 1075);
DmaMgr_SendRequest1((u32)skyboxCtx->staticSegments[2] + size, D_8011FD3C[sp40].unk_8, size,
"../z_vr_box.c", 1077);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[2], gSkyboxFiles[sp41].pallete.vromStart, size,
"../z_vr_box.c", 1075);
DmaMgr_SendRequest1((u32)skyboxCtx->staticSegments[2] + size, gSkyboxFiles[sp40].pallete.vromStart,
size, "../z_vr_box.c", 1077);
} else {
size = D_8011FD3C[sp41].unk_C - D_8011FD3C[sp41].unk_8;
size = gSkyboxFiles[sp41].pallete.vromEnd - gSkyboxFiles[sp41].pallete.vromStart;
skyboxCtx->staticSegments[2] = GameState_Alloc(&globalCtx->state, size * 2, "../z_vr_box.c", 1085);
ASSERT(skyboxCtx->staticSegments[2] != NULL, "vr_box->vr_box_staticSegment[2] != NULL", "../z_vr_box.c",
1086);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[2], D_8011FD3C[sp40].unk_8, size, "../z_vr_box.c", 1088);
DmaMgr_SendRequest1((u32)skyboxCtx->staticSegments[2] + size, D_8011FD3C[sp41].unk_8, size,
"../z_vr_box.c", 1090);
DmaMgr_SendRequest1(skyboxCtx->staticSegments[2], gSkyboxFiles[sp40].pallete.vromStart, size,
"../z_vr_box.c", 1088);
DmaMgr_SendRequest1((u32)skyboxCtx->staticSegments[2] + size, gSkyboxFiles[sp41].pallete.vromStart,
size, "../z_vr_box.c", 1090);
}
break;

View file

@ -11,7 +11,7 @@ Mtx* SkyboxDraw_UpdateMatrix(SkyboxContext* skyboxCtx, f32 x, f32 y, f32 z) {
return Matrix_ToMtx(sSkyboxDrawMatrix, "../z_vr_box_draw.c", 42);
}
void SkyboxDraw_Draw(SkyboxContext* skyboxCtx, GraphicsContext* gfxCtx, s16 skyboxId, s16 alpha, f32 x, f32 y, f32 z) {
void SkyboxDraw_Draw(SkyboxContext* skyboxCtx, GraphicsContext* gfxCtx, s16 skyboxId, s16 blend, f32 x, f32 y, f32 z) {
OPEN_DISPS(gfxCtx, "../z_vr_box_draw.c", 52);
func_800945A0(gfxCtx);
@ -20,7 +20,7 @@ void SkyboxDraw_Draw(SkyboxContext* skyboxCtx, GraphicsContext* gfxCtx, s16 skyb
gSPSegment(POLY_OPA_DISP++, 0x8, skyboxCtx->staticSegments[1]);
gSPSegment(POLY_OPA_DISP++, 0x9, skyboxCtx->staticSegments[2]);
gDPSetPrimColor(POLY_OPA_DISP++, 0x00, 0x00, 0, 0, 0, alpha);
gDPSetPrimColor(POLY_OPA_DISP++, 0x00, 0x00, 0, 0, 0, blend);
gSPTexture(POLY_OPA_DISP++, 0x8000, 0x8000, 0, G_TX_RENDERTILE, G_ON);
sSkyboxDrawMatrix = Graph_Alloc(gfxCtx, sizeof(Mtx));

View file

@ -229,7 +229,7 @@ void BgSpot00Hanebasi_Update(Actor* thisx, GlobalContext* globalCtx) {
globalCtx->sceneLoadFlag = 0x14;
globalCtx->fadeTransition = 4;
} else if (Actor_IsFacingAndNearPlayer(&this->dyna.actor, 3000.0f, 0x7530)) {
globalCtx->envCtx.gloomySkyEvent = 1;
globalCtx->envCtx.gloomySkyMode = 1;
}
}
}
@ -238,20 +238,20 @@ void BgSpot00Hanebasi_Update(Actor* thisx, GlobalContext* globalCtx) {
u16 dayTime;
s32 tmp;
if (D_8011FB40 == 50) {
if (gTimeIncrement == 50) {
tmp = 0xD556;
if (gSaveContext.dayTime >= 0xD557) {
tmp = 0x1D556;
}
D_8011FB40 = (tmp - gSaveContext.dayTime) * (1.0f / 350.0f);
gTimeIncrement = (tmp - gSaveContext.dayTime) * (1.0f / 350.0f);
}
dayTime = gSaveContext.dayTime;
if ((dayTime >= 0x2AAC) && (dayTime < 0x3000) && (gSaveContext.sceneSetupIndex == 5)) {
D_8011FB40 = 0;
gTimeIncrement = 0;
}
}
}

View file

@ -199,7 +199,7 @@ s32 func_808AB29C(BgSpot01Idohashira* this, GlobalContext* globalCtx) {
npcAction = BgSpot01Idohashira_GetNpcAction(globalCtx, 2);
if (npcAction != NULL) {
temp_f0 = func_8006F93C(npcAction->endFrame, npcAction->startFrame, globalCtx->csCtx.frames);
temp_f0 = Environment_LerpWeight(npcAction->endFrame, npcAction->startFrame, globalCtx->csCtx.frames);
initPos = this->dyna.actor.home.pos;
endX = npcAction->endPos.x;
tempY = ((kREG(10) + 1100.0f) / 10.0f) + npcAction->endPos.y;

View file

@ -298,8 +298,8 @@ void func_808AD450(Actor* thisx, GlobalContext* globalCtx) {
}
}
lerp = func_8006F93C(globalCtx->csCtx.npcActions[2]->endFrame, globalCtx->csCtx.npcActions[2]->startFrame,
globalCtx->csCtx.frames);
lerp = Environment_LerpWeight(globalCtx->csCtx.npcActions[2]->endFrame,
globalCtx->csCtx.npcActions[2]->startFrame, globalCtx->csCtx.frames);
// should be able to remove & 0xFFFF with some other change
if ((globalCtx->csCtx.npcActions[2]->action & 0xFFFF) == 2) {

View file

@ -894,11 +894,11 @@ void BossDodongo_Update(Actor* thisx, GlobalContext* globalCtx2) {
Math_SmoothStepToF(&this->unk_240, 0.0f, 1, 10.0f, 0.0);
}
if ((globalCtx->envCtx.unk_8C[1][2] == 0) && (globalCtx->envCtx.unk_8C[0][2] == 0)) {
globalCtx->envCtx.unk_8C[1][0] = (u8)this->unk_240;
globalCtx->envCtx.unk_8C[1][1] = (u8)(this->unk_240 * 0.1f);
globalCtx->envCtx.unk_8C[0][0] = (u8)this->unk_240;
globalCtx->envCtx.unk_8C[0][1] = (u8)(this->unk_240 * 0.1f);
if ((globalCtx->envCtx.adjLight1Color[2] == 0) && (globalCtx->envCtx.adjAmbientColor[2] == 0)) {
globalCtx->envCtx.adjLight1Color[0] = (u8)this->unk_240;
globalCtx->envCtx.adjLight1Color[1] = (u8)(this->unk_240 * 0.1f);
globalCtx->envCtx.adjAmbientColor[0] = (u8)this->unk_240;
globalCtx->envCtx.adjAmbientColor[1] = (u8)(this->unk_240 * 0.1f);
}
}
@ -916,10 +916,10 @@ void BossDodongo_Update(Actor* thisx, GlobalContext* globalCtx2) {
Math_SmoothStepToF(&this->colorFilterMin, 900.0f, 1, 10.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterMax, 1099.0f, 1, 10.0f, 0.0);
} else {
Math_SmoothStepToF(&this->colorFilterR, globalCtx->lightCtx.unk_07, 1, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterG, globalCtx->lightCtx.unk_08, 1.0f, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterB, globalCtx->lightCtx.unk_09, 1.0f, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterMin, globalCtx->lightCtx.unk_0A, 1.0, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterR, globalCtx->lightCtx.fogColor[0], 1, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterG, globalCtx->lightCtx.fogColor[1], 1.0f, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterB, globalCtx->lightCtx.fogColor[2], 1.0f, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterMin, globalCtx->lightCtx.fogNear, 1.0, 5.0f, 0.0);
Math_SmoothStepToF(&this->colorFilterMax, 1000.0f, 1, 5.0f, 0.0);
}
@ -1137,7 +1137,7 @@ void BossDodongo_Draw(Actor* thisx, GlobalContext* globalCtx) {
SkelAnime_DrawOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, BossDodongo_OverrideLimbDraw,
BossDodongo_PostLimbDraw, this);
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_boss_dodongo.c", 3981);

View file

@ -1644,7 +1644,7 @@ void BossFd_Draw(Actor* thisx, GlobalContext* globalCtx) {
}
BossFd_DrawBody(globalCtx, this);
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_boss_fd.c", 4243);
}

View file

@ -1213,7 +1213,7 @@ void BossFd2_Draw(Actor* thisx, GlobalContext* globalCtx) {
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable,
this->skelAnime.dListCount, BossFd2_OverrideLimbDraw, BossFd2_PostLimbDraw, &this->actor);
BossFd2_DrawMane(this, globalCtx);
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_boss_fd2.c", 2688);
}

View file

@ -712,11 +712,12 @@ void func_808FD5F4(BossGanon2* this, GlobalContext* globalCtx) {
func_800A9F6C(0.0f, 0xFF, 0xA, 0x32);
}
if (this->unk_398 >= 229) {
globalCtx->envCtx.unk_E1 = 1;
globalCtx->envCtx.unk_E2[0] = globalCtx->envCtx.unk_E2[1] = globalCtx->envCtx.unk_E2[2] = 0xFF;
globalCtx->envCtx.unk_E2[3] = 0x64;
globalCtx->envCtx.fillScreen = true;
globalCtx->envCtx.screenFillColor[0] = globalCtx->envCtx.screenFillColor[1] =
globalCtx->envCtx.screenFillColor[2] = 255;
globalCtx->envCtx.screenFillColor[3] = 100;
if (this->unk_398 == 234) {
globalCtx->envCtx.unk_E1 = 0;
globalCtx->envCtx.fillScreen = false;
this->unk_39C = 24;
this->unk_398 = 0;
sp68 = player->actor.world.pos;
@ -2078,13 +2079,13 @@ void BossGanon2_Update(Actor* thisx, GlobalContext* globalCtx) {
this->unk_332--;
}
if ((globalCtx->envCtx.unk_D8 > 0.0f) && (this->unk_336 != 0)) {
globalCtx->envCtx.unk_E9 = 1;
globalCtx->envCtx.unk_EA[0] = 0xFF;
globalCtx->envCtx.unk_EA[1] = 0xFF;
globalCtx->envCtx.unk_EA[2] = 0xFF;
globalCtx->envCtx.unk_EA[3] = (s16)(globalCtx->envCtx.unk_D8 * 200.0f);
globalCtx->envCtx.customSkyboxFilter = 1;
globalCtx->envCtx.skyboxFilterColor[0] = 255;
globalCtx->envCtx.skyboxFilterColor[1] = 255;
globalCtx->envCtx.skyboxFilterColor[2] = 255;
globalCtx->envCtx.skyboxFilterColor[3] = (s16)(globalCtx->envCtx.unk_D8 * 200.0f);
} else {
globalCtx->envCtx.unk_E9 = 0;
globalCtx->envCtx.customSkyboxFilter = 0;
}
globalCtx->envCtx.unk_BF = 0;
globalCtx->envCtx.unk_DC = 2;
@ -2749,7 +2750,7 @@ void BossGanon2_Draw(Actor* thisx, GlobalContext* globalCtx) {
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable,
this->skelAnime.dListCount, BossGanon2_OverrideLimbDraw, BossGanon2_PostLimbDraw,
this);
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
BossGanon2_GenShadowTexture(shadowTexture, this, globalCtx);
BossGanon2_DrawShadowTexture(shadowTexture, this, globalCtx);
break;
@ -2872,9 +2873,9 @@ void func_809060E8(GlobalContext* globalCtx) {
f32 angle;
func_80093D84(globalCtx->state.gfxCtx);
spA0.x = globalCtx->envCtx.unk_2A;
spA0.y = globalCtx->envCtx.unk_2B;
spA0.z = globalCtx->envCtx.unk_2C;
spA0.x = globalCtx->envCtx.dirLight1.params.dir.x;
spA0.y = globalCtx->envCtx.dirLight1.params.dir.y;
spA0.z = globalCtx->envCtx.dirLight1.params.dir.z;
func_8002EABC(&effect->position, &globalCtx->view.eye, &spA0, globalCtx->state.gfxCtx);
Matrix_Translate(effect->position.x, effect->position.y, effect->position.z, MTXMODE_NEW);
Matrix_Scale(0.03f, 0.03f, 0.03f, MTXMODE_APPLY);

View file

@ -1519,7 +1519,7 @@ void BossGanondrof_Draw(Actor* thisx, GlobalContext* globalCtx) {
SkelAnime_DrawOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, BossGanondrof_OverrideLimbDraw,
BossGanondrof_PostLimbDraw, this);
osSyncPrintf("DRAW 22\n");
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_boss_ganondrof.c", 3814);
osSyncPrintf("DRAW END %d\n", this->actor.params);
}

View file

@ -1198,57 +1198,57 @@ void BossGoma_Defeated(BossGoma* this, GlobalContext* globalCtx) {
if (this->blinkTimer != 0) {
this->blinkTimer--;
globalCtx->envCtx.unk_8C[0][0] += 40;
globalCtx->envCtx.unk_8C[0][1] += 40;
globalCtx->envCtx.unk_8C[0][2] += 80;
globalCtx->envCtx.unk_8C[2][0] += 10;
globalCtx->envCtx.unk_8C[2][1] += 10;
globalCtx->envCtx.unk_8C[2][2] += 20;
globalCtx->envCtx.adjAmbientColor[0] += 40;
globalCtx->envCtx.adjAmbientColor[1] += 40;
globalCtx->envCtx.adjAmbientColor[2] += 80;
globalCtx->envCtx.adjFogColor[0] += 10;
globalCtx->envCtx.adjFogColor[1] += 10;
globalCtx->envCtx.adjFogColor[2] += 20;
} else {
globalCtx->envCtx.unk_8C[0][0] -= 20;
globalCtx->envCtx.unk_8C[0][1] -= 20;
globalCtx->envCtx.unk_8C[0][2] -= 40;
globalCtx->envCtx.unk_8C[2][0] -= 5;
globalCtx->envCtx.unk_8C[2][1] -= 5;
globalCtx->envCtx.unk_8C[2][2] -= 10;
globalCtx->envCtx.adjAmbientColor[0] -= 20;
globalCtx->envCtx.adjAmbientColor[1] -= 20;
globalCtx->envCtx.adjAmbientColor[2] -= 40;
globalCtx->envCtx.adjFogColor[0] -= 5;
globalCtx->envCtx.adjFogColor[1] -= 5;
globalCtx->envCtx.adjFogColor[2] -= 10;
}
if (globalCtx->envCtx.unk_8C[0][0] > 200) {
globalCtx->envCtx.unk_8C[0][0] = 200;
if (globalCtx->envCtx.adjAmbientColor[0] > 200) {
globalCtx->envCtx.adjAmbientColor[0] = 200;
}
if (globalCtx->envCtx.unk_8C[0][1] > 200) {
globalCtx->envCtx.unk_8C[0][1] = 200;
if (globalCtx->envCtx.adjAmbientColor[1] > 200) {
globalCtx->envCtx.adjAmbientColor[1] = 200;
}
if (globalCtx->envCtx.unk_8C[0][2] > 200) {
globalCtx->envCtx.unk_8C[0][2] = 200;
if (globalCtx->envCtx.adjAmbientColor[2] > 200) {
globalCtx->envCtx.adjAmbientColor[2] = 200;
}
if (globalCtx->envCtx.unk_8C[2][0] > 70) {
globalCtx->envCtx.unk_8C[2][0] = 70;
if (globalCtx->envCtx.adjFogColor[0] > 70) {
globalCtx->envCtx.adjFogColor[0] = 70;
}
if (globalCtx->envCtx.unk_8C[2][1] > 70) {
globalCtx->envCtx.unk_8C[2][1] = 70;
if (globalCtx->envCtx.adjFogColor[1] > 70) {
globalCtx->envCtx.adjFogColor[1] = 70;
}
if (globalCtx->envCtx.unk_8C[2][2] > 140) {
globalCtx->envCtx.unk_8C[2][2] = 140;
if (globalCtx->envCtx.adjFogColor[2] > 140) {
globalCtx->envCtx.adjFogColor[2] = 140;
}
if (globalCtx->envCtx.unk_8C[0][0] < 0) {
globalCtx->envCtx.unk_8C[0][0] = 0;
if (globalCtx->envCtx.adjAmbientColor[0] < 0) {
globalCtx->envCtx.adjAmbientColor[0] = 0;
}
if (globalCtx->envCtx.unk_8C[0][1] < 0) {
globalCtx->envCtx.unk_8C[0][1] = 0;
if (globalCtx->envCtx.adjAmbientColor[1] < 0) {
globalCtx->envCtx.adjAmbientColor[1] = 0;
}
if (globalCtx->envCtx.unk_8C[0][2] < 0) {
globalCtx->envCtx.unk_8C[0][2] = 0;
if (globalCtx->envCtx.adjAmbientColor[2] < 0) {
globalCtx->envCtx.adjAmbientColor[2] = 0;
}
if (globalCtx->envCtx.unk_8C[2][0] < 0) {
globalCtx->envCtx.unk_8C[2][0] = 0;
if (globalCtx->envCtx.adjFogColor[0] < 0) {
globalCtx->envCtx.adjFogColor[0] = 0;
}
if (globalCtx->envCtx.unk_8C[2][1] < 0) {
globalCtx->envCtx.unk_8C[2][1] = 0;
if (globalCtx->envCtx.adjFogColor[1] < 0) {
globalCtx->envCtx.adjFogColor[1] = 0;
}
if (globalCtx->envCtx.unk_8C[2][2] < 0) {
globalCtx->envCtx.unk_8C[2][2] = 0;
if (globalCtx->envCtx.adjFogColor[2] < 0) {
globalCtx->envCtx.adjFogColor[2] = 0;
}
}

View file

@ -1100,7 +1100,8 @@ void BossMo_Tentacle(BossMo* this, GlobalContext* globalCtx) {
((300 - indS1) * .0015f) + 0.13f);
}
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_DOOR_WARP1,
this->actor.world.pos.x, -280.0f, this->actor.world.pos.z, 0, 0, 0, WARP_DUNGEON_ADULT);
this->actor.world.pos.x, -280.0f, this->actor.world.pos.z, 0, 0, 0,
WARP_DUNGEON_ADULT);
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_ITEM_B_HEART, this->actor.world.pos.x + 200.0f,
-280.0f, this->actor.world.pos.z, 0, 0, 0, 0);
Audio_QueueSeqCmd(0x21);
@ -2437,9 +2438,9 @@ void BossMo_DrawTentacle(BossMo* this, GlobalContext* globalCtx) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_boss_mo.c", 6366);
sp110.x = globalCtx->envCtx.unk_2A;
sp110.y = globalCtx->envCtx.unk_2B;
sp110.z = globalCtx->envCtx.unk_2C;
sp110.x = globalCtx->envCtx.dirLight1.params.dir.x;
sp110.y = globalCtx->envCtx.dirLight1.params.dir.y;
sp110.z = globalCtx->envCtx.dirLight1.params.dir.z;
Matrix_Push();

View file

@ -585,10 +585,10 @@ void BossTw_Init(Actor* thisx, GlobalContext* globalCtx2) {
}
}
this->fogR = globalCtx->lightCtx.unk_07;
this->fogG = globalCtx->lightCtx.unk_08;
this->fogB = globalCtx->lightCtx.unk_09;
this->fogNear = globalCtx->lightCtx.unk_0A;
this->fogR = globalCtx->lightCtx.fogColor[0];
this->fogG = globalCtx->lightCtx.fogColor[1];
this->fogB = globalCtx->lightCtx.fogColor[2];
this->fogNear = globalCtx->lightCtx.fogNear;
this->fogFar = 1000.0f;
}
@ -2852,10 +2852,10 @@ void BossTw_Update(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
this->collider.base.colType = COLTYPE_HIT3;
Math_ApproachF(&this->fogR, globalCtx->lightCtx.unk_07, 1.0f, 10.0f);
Math_ApproachF(&this->fogG, globalCtx->lightCtx.unk_08, 1.0f, 10.0f);
Math_ApproachF(&this->fogB, globalCtx->lightCtx.unk_09, 1.0f, 10.0f);
Math_ApproachF(&this->fogNear, globalCtx->lightCtx.unk_0A, 1.0f, 10.0f);
Math_ApproachF(&this->fogR, globalCtx->lightCtx.fogColor[0], 1.0f, 10.0f);
Math_ApproachF(&this->fogG, globalCtx->lightCtx.fogColor[1], 1.0f, 10.0f);
Math_ApproachF(&this->fogB, globalCtx->lightCtx.fogColor[2], 1.0f, 10.0f);
Math_ApproachF(&this->fogNear, globalCtx->lightCtx.fogNear, 1.0f, 10.0f);
Math_ApproachF(&this->fogFar, 1000.0f, 1.0f, 10.0f);
this->work[CS_TIMER_1]++;
this->work[CS_TIMER_2]++;
@ -2979,10 +2979,10 @@ void BossTw_TwinrovaUpdate(Actor* thisx, GlobalContext* globalCtx2) {
this->unk_5F8 = 0;
this->collider.base.colType = COLTYPE_HIT3;
Math_ApproachF(&this->fogR, globalCtx->lightCtx.unk_07, 1.0f, 10.0f);
Math_ApproachF(&this->fogG, globalCtx->lightCtx.unk_08, 1.0f, 10.0f);
Math_ApproachF(&this->fogB, globalCtx->lightCtx.unk_09, 1.0f, 10.0f);
Math_ApproachF(&this->fogNear, globalCtx->lightCtx.unk_0A, 1.0f, 10.0f);
Math_ApproachF(&this->fogR, globalCtx->lightCtx.fogColor[0], 1.0f, 10.0f);
Math_ApproachF(&this->fogG, globalCtx->lightCtx.fogColor[1], 1.0f, 10.0f);
Math_ApproachF(&this->fogB, globalCtx->lightCtx.fogColor[2], 1.0f, 10.0f);
Math_ApproachF(&this->fogNear, globalCtx->lightCtx.fogNear, 1.0f, 10.0f);
Math_ApproachF(&this->fogFar, 1000.0f, 1.0f, 10.0f);
this->work[CS_TIMER_1]++;
@ -3529,7 +3529,7 @@ void BossTw_Draw(Actor* thisx, GlobalContext* globalCtx2) {
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable,
this->skelAnime.dListCount, BossTw_OverrideLimbDraw, BossTw_PostLimbDraw, this);
Matrix_Pop();
POLY_OPA_DISP = func_800BC8A0(globalCtx, POLY_OPA_DISP);
POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP);
}
if (this->actor.params == TW_KOTAKE) {
@ -3888,8 +3888,8 @@ void BossTw_TwinrovaDraw(Actor* thisx, GlobalContext* globalCtx2) {
Matrix_Pop();
Matrix_MultVec3f(&D_8094A9EC, &this->beamOrigin);
POLY_OPA_DISP = Gfx_SetFog2(POLY_OPA_DISP, globalCtx->lightCtx.unk_07, globalCtx->lightCtx.unk_08,
globalCtx->lightCtx.unk_09, 0, globalCtx->lightCtx.unk_0A, 1000);
POLY_OPA_DISP = Gfx_SetFog2(POLY_OPA_DISP, globalCtx->lightCtx.fogColor[0], globalCtx->lightCtx.fogColor[1],
globalCtx->lightCtx.fogColor[2], 0, globalCtx->lightCtx.fogNear, 1000);
}
BossTw_DrawEffects(globalCtx);

View file

@ -508,33 +508,33 @@ void BossVa_Tumor(GlobalContext* globalCtx, BossVa* this, s32 count, s16 scale,
}
void BossVa_SetSparkEnv(GlobalContext* globalCtx) {
globalCtx->envCtx.unk_8C[0][0] = 0xA;
globalCtx->envCtx.unk_8C[0][1] = 0xA;
globalCtx->envCtx.unk_8C[0][2] = 0xA;
globalCtx->envCtx.unk_8C[1][0] = 0x73;
globalCtx->envCtx.unk_8C[1][1] = 0x41;
globalCtx->envCtx.unk_8C[1][2] = 0x64;
globalCtx->envCtx.unk_8C[2][0] = 0x78;
globalCtx->envCtx.unk_8C[2][1] = 0x78;
globalCtx->envCtx.unk_8C[2][2] = 0x46;
globalCtx->envCtx.adjAmbientColor[0] = 0xA;
globalCtx->envCtx.adjAmbientColor[1] = 0xA;
globalCtx->envCtx.adjAmbientColor[2] = 0xA;
globalCtx->envCtx.adjLight1Color[0] = 0x73;
globalCtx->envCtx.adjLight1Color[1] = 0x41;
globalCtx->envCtx.adjLight1Color[2] = 0x64;
globalCtx->envCtx.adjFogColor[0] = 0x78;
globalCtx->envCtx.adjFogColor[1] = 0x78;
globalCtx->envCtx.adjFogColor[2] = 0x46;
}
void BossVa_SetDeathEnv(GlobalContext* globalCtx) {
globalCtx->envCtx.unk_8C[2][0] = 0xDC;
globalCtx->envCtx.unk_8C[2][1] = 0xDC;
globalCtx->envCtx.unk_8C[2][2] = 0x96;
globalCtx->envCtx.unk_9E = -0x3E8;
globalCtx->envCtx.unk_A0 = -0x384;
globalCtx->envCtx.unk_8C[0][0] = 0xC8;
globalCtx->envCtx.unk_8C[0][1] = 0xC8;
globalCtx->envCtx.unk_8C[0][2] = 0xC8;
globalCtx->envCtx.unk_8C[1][0] = 0xD7;
globalCtx->envCtx.unk_8C[1][1] = 0xA5;
globalCtx->envCtx.unk_8C[1][2] = 0xC8;
globalCtx->envCtx.unk_E2[0] = 0xDC;
globalCtx->envCtx.unk_E2[1] = 0xDC;
globalCtx->envCtx.unk_E2[2] = 0x96;
globalCtx->envCtx.unk_E2[3] = 0x64;
globalCtx->envCtx.adjFogColor[0] = 0xDC;
globalCtx->envCtx.adjFogColor[1] = 0xDC;
globalCtx->envCtx.adjFogColor[2] = 0x96;
globalCtx->envCtx.adjFogNear = -0x3E8;
globalCtx->envCtx.adjFogFar = -0x384;
globalCtx->envCtx.adjAmbientColor[0] = 0xC8;
globalCtx->envCtx.adjAmbientColor[1] = 0xC8;
globalCtx->envCtx.adjAmbientColor[2] = 0xC8;
globalCtx->envCtx.adjLight1Color[0] = 0xD7;
globalCtx->envCtx.adjLight1Color[1] = 0xA5;
globalCtx->envCtx.adjLight1Color[2] = 0xC8;
globalCtx->envCtx.screenFillColor[0] = 0xDC;
globalCtx->envCtx.screenFillColor[1] = 0xDC;
globalCtx->envCtx.screenFillColor[2] = 0x96;
globalCtx->envCtx.screenFillColor[3] = 0x64;
}
EnBoom* BossVa_FindBoomerang(GlobalContext* globalCtx) {
@ -630,7 +630,8 @@ void BossVa_Init(Actor* thisx, GlobalContext* globalCtx2) {
warpId = ACTOR_DOOR_WARP1;
}
Actor_Spawn(&globalCtx->actorCtx, globalCtx, warpId, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, 0); //! params could be WARP_DUNGEON_CHILD however this can also spawn Ru1
this->actor.world.pos.z, 0, 0, 0,
0); //! params could be WARP_DUNGEON_CHILD however this can also spawn Ru1
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_ITEM_B_HEART, this->actor.world.pos.x + 160.0f,
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, 0);
sDoorState = 100;
@ -642,10 +643,10 @@ void BossVa_Init(Actor* thisx, GlobalContext* globalCtx2) {
sCsState = INTRO_CALL_BARI;
sDoorState = 100;
func_8002DF54(globalCtx, &this->actor, 1);
globalCtx->envCtx.unk_E2[0] = 0xDC;
globalCtx->envCtx.unk_E2[1] = 0xDC;
globalCtx->envCtx.unk_E2[2] = 0xBE;
globalCtx->envCtx.unk_E2[3] = 0xD2;
globalCtx->envCtx.screenFillColor[0] = 0xDC;
globalCtx->envCtx.screenFillColor[1] = 0xDC;
globalCtx->envCtx.screenFillColor[2] = 0xBE;
globalCtx->envCtx.screenFillColor[3] = 0xD2;
func_80064520(globalCtx, &globalCtx->csCtx);
sCsCamera = Gameplay_CreateSubCamera(globalCtx);
Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT);
@ -778,10 +779,10 @@ void BossVa_BodyIntro(BossVa* this, GlobalContext* globalCtx) {
}
break;
case INTRO_START:
globalCtx->envCtx.unk_E2[0] = 0xDC;
globalCtx->envCtx.unk_E2[1] = 0xDC;
globalCtx->envCtx.unk_E2[2] = 0xBE;
globalCtx->envCtx.unk_E2[3] = 0xD2;
globalCtx->envCtx.screenFillColor[0] = 0xDC;
globalCtx->envCtx.screenFillColor[1] = 0xDC;
globalCtx->envCtx.screenFillColor[2] = 0xBE;
globalCtx->envCtx.screenFillColor[3] = 0xD2;
func_8002DF54(globalCtx, &this->actor, 8);
player->actor.world.rot.y = player->actor.shape.rot.y = 0x7FFF;
sCsState++;
@ -1552,9 +1553,10 @@ void BossVa_BodyDeath(BossVa* this, GlobalContext* globalCtx) {
this->unk_1AC = Math_Vec3f_Yaw(&sCameraEye, &sCameraNextAt) - 0x100;
this->unk_1B0 = 15;
globalCtx->envCtx.unk_E2[0] = globalCtx->envCtx.unk_E2[1] = globalCtx->envCtx.unk_E2[2] = 0xFF;
globalCtx->envCtx.unk_E2[3] = 0;
globalCtx->envCtx.unk_E1 = 1;
globalCtx->envCtx.screenFillColor[0] = globalCtx->envCtx.screenFillColor[1] =
globalCtx->envCtx.screenFillColor[2] = 0xFF;
globalCtx->envCtx.screenFillColor[3] = 0;
globalCtx->envCtx.fillScreen = true;
sCsState++;
case DEATH_BODY_TUMORS:
this->unk_1AC += 0x100;
@ -1652,7 +1654,7 @@ void BossVa_BodyDeath(BossVa* this, GlobalContext* globalCtx) {
}
case DEATH_FINISH:
Rand_CenteredFloat(0.5f);
globalCtx->envCtx.unk_E1 = 0;
globalCtx->envCtx.fillScreen = false;
break;
}
@ -1671,8 +1673,8 @@ void BossVa_BodyDeath(BossVa* this, GlobalContext* globalCtx) {
Math_SmoothStepToS(&this->vaBodySpinRate, 0, 1, 0xC8, 0);
Math_SmoothStepToS(&this->vaCamRotMod, 0, 1, 0xC8, 0);
Math_SmoothStepToS(&this->bodyGlow, 200, 1, 10, 0);
if (globalCtx->envCtx.unk_E2[3] != 0) {
globalCtx->envCtx.unk_E2[3] -= 50;
if (globalCtx->envCtx.screenFillColor[3] != 0) {
globalCtx->envCtx.screenFillColor[3] -= 50;
}
Math_SmoothStepToF(&this->actor.speedXZ, 0.0f, 1.0f, 0.5f, 0.0f);
@ -2818,22 +2820,22 @@ void BossVa_Update(Actor* thisx, GlobalContext* globalCtx2) {
BossVa_UpdateEffects(globalCtx);
for (i = 2; i >= 0; i--) {
if ((globalCtx->envCtx.unk_8C[0][i] - 1) > 0) {
globalCtx->envCtx.unk_8C[0][i] -= 1;
if ((globalCtx->envCtx.adjAmbientColor[i] - 1) > 0) {
globalCtx->envCtx.adjAmbientColor[i] -= 1;
} else {
globalCtx->envCtx.unk_8C[0][i] = 0;
globalCtx->envCtx.adjAmbientColor[i] = 0;
}
if ((globalCtx->envCtx.unk_8C[1][i] - 10) > 0) {
globalCtx->envCtx.unk_8C[1][i] -= 10;
if ((globalCtx->envCtx.adjLight1Color[i] - 10) > 0) {
globalCtx->envCtx.adjLight1Color[i] -= 10;
} else {
globalCtx->envCtx.unk_8C[1][i] = 0;
globalCtx->envCtx.adjLight1Color[i] = 0;
}
if ((globalCtx->envCtx.unk_8C[2][i] - 10) > 0) {
globalCtx->envCtx.unk_8C[2][i] -= 10;
if ((globalCtx->envCtx.adjFogColor[i] - 10) > 0) {
globalCtx->envCtx.adjFogColor[i] -= 10;
} else {
globalCtx->envCtx.unk_8C[2][i] = 0;
globalCtx->envCtx.adjFogColor[i] = 0;
}
}
@ -3187,17 +3189,17 @@ void BossVa_Draw(Actor* thisx, GlobalContext* globalCtx) {
switch (this->actor.params) {
case BOSSVA_BODY:
if (globalCtx->envCtx.unk_9E != 0) {
globalCtx->envCtx.unk_9E += 0x15E;
if (globalCtx->envCtx.unk_9E > 0) {
globalCtx->envCtx.unk_9E = 0;
if (globalCtx->envCtx.adjFogNear != 0) {
globalCtx->envCtx.adjFogNear += 0x15E;
if (globalCtx->envCtx.adjFogNear > 0) {
globalCtx->envCtx.adjFogNear = 0;
}
}
if (globalCtx->envCtx.unk_A0 != 0) {
globalCtx->envCtx.unk_A0 += 0x15E;
if (globalCtx->envCtx.unk_A0 > 0) {
globalCtx->envCtx.unk_A0 = 0;
if (globalCtx->envCtx.adjFogFar != 0) {
globalCtx->envCtx.adjFogFar += 0x15E;
if (globalCtx->envCtx.adjFogFar > 0) {
globalCtx->envCtx.adjFogFar = 0;
}
}

View file

@ -811,7 +811,7 @@ void func_809691BC(Demo6K* this, GlobalContext* globalCtx, s32 params) {
endPos.y = csAction->endPos.y;
endPos.z = csAction->endPos.z;
temp = func_8006F93C(csAction->endFrame, csAction->startFrame, globalCtx->csCtx.frames);
temp = Environment_LerpWeight(csAction->endFrame, csAction->startFrame, globalCtx->csCtx.frames);
this->actor.world.pos.x = (((endPos.x - startPos.x) * temp) + startPos.x);
this->actor.world.pos.y = (((endPos.y - startPos.y) * temp) + startPos.y);

View file

@ -172,7 +172,8 @@ void DemoDu_CsFireMedallion_SpawnDoorWarp(DemoDu* this, GlobalContext* globalCtx
f32 posY = this->actor.world.pos.y;
f32 posZ = this->actor.world.pos.z;
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_DOOR_WARP1, posX, posY, posZ, 0, 0, 0, WARP_SAGES);
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_DOOR_WARP1, posX, posY, posZ, 0, 0, 0,
WARP_SAGES);
}
// Gives the Fire Medallion to Link.
@ -445,7 +446,7 @@ void DemoDu_CsGoronsRuby_DaruniaFalling(DemoDu* this, GlobalContext* globalCtx)
Vec3f* pos = &this->actor.world.pos;
if (npcAction != NULL) {
f32 traveledPercent = func_8006F93C(npcAction->endFrame, npcAction->startFrame, csCtx->frames);
f32 traveledPercent = Environment_LerpWeight(npcAction->endFrame, npcAction->startFrame, csCtx->frames);
startPos.x = npcAction->startPos.x;
startPos.y = npcAction->startPos.y;

View file

@ -128,8 +128,9 @@ void DemoEffect_SetupUpdate(DemoEffect* this, DemoEffectFunc updateFunc) {
* Gives a number on the range of 0.0f - 1.0f representing current cutscene action completion percentage.
*/
f32 DemoEffect_InterpolateCsFrames(GlobalContext* globalCtx, s32 csActionId) {
f32 interpolated = func_8006F93C(globalCtx->csCtx.npcActions[csActionId]->endFrame,
globalCtx->csCtx.npcActions[csActionId]->startFrame, globalCtx->csCtx.frames);
f32 interpolated =
Environment_LerpWeight(globalCtx->csCtx.npcActions[csActionId]->endFrame,
globalCtx->csCtx.npcActions[csActionId]->startFrame, globalCtx->csCtx.frames);
if (interpolated > 1.0f) {
interpolated = 1.0f;
}

View file

@ -136,7 +136,7 @@ void func_8097CB0C(DemoGo* this, GlobalContext* globalCtx) {
if (globalCtx->csCtx.state != CS_STATE_IDLE) {
npcAction = csCtx->npcActions[func_8097C870(this)];
if (npcAction != NULL) {
temp_ret = func_8006F93C(npcAction->endFrame, npcAction->startFrame, csCtx->frames);
temp_ret = Environment_LerpWeight(npcAction->endFrame, npcAction->startFrame, csCtx->frames);
startPos.x = npcAction->startPos.x;
startPos.y = npcAction->startPos.y;
startPos.z = npcAction->startPos.z;

View file

@ -334,7 +334,8 @@ void func_8097E744(DemoGt* this, GlobalContext* globalCtx, u32 actionIdx) {
f32 someFloat;
if (npcAction != NULL) {
someFloat = func_8006F9BC(npcAction->endFrame, npcAction->startFrame, globalCtx->csCtx.frames, 8, 0);
someFloat =
Environment_LerpWeightAccelDecel(npcAction->endFrame, npcAction->startFrame, globalCtx->csCtx.frames, 8, 0);
startX = npcAction->startPos.x;
startY = npcAction->startPos.y;
startZ = npcAction->startPos.z;
@ -579,7 +580,7 @@ void func_8097F280(DemoGt* this, GlobalContext* globalCtx) {
unk198[0]++;
unk198[1]--;
} else if (globalCtx->csCtx.frames < 170) {
temp_f0 = func_8006F9BC(170, 160, globalCtx->csCtx.frames, 0, 0);
temp_f0 = Environment_LerpWeightAccelDecel(170, 160, globalCtx->csCtx.frames, 0, 0);
unk178[0] = (temp_f0 * -63.0f) + 163.0f;
unk178[1] = (temp_f0 * -155.0f) + 255.0f;
@ -817,7 +818,7 @@ void func_8097FDDC(DemoGt* this, GlobalContext* globalCtx) {
unk198[0]++;
unk198[1]--;
} else if (globalCtx->csCtx.frames < 620) {
f32 temp_f0 = func_8006F9BC(620, 610, globalCtx->csCtx.frames, 0, 0);
f32 temp_f0 = Environment_LerpWeightAccelDecel(620, 610, globalCtx->csCtx.frames, 0, 0);
unk178[0] = (temp_f0 * (-13.0f)) + 163.0f;
unk178[1] = (temp_f0 * (-43.0f)) + 193.0f;

View file

@ -305,7 +305,8 @@ void func_80985358(DemoIm* this, GlobalContext* globalCtx) {
f32 posY = this->actor.world.pos.y;
f32 posZ = this->actor.world.pos.z;
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_DOOR_WARP1, posX, posY, posZ, 0, 0, 0, WARP_SAGES);
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_DOOR_WARP1, posX, posY, posZ, 0, 0, 0,
WARP_SAGES);
}
void func_809853B4(DemoIm* this, GlobalContext* globalCtx) {

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