From 80bced5204831599abbd81bc25cfd272b041a64f Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Sun, 22 Mar 2020 17:56:08 -0400 Subject: [PATCH 1/6] Decompiled ovl_Bg_Gate_Shutter --- .../BgGateShutter_Destroy.s | 16 --- .../ovl_Bg_Gate_Shutter/BgGateShutter_Draw.s | 54 ------- .../ovl_Bg_Gate_Shutter/BgGateShutter_Init.s | 74 ---------- .../BgGateShutter_Update.s | 17 --- .../ovl_Bg_Gate_Shutter/func_8087828C.s | 35 ----- .../ovl_Bg_Gate_Shutter/func_80878300.s | 50 ------- .../ovl_Bg_Gate_Shutter/func_808783AC.s | 14 -- .../ovl_Bg_Gate_Shutter/func_808783D4.s | 53 ------- data/overlays/actors/z_bg_gate_shutter.data.s | 16 --- .../overlays/actors/z_bg_gate_shutter.reloc.s | 11 -- .../actors/z_bg_gate_shutter.rodata.s | 35 ----- spec | 4 +- .../ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c | 134 ++++++++++++++++-- .../ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h | 11 +- undefined_syms.txt | 4 + 15 files changed, 134 insertions(+), 394 deletions(-) delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Destroy.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Draw.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Init.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Update.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_8087828C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_80878300.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783AC.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783D4.s delete mode 100644 data/overlays/actors/z_bg_gate_shutter.data.s delete mode 100644 data/overlays/actors/z_bg_gate_shutter.reloc.s delete mode 100644 data/overlays/actors/z_bg_gate_shutter.rodata.s diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Destroy.s deleted file mode 100644 index 6fb3929a19..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Destroy.s +++ /dev/null @@ -1,16 +0,0 @@ -glabel BgGateShutter_Destroy -/* 000FC 8087825C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00100 80878260 AFA40018 */ sw $a0, 0x0018($sp) -/* 00104 80878264 8FAE0018 */ lw $t6, 0x0018($sp) -/* 00108 80878268 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0010C 8087826C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00110 80878270 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810 -/* 00114 80878274 0C00FB56 */ jal DynaPolyInfo_Free - ## DynaPolyInfo_delReserve -/* 00118 80878278 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C -/* 0011C 8087827C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00120 80878280 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00124 80878284 03E00008 */ jr $ra -/* 00128 80878288 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Draw.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Draw.s deleted file mode 100644 index bbc1eb91aa..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Draw.s +++ /dev/null @@ -1,54 +0,0 @@ -glabel BgGateShutter_Draw -/* 00360 808784C0 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0 -/* 00364 808784C4 AFBF001C */ sw $ra, 0x001C($sp) -/* 00368 808784C8 AFB00018 */ sw $s0, 0x0018($sp) -/* 0036C 808784CC AFA40040 */ sw $a0, 0x0040($sp) -/* 00370 808784D0 AFA50044 */ sw $a1, 0x0044($sp) -/* 00374 808784D4 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000 -/* 00378 808784D8 3C068088 */ lui $a2, %hi(D_808785E0) ## $a2 = 80880000 -/* 0037C 808784DC 24C685E0 */ addiu $a2, $a2, %lo(D_808785E0) ## $a2 = 808785E0 -/* 00380 808784E0 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFEC -/* 00384 808784E4 24070143 */ addiu $a3, $zero, 0x0143 ## $a3 = 00000143 -/* 00388 808784E8 0C031AB1 */ jal func_800C6AC4 -/* 0038C 808784EC 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000 -/* 00390 808784F0 8FAF0044 */ lw $t7, 0x0044($sp) -/* 00394 808784F4 0C024F46 */ jal func_80093D18 -/* 00398 808784F8 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000 -/* 0039C 808784FC 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 003A0 80878500 3C19DA38 */ lui $t9, 0xDA38 ## $t9 = DA380000 -/* 003A4 80878504 37390003 */ ori $t9, $t9, 0x0003 ## $t9 = DA380003 -/* 003A8 80878508 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008 -/* 003AC 8087850C AE1802C0 */ sw $t8, 0x02C0($s0) ## 000002C0 -/* 003B0 80878510 AC590000 */ sw $t9, 0x0000($v0) ## 00000000 -/* 003B4 80878514 8FA80044 */ lw $t0, 0x0044($sp) -/* 003B8 80878518 3C058088 */ lui $a1, %hi(D_808785F8) ## $a1 = 80880000 -/* 003BC 8087851C 24A585F8 */ addiu $a1, $a1, %lo(D_808785F8) ## $a1 = 808785F8 -/* 003C0 80878520 8D040000 */ lw $a0, 0x0000($t0) ## 00000000 -/* 003C4 80878524 24060148 */ addiu $a2, $zero, 0x0148 ## $a2 = 00000148 -/* 003C8 80878528 0C0346A2 */ jal Matrix_NewMtx -/* 003CC 8087852C AFA20028 */ sw $v0, 0x0028($sp) -/* 003D0 80878530 8FA30028 */ lw $v1, 0x0028($sp) -/* 003D4 80878534 3C0B0600 */ lui $t3, 0x0600 ## $t3 = 06000000 -/* 003D8 80878538 256B1CD0 */ addiu $t3, $t3, 0x1CD0 ## $t3 = 06001CD0 -/* 003DC 8087853C AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 003E0 80878540 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 003E4 80878544 3C0ADE00 */ lui $t2, 0xDE00 ## $t2 = DE000000 -/* 003E8 80878548 3C068088 */ lui $a2, %hi(D_80878610) ## $a2 = 80880000 -/* 003EC 8087854C 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008 -/* 003F0 80878550 AE0902C0 */ sw $t1, 0x02C0($s0) ## 000002C0 -/* 003F4 80878554 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004 -/* 003F8 80878558 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000 -/* 003FC 8087855C 8FAC0044 */ lw $t4, 0x0044($sp) -/* 00400 80878560 24C68610 */ addiu $a2, $a2, %lo(D_80878610) ## $a2 = 80878610 -/* 00404 80878564 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFEC -/* 00408 80878568 2407014D */ addiu $a3, $zero, 0x014D ## $a3 = 0000014D -/* 0040C 8087856C 0C031AD5 */ jal func_800C6B54 -/* 00410 80878570 8D850000 */ lw $a1, 0x0000($t4) ## 00000000 -/* 00414 80878574 8FBF001C */ lw $ra, 0x001C($sp) -/* 00418 80878578 8FB00018 */ lw $s0, 0x0018($sp) -/* 0041C 8087857C 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000 -/* 00420 80878580 03E00008 */ jr $ra -/* 00424 80878584 00000000 */ nop -/* 00428 80878588 00000000 */ nop -/* 0042C 8087858C 00000000 */ nop - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Init.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Init.s deleted file mode 100644 index 314c0cf2a9..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Init.s +++ /dev/null @@ -1,74 +0,0 @@ -glabel BgGateShutter_Init -/* 00000 80878160 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00004 80878164 AFBF001C */ sw $ra, 0x001C($sp) -/* 00008 80878168 AFB00018 */ sw $s0, 0x0018($sp) -/* 0000C 8087816C AFA50034 */ sw $a1, 0x0034($sp) -/* 00010 80878170 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00014 80878174 AFA00020 */ sw $zero, 0x0020($sp) -/* 00018 80878178 0C010D20 */ jal DynaPolyInfo_SetActorMove - -/* 0001C 8087817C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 00020 80878180 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000 -/* 00024 80878184 24841DA8 */ addiu $a0, $a0, 0x1DA8 ## $a0 = 06001DA8 -/* 00028 80878188 0C010620 */ jal DynaPolyInfo_Alloc - -/* 0002C 8087818C 27A50020 */ addiu $a1, $sp, 0x0020 ## $a1 = FFFFFFF0 -/* 00030 80878190 8FA40034 */ lw $a0, 0x0034($sp) -/* 00034 80878194 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00038 80878198 8FA70020 */ lw $a3, 0x0020($sp) -/* 0003C 8087819C 0C00FA9D */ jal DynaPolyInfo_RegisterActor - ## DynaPolyInfo_setActor -/* 00040 808781A0 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810 -/* 00044 808781A4 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -/* 00048 808781A8 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028 -/* 0004C 808781AC C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C -/* 00050 808781B0 3C038016 */ lui $v1, 0x8016 ## $v1 = 80160000 -/* 00054 808781B4 2463E660 */ addiu $v1, $v1, 0xE660 ## $v1 = 8015E660 -/* 00058 808781B8 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C -/* 0005C 808781BC E604016C */ swc1 $f4, 0x016C($s0) ## 0000016C -/* 00060 808781C0 E6060170 */ swc1 $f6, 0x0170($s0) ## 00000170 -/* 00064 808781C4 E6080174 */ swc1 $f8, 0x0174($s0) ## 00000174 -/* 00068 808781C8 946E0F06 */ lhu $t6, 0x0F06($v1) ## 8015F566 -/* 0006C 808781CC 8FA80034 */ lw $t0, 0x0034($sp) -/* 00070 808781D0 31CF0040 */ andi $t7, $t6, 0x0040 ## $t7 = 00000000 -/* 00074 808781D4 55E00006 */ bnel $t7, $zero, .L808781F0 -/* 00078 808781D8 850900A4 */ lh $t1, 0x00A4($t0) ## 000000A4 -/* 0007C 808781DC 94780EDC */ lhu $t8, 0x0EDC($v1) ## 8015F53C -/* 00080 808781E0 33190020 */ andi $t9, $t8, 0x0020 ## $t9 = 00000000 -/* 00084 808781E4 5320000B */ beql $t9, $zero, .L80878214 -/* 00088 808781E8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 0008C 808781EC 850900A4 */ lh $t1, 0x00A4($t0) ## 000000A4 -.L808781F0: -/* 00090 808781F0 24010052 */ addiu $at, $zero, 0x0052 ## $at = 00000052 -/* 00094 808781F4 15210006 */ bne $t1, $at, .L80878210 -/* 00098 808781F8 3C01C2B2 */ lui $at, 0xC2B2 ## $at = C2B20000 -/* 0009C 808781FC 44815000 */ mtc1 $at, $f10 ## $f10 = -89.00 -/* 000A0 80878200 3C018088 */ lui $at, %hi(D_80878628) ## $at = 80880000 -/* 000A4 80878204 E60A0024 */ swc1 $f10, 0x0024($s0) ## 00000024 -/* 000A8 80878208 C4308628 */ lwc1 $f16, %lo(D_80878628)($at) -/* 000AC 8087820C E610002C */ swc1 $f16, 0x002C($s0) ## 0000002C -.L80878210: -/* 000B0 80878210 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -.L80878214: -/* 000B4 80878214 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00 -/* 000B8 80878218 3C048088 */ lui $a0, %hi(D_808785B0) ## $a0 = 80880000 -/* 000BC 8087821C 248485B0 */ addiu $a0, $a0, %lo(D_808785B0) ## $a0 = 808785B0 -/* 000C0 80878220 E6000050 */ swc1 $f0, 0x0050($s0) ## 00000050 -/* 000C4 80878224 E6000054 */ swc1 $f0, 0x0054($s0) ## 00000054 -/* 000C8 80878228 0C00084C */ jal osSyncPrintf - -/* 000CC 8087822C E6000058 */ swc1 $f0, 0x0058($s0) ## 00000058 -/* 000D0 80878230 3C048088 */ lui $a0, %hi(D_808785B4) ## $a0 = 80880000 -/* 000D4 80878234 0C00084C */ jal osSyncPrintf - -/* 000D8 80878238 248485B4 */ addiu $a0, $a0, %lo(D_808785B4) ## $a0 = 808785B4 -/* 000DC 8087823C 3C0A8088 */ lui $t2, %hi(func_8087828C) ## $t2 = 80880000 -/* 000E0 80878240 254A828C */ addiu $t2, $t2, %lo(func_8087828C) ## $t2 = 8087828C -/* 000E4 80878244 AE0A0164 */ sw $t2, 0x0164($s0) ## 00000164 -/* 000E8 80878248 8FBF001C */ lw $ra, 0x001C($sp) -/* 000EC 8087824C 8FB00018 */ lw $s0, 0x0018($sp) -/* 000F0 80878250 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 -/* 000F4 80878254 03E00008 */ jr $ra -/* 000F8 80878258 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Update.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Update.s deleted file mode 100644 index 935caa05c2..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Update.s +++ /dev/null @@ -1,17 +0,0 @@ -glabel BgGateShutter_Update -/* 0032C 8087848C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00330 80878490 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00334 80878494 84820178 */ lh $v0, 0x0178($a0) ## 00000178 -/* 00338 80878498 10400002 */ beq $v0, $zero, .L808784A4 -/* 0033C 8087849C 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF -/* 00340 808784A0 A48E0178 */ sh $t6, 0x0178($a0) ## 00000178 -.L808784A4: -/* 00344 808784A4 8C990164 */ lw $t9, 0x0164($a0) ## 00000164 -/* 00348 808784A8 0320F809 */ jalr $ra, $t9 -/* 0034C 808784AC 00000000 */ nop -/* 00350 808784B0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00354 808784B4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00358 808784B8 03E00008 */ jr $ra -/* 0035C 808784BC 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_8087828C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_8087828C.s deleted file mode 100644 index 297619a72e..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_8087828C.s +++ /dev/null @@ -1,35 +0,0 @@ -glabel func_8087828C -/* 0012C 8087828C AFA50004 */ sw $a1, 0x0004($sp) -/* 00130 80878290 84820168 */ lh $v0, 0x0168($a0) ## 00000168 -/* 00134 80878294 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00138 80878298 3C0E8016 */ lui $t6, 0x8016 ## $t6 = 80160000 -/* 0013C 8087829C 1441000B */ bne $v0, $at, .L808782CC -/* 00140 808782A0 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002 -/* 00144 808782A4 95CEF566 */ lhu $t6, -0x0A9A($t6) ## 8015F566 -/* 00148 808782A8 3C188088 */ lui $t8, %hi(func_80878300) ## $t8 = 80880000 -/* 0014C 808782AC 27188300 */ addiu $t8, $t8, %lo(func_80878300) ## $t8 = 80878300 -/* 00150 808782B0 31CF0040 */ andi $t7, $t6, 0x0040 ## $t7 = 00000000 -/* 00154 808782B4 15E00005 */ bne $t7, $zero, .L808782CC -/* 00158 808782B8 00000000 */ nop -/* 0015C 808782BC 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002 -/* 00160 808782C0 A4830178 */ sh $v1, 0x0178($a0) ## 00000178 -/* 00164 808782C4 03E00008 */ jr $ra -/* 00168 808782C8 AC980164 */ sw $t8, 0x0164($a0) ## 00000164 -.L808782CC: -/* 0016C 808782CC 14620005 */ bne $v1, $v0, .L808782E4 -/* 00170 808782D0 3C198088 */ lui $t9, %hi(func_80878300) ## $t9 = 80880000 -/* 00174 808782D4 27398300 */ addiu $t9, $t9, %lo(func_80878300) ## $t9 = 80878300 -/* 00178 808782D8 A4830178 */ sh $v1, 0x0178($a0) ## 00000178 -/* 0017C 808782DC 03E00008 */ jr $ra -/* 00180 808782E0 AC990164 */ sw $t9, 0x0164($a0) ## 00000164 -.L808782E4: -/* 00184 808782E4 04410004 */ bgez $v0, .L808782F8 -/* 00188 808782E8 3C088088 */ lui $t0, %hi(func_808783D4) ## $t0 = 80880000 -/* 0018C 808782EC 250883D4 */ addiu $t0, $t0, %lo(func_808783D4) ## $t0 = 808783D4 -/* 00190 808782F0 A4830178 */ sh $v1, 0x0178($a0) ## 00000178 -/* 00194 808782F4 AC880164 */ sw $t0, 0x0164($a0) ## 00000164 -.L808782F8: -/* 00198 808782F8 03E00008 */ jr $ra -/* 0019C 808782FC 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_80878300.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_80878300.s deleted file mode 100644 index dcc9629abf..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_80878300.s +++ /dev/null @@ -1,50 +0,0 @@ -glabel func_80878300 -/* 001A0 80878300 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 001A4 80878304 AFBF001C */ sw $ra, 0x001C($sp) -/* 001A8 80878308 AFB00018 */ sw $s0, 0x0018($sp) -/* 001AC 8087830C AFA50024 */ sw $a1, 0x0024($sp) -/* 001B0 80878310 848E0178 */ lh $t6, 0x0178($a0) ## 00000178 -/* 001B4 80878314 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 001B8 80878318 55C00020 */ bnel $t6, $zero, .L8087839C -/* 001BC 8087831C 8FBF001C */ lw $ra, 0x001C($sp) -/* 001C0 80878320 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 001C4 80878324 24052067 */ addiu $a1, $zero, 0x2067 ## $a1 = 00002067 -/* 001C8 80878328 3C014000 */ lui $at, 0x4000 ## $at = 40000000 -/* 001CC 8087832C 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00 -/* 001D0 80878330 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -/* 001D4 80878334 3C05C4AB */ lui $a1, 0xC4AB ## $a1 = C4AB0000 -/* 001D8 80878338 3C063F4C */ lui $a2, 0x3F4C ## $a2 = 3F4C0000 -/* 001DC 8087833C 46062201 */ sub.s $f8, $f4, $f6 -/* 001E0 80878340 3C073E99 */ lui $a3, 0x3E99 ## $a3 = 3E990000 -/* 001E4 80878344 34E7999A */ ori $a3, $a3, 0x999A ## $a3 = 3E99999A -/* 001E8 80878348 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3F4CCCCD -/* 001EC 8087834C E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024 -/* 001F0 80878350 34A5E000 */ ori $a1, $a1, 0xE000 ## $a1 = C4ABE000 -/* 001F4 80878354 0C01E107 */ jal Math_SmoothScaleMaxF - -/* 001F8 80878358 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C -/* 001FC 8087835C 3C01C2B2 */ lui $at, 0xC2B2 ## $at = C2B20000 -/* 00200 80878360 44818000 */ mtc1 $at, $f16 ## $f16 = -89.00 -/* 00204 80878364 C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024 -/* 00208 80878368 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0020C 8087836C 4610503C */ c.lt.s $f10, $f16 -/* 00210 80878370 00000000 */ nop -/* 00214 80878374 45020009 */ bc1fl .L8087839C -/* 00218 80878378 8FBF001C */ lw $ra, 0x001C($sp) -/* 0021C 8087837C 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00220 80878380 2405280E */ addiu $a1, $zero, 0x280E ## $a1 = 0000280E -/* 00224 80878384 3C188088 */ lui $t8, %hi(func_808783AC) ## $t8 = 80880000 -/* 00228 80878388 240F001E */ addiu $t7, $zero, 0x001E ## $t7 = 0000001E -/* 0022C 8087838C 271883AC */ addiu $t8, $t8, %lo(func_808783AC) ## $t8 = 808783AC -/* 00230 80878390 A60F0178 */ sh $t7, 0x0178($s0) ## 00000178 -/* 00234 80878394 AE180164 */ sw $t8, 0x0164($s0) ## 00000164 -/* 00238 80878398 8FBF001C */ lw $ra, 0x001C($sp) -.L8087839C: -/* 0023C 8087839C 8FB00018 */ lw $s0, 0x0018($sp) -/* 00240 808783A0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00244 808783A4 03E00008 */ jr $ra -/* 00248 808783A8 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783AC.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783AC.s deleted file mode 100644 index 375c43f2dd..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783AC.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel func_808783AC -/* 0024C 808783AC AFA50004 */ sw $a1, 0x0004($sp) -/* 00250 808783B0 848E0178 */ lh $t6, 0x0178($a0) ## 00000178 -/* 00254 808783B4 3C0F8088 */ lui $t7, %hi(func_8087828C) ## $t7 = 80880000 -/* 00258 808783B8 25EF828C */ addiu $t7, $t7, %lo(func_8087828C) ## $t7 = 8087828C -/* 0025C 808783BC 15C00003 */ bne $t6, $zero, .L808783CC -/* 00260 808783C0 00000000 */ nop -/* 00264 808783C4 A4800168 */ sh $zero, 0x0168($a0) ## 00000168 -/* 00268 808783C8 AC8F0164 */ sw $t7, 0x0164($a0) ## 00000164 -.L808783CC: -/* 0026C 808783CC 03E00008 */ jr $ra -/* 00270 808783D0 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783D4.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783D4.s deleted file mode 100644 index 838cb21690..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783D4.s +++ /dev/null @@ -1,53 +0,0 @@ -glabel func_808783D4 -/* 00274 808783D4 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00278 808783D8 AFBF001C */ sw $ra, 0x001C($sp) -/* 0027C 808783DC AFB00018 */ sw $s0, 0x0018($sp) -/* 00280 808783E0 AFA50024 */ sw $a1, 0x0024($sp) -/* 00284 808783E4 848E0178 */ lh $t6, 0x0178($a0) ## 00000178 -/* 00288 808783E8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 0028C 808783EC 55C00023 */ bnel $t6, $zero, .L8087847C -/* 00290 808783F0 8FBF001C */ lw $ra, 0x001C($sp) -/* 00294 808783F4 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00298 808783F8 24052067 */ addiu $a1, $zero, 0x2067 ## $a1 = 00002067 -/* 0029C 808783FC 3C014000 */ lui $at, 0x4000 ## $at = 40000000 -/* 002A0 80878400 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00 -/* 002A4 80878404 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -/* 002A8 80878408 3C05C4A8 */ lui $a1, 0xC4A8 ## $a1 = C4A80000 -/* 002AC 8087840C 3C063F4C */ lui $a2, 0x3F4C ## $a2 = 3F4C0000 -/* 002B0 80878410 46062200 */ add.s $f8, $f4, $f6 -/* 002B4 80878414 3C073E99 */ lui $a3, 0x3E99 ## $a3 = 3E990000 -/* 002B8 80878418 34E7999A */ ori $a3, $a3, 0x999A ## $a3 = 3E99999A -/* 002BC 8087841C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3F4CCCCD -/* 002C0 80878420 E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024 -/* 002C4 80878424 34A5C000 */ ori $a1, $a1, 0xC000 ## $a1 = C4A8C000 -/* 002C8 80878428 0C01E107 */ jal Math_SmoothScaleMaxF - -/* 002CC 8087842C 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C -/* 002D0 80878430 3C0142B4 */ lui $at, 0x42B4 ## $at = 42B40000 -/* 002D4 80878434 44815000 */ mtc1 $at, $f10 ## $f10 = 90.00 -/* 002D8 80878438 C6100024 */ lwc1 $f16, 0x0024($s0) ## 00000024 -/* 002DC 8087843C 3C0142B6 */ lui $at, 0x42B6 ## $at = 42B60000 -/* 002E0 80878440 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 002E4 80878444 4610503C */ c.lt.s $f10, $f16 -/* 002E8 80878448 00000000 */ nop -/* 002EC 8087844C 4502000B */ bc1fl .L8087847C -/* 002F0 80878450 8FBF001C */ lw $ra, 0x001C($sp) -/* 002F4 80878454 44819000 */ mtc1 $at, $f18 ## $f18 = 91.00 -/* 002F8 80878458 2405280E */ addiu $a1, $zero, 0x280E ## $a1 = 0000280E -/* 002FC 8087845C 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00300 80878460 E6120024 */ swc1 $f18, 0x0024($s0) ## 00000024 -/* 00304 80878464 3C188088 */ lui $t8, %hi(func_808783AC) ## $t8 = 80880000 -/* 00308 80878468 240F001E */ addiu $t7, $zero, 0x001E ## $t7 = 0000001E -/* 0030C 8087846C 271883AC */ addiu $t8, $t8, %lo(func_808783AC) ## $t8 = 808783AC -/* 00310 80878470 A60F0178 */ sh $t7, 0x0178($s0) ## 00000178 -/* 00314 80878474 AE180164 */ sw $t8, 0x0164($s0) ## 00000164 -/* 00318 80878478 8FBF001C */ lw $ra, 0x001C($sp) -.L8087847C: -/* 0031C 8087847C 8FB00018 */ lw $s0, 0x0018($sp) -/* 00320 80878480 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00324 80878484 03E00008 */ jr $ra -/* 00328 80878488 00000000 */ nop - - diff --git a/data/overlays/actors/z_bg_gate_shutter.data.s b/data/overlays/actors/z_bg_gate_shutter.data.s deleted file mode 100644 index ad3a0bc524..0000000000 --- a/data/overlays/actors/z_bg_gate_shutter.data.s +++ /dev/null @@ -1,16 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purposee registers - -.section .data - -glabel Bg_Gate_Shutter_InitVars - .word 0x01000700, 0x00000000, 0x01810000, 0x0000017C -.word BgGateShutter_Init -.word BgGateShutter_Destroy -.word BgGateShutter_Update -.word BgGateShutter_Draw - diff --git a/data/overlays/actors/z_bg_gate_shutter.reloc.s b/data/overlays/actors/z_bg_gate_shutter.reloc.s deleted file mode 100644 index 791f19b2db..0000000000 --- a/data/overlays/actors/z_bg_gate_shutter.reloc.s +++ /dev/null @@ -1,11 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purposee registers - -.section .rodata -glabel D_80878630 - -.incbin "baserom/ovl_Bg_Gate_Shutter", 0x4D0, 0x00000090 diff --git a/data/overlays/actors/z_bg_gate_shutter.rodata.s b/data/overlays/actors/z_bg_gate_shutter.rodata.s deleted file mode 100644 index dfbe7fefd7..0000000000 --- a/data/overlays/actors/z_bg_gate_shutter.rodata.s +++ /dev/null @@ -1,35 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purposee registers - -.section .rodata - -glabel D_808785B0 - .word 0x0A0A0000 -glabel D_808785B4 - - .asciz " ☆☆☆☆☆ 柵でたなぁ ☆☆☆☆☆ \n" - .balign 4 - -glabel D_808785E0 - - .asciz "../z_bg_gate_shutter.c" - .balign 4 - -glabel D_808785F8 - - .asciz "../z_bg_gate_shutter.c" - .balign 4 - -glabel D_80878610 - - .asciz "../z_bg_gate_shutter.c" - .balign 4 - -glabel D_80878628 - .word 0xC4ABE000, 0x00000000 - - diff --git a/spec b/spec index 7cc90e17c2..1c5e4ba705 100644 --- a/spec +++ b/spec @@ -788,9 +788,7 @@ endseg beginseg name "ovl_Bg_Gate_Shutter" include "build/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.o" - include "build/data/overlays/actors/z_bg_gate_shutter.data.o" - include "build/data/overlays/actors/z_bg_gate_shutter.rodata.o" - include "build/data/overlays/actors/z_bg_gate_shutter.reloc.o" + include "build/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter_reloc.o" endseg beginseg diff --git a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c index baa83eb800..89d663788e 100644 --- a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c +++ b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c @@ -1,14 +1,26 @@ +/* + * File: z_bg_gate_shutter.c + * Overlay: Bg_Gate_Shutter + * Description: +*/ + #include "z_bg_gate_shutter.h" +#include + #define ROOM 0x00 #define FLAGS 0x00000000 -void BgGateShutter_Init(BgGateShutter* this, GlobalContext* globalCtx); -void BgGateShutter_Destroy(BgGateShutter* this, GlobalContext* globalCtx); -void BgGateShutter_Update(BgGateShutter* this, GlobalContext* globalCtx); -void BgGateShutter_Draw(BgGateShutter* this, GlobalContext* globalCtx); +static void BgGateShutter_Init(BgGateShutter* this, GlobalContext* globalCtx); +static void BgGateShutter_Destroy(BgGateShutter* this, GlobalContext* globalCtx); +static void BgGateShutter_Update(BgGateShutter* this, GlobalContext* globalCtx); +static void BgGateShutter_Draw(BgGateShutter* this, GlobalContext* globalCtx); + +static void func_8087828C(BgGateShutter* this, GlobalContext* globalCtx); +static void func_80878300(BgGateShutter* this, GlobalContext* globalCtx); +static void func_808783AC(BgGateShutter* this, GlobalContext* globalCtx); +static void func_808783D4(BgGateShutter* this, GlobalContext* globalCtx); -/* const ActorInit Bg_Gate_Shutter_InitVars = { ACTOR_BG_GATE_SHUTTER, @@ -22,19 +34,113 @@ const ActorInit Bg_Gate_Shutter_InitVars = (ActorFunc)BgGateShutter_Update, (ActorFunc)BgGateShutter_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Init.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Destroy.s") +extern UNK_PTR D_06001CD0; +extern UNK_PTR D_06001DA8; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_8087828C.s") +static void BgGateShutter_Init(BgGateShutter* this, GlobalContext* globalCtx) { + s32 pad[2]; + Actor* thisx = &this->dyna.actor; + s32 local_c = 0; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_80878300.s") + DynaPolyInfo_SetActorMove(thisx, 0); + DynaPolyInfo_Alloc(&D_06001DA8, &local_c); + this->dyna.dynaPolyId = DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, thisx, local_c); + this->somePosX = thisx->posRot.pos.x; + this->somePosY = thisx->posRot.pos.y; + this->somePosZ = thisx->posRot.pos.z; + if ((gSaveContext.inf_table[7] & 0x40) || (gSaveContext.event_chk_inf[4] & 0x20)) { + if (globalCtx->sceneNum == SCENE_SPOT01) { + thisx->posRot.pos.x = -89.0f; + thisx->posRot.pos.z = -1375.0f; + } + } + thisx->scale.x = 1.0f; + thisx->scale.y = 1.0f; + thisx->scale.z = 1.0f; + osSyncPrintf("\n\n"); + osSyncPrintf(VT_FGCOL(GREEN) " ☆☆☆☆☆ 柵でたなぁ ☆☆☆☆☆ \n" VT_RST); + this->actionFunc = (ActorFunc)func_8087828C; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783AC.s") +static void BgGateShutter_Destroy(BgGateShutter* this, GlobalContext* globalCtx) { + DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/func_808783D4.s") +static void func_8087828C(BgGateShutter* this, GlobalContext* globalCtx) { + if (this->unk_168 == 1) { + if (!(gSaveContext.inf_table[7] & 0x40)) { + this->unk_178 = 2; + this->actionFunc = (ActorFunc)func_80878300; + return; + } + } + if (this->unk_168 == 2) { + this->unk_178 = 2; + this->actionFunc = (ActorFunc)func_80878300; + return; + } + if (this->unk_168 < 0) { + this->unk_178 = 2; + this->actionFunc = (ActorFunc)func_808783D4; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Update.s") +static void func_80878300(BgGateShutter* this, GlobalContext* globalCtx) { + Actor* thisx = &this->dyna.actor; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gate_Shutter/BgGateShutter_Draw.s") + if (this->unk_178 == 0) { + Audio_PlayActorSound2(thisx, 0x2067); + thisx->posRot.pos.x -= 2.0f; + Math_SmoothScaleMaxF(&thisx->posRot.pos.z, -1375.0f, 0.8f, 0.3f); + if (thisx->posRot.pos.x < -89.0f) { + Audio_PlayActorSound2(thisx, NA_SE_EV_BRIDGE_OPEN_STOP); + this->unk_178 = 0x1E; + this->actionFunc = (ActorFunc)func_808783AC; + } + } +} + +static void func_808783AC(BgGateShutter* this, GlobalContext* globalCtx) { + if (this->unk_178 == 0) { + this->unk_168 = 0; + this->actionFunc = (ActorFunc)func_8087828C; + } +} + +static void func_808783D4(BgGateShutter* this, GlobalContext* globalCtx) { + Actor* thisx = &this->dyna.actor; + + if (this->unk_178 == 0) { + Audio_PlayActorSound2(thisx, 0x2067); + thisx->posRot.pos.x += 2.0f; + Math_SmoothScaleMaxF(&thisx->posRot.pos.z, -1350.0f, 0.8f, 0.3f); + if (thisx->posRot.pos.x > 90.0f) { + thisx->posRot.pos.x = 91.0f; + Audio_PlayActorSound2(thisx, NA_SE_EV_BRIDGE_OPEN_STOP); + this->unk_178 = 30; + this->actionFunc = (ActorFunc)func_808783AC; + } + } +} + +static void BgGateShutter_Update(BgGateShutter* this, GlobalContext* globalCtx) { + if (this->unk_178 != 0) { + this->unk_178 -= 1; + } + this->actionFunc(this, globalCtx); +} + +static void BgGateShutter_Draw(BgGateShutter* this, GlobalContext* globalCtx) { + GraphicsContext* gfxCtx = globalCtx->state.gfxCtx; + Gfx* gfxArr[4]; + + func_800C6AC4(gfxArr, globalCtx->state.gfxCtx, "../z_bg_gate_shutter.c", 323); + func_80093D18(globalCtx->state.gfxCtx); + + gSPMatrix(gfxCtx->polyOpa.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_gate_shutter.c", 328), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(gfxCtx->polyOpa.p++, &D_06001CD0); + + func_800C6B54(gfxArr, globalCtx->state.gfxCtx, "../z_bg_gate_shutter.c", 333); +} diff --git a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h index 0ba1fccc8b..a567112cfc 100644 --- a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h +++ b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h @@ -6,8 +6,15 @@ typedef struct { - /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x30]; + /* 0x0000 */ DynaPolyActor dyna; + /* 0x0164 */ ActorFunc actionFunc; + /* 0x0168 */ s16 unk_168; + /* 0x016A */ char unk_16A[0x2]; + /* 0x016C */ f32 somePosX; + /* 0x0170 */ f32 somePosY; + /* 0x0174 */ f32 somePosZ; + /* 0x0178 */ s16 unk_178; + /* 0x017A */ char unk_17A[0x2]; } BgGateShutter; // size = 0x017C extern const ActorInit Bg_Gate_Shutter_InitVars; diff --git a/undefined_syms.txt b/undefined_syms.txt index 1e6763936b..b55bcdce50 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -239,6 +239,10 @@ D_06000B70 = 0x06000B70; // z_effect_ss_extra D_06000DC0 = 0x06000DC0; +// z_bg_gate_shutter +D_06001CD0 = 0x06001CD0; +D_06001DA8 = 0x06001DA8; + // z_bg_gjyo_bridge D_06000600 = 0x06000600; D_06000DB8 = 0x06000DB8; From 0f7cc04f430f0b98b98e51de08a94f2c326ba36e Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Sun, 22 Mar 2020 17:57:28 -0400 Subject: [PATCH 2/6] Removed header padding --- src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h index a567112cfc..25275bb107 100644 --- a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h +++ b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h @@ -9,12 +9,10 @@ typedef struct /* 0x0000 */ DynaPolyActor dyna; /* 0x0164 */ ActorFunc actionFunc; /* 0x0168 */ s16 unk_168; - /* 0x016A */ char unk_16A[0x2]; /* 0x016C */ f32 somePosX; /* 0x0170 */ f32 somePosY; /* 0x0174 */ f32 somePosZ; /* 0x0178 */ s16 unk_178; - /* 0x017A */ char unk_17A[0x2]; } BgGateShutter; // size = 0x017C extern const ActorInit Bg_Gate_Shutter_InitVars; From 6b84b3e2b220a87e5568e9023fce06755e11e6ed Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Sun, 22 Mar 2020 19:28:20 -0400 Subject: [PATCH 3/6] +x on format.sh, header brace fix --- format.sh | 0 src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h | 3 +-- 2 files changed, 1 insertion(+), 2 deletions(-) mode change 100644 => 100755 format.sh diff --git a/format.sh b/format.sh old mode 100644 new mode 100755 diff --git a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h index 25275bb107..84c3afb408 100644 --- a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h +++ b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h @@ -4,8 +4,7 @@ #include #include -typedef struct -{ +typedef struct { /* 0x0000 */ DynaPolyActor dyna; /* 0x0164 */ ActorFunc actionFunc; /* 0x0168 */ s16 unk_168; From 9408bc077009aec22f444937045641cf5a046fa7 Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Sun, 22 Mar 2020 19:32:28 -0400 Subject: [PATCH 4/6] clang-format --- .../actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c index 2e22057aab..9e5f5f585c 100644 --- a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c +++ b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c @@ -2,7 +2,7 @@ * File: z_bg_gate_shutter.c * Overlay: Bg_Gate_Shutter * Description: -*/ + */ #include "z_bg_gate_shutter.h" @@ -21,8 +21,7 @@ static void func_80878300(BgGateShutter* this, GlobalContext* globalCtx); static void func_808783AC(BgGateShutter* this, GlobalContext* globalCtx); static void func_808783D4(BgGateShutter* this, GlobalContext* globalCtx); -const ActorInit Bg_Gate_Shutter_InitVars = -{ +const ActorInit Bg_Gate_Shutter_InitVars = { ACTOR_BG_GATE_SHUTTER, ACTORTYPE_ITEMACTION, ROOM, @@ -141,6 +140,6 @@ static void BgGateShutter_Draw(BgGateShutter* this, GlobalContext* globalCtx) { gSPMatrix(gfxCtx->polyOpa.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_gate_shutter.c", 328), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPDisplayList(gfxCtx->polyOpa.p++, &D_06001CD0); - + func_800C6B54(gfxArr, globalCtx->state.gfxCtx, "../z_bg_gate_shutter.c", 333); } From 5f3db569f9420e034da3a6da9fd1eaf011e31f22 Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Sun, 22 Mar 2020 20:39:12 -0400 Subject: [PATCH 5/6] else if --- .../ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c index 9e5f5f585c..109f159e0c 100644 --- a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c +++ b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c @@ -67,19 +67,15 @@ static void BgGateShutter_Destroy(BgGateShutter* this, GlobalContext* globalCtx) } static void func_8087828C(BgGateShutter* this, GlobalContext* globalCtx) { - if (this->unk_168 == 1) { - if (!(gSaveContext.inf_table[7] & 0x40)) { - this->unk_178 = 2; - this->actionFunc = (ActorFunc)func_80878300; - return; - } - } - if (this->unk_168 == 2) { + if (this->unk_168 == 1 && !(gSaveContext.inf_table[7] & 0x40)) { this->unk_178 = 2; this->actionFunc = (ActorFunc)func_80878300; - return; } - if (this->unk_168 < 0) { + else if (this->unk_168 == 2) { + this->unk_178 = 2; + this->actionFunc = (ActorFunc)func_80878300; + } + else if (this->unk_168 < 0) { this->unk_178 = 2; this->actionFunc = (ActorFunc)func_808783D4; } From 1876dc0c5c5bafebee6b49feee0ce097ad7f4345 Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Sun, 22 Mar 2020 21:05:09 -0400 Subject: [PATCH 6/6] UNK_PTR->UNK_TYPE --- src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c index 109f159e0c..4d0e42b6aa 100644 --- a/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c +++ b/src/overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.c @@ -34,8 +34,8 @@ const ActorInit Bg_Gate_Shutter_InitVars = { (ActorFunc)BgGateShutter_Draw, }; -extern UNK_PTR D_06001CD0; -extern UNK_PTR D_06001DA8; +extern UNK_TYPE D_06001CD0; +extern UNK_TYPE D_06001DA8; static void BgGateShutter_Init(BgGateShutter* this, GlobalContext* globalCtx) { s32 pad[2];