From 5f61c105b49cf9ee653b8eec2a29514412d6e9ff Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Sun, 21 Jun 2020 17:50:01 -0400 Subject: [PATCH] Decompiled ovl_Bg_Spot01_Idohashira (1 non-matching) (#213) * Almost done * one non-matching * PR suggestions * Further suggestions * minor correction --- .../BgSpot01Idohashira_Destroy.s | 14 - .../BgSpot01Idohashira_Draw.s | 37 -- .../BgSpot01Idohashira_Init.s | 87 ----- .../BgSpot01Idohashira_Update.s | 34 -- .../ovl_Bg_Spot01_Idohashira/func_808AACE0.s | 10 - .../ovl_Bg_Spot01_Idohashira/func_808AAD04.s | 16 - .../ovl_Bg_Spot01_Idohashira/func_808AAD3C.s | 77 ---- .../ovl_Bg_Spot01_Idohashira/func_808AAE6C.s | 51 --- .../ovl_Bg_Spot01_Idohashira/func_808AAF34.s | 122 ------- .../ovl_Bg_Spot01_Idohashira/func_808AB124.s | 10 - .../ovl_Bg_Spot01_Idohashira/func_808AB144.s | 20 -- .../ovl_Bg_Spot01_Idohashira/func_808AB18C.s | 21 -- .../ovl_Bg_Spot01_Idohashira/func_808AB1DC.s | 58 --- .../ovl_Bg_Spot01_Idohashira/func_808AB29C.s | 92 ----- .../ovl_Bg_Spot01_Idohashira/func_808AB3E8.s | 5 - .../ovl_Bg_Spot01_Idohashira/func_808AB3F8.s | 8 - .../ovl_Bg_Spot01_Idohashira/func_808AB414.s | 13 - .../ovl_Bg_Spot01_Idohashira/func_808AB444.s | 63 ---- .../ovl_Bg_Spot01_Idohashira/func_808AB504.s | 4 - .../ovl_Bg_Spot01_Idohashira/func_808AB510.s | 9 - .../ovl_Bg_Spot01_Idohashira/func_808AB530.s | 18 - .../ovl_Bg_Spot01_Idohashira/func_808AB570.s | 9 - .../actors/z_bg_spot01_idohashira.data.s | 28 -- spec | 1 - .../z_bg_spot01_idohashira.c | 331 ++++++++++++++++-- .../z_bg_spot01_idohashira.h | 10 +- undefined_syms.txt | 4 + 27 files changed, 319 insertions(+), 833 deletions(-) delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Destroy.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Draw.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Init.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Update.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AACE0.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD04.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD3C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAE6C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAF34.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB124.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB144.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB18C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB1DC.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB29C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3E8.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3F8.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB414.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB444.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB504.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB510.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB530.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB570.s delete mode 100644 data/overlays/actors/z_bg_spot01_idohashira.data.s diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Destroy.s deleted file mode 100644 index 2a682bcddf..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Destroy.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel BgSpot01Idohashira_Destroy -/* 00414 808AB0F4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00418 808AB0F8 AFA40018 */ sw $a0, 0x0018($sp) -/* 0041C 808AB0FC 8FAE0018 */ lw $t6, 0x0018($sp) -/* 00420 808AB100 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00424 808AB104 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00428 808AB108 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810 -/* 0042C 808AB10C 0C00FB56 */ jal DynaPolyInfo_Free - ## DynaPolyInfo_delReserve -/* 00430 808AB110 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C -/* 00434 808AB114 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00438 808AB118 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0043C 808AB11C 03E00008 */ jr $ra -/* 00440 808AB120 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Draw.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Draw.s deleted file mode 100644 index 17f3f7bc7c..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Draw.s +++ /dev/null @@ -1,37 +0,0 @@ -.rdata -glabel D_808AB98C - .asciz "描画モードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n" - .balign 4 - -.text -glabel BgSpot01Idohashira_Draw -/* 00AE8 808AB7C8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00AEC 808AB7CC AFBF0014 */ sw $ra, 0x0014($sp) -/* 00AF0 808AB7D0 8C820168 */ lw $v0, 0x0168($a0) ## 00000168 -/* 00AF4 808AB7D4 04400008 */ bltz $v0, .L808AB7F8 -/* 00AF8 808AB7D8 00000000 */ nop -/* 00AFC 808AB7DC 1C400006 */ bgtz $v0, .L808AB7F8 -/* 00B00 808AB7E0 00027080 */ sll $t6, $v0, 2 -/* 00B04 808AB7E4 3C03808B */ lui $v1, %hi(D_808AB844) ## $v1 = 808B0000 -/* 00B08 808AB7E8 006E1821 */ addu $v1, $v1, $t6 -/* 00B0C 808AB7EC 8C63B844 */ lw $v1, %lo(D_808AB844)($v1) -/* 00B10 808AB7F0 14600006 */ bne $v1, $zero, .L808AB80C -/* 00B14 808AB7F4 00000000 */ nop -.L808AB7F8: -/* 00B18 808AB7F8 3C04808B */ lui $a0, %hi(D_808AB98C) ## $a0 = 808B0000 -/* 00B1C 808AB7FC 0C00084C */ jal osSyncPrintf - -/* 00B20 808AB800 2484B98C */ addiu $a0, $a0, %lo(D_808AB98C) ## $a0 = 808AB98C -/* 00B24 808AB804 10000004 */ beq $zero, $zero, .L808AB818 -/* 00B28 808AB808 8FBF0014 */ lw $ra, 0x0014($sp) -.L808AB80C: -/* 00B2C 808AB80C 0060F809 */ jalr $ra, $v1 -/* 00B30 808AB810 00000000 */ nop -/* 00B34 808AB814 8FBF0014 */ lw $ra, 0x0014($sp) -.L808AB818: -/* 00B38 808AB818 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00B3C 808AB81C 03E00008 */ jr $ra -/* 00B40 808AB820 00000000 */ nop -/* 00B44 808AB824 00000000 */ nop -/* 00B48 808AB828 00000000 */ nop -/* 00B4C 808AB82C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Init.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Init.s deleted file mode 100644 index ffe13882f1..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Init.s +++ /dev/null @@ -1,87 +0,0 @@ -.late_rodata -glabel D_808AB9D0 - .float 1100.0 - -.text -glabel BgSpot01Idohashira_Init -/* 0090C 808AB5EC 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8 -/* 00910 808AB5F0 AFA5003C */ sw $a1, 0x003C($sp) -/* 00914 808AB5F4 AFBF001C */ sw $ra, 0x001C($sp) -/* 00918 808AB5F8 AFB00018 */ sw $s0, 0x0018($sp) -/* 0091C 808AB5FC 3C05808B */ lui $a1, %hi(D_808AB840) ## $a1 = 808B0000 -/* 00920 808AB600 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00924 808AB604 0C01E037 */ jal Actor_ProcessInitChain - -/* 00928 808AB608 24A5B840 */ addiu $a1, $a1, %lo(D_808AB840) ## $a1 = 808AB840 -/* 0092C 808AB60C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00930 808AB610 0C010D20 */ jal DynaPolyInfo_SetActorMove - -/* 00934 808AB614 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 00938 808AB618 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000 -/* 0093C 808AB61C AFA00028 */ sw $zero, 0x0028($sp) -/* 00940 808AB620 2484075C */ addiu $a0, $a0, 0x075C ## $a0 = 0600075C -/* 00944 808AB624 0C010620 */ jal DynaPolyInfo_Alloc - -/* 00948 808AB628 27A50028 */ addiu $a1, $sp, 0x0028 ## $a1 = FFFFFFF0 -/* 0094C 808AB62C 8FA4003C */ lw $a0, 0x003C($sp) -/* 00950 808AB630 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00954 808AB634 8FA70028 */ lw $a3, 0x0028($sp) -/* 00958 808AB638 0C00FA9D */ jal DynaPolyInfo_RegisterActor - ## DynaPolyInfo_setActor -/* 0095C 808AB63C 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810 -/* 00960 808AB640 3C048016 */ lui $a0, %hi(gSaveContext) -/* 00964 808AB644 2484E660 */ addiu $a0, %lo(gSaveContext) -/* 00968 808AB648 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C -/* 0096C 808AB64C 8C831360 */ lw $v1, 0x1360($a0) ## 8015F9C0 -/* 00970 808AB650 28610004 */ slti $at, $v1, 0x0004 -/* 00974 808AB654 5020000F */ beql $at, $zero, .L808AB694 -/* 00978 808AB658 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004 -/* 0097C 808AB65C 948E0EDE */ lhu $t6, 0x0EDE($a0) ## 8015F53E -/* 00980 808AB660 31CF0010 */ andi $t7, $t6, 0x0010 ## $t7 = 00000000 -/* 00984 808AB664 11E00008 */ beq $t7, $zero, .L808AB688 -/* 00988 808AB668 00000000 */ nop -/* 0098C 808AB66C 8C980004 */ lw $t8, 0x0004($a0) ## 8015E664 -/* 00990 808AB670 17000005 */ bne $t8, $zero, .L808AB688 -/* 00994 808AB674 00000000 */ nop -/* 00998 808AB678 0C00B55C */ jal Actor_Kill - -/* 0099C 808AB67C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 009A0 808AB680 1000001B */ beq $zero, $zero, .L808AB6F0 -/* 009A4 808AB684 8FBF001C */ lw $ra, 0x001C($sp) -.L808AB688: -/* 009A8 808AB688 10000018 */ beq $zero, $zero, .L808AB6EC -/* 009AC 808AB68C AE000164 */ sw $zero, 0x0164($s0) ## 00000164 -/* 009B0 808AB690 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004 -.L808AB694: -/* 009B4 808AB694 1461000E */ bne $v1, $at, .L808AB6D0 -/* 009B8 808AB698 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001 -/* 009BC 808AB69C AE190164 */ sw $t9, 0x0164($s0) ## 00000164 -/* 009C0 808AB6A0 3C088016 */ lui $t0, %hi(gGameInfo) -/* 009C4 808AB6A4 8D08FA90 */ lw $t0, %lo(gGameInfo)($t0) -/* 009C8 808AB6A8 3C01808B */ lui $at, %hi(D_808AB9D0) ## $at = 808B0000 -/* 009CC 808AB6AC C428B9D0 */ lwc1 $f8, %lo(D_808AB9D0)($at) -/* 009D0 808AB6B0 85091468 */ lh $t1, 0x1468($t0) ## 80161468 -/* 009D4 808AB6B4 44892000 */ mtc1 $t1, $f4 ## $f4 = 0.00 -/* 009D8 808AB6B8 00000000 */ nop -/* 009DC 808AB6BC 468021A0 */ cvt.s.w $f6, $f4 -/* 009E0 808AB6C0 46083280 */ add.s $f10, $f6, $f8 -/* 009E4 808AB6C4 46005407 */ neg.s $f16, $f10 -/* 009E8 808AB6C8 10000008 */ beq $zero, $zero, .L808AB6EC -/* 009EC 808AB6CC E61000BC */ swc1 $f16, 0x00BC($s0) ## 000000BC -.L808AB6D0: -/* 009F0 808AB6D0 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006 -/* 009F4 808AB6D4 14610003 */ bne $v1, $at, .L808AB6E4 -/* 009F8 808AB6D8 00000000 */ nop -/* 009FC 808AB6DC 10000003 */ beq $zero, $zero, .L808AB6EC -/* 00A00 808AB6E0 AE000164 */ sw $zero, 0x0164($s0) ## 00000164 -.L808AB6E4: -/* 00A04 808AB6E4 0C00B55C */ jal Actor_Kill - -/* 00A08 808AB6E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L808AB6EC: -/* 00A0C 808AB6EC 8FBF001C */ lw $ra, 0x001C($sp) -.L808AB6F0: -/* 00A10 808AB6F0 8FB00018 */ lw $s0, 0x0018($sp) -/* 00A14 808AB6F4 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000 -/* 00A18 808AB6F8 03E00008 */ jr $ra -/* 00A1C 808AB6FC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Update.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Update.s deleted file mode 100644 index 9cc5595fae..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Update.s +++ /dev/null @@ -1,34 +0,0 @@ -.rdata -glabel D_808AB8FC - .asciz "メインモードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n" - .balign 4 - -.text -glabel BgSpot01Idohashira_Update -/* 008B0 808AB590 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 008B4 808AB594 AFBF0014 */ sw $ra, 0x0014($sp) -/* 008B8 808AB598 8C820164 */ lw $v0, 0x0164($a0) ## 00000164 -/* 008BC 808AB59C 04400008 */ bltz $v0, .L808AB5C0 -/* 008C0 808AB5A0 28410004 */ slti $at, $v0, 0x0004 -/* 008C4 808AB5A4 10200006 */ beq $at, $zero, .L808AB5C0 -/* 008C8 808AB5A8 00027080 */ sll $t6, $v0, 2 -/* 008CC 808AB5AC 3C03808B */ lui $v1, %hi(D_808AB830) ## $v1 = 808B0000 -/* 008D0 808AB5B0 006E1821 */ addu $v1, $v1, $t6 -/* 008D4 808AB5B4 8C63B830 */ lw $v1, %lo(D_808AB830)($v1) -/* 008D8 808AB5B8 14600006 */ bne $v1, $zero, .L808AB5D4 -/* 008DC 808AB5BC 00000000 */ nop -.L808AB5C0: -/* 008E0 808AB5C0 3C04808B */ lui $a0, %hi(D_808AB8FC) ## $a0 = 808B0000 -/* 008E4 808AB5C4 0C00084C */ jal osSyncPrintf - -/* 008E8 808AB5C8 2484B8FC */ addiu $a0, $a0, %lo(D_808AB8FC) ## $a0 = 808AB8FC -/* 008EC 808AB5CC 10000004 */ beq $zero, $zero, .L808AB5E0 -/* 008F0 808AB5D0 8FBF0014 */ lw $ra, 0x0014($sp) -.L808AB5D4: -/* 008F4 808AB5D4 0060F809 */ jalr $ra, $v1 -/* 008F8 808AB5D8 00000000 */ nop -/* 008FC 808AB5DC 8FBF0014 */ lw $ra, 0x0014($sp) -.L808AB5E0: -/* 00900 808AB5E0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00904 808AB5E4 03E00008 */ jr $ra -/* 00908 808AB5E8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AACE0.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AACE0.s deleted file mode 100644 index 4ad40973ff..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AACE0.s +++ /dev/null @@ -1,10 +0,0 @@ -glabel func_808AACE0 -/* 00000 808AACE0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00004 808AACE4 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00008 808AACE8 248400E4 */ addiu $a0, $a0, 0x00E4 ## $a0 = 000000E4 -/* 0000C 808AACEC 0C01E245 */ jal func_80078914 -/* 00010 808AACF0 24052839 */ addiu $a1, $zero, 0x2839 ## $a1 = 00002839 -/* 00014 808AACF4 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00018 808AACF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0001C 808AACFC 03E00008 */ jr $ra -/* 00020 808AAD00 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD04.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD04.s deleted file mode 100644 index 7c05fc9868..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD04.s +++ /dev/null @@ -1,16 +0,0 @@ -glabel func_808AAD04 -/* 00024 808AAD04 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00028 808AAD08 AFA40018 */ sw $a0, 0x0018($sp) -/* 0002C 808AAD0C AFA5001C */ sw $a1, 0x001C($sp) -/* 00030 808AAD10 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00034 808AAD14 8FA50018 */ lw $a1, 0x0018($sp) -/* 00038 808AAD18 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0003C 808AAD1C 2406003C */ addiu $a2, $zero, 0x003C ## $a2 = 0000003C -/* 00040 808AAD20 240728AA */ addiu $a3, $zero, 0x28AA ## $a3 = 000028AA -/* 00044 808AAD24 0C01AEB6 */ jal Audio_PlaySoundAtPosition - -/* 00048 808AAD28 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024 -/* 0004C 808AAD2C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00050 808AAD30 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00054 808AAD34 03E00008 */ jr $ra -/* 00058 808AAD38 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD3C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD3C.s deleted file mode 100644 index fd91282fd1..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD3C.s +++ /dev/null @@ -1,77 +0,0 @@ -glabel func_808AAD3C -/* 0005C 808AAD3C 27BDFB18 */ addiu $sp, $sp, 0xFB18 ## $sp = FFFFFB18 -/* 00060 808AAD40 AFBF001C */ sw $ra, 0x001C($sp) -/* 00064 808AAD44 AFA504EC */ sw $a1, 0x04EC($sp) -/* 00068 808AAD48 AFA604F0 */ sw $a2, 0x04F0($sp) -/* 0006C 808AAD4C C4A40000 */ lwc1 $f4, 0x0000($a1) ## 00000000 -/* 00070 808AAD50 3C014100 */ lui $at, 0x4100 ## $at = 41000000 -/* 00074 808AAD54 240C00FF */ addiu $t4, $zero, 0x00FF ## $t4 = 000000FF -/* 00078 808AAD58 4600218D */ trunc.w.s $f6, $f4 -/* 0007C 808AAD5C 44812000 */ mtc1 $at, $f4 ## $f4 = 8.00 -/* 00080 808AAD60 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000 -/* 00084 808AAD64 240D00FF */ addiu $t5, $zero, 0x00FF ## $t5 = 000000FF -/* 00088 808AAD68 44183000 */ mfc1 $t8, $f6 -/* 0008C 808AAD6C 44813000 */ mtc1 $at, $f6 ## $f6 = -1.00 -/* 00090 808AAD70 240F00FF */ addiu $t7, $zero, 0x00FF ## $t7 = 000000FF -/* 00094 808AAD74 A7B80024 */ sh $t8, 0x0024($sp) -/* 00098 808AAD78 C4A80004 */ lwc1 $f8, 0x0004($a1) ## 00000004 -/* 0009C 808AAD7C 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF -/* 000A0 808AAD80 24190020 */ addiu $t9, $zero, 0x0020 ## $t9 = 00000020 -/* 000A4 808AAD84 4600428D */ trunc.w.s $f10, $f8 -/* 000A8 808AAD88 27AE0024 */ addiu $t6, $sp, 0x0024 ## $t6 = FFFFFB3C -/* 000AC 808AAD8C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 000B0 808AAD90 44085000 */ mfc1 $t0, $f10 -/* 000B4 808AAD94 00000000 */ nop -/* 000B8 808AAD98 A7A80026 */ sh $t0, 0x0026($sp) -/* 000BC 808AAD9C C4B00008 */ lwc1 $f16, 0x0008($a1) ## 00000008 -/* 000C0 808AADA0 AFA604B8 */ sw $a2, 0x04B8($sp) -/* 000C4 808AADA4 AFA604BC */ sw $a2, 0x04BC($sp) -/* 000C8 808AADA8 4600848D */ trunc.w.s $f18, $f16 -/* 000CC 808AADAC 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 -/* 000D0 808AADB0 A3A004C0 */ sb $zero, 0x04C0($sp) -/* 000D4 808AADB4 A3A004C1 */ sb $zero, 0x04C1($sp) -/* 000D8 808AADB8 440A9000 */ mfc1 $t2, $f18 -/* 000DC 808AADBC A3A004C2 */ sb $zero, 0x04C2($sp) -/* 000E0 808AADC0 A3AC04C3 */ sb $t4, 0x04C3($sp) -/* 000E4 808AADC4 A3A004C4 */ sb $zero, 0x04C4($sp) -/* 000E8 808AADC8 A3A004C5 */ sb $zero, 0x04C5($sp) -/* 000EC 808AADCC A3A004C6 */ sb $zero, 0x04C6($sp) -/* 000F0 808AADD0 A3AD04C7 */ sb $t5, 0x04C7($sp) -/* 000F4 808AADD4 A3A004C8 */ sb $zero, 0x04C8($sp) -/* 000F8 808AADD8 A3A004C9 */ sb $zero, 0x04C9($sp) -/* 000FC 808AADDC A3A004CA */ sb $zero, 0x04CA($sp) -/* 00100 808AADE0 A3AF04CB */ sb $t7, 0x04CB($sp) -/* 00104 808AADE4 A3A004CC */ sb $zero, 0x04CC($sp) -/* 00108 808AADE8 A3A004CD */ sb $zero, 0x04CD($sp) -/* 0010C 808AADEC A3A004CE */ sb $zero, 0x04CE($sp) -/* 00110 808AADF0 A3B804CF */ sb $t8, 0x04CF($sp) -/* 00114 808AADF4 A3A004D0 */ sb $zero, 0x04D0($sp) -/* 00118 808AADF8 A3A004D1 */ sb $zero, 0x04D1($sp) -/* 0011C 808AADFC A3A004D2 */ sb $zero, 0x04D2($sp) -/* 00120 808AAE00 A3A004D3 */ sb $zero, 0x04D3($sp) -/* 00124 808AAE04 A3A004D4 */ sb $zero, 0x04D4($sp) -/* 00128 808AAE08 A3A004D5 */ sb $zero, 0x04D5($sp) -/* 0012C 808AAE0C A3A004D6 */ sb $zero, 0x04D6($sp) -/* 00130 808AAE10 A3A004D7 */ sb $zero, 0x04D7($sp) -/* 00134 808AAE14 A3A004D8 */ sb $zero, 0x04D8($sp) -/* 00138 808AAE18 A3A004D9 */ sb $zero, 0x04D9($sp) -/* 0013C 808AAE1C A3A004DA */ sb $zero, 0x04DA($sp) -/* 00140 808AAE20 A3A004DB */ sb $zero, 0x04DB($sp) -/* 00144 808AAE24 A3A004DC */ sb $zero, 0x04DC($sp) -/* 00148 808AAE28 A3A004DD */ sb $zero, 0x04DD($sp) -/* 0014C 808AAE2C A3A004DE */ sb $zero, 0x04DE($sp) -/* 00150 808AAE30 A3A004DF */ sb $zero, 0x04DF($sp) -/* 00154 808AAE34 AFA004E0 */ sw $zero, 0x04E0($sp) -/* 00158 808AAE38 AFB904E4 */ sw $t9, 0x04E4($sp) -/* 0015C 808AAE3C AFA80010 */ sw $t0, 0x0010($sp) -/* 00160 808AAE40 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000 -/* 00164 808AAE44 AFAE0014 */ sw $t6, 0x0014($sp) -/* 00168 808AAE48 27A50020 */ addiu $a1, $sp, 0x0020 ## $a1 = FFFFFB38 -/* 0016C 808AAE4C E7A404B0 */ swc1 $f4, 0x04B0($sp) -/* 00170 808AAE50 E7A604B4 */ swc1 $f6, 0x04B4($sp) -/* 00174 808AAE54 0C009B35 */ jal Effect_Add ## Effect_Add -/* 00178 808AAE58 A7AA0028 */ sh $t2, 0x0028($sp) -/* 0017C 808AAE5C 8FBF001C */ lw $ra, 0x001C($sp) -/* 00180 808AAE60 27BD04E8 */ addiu $sp, $sp, 0x04E8 ## $sp = 00000000 -/* 00184 808AAE64 03E00008 */ jr $ra -/* 00188 808AAE68 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAE6C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAE6C.s deleted file mode 100644 index 00deaf6e18..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAE6C.s +++ /dev/null @@ -1,51 +0,0 @@ -glabel func_808AAE6C -/* 0018C 808AAE6C 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0 -/* 00190 808AAE70 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00194 808AAE74 AFA40040 */ sw $a0, 0x0040($sp) -/* 00198 808AAE78 AFA50044 */ sw $a1, 0x0044($sp) -/* 0019C 808AAE7C 8C980024 */ lw $t8, 0x0024($a0) ## 00000024 -/* 001A0 808AAE80 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFF0 -/* 001A4 808AAE84 3C028016 */ lui $v0, %hi(gGameInfo) -/* 001A8 808AAE88 ACB80000 */ sw $t8, 0x0000($a1) ## FFFFFFF0 -/* 001AC 808AAE8C 8C8F0028 */ lw $t7, 0x0028($a0) ## 00000028 -/* 001B0 808AAE90 3C0143AF */ lui $at, 0x43AF ## $at = 43AF0000 -/* 001B4 808AAE94 ACAF0004 */ sw $t7, 0x0004($a1) ## FFFFFFF4 -/* 001B8 808AAE98 8C98002C */ lw $t8, 0x002C($a0) ## 0000002C -/* 001BC 808AAE9C ACB80008 */ sw $t8, 0x0008($a1) ## FFFFFFF8 -/* 001C0 808AAEA0 8C42FA90 */ lw $v0, %lo(gGameInfo)($v0) -/* 001C4 808AAEA4 C7A40034 */ lwc1 $f4, 0x0034($sp) -/* 001C8 808AAEA8 8FA40044 */ lw $a0, 0x0044($sp) -/* 001CC 808AAEAC 84591472 */ lh $t9, 0x1472($v0) ## 80161472 -/* 001D0 808AAEB0 44993000 */ mtc1 $t9, $f6 ## $f6 = 0.00 -/* 001D4 808AAEB4 00000000 */ nop -/* 001D8 808AAEB8 46803220 */ cvt.s.w $f8, $f6 -/* 001DC 808AAEBC 44813000 */ mtc1 $at, $f6 ## $f6 = 350.00 -/* 001E0 808AAEC0 46082280 */ add.s $f10, $f4, $f8 -/* 001E4 808AAEC4 E7AA0034 */ swc1 $f10, 0x0034($sp) -/* 001E8 808AAEC8 8448146A */ lh $t0, 0x146A($v0) ## 8016146A -/* 001EC 808AAECC 8449146E */ lh $t1, 0x146E($v0) ## 8016146E -/* 001F0 808AAED0 8447146C */ lh $a3, 0x146C($v0) ## 8016146C -/* 001F4 808AAED4 44888000 */ mtc1 $t0, $f16 ## $f16 = 0.00 -/* 001F8 808AAED8 252A07D0 */ addiu $t2, $t1, 0x07D0 ## $t2 = 000007D0 -/* 001FC 808AAEDC AFAA0010 */ sw $t2, 0x0010($sp) -/* 00200 808AAEE0 468084A0 */ cvt.s.w $f18, $f16 -/* 00204 808AAEE4 844B1470 */ lh $t3, 0x1470($v0) ## 80161470 -/* 00208 808AAEE8 AFA00018 */ sw $zero, 0x0018($sp) -/* 0020C 808AAEEC 24E70005 */ addiu $a3, $a3, 0x0005 ## $a3 = 00000005 -/* 00210 808AAEF0 256C0320 */ addiu $t4, $t3, 0x0320 ## $t4 = 00000320 -/* 00214 808AAEF4 AFAC0014 */ sw $t4, 0x0014($sp) -/* 00218 808AAEF8 46069100 */ add.s $f4, $f18, $f6 -/* 0021C 808AAEFC 44062000 */ mfc1 $a2, $f4 -/* 00220 808AAF00 0C00CD20 */ jal func_80033480 -/* 00224 808AAF04 00000000 */ nop -/* 00228 808AAF08 8FA40044 */ lw $a0, 0x0044($sp) -/* 0022C 808AAF0C 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFF0 -/* 00230 808AAF10 0C22AB4F */ jal func_808AAD3C -/* 00234 808AAF14 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005 -/* 00238 808AAF18 8FA40040 */ lw $a0, 0x0040($sp) -/* 0023C 808AAF1C 0C22AB41 */ jal func_808AAD04 -/* 00240 808AAF20 8FA50044 */ lw $a1, 0x0044($sp) -/* 00244 808AAF24 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00248 808AAF28 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000 -/* 0024C 808AAF2C 03E00008 */ jr $ra -/* 00250 808AAF30 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAF34.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAF34.s deleted file mode 100644 index 34162dddb2..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAF34.s +++ /dev/null @@ -1,122 +0,0 @@ -.late_rodata -glabel D_808AB9C4 - .float 1300.0 - -glabel D_808AB9C8 - .float 1300.0 - -.text -glabel func_808AAF34 -/* 00254 808AAF34 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8 -/* 00258 808AAF38 AFBF002C */ sw $ra, 0x002C($sp) -/* 0025C 808AAF3C AFB00028 */ sw $s0, 0x0028($sp) -/* 00260 808AAF40 AFA40058 */ sw $a0, 0x0058($sp) -/* 00264 808AAF44 AFA5005C */ sw $a1, 0x005C($sp) -/* 00268 808AAF48 8C8F0170 */ lw $t7, 0x0170($a0) ## 00000170 -/* 0026C 808AAF4C 3C028016 */ lui $v0, %hi(gGameInfo) -/* 00270 808AAF50 51E00064 */ beql $t7, $zero, .L808AB0E4 -/* 00274 808AAF54 8FBF002C */ lw $ra, 0x002C($sp) -/* 00278 808AAF58 8C42FA90 */ lw $v0, %lo(gGameInfo)($v0) -/* 0027C 808AAF5C 3C01808B */ lui $at, %hi(D_808AB9C4) ## $at = 808B0000 -/* 00280 808AAF60 C428B9C4 */ lwc1 $f8, %lo(D_808AB9C4)($at) -/* 00284 808AAF64 8458147C */ lh $t8, 0x147C($v0) ## 8016147C -/* 00288 808AAF68 3C014348 */ lui $at, 0x4348 ## $at = 43480000 -/* 0028C 808AAF6C 27B00044 */ addiu $s0, $sp, 0x0044 ## $s0 = FFFFFFEC -/* 00290 808AAF70 44982000 */ mtc1 $t8, $f4 ## $f4 = 0.00 -/* 00294 808AAF74 02002825 */ or $a1, $s0, $zero ## $a1 = FFFFFFEC -/* 00298 808AAF78 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE0 -/* 0029C 808AAF7C 468021A0 */ cvt.s.w $f6, $f4 -/* 002A0 808AAF80 44812000 */ mtc1 $at, $f4 ## $f4 = 200.00 -/* 002A4 808AAF84 46083280 */ add.s $f10, $f6, $f8 -/* 002A8 808AAF88 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00 -/* 002AC 808AAF8C E7AA0038 */ swc1 $f10, 0x0038($sp) -/* 002B0 808AAF90 8459147E */ lh $t9, 0x147E($v0) ## 8016147E -/* 002B4 808AAF94 E7A80040 */ swc1 $f8, 0x0040($sp) -/* 002B8 808AAF98 44998000 */ mtc1 $t9, $f16 ## $f16 = 0.00 -/* 002BC 808AAF9C 00000000 */ nop -/* 002C0 808AAFA0 468084A0 */ cvt.s.w $f18, $f16 -/* 002C4 808AAFA4 46049180 */ add.s $f6, $f18, $f4 -/* 002C8 808AAFA8 0C0346BD */ jal Matrix_MultVec3f -/* 002CC 808AAFAC E7A6003C */ swc1 $f6, 0x003C($sp) -/* 002D0 808AAFB0 3C028016 */ lui $v0, %hi(gGameInfo) -/* 002D4 808AAFB4 8C42FA90 */ lw $v0, %lo(gGameInfo)($v0) -/* 002D8 808AAFB8 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000 -/* 002DC 808AAFBC 44819000 */ mtc1 $at, $f18 ## $f18 = 80.00 -/* 002E0 808AAFC0 84481474 */ lh $t0, 0x1474($v0) ## 80161474 -/* 002E4 808AAFC4 84491478 */ lh $t1, 0x1478($v0) ## 80161478 -/* 002E8 808AAFC8 84471476 */ lh $a3, 0x1476($v0) ## 80161476 -/* 002EC 808AAFCC 44885000 */ mtc1 $t0, $f10 ## $f10 = 0.00 -/* 002F0 808AAFD0 252A03E8 */ addiu $t2, $t1, 0x03E8 ## $t2 = 000003E8 -/* 002F4 808AAFD4 AFAA0010 */ sw $t2, 0x0010($sp) -/* 002F8 808AAFD8 46805420 */ cvt.s.w $f16, $f10 -/* 002FC 808AAFDC 844B147A */ lh $t3, 0x147A($v0) ## 8016147A -/* 00300 808AAFE0 AFA00018 */ sw $zero, 0x0018($sp) -/* 00304 808AAFE4 8FA4005C */ lw $a0, 0x005C($sp) -/* 00308 808AAFE8 02002825 */ or $a1, $s0, $zero ## $a1 = FFFFFFEC -/* 0030C 808AAFEC 24E7000A */ addiu $a3, $a3, 0x000A ## $a3 = 0000000A -/* 00310 808AAFF0 46128100 */ add.s $f4, $f16, $f18 -/* 00314 808AAFF4 AFAB0014 */ sw $t3, 0x0014($sp) -/* 00318 808AAFF8 44062000 */ mfc1 $a2, $f4 -/* 0031C 808AAFFC 0C00CD20 */ jal func_80033480 -/* 00320 808AB000 00000000 */ nop -/* 00324 808AB004 8FA4005C */ lw $a0, 0x005C($sp) -/* 00328 808AB008 02002825 */ or $a1, $s0, $zero ## $a1 = FFFFFFEC -/* 0032C 808AB00C 0C22AB4F */ jal func_808AAD3C -/* 00330 808AB010 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003 -/* 00334 808AB014 3C028016 */ lui $v0, %hi(gGameInfo) -/* 00338 808AB018 8C42FA90 */ lw $v0, %lo(gGameInfo)($v0) -/* 0033C 808AB01C 3C01808B */ lui $at, %hi(D_808AB9C8) ## $at = 808B0000 -/* 00340 808AB020 C42AB9C8 */ lwc1 $f10, %lo(D_808AB9C8)($at) -/* 00344 808AB024 844C147C */ lh $t4, 0x147C($v0) ## 8016147C -/* 00348 808AB028 3C014348 */ lui $at, 0x4348 ## $at = 43480000 -/* 0034C 808AB02C 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE0 -/* 00350 808AB030 448C3000 */ mtc1 $t4, $f6 ## $f6 = 0.00 -/* 00354 808AB034 02002825 */ or $a1, $s0, $zero ## $a1 = FFFFFFEC -/* 00358 808AB038 46803220 */ cvt.s.w $f8, $f6 -/* 0035C 808AB03C 460A4400 */ add.s $f16, $f8, $f10 -/* 00360 808AB040 44814000 */ mtc1 $at, $f8 ## $f8 = 200.00 -/* 00364 808AB044 46008487 */ neg.s $f18, $f16 -/* 00368 808AB048 44808000 */ mtc1 $zero, $f16 ## $f16 = 0.00 -/* 0036C 808AB04C E7B20038 */ swc1 $f18, 0x0038($sp) -/* 00370 808AB050 844D147E */ lh $t5, 0x147E($v0) ## 8016147E -/* 00374 808AB054 E7B00040 */ swc1 $f16, 0x0040($sp) -/* 00378 808AB058 448D2000 */ mtc1 $t5, $f4 ## $f4 = 0.00 -/* 0037C 808AB05C 00000000 */ nop -/* 00380 808AB060 468021A0 */ cvt.s.w $f6, $f4 -/* 00384 808AB064 46083280 */ add.s $f10, $f6, $f8 -/* 00388 808AB068 0C0346BD */ jal Matrix_MultVec3f -/* 0038C 808AB06C E7AA003C */ swc1 $f10, 0x003C($sp) -/* 00390 808AB070 3C028016 */ lui $v0, %hi(gGameInfo) -/* 00394 808AB074 8C42FA90 */ lw $v0, %lo(gGameInfo)($v0) -/* 00398 808AB078 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000 -/* 0039C 808AB07C 44813000 */ mtc1 $at, $f6 ## $f6 = 80.00 -/* 003A0 808AB080 844E1474 */ lh $t6, 0x1474($v0) ## 80161474 -/* 003A4 808AB084 844F1478 */ lh $t7, 0x1478($v0) ## 80161478 -/* 003A8 808AB088 84471476 */ lh $a3, 0x1476($v0) ## 80161476 -/* 003AC 808AB08C 448E9000 */ mtc1 $t6, $f18 ## $f18 = 0.00 -/* 003B0 808AB090 25F803E8 */ addiu $t8, $t7, 0x03E8 ## $t8 = 000003E8 -/* 003B4 808AB094 AFB80010 */ sw $t8, 0x0010($sp) -/* 003B8 808AB098 46809120 */ cvt.s.w $f4, $f18 -/* 003BC 808AB09C 8459147A */ lh $t9, 0x147A($v0) ## 8016147A -/* 003C0 808AB0A0 AFA00018 */ sw $zero, 0x0018($sp) -/* 003C4 808AB0A4 8FA4005C */ lw $a0, 0x005C($sp) -/* 003C8 808AB0A8 02002825 */ or $a1, $s0, $zero ## $a1 = FFFFFFEC -/* 003CC 808AB0AC 24E7000A */ addiu $a3, $a3, 0x000A ## $a3 = 0000000A -/* 003D0 808AB0B0 46062200 */ add.s $f8, $f4, $f6 -/* 003D4 808AB0B4 AFB90014 */ sw $t9, 0x0014($sp) -/* 003D8 808AB0B8 44064000 */ mfc1 $a2, $f8 -/* 003DC 808AB0BC 0C00CD20 */ jal func_80033480 -/* 003E0 808AB0C0 00000000 */ nop -/* 003E4 808AB0C4 8FA4005C */ lw $a0, 0x005C($sp) -/* 003E8 808AB0C8 02002825 */ or $a1, $s0, $zero ## $a1 = FFFFFFEC -/* 003EC 808AB0CC 0C22AB4F */ jal func_808AAD3C -/* 003F0 808AB0D0 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003 -/* 003F4 808AB0D4 8FA40058 */ lw $a0, 0x0058($sp) -/* 003F8 808AB0D8 0C22AB38 */ jal func_808AACE0 -/* 003FC 808AB0DC AC800170 */ sw $zero, 0x0170($a0) ## 00000170 -/* 00400 808AB0E0 8FBF002C */ lw $ra, 0x002C($sp) -.L808AB0E4: -/* 00404 808AB0E4 8FB00028 */ lw $s0, 0x0028($sp) -/* 00408 808AB0E8 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000 -/* 0040C 808AB0EC 03E00008 */ jr $ra -/* 00410 808AB0F0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB124.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB124.s deleted file mode 100644 index 989a715a00..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB124.s +++ /dev/null @@ -1,10 +0,0 @@ -glabel func_808AB124 -/* 00444 808AB124 908E1D6C */ lbu $t6, 0x1D6C($a0) ## 00001D6C -/* 00448 808AB128 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 0044C 808AB12C 15C00003 */ bne $t6, $zero, .L808AB13C -/* 00450 808AB130 00000000 */ nop -/* 00454 808AB134 03E00008 */ jr $ra -/* 00458 808AB138 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L808AB13C: -/* 0045C 808AB13C 03E00008 */ jr $ra -/* 00460 808AB140 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB144.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB144.s deleted file mode 100644 index 9d7facdf06..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB144.s +++ /dev/null @@ -1,20 +0,0 @@ -glabel func_808AB144 -/* 00464 808AB144 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 00468 808AB148 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0046C 808AB14C AFA40028 */ sw $a0, 0x0028($sp) -/* 00470 808AB150 AFA5002C */ sw $a1, 0x002C($sp) -/* 00474 808AB154 0C22AC49 */ jal func_808AB124 -/* 00478 808AB158 AFA0001C */ sw $zero, 0x001C($sp) -/* 0047C 808AB15C 14400006 */ bne $v0, $zero, .L808AB178 -/* 00480 808AB160 8FA3001C */ lw $v1, 0x001C($sp) -/* 00484 808AB164 8FAF002C */ lw $t7, 0x002C($sp) -/* 00488 808AB168 8FAE0028 */ lw $t6, 0x0028($sp) -/* 0048C 808AB16C 000FC080 */ sll $t8, $t7, 2 -/* 00490 808AB170 01D8C821 */ addu $t9, $t6, $t8 -/* 00494 808AB174 8F231D8C */ lw $v1, 0x1D8C($t9) ## 00001D8C -.L808AB178: -/* 00498 808AB178 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0049C 808AB17C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 004A0 808AB180 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000 -/* 004A4 808AB184 03E00008 */ jr $ra -/* 004A8 808AB188 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB18C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB18C.s deleted file mode 100644 index b728e295e9..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB18C.s +++ /dev/null @@ -1,21 +0,0 @@ -glabel func_808AB18C -/* 004AC 808AB18C 3C028016 */ lui $v0, %hi(gGameInfo) -/* 004B0 808AB190 2442FA90 */ addiu $v0, %lo(gGameInfo) -/* 004B4 808AB194 8C4F0000 */ lw $t7, 0x0000($v0) ## 8015FA90 -/* 004B8 808AB198 848E00B4 */ lh $t6, 0x00B4($a0) ## 000000B4 -/* 004BC 808AB19C 848800B6 */ lh $t0, 0x00B6($a0) ## 000000B6 -/* 004C0 808AB1A0 85F81460 */ lh $t8, 0x1460($t7) ## 00001460 -/* 004C4 808AB1A4 01D8C821 */ addu $t9, $t6, $t8 -/* 004C8 808AB1A8 A49900B4 */ sh $t9, 0x00B4($a0) ## 000000B4 -/* 004CC 808AB1AC 8C490000 */ lw $t1, 0x0000($v0) ## 8015FA90 -/* 004D0 808AB1B0 848E00B8 */ lh $t6, 0x00B8($a0) ## 000000B8 -/* 004D4 808AB1B4 852A1462 */ lh $t2, 0x1462($t1) ## 00001462 -/* 004D8 808AB1B8 254D03E8 */ addiu $t5, $t2, 0x03E8 ## $t5 = 000003E8 -/* 004DC 808AB1BC 010D7821 */ addu $t7, $t0, $t5 -/* 004E0 808AB1C0 A48F00B6 */ sh $t7, 0x00B6($a0) ## 000000B6 -/* 004E4 808AB1C4 8C580000 */ lw $t8, 0x0000($v0) ## 8015FA90 -/* 004E8 808AB1C8 87191464 */ lh $t9, 0x1464($t8) ## 00001464 -/* 004EC 808AB1CC 272B07D0 */ addiu $t3, $t9, 0x07D0 ## $t3 = 000007D0 -/* 004F0 808AB1D0 01CB6021 */ addu $t4, $t6, $t3 -/* 004F4 808AB1D4 03E00008 */ jr $ra -/* 004F8 808AB1D8 A48C00B8 */ sh $t4, 0x00B8($a0) ## 000000B8 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB1DC.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB1DC.s deleted file mode 100644 index 91c6508b65..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB1DC.s +++ /dev/null @@ -1,58 +0,0 @@ -.rdata -glabel D_808AB870 - .asciz "Bg_Spot01_Idohashira_Get_FreeFallで割り算出来ない!!!!!!!!!!!!!!\n" - .balign 4 - -.text -glabel func_808AB1DC -/* 004FC 808AB1DC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00500 808AB1E0 AFA60020 */ sw $a2, 0x0020($sp) -/* 00504 808AB1E4 AFA70024 */ sw $a3, 0x0024($sp) -/* 00508 808AB1E8 30E7FFFF */ andi $a3, $a3, 0xFFFF ## $a3 = 00000000 -/* 0050C 808AB1EC 30C6FFFF */ andi $a2, $a2, 0xFFFF ## $a2 = 00000000 -/* 00510 808AB1F0 00C77023 */ subu $t6, $a2, $a3 -/* 00514 808AB1F4 448E2000 */ mtc1 $t6, $f4 ## $f4 = 0.00 -/* 00518 808AB1F8 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00 -/* 0051C 808AB1FC 97B9002A */ lhu $t9, 0x002A($sp) -/* 00520 808AB200 46802420 */ cvt.s.w $f16, $f4 -/* 00524 808AB204 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00528 808AB208 E7AC0018 */ swc1 $f12, 0x0018($sp) -/* 0052C 808AB20C E7AE001C */ swc1 $f14, 0x001C($sp) -/* 00530 808AB210 3C0F8016 */ lui $t7, %hi(gGameInfo) -/* 00534 808AB214 3C04808B */ lui $a0, %hi(D_808AB870) ## $a0 = 808B0000 -/* 00538 808AB218 46103032 */ c.eq.s $f6, $f16 -/* 0053C 808AB21C 03274023 */ subu $t0, $t9, $a3 -/* 00540 808AB220 45010016 */ bc1t .L808AB27C -/* 00544 808AB224 00000000 */ nop -/* 00548 808AB228 8DEFFA90 */ lw $t7, %lo(gGameInfo)($t7) -/* 0054C 808AB22C 44882000 */ mtc1 $t0, $f4 ## $f4 = 0.00 -/* 00550 808AB230 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000 -/* 00554 808AB234 85F81466 */ lh $t8, 0x1466($t7) ## 80161466 -/* 00558 808AB238 44819000 */ mtc1 $at, $f18 ## $f18 = 30.00 -/* 0055C 808AB23C 468020A0 */ cvt.s.w $f2, $f4 -/* 00560 808AB240 44984000 */ mtc1 $t8, $f8 ## $f8 = 0.00 -/* 00564 808AB244 C7A6001C */ lwc1 $f6, 0x001C($sp) -/* 00568 808AB248 468042A0 */ cvt.s.w $f10, $f8 -/* 0056C 808AB24C C7A80018 */ lwc1 $f8, 0x0018($sp) -/* 00570 808AB250 46125380 */ add.s $f14, $f10, $f18 -/* 00574 808AB254 46083281 */ sub.s $f10, $f6, $f8 -/* 00578 808AB258 46027302 */ mul.s $f12, $f14, $f2 -/* 0057C 808AB25C 460C5481 */ sub.s $f18, $f10, $f12 -/* 00580 808AB260 46108102 */ mul.s $f4, $f16, $f16 -/* 00584 808AB264 46049183 */ div.s $f6, $f18, $f4 -/* 00588 808AB268 46023202 */ mul.s $f8, $f6, $f2 -/* 0058C 808AB26C 00000000 */ nop -/* 00590 808AB270 46024282 */ mul.s $f10, $f8, $f2 -/* 00594 808AB274 10000005 */ beq $zero, $zero, .L808AB28C -/* 00598 808AB278 460C5000 */ add.s $f0, $f10, $f12 -.L808AB27C: -/* 0059C 808AB27C 0C00084C */ jal osSyncPrintf - -/* 005A0 808AB280 2484B870 */ addiu $a0, $a0, %lo(D_808AB870) ## $a0 = 808AB870 -/* 005A4 808AB284 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 005A8 808AB288 00000000 */ nop -.L808AB28C: -/* 005AC 808AB28C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 005B0 808AB290 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 005B4 808AB294 03E00008 */ jr $ra -/* 005B8 808AB298 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB29C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB29C.s deleted file mode 100644 index 94162fc30f..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB29C.s +++ /dev/null @@ -1,92 +0,0 @@ -.late_rodata -glabel D_808AB9CC - .float 1100.0 - -.text -glabel func_808AB29C -/* 005BC 808AB29C 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0 -/* 005C0 808AB2A0 AFA40050 */ sw $a0, 0x0050($sp) -/* 005C4 808AB2A4 AFBF001C */ sw $ra, 0x001C($sp) -/* 005C8 808AB2A8 AFA50054 */ sw $a1, 0x0054($sp) -/* 005CC 808AB2AC 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 005D0 808AB2B0 0C22AC51 */ jal func_808AB144 -/* 005D4 808AB2B4 24050002 */ addiu $a1, $zero, 0x0002 ## $a1 = 00000002 -/* 005D8 808AB2B8 10400046 */ beq $v0, $zero, .L808AB3D4 -/* 005DC 808AB2BC 8FAE0054 */ lw $t6, 0x0054($sp) -/* 005E0 808AB2C0 94440004 */ lhu $a0, 0x0004($v0) ## 00000004 -/* 005E4 808AB2C4 94450002 */ lhu $a1, 0x0002($v0) ## 00000002 -/* 005E8 808AB2C8 95C61D74 */ lhu $a2, 0x1D74($t6) ## 00001D74 -/* 005EC 808AB2CC 0C01BE4F */ jal func_8006F93C -/* 005F0 808AB2D0 AFA2004C */ sw $v0, 0x004C($sp) -/* 005F4 808AB2D4 8FA20050 */ lw $v0, 0x0050($sp) -/* 005F8 808AB2D8 8FA3004C */ lw $v1, 0x004C($sp) -/* 005FC 808AB2DC 27AF0030 */ addiu $t7, $sp, 0x0030 ## $t7 = FFFFFFE0 -/* 00600 808AB2E0 8C590008 */ lw $t9, 0x0008($v0) ## 00000008 -/* 00604 808AB2E4 3C098016 */ lui $t1, %hi(gGameInfo) -/* 00608 808AB2E8 3C01808B */ lui $at, %hi(D_808AB9CC) ## $at = 808B0000 -/* 0060C 808AB2EC ADF90000 */ sw $t9, 0x0000($t7) ## FFFFFFE0 -/* 00610 808AB2F0 8C58000C */ lw $t8, 0x000C($v0) ## 0000000C -/* 00614 808AB2F4 ADF80004 */ sw $t8, 0x0004($t7) ## FFFFFFE4 -/* 00618 808AB2F8 8C590010 */ lw $t9, 0x0010($v0) ## 00000010 -/* 0061C 808AB2FC ADF90008 */ sw $t9, 0x0008($t7) ## FFFFFFE8 -/* 00620 808AB300 8D29FA90 */ lw $t1, %lo(gGameInfo)($t1) -/* 00624 808AB304 8C680018 */ lw $t0, 0x0018($v1) ## 00000018 -/* 00628 808AB308 C42AB9CC */ lwc1 $f10, %lo(D_808AB9CC)($at) -/* 0062C 808AB30C 852A1468 */ lh $t2, 0x1468($t1) ## 80161468 -/* 00630 808AB310 44882000 */ mtc1 $t0, $f4 ## $f4 = 0.00 -/* 00634 808AB314 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 00638 808AB318 448A3000 */ mtc1 $t2, $f6 ## $f6 = 0.00 -/* 0063C 808AB31C 468020A0 */ cvt.s.w $f2, $f4 -/* 00640 808AB320 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00 -/* 00644 808AB324 8C6B001C */ lw $t3, 0x001C($v1) ## 0000001C -/* 00648 808AB328 8C6C0020 */ lw $t4, 0x0020($v1) ## 00000020 -/* 0064C 808AB32C 46803220 */ cvt.s.w $f8, $f6 -/* 00650 808AB330 460A4480 */ add.s $f18, $f8, $f10 -/* 00654 808AB334 448B4000 */ mtc1 $t3, $f8 ## $f8 = 0.00 -/* 00658 808AB338 46049183 */ div.s $f6, $f18, $f4 -/* 0065C 808AB33C 448C9000 */ mtc1 $t4, $f18 ## $f18 = 0.00 -/* 00660 808AB340 468042A0 */ cvt.s.w $f10, $f8 -/* 00664 808AB344 C7A80030 */ lwc1 $f8, 0x0030($sp) -/* 00668 808AB348 46809120 */ cvt.s.w $f4, $f18 -/* 0066C 808AB34C E7A4002C */ swc1 $f4, 0x002C($sp) -/* 00670 808AB350 460A3380 */ add.s $f14, $f6, $f10 -/* 00674 808AB354 46081181 */ sub.s $f6, $f2, $f8 -/* 00678 808AB358 46003282 */ mul.s $f10, $f6, $f0 -/* 0067C 808AB35C 46085480 */ add.s $f18, $f10, $f8 -/* 00680 808AB360 E4520024 */ swc1 $f18, 0x0024($v0) ## 00000024 -/* 00684 808AB364 8FAD0054 */ lw $t5, 0x0054($sp) -/* 00688 808AB368 94670002 */ lhu $a3, 0x0002($v1) ## 00000002 -/* 0068C 808AB36C 94660004 */ lhu $a2, 0x0004($v1) ## 00000004 -/* 00690 808AB370 95AE1D74 */ lhu $t6, 0x1D74($t5) ## 00001D74 -/* 00694 808AB374 E7A00040 */ swc1 $f0, 0x0040($sp) -/* 00698 808AB378 C7AC0034 */ lwc1 $f12, 0x0034($sp) -/* 0069C 808AB37C 0C22AC77 */ jal func_808AB1DC -/* 006A0 808AB380 AFAE0010 */ sw $t6, 0x0010($sp) -/* 006A4 808AB384 C7A40034 */ lwc1 $f4, 0x0034($sp) -/* 006A8 808AB388 8FA20050 */ lw $v0, 0x0050($sp) -/* 006AC 808AB38C C7B00040 */ lwc1 $f16, 0x0040($sp) -/* 006B0 808AB390 46040180 */ add.s $f6, $f0, $f4 -/* 006B4 808AB394 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 006B8 808AB398 24420024 */ addiu $v0, $v0, 0x0024 ## $v0 = 00000024 -/* 006BC 808AB39C E4460004 */ swc1 $f6, 0x0004($v0) ## 00000028 -/* 006C0 808AB3A0 C7A80038 */ lwc1 $f8, 0x0038($sp) -/* 006C4 808AB3A4 C7AA002C */ lwc1 $f10, 0x002C($sp) -/* 006C8 808AB3A8 46085481 */ sub.s $f18, $f10, $f8 -/* 006CC 808AB3AC 44815000 */ mtc1 $at, $f10 ## $f10 = 1.00 -/* 006D0 808AB3B0 46109102 */ mul.s $f4, $f18, $f16 -/* 006D4 808AB3B4 4610503E */ c.le.s $f10, $f16 -/* 006D8 808AB3B8 46082180 */ add.s $f6, $f4, $f8 -/* 006DC 808AB3BC 45000003 */ bc1f .L808AB3CC -/* 006E0 808AB3C0 E4460008 */ swc1 $f6, 0x0008($v0) ## 0000002C -/* 006E4 808AB3C4 10000004 */ beq $zero, $zero, .L808AB3D8 -/* 006E8 808AB3C8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L808AB3CC: -/* 006EC 808AB3CC 10000002 */ beq $zero, $zero, .L808AB3D8 -/* 006F0 808AB3D0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L808AB3D4: -/* 006F4 808AB3D4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L808AB3D8: -/* 006F8 808AB3D8 8FBF001C */ lw $ra, 0x001C($sp) -/* 006FC 808AB3DC 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000 -/* 00700 808AB3E0 03E00008 */ jr $ra -/* 00704 808AB3E4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3E8.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3E8.s deleted file mode 100644 index 4107891b42..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3E8.s +++ /dev/null @@ -1,5 +0,0 @@ -glabel func_808AB3E8 -/* 00708 808AB3E8 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 0070C 808AB3EC AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164 -/* 00710 808AB3F0 03E00008 */ jr $ra -/* 00714 808AB3F4 AC800168 */ sw $zero, 0x0168($a0) ## 00000168 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3F8.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3F8.s deleted file mode 100644 index 1710bdb819..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3F8.s +++ /dev/null @@ -1,8 +0,0 @@ -glabel func_808AB3F8 -/* 00718 808AB3F8 AFA50004 */ sw $a1, 0x0004($sp) -/* 0071C 808AB3FC 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002 -/* 00720 808AB400 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001 -/* 00724 808AB404 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164 -/* 00728 808AB408 AC800168 */ sw $zero, 0x0168($a0) ## 00000168 -/* 0072C 808AB40C 03E00008 */ jr $ra -/* 00730 808AB410 AC8F0170 */ sw $t7, 0x0170($a0) ## 00000170 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB414.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB414.s deleted file mode 100644 index 9200266d14..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB414.s +++ /dev/null @@ -1,13 +0,0 @@ -glabel func_808AB414 -/* 00734 808AB414 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00738 808AB418 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0073C 808AB41C 0C22AB9B */ jal func_808AAE6C -/* 00740 808AB420 AFA40018 */ sw $a0, 0x0018($sp) -/* 00744 808AB424 8FA40018 */ lw $a0, 0x0018($sp) -/* 00748 808AB428 240E0003 */ addiu $t6, $zero, 0x0003 ## $t6 = 00000003 -/* 0074C 808AB42C AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164 -/* 00750 808AB430 AC800168 */ sw $zero, 0x0168($a0) ## 00000168 -/* 00754 808AB434 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00758 808AB438 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0075C 808AB43C 03E00008 */ jr $ra -/* 00760 808AB440 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB444.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB444.s deleted file mode 100644 index ec6a8cde61..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB444.s +++ /dev/null @@ -1,63 +0,0 @@ -.rdata -glabel D_808AB8BC - .asciz "Bg_Spot01_Idohashira_Check_DemoMode:そんな動作は無い!!!!!!!!\n" - .balign 4 - -.text -glabel func_808AB444 -/* 00764 808AB444 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 00768 808AB448 AFB00018 */ sw $s0, 0x0018($sp) -/* 0076C 808AB44C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00770 808AB450 AFBF001C */ sw $ra, 0x001C($sp) -/* 00774 808AB454 AFA5002C */ sw $a1, 0x002C($sp) -/* 00778 808AB458 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 0077C 808AB45C 0C22AC51 */ jal func_808AB144 -/* 00780 808AB460 24050002 */ addiu $a1, $zero, 0x0002 ## $a1 = 00000002 -/* 00784 808AB464 50400023 */ beql $v0, $zero, .L808AB4F4 -/* 00788 808AB468 8FBF001C */ lw $ra, 0x001C($sp) -/* 0078C 808AB46C 94460000 */ lhu $a2, 0x0000($v0) ## 00000000 -/* 00790 808AB470 8E03016C */ lw $v1, 0x016C($s0) ## 0000016C -/* 00794 808AB474 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00798 808AB478 50C3001E */ beql $a2, $v1, .L808AB4F4 -/* 0079C 808AB47C 8FBF001C */ lw $ra, 0x001C($sp) -/* 007A0 808AB480 10C10009 */ beq $a2, $at, .L808AB4A8 -/* 007A4 808AB484 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 007A8 808AB488 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 007AC 808AB48C 10C1000A */ beq $a2, $at, .L808AB4B8 -/* 007B0 808AB490 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 007B4 808AB494 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 007B8 808AB498 10C1000C */ beq $a2, $at, .L808AB4CC -/* 007BC 808AB49C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 007C0 808AB4A0 1000000E */ beq $zero, $zero, .L808AB4DC -/* 007C4 808AB4A4 3C04808B */ lui $a0, %hi(D_808AB8BC) ## $a0 = 808B0000 -.L808AB4A8: -/* 007C8 808AB4A8 0C22ACFA */ jal func_808AB3E8 -/* 007CC 808AB4AC AFA60020 */ sw $a2, 0x0020($sp) -/* 007D0 808AB4B0 1000000E */ beq $zero, $zero, .L808AB4EC -/* 007D4 808AB4B4 8FA60020 */ lw $a2, 0x0020($sp) -.L808AB4B8: -/* 007D8 808AB4B8 8FA5002C */ lw $a1, 0x002C($sp) -/* 007DC 808AB4BC 0C22ACFE */ jal func_808AB3F8 -/* 007E0 808AB4C0 AFA60020 */ sw $a2, 0x0020($sp) -/* 007E4 808AB4C4 10000009 */ beq $zero, $zero, .L808AB4EC -/* 007E8 808AB4C8 8FA60020 */ lw $a2, 0x0020($sp) -.L808AB4CC: -/* 007EC 808AB4CC 0C00B55C */ jal Actor_Kill - -/* 007F0 808AB4D0 AFA60020 */ sw $a2, 0x0020($sp) -/* 007F4 808AB4D4 10000005 */ beq $zero, $zero, .L808AB4EC -/* 007F8 808AB4D8 8FA60020 */ lw $a2, 0x0020($sp) -.L808AB4DC: -/* 007FC 808AB4DC 2484B8BC */ addiu $a0, $a0, %lo(D_808AB8BC) ## $a0 = FFFFB8BC -/* 00800 808AB4E0 0C00084C */ jal osSyncPrintf - -/* 00804 808AB4E4 AFA60020 */ sw $a2, 0x0020($sp) -/* 00808 808AB4E8 8FA60020 */ lw $a2, 0x0020($sp) -.L808AB4EC: -/* 0080C 808AB4EC AE06016C */ sw $a2, 0x016C($s0) ## 0000016C -/* 00810 808AB4F0 8FBF001C */ lw $ra, 0x001C($sp) -.L808AB4F4: -/* 00814 808AB4F4 8FB00018 */ lw $s0, 0x0018($sp) -/* 00818 808AB4F8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 0081C 808AB4FC 03E00008 */ jr $ra -/* 00820 808AB500 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB504.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB504.s deleted file mode 100644 index eb4b527a6a..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB504.s +++ /dev/null @@ -1,4 +0,0 @@ -glabel func_808AB504 -/* 00824 808AB504 AFA40000 */ sw $a0, 0x0000($sp) -/* 00828 808AB508 03E00008 */ jr $ra -/* 0082C 808AB50C AFA50004 */ sw $a1, 0x0004($sp) diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB510.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB510.s deleted file mode 100644 index 155bfa1ffb..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB510.s +++ /dev/null @@ -1,9 +0,0 @@ -glabel func_808AB510 -/* 00830 808AB510 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00834 808AB514 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00838 808AB518 0C22AD11 */ jal func_808AB444 -/* 0083C 808AB51C 00000000 */ nop -/* 00840 808AB520 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00844 808AB524 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00848 808AB528 03E00008 */ jr $ra -/* 0084C 808AB52C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB530.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB530.s deleted file mode 100644 index a912c5bcca..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB530.s +++ /dev/null @@ -1,18 +0,0 @@ -glabel func_808AB530 -/* 00850 808AB530 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00854 808AB534 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00858 808AB538 AFA40018 */ sw $a0, 0x0018($sp) -/* 0085C 808AB53C 0C22AC63 */ jal func_808AB18C -/* 00860 808AB540 AFA5001C */ sw $a1, 0x001C($sp) -/* 00864 808AB544 8FA40018 */ lw $a0, 0x0018($sp) -/* 00868 808AB548 0C22ACA7 */ jal func_808AB29C -/* 0086C 808AB54C 8FA5001C */ lw $a1, 0x001C($sp) -/* 00870 808AB550 10400003 */ beq $v0, $zero, .L808AB560 -/* 00874 808AB554 8FA40018 */ lw $a0, 0x0018($sp) -/* 00878 808AB558 0C22AD05 */ jal func_808AB414 -/* 0087C 808AB55C 8FA5001C */ lw $a1, 0x001C($sp) -.L808AB560: -/* 00880 808AB560 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00884 808AB564 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00888 808AB568 03E00008 */ jr $ra -/* 0088C 808AB56C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB570.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB570.s deleted file mode 100644 index 192c9b0dcf..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB570.s +++ /dev/null @@ -1,9 +0,0 @@ -glabel func_808AB570 -/* 00890 808AB570 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00894 808AB574 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00898 808AB578 0C22AD11 */ jal func_808AB444 -/* 0089C 808AB57C 00000000 */ nop -/* 008A0 808AB580 8FBF0014 */ lw $ra, 0x0014($sp) -/* 008A4 808AB584 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 008A8 808AB588 03E00008 */ jr $ra -/* 008AC 808AB58C 00000000 */ nop diff --git a/data/overlays/actors/z_bg_spot01_idohashira.data.s b/data/overlays/actors/z_bg_spot01_idohashira.data.s deleted file mode 100644 index 90ca4c7bf3..0000000000 --- a/data/overlays/actors/z_bg_spot01_idohashira.data.s +++ /dev/null @@ -1,28 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purpose registers - -.section .data - -.balign 16 - -glabel D_808AB830 - .word func_808AB504 -.word func_808AB510 -.word func_808AB530 -.word func_808AB570 -glabel D_808AB840 - .word 0x48500064 -glabel D_808AB844 - .word func_808AB700 -glabel Bg_Spot01_Idohashira_InitVars - .word 0x01030600, 0x00000010, 0x00F90000, 0x00000174 -.word BgSpot01Idohashira_Init -.word BgSpot01Idohashira_Destroy -.word BgSpot01Idohashira_Update -.word BgSpot01Idohashira_Draw -.word 0x00000000, 0x00000000 - diff --git a/spec b/spec index 53565641b9..9e2583c5ef 100644 --- a/spec +++ b/spec @@ -1241,7 +1241,6 @@ endseg beginseg name "ovl_Bg_Spot01_Idohashira" include "build/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.o" - include "build/data/overlays/actors/z_bg_spot01_idohashira.data.o" include "build/data/overlays/actors/z_bg_spot01_idohashira.reloc.o" endseg diff --git a/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c b/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c index 1414b3dbb7..3e1c15d266 100644 --- a/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c +++ b/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c @@ -1,5 +1,13 @@ +/* + * File: z_bg_spot01_idohashira.c + * Overlay: Bg_Spot01_Idohashira + * Description: Wooden beam above well in Kakariko Village + */ + #include "z_bg_spot01_idohashira.h" +#include "vt.h" + #define FLAGS 0x00000010 #define THIS ((BgSpot01Idohashira*)thisx) @@ -9,7 +17,27 @@ void BgSpot01Idohashira_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgSpot01Idohashira_Update(Actor* thisx, GlobalContext* globalCtx); void BgSpot01Idohashira_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +void func_808AB504(BgSpot01Idohashira* this, GlobalContext* globalCtx); +void func_808AB510(BgSpot01Idohashira* this, GlobalContext* globalCtx); +void func_808AB530(BgSpot01Idohashira* this, GlobalContext* globalCtx); +void func_808AB570(BgSpot01Idohashira* this, GlobalContext* globalCtx); +void func_808AB700(BgSpot01Idohashira* this, GlobalContext* globalCtx); + +static BgSpot01IdohashiraActionFunc sActionFuncs[] = { + func_808AB504, + func_808AB510, + func_808AB530, + func_808AB570, +}; + +static InitChainEntry sInitChain[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + +static BgSpot01IdohashiraDrawFunc sDrawFuncs[] = { + func_808AB700, +}; + const ActorInit Bg_Spot01_Idohashira_InitVars = { ACTOR_BG_SPOT01_IDOHASHIRA, ACTORTYPE_PROP, @@ -21,49 +49,304 @@ const ActorInit Bg_Spot01_Idohashira_InitVars = { (ActorFunc)BgSpot01Idohashira_Update, (ActorFunc)BgSpot01Idohashira_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AACE0.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD04.s") +extern Gfx D_06000420[]; +extern UNK_TYPE D_0600075C; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAD3C.s") +void BgSpot01Idohashira_PlayBreakSfx1(BgSpot01Idohashira* this) { + func_80078914(&this->dyna.actor.unk_E4, NA_SE_EV_BOX_BREAK); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAE6C.s") +void BgSpot01Idohashira_PlayBreakSfx2(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + Audio_PlaySoundAtPosition(globalCtx, &this->dyna.actor.posRot.pos, 0x3C, NA_SE_EV_WOODBOX_BREAK); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AAF34.s") +void func_808AAD3C(GlobalContext* globalCtx, Vec3f* vec, u32 arg2) { + EffectSparkInit effect; + s32 sp24; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Destroy.s") + effect.position.x = vec->x; + effect.position.y = vec->y; + effect.position.z = vec->z; + effect.speed = 8.0f; + effect.gravity = -1.0f; + effect.uDiv = arg2; + effect.vDiv = arg2; + effect.colorStart[0].r = 0x00; + effect.colorStart[0].g = 0x00; + effect.colorStart[0].b = 0x00; + effect.colorStart[0].a = 0xFF; + effect.colorStart[1].r = 0x00; + effect.colorStart[1].g = 0x00; + effect.colorStart[1].b = 0x00; + effect.colorStart[1].a = 0xFF; + effect.colorStart[2].r = 0x00; + effect.colorStart[2].g = 0x00; + effect.colorStart[2].b = 0x00; + effect.colorStart[2].a = 0xFF; + effect.colorStart[3].r = 0x00; + effect.colorStart[3].g = 0x00; + effect.colorStart[3].b = 0x00; + effect.colorStart[3].a = 0xFF; + effect.colorEnd[0].r = 0x00; + effect.colorEnd[0].g = 0x00; + effect.colorEnd[0].b = 0x00; + effect.colorEnd[0].a = 0x00; + effect.colorEnd[1].r = 0x00; + effect.colorEnd[1].g = 0x00; + effect.colorEnd[1].b = 0x00; + effect.colorEnd[1].a = 0x00; + effect.colorEnd[2].r = 0x00; + effect.colorEnd[2].g = 0x00; + effect.colorEnd[2].b = 0x00; + effect.colorEnd[2].a = 0x00; + effect.colorEnd[3].r = 0x00; + effect.colorEnd[3].g = 0x00; + effect.colorEnd[3].b = 0x00; + effect.colorEnd[3].a = 0x00; + effect.timer = 0; + effect.duration = 32; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB124.s") + Effect_Add(globalCtx, &sp24, EFFECT_SPARK, 0, 1, &effect); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB144.s") +void func_808AAE6C(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + s32 pad; + Vec3f sp30 = this->dyna.actor.posRot.pos; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB18C.s") + sp30.y += kREG(15); + func_80033480(globalCtx, &sp30, kREG(11) + 350.0f, kREG(12) + 5, kREG(13) + 0x7D0, kREG(14) + 0x320, 0); + func_808AAD3C(globalCtx, &sp30, 5); + BgSpot01Idohashira_PlayBreakSfx2(this, globalCtx); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB1DC.s") +void func_808AAF34(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + s32 pad[2]; + Vec3f dest; + Vec3f src; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB29C.s") + if (this->unk_170 != 0) { + src.x = kREG(20) + 1300.0f; + src.y = kREG(21) + 200.0f; + src.z = 0.0f; + Matrix_MultVec3f(&src, &dest); + func_80033480(globalCtx, &dest, kREG(16) + 80.0f, kREG(17) + 10, kREG(18) + 1000, kREG(19), 0); + func_808AAD3C(globalCtx, &dest, 3); + src.x = -(kREG(20) + 1300.0f); + src.y = kREG(21) + 200.0f; + src.z = 0.0f; + Matrix_MultVec3f(&src, &dest); + func_80033480(globalCtx, &dest, kREG(16) + 80.0f, kREG(17) + 10, kREG(18) + 1000, kREG(19), 0); + func_808AAD3C(globalCtx, &dest, 3); + this->unk_170 = 0; + BgSpot01Idohashira_PlayBreakSfx1(this); + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3E8.s") +void BgSpot01Idohashira_Destroy(Actor* thisx, GlobalContext* globalCtx) { + BgSpot01Idohashira* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB3F8.s") + DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB414.s") +s32 BgSpot01Idohashira_NotInCsMode(GlobalContext* globalCtx) { + if (globalCtx->csCtx.state == 0) { + return 1; + } + return 0; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB444.s") +CsCmdActorAction* BgSpot01Idohashira_GetNpcAction(GlobalContext* globalCtx, s32 actionIdx) { + s32 pad[2]; + CsCmdActorAction* npcAction = NULL; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB504.s") + if (!BgSpot01Idohashira_NotInCsMode(globalCtx)) { + npcAction = globalCtx->csCtx.npcActions[actionIdx]; + } + return npcAction; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB510.s") +void func_808AB18C(BgSpot01Idohashira* this) { + this->dyna.actor.shape.rot.x += kREG(6); + this->dyna.actor.shape.rot.y += (s16)(kREG(7) + 0x3E8); + this->dyna.actor.shape.rot.z += (s16)(kREG(8) + 0x7D0); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB530.s") +f32 func_808AB1DC(f32 arg0, f32 arg1, u16 arg2, u16 arg3, u16 arg4) { + f32 temp_f12; + f32 regFloat; + f32 diff23; + f32 diff43; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB570.s") + diff23 = arg2 - arg3; + if (diff23 != 0.0f) { + regFloat = kREG(9) + 30.0f; + diff43 = arg4 - arg3; + temp_f12 = regFloat * diff43; + return (((((arg1 - arg0) - temp_f12) / SQ(diff23)) * diff43) * diff43) + temp_f12; + } + osSyncPrintf(VT_FGCOL(RED) "Bg_Spot01_Idohashira_Get_FreeFallで割り算出来ない!!!!!!!!!!!!!!\n" VT_RST); + return 0.0f; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Update.s") +s32 func_808AB29C(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + CsCmdActorAction* npcAction; + Vec3f* thisPos; + f32 endX; + f32 temp_f0; + s32 pad2; + Vec3f initPos; + f32 endZ; + f32 tempY; + f32 tempZ; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Init.s") + npcAction = BgSpot01Idohashira_GetNpcAction(globalCtx, 2); + if (npcAction != NULL) { + temp_f0 = func_8006F93C(npcAction->endFrame, npcAction->startFrame, globalCtx->csCtx.frames); + initPos = this->dyna.actor.initPosRot.pos; + endX = npcAction->endPos.x; + tempY = ((kREG(10) + 1100.0f) / 10.0f) + npcAction->endPos.y; + endZ = npcAction->endPos.z; + thisPos = &this->dyna.actor.posRot.pos; + thisPos->x = ((endX - initPos.x) * temp_f0) + initPos.x; + thisPos->y = + func_808AB1DC(initPos.y, tempY, npcAction->endFrame, npcAction->startFrame, globalCtx->csCtx.frames) + + initPos.y; + thisPos->z = ((endZ - initPos.z) * temp_f0) + initPos.z; + if (temp_f0 >= 1.0f) { + return 1; + } else { + return 0; + } + } + return 0; +} + +void func_808AB3E8(BgSpot01Idohashira* this) { + this->action = 1; + this->drawConfig = 0; +} + +void func_808AB3F8(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + this->action = 2; + this->drawConfig = 0; + this->unk_170 = 1; +} + +void func_808AB414(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + func_808AAE6C(this, globalCtx); + this->action = 3; + this->drawConfig = 0; +} + +void func_808AB444(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + CsCmdActorAction* npcAction = BgSpot01Idohashira_GetNpcAction(globalCtx, 2); + u32 action; + u32 currentNpcAction; + + if (npcAction != NULL) { + action = npcAction->action; + currentNpcAction = this->npcAction; + if (action != currentNpcAction) { + switch (action) { + case 1: + func_808AB3E8(this); + break; + case 2: + func_808AB3F8(this, globalCtx); + break; + case 3: + Actor_Kill(&this->dyna.actor); + break; + default: + osSyncPrintf("Bg_Spot01_Idohashira_Check_DemoMode:そんな動作は無い!!!!!!!!\n"); + } + this->npcAction = action; + } + } +} + +void func_808AB504(BgSpot01Idohashira* this, GlobalContext* globalCtx) { +} + +void func_808AB510(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + func_808AB444(this, globalCtx); +} + +void func_808AB530(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + func_808AB18C(this); + if (func_808AB29C(this, globalCtx)) { + func_808AB414(this, globalCtx); + } +} + +void func_808AB570(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + func_808AB444(this, globalCtx); +} + +void BgSpot01Idohashira_Update(Actor* thisx, GlobalContext* globalCtx) { + BgSpot01Idohashira* this = THIS; + + if (this->action < 0 || this->action >= 4 || sActionFuncs[this->action] == NULL) { + osSyncPrintf(VT_FGCOL(RED) "メインモードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n" VT_RST); + return; + } + sActionFuncs[this->action](this, globalCtx); +} + +void BgSpot01Idohashira_Init(Actor* thisx, GlobalContext* globalCtx) { + s32 pad[2]; + BgSpot01Idohashira* this = THIS; + s32 localC; + + Actor_ProcessInitChain(&this->dyna.actor, sInitChain); + DynaPolyInfo_SetActorMove(&this->dyna, 0); + localC = 0; + DynaPolyInfo_Alloc(&D_0600075C, &localC); + this->dyna.dynaPolyId = DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, localC); + + if (gSaveContext.sceneSetupIndex < 4) { + if ((gSaveContext.eventChkInf[5] & 0x10) && LINK_IS_ADULT) { + Actor_Kill(&this->dyna.actor); + } else { + this->action = 0; + } + } else if (gSaveContext.sceneSetupIndex == 4) { + this->action = 1; + this->dyna.actor.shape.unk_08 = -(kREG(10) + 1100.0f); + } else if (gSaveContext.sceneSetupIndex == 6) { + this->action = 0; + } else { + Actor_Kill(&this->dyna.actor); + } +} + +#ifdef NON_MATCHING +void func_808AB700(BgSpot01Idohashira* this, GlobalContext* globalCtx) { + GraphicsContext* gfxCtx = globalCtx->state.gfxCtx; + Gfx* dispRefs[5]; + + Graph_OpenDisps(dispRefs, gfxCtx, "../z_bg_spot01_idohashira.c", 689); + func_80093D18(gfxCtx); + + gSPMatrix(gfxCtx->polyOpa.p++, Matrix_NewMtx(gfxCtx, "../z_bg_spot01_idohashira.c", 699), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + func_808AAF34(this, globalCtx); + gSPDisplayList(gfxCtx->polyOpa.p++, D_06000420); + + Graph_CloseDisps(dispRefs, gfxCtx, "../z_bg_spot01_idohashira.c", 708); +} +#else #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/func_808AB700.s") +#endif -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Spot01_Idohashira/BgSpot01Idohashira_Draw.s") +void BgSpot01Idohashira_Draw(Actor* thisx, GlobalContext* globalCtx) { + BgSpot01Idohashira* this = THIS; + + if (this->drawConfig < 0 || this->drawConfig > 0 || sDrawFuncs[this->drawConfig] == NULL) { + osSyncPrintf(VT_FGCOL(RED) "描画モードがおかしい!!!!!!!!!!!!!!!!!!!!!!!!!\n" VT_RST); + return; + } + sDrawFuncs[this->drawConfig](this, globalCtx); +} diff --git a/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.h b/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.h index 5e5e0bae97..56ac647996 100644 --- a/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.h +++ b/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.h @@ -6,9 +6,15 @@ struct BgSpot01Idohashira; +typedef void (*BgSpot01IdohashiraActionFunc)(struct BgSpot01Idohashira*, GlobalContext*); +typedef void (*BgSpot01IdohashiraDrawFunc)(struct BgSpot01Idohashira*, GlobalContext*); + typedef struct BgSpot01Idohashira { - /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x28]; + /* 0x0000 */ DynaPolyActor dyna; + /* 0x0164 */ s32 action; + /* 0x0168 */ s32 drawConfig; + /* 0x016C */ u32 npcAction; + /* 0x0170 */ s32 unk_170; } BgSpot01Idohashira; // size = 0x0174 extern const ActorInit Bg_Spot01_Idohashira_InitVars; diff --git a/undefined_syms.txt b/undefined_syms.txt index b4356920cc..b0b810b375 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -264,6 +264,10 @@ D_06000AF0 = 0x06000AF0; D_06000440 = 0x06000440; D_06000980 = 0x06000980; +// z_bg_spot01_idohashira +D_06000420 = 0x06000420; +D_0600075C = 0x0600075C; + // z_bg_spot15_saku D_060004D0 = 0x060004D0;