diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80977EA8.s b/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80977EA8.s deleted file mode 100644 index 628433d3fd..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80977EA8.s +++ /dev/null @@ -1,73 +0,0 @@ -.rdata - -glabel D_8097861C - .asciz "../z_demo_geff.c" - .balign 4 - -glabel D_80978630 - .asciz "../z_demo_geff.c" - .balign 4 - -glabel D_80978644 - .asciz "../z_demo_geff.c" - .balign 4 - -.text - -glabel func_80977EA8 -/* 00068 80977EA8 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8 -/* 0006C 80977EAC AFBF001C */ sw $ra, 0x001C($sp) -/* 00070 80977EB0 AFB00018 */ sw $s0, 0x0018($sp) -/* 00074 80977EB4 AFA40048 */ sw $a0, 0x0048($sp) -/* 00078 80977EB8 AFA5004C */ sw $a1, 0x004C($sp) -/* 0007C 80977EBC 8C900000 */ lw $s0, 0x0000($a0) ## 00000000 -/* 00080 80977EC0 3C068098 */ lui $a2, %hi(D_8097861C) ## $a2 = 80980000 -/* 00084 80977EC4 24C6861C */ addiu $a2, $a2, %lo(D_8097861C) ## $a2 = 8097861C -/* 00088 80977EC8 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFE8 -/* 0008C 80977ECC 240700B5 */ addiu $a3, $zero, 0x00B5 ## $a3 = 000000B5 -/* 00090 80977ED0 0C031AB1 */ jal func_800C6AC4 -/* 00094 80977ED4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00098 80977ED8 0C024F46 */ jal func_80093D18 -/* 0009C 80977EDC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 000A0 80977EE0 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 000A4 80977EE4 3C18DA38 */ lui $t8, 0xDA38 ## $t8 = DA380000 -/* 000A8 80977EE8 37180002 */ ori $t8, $t8, 0x0002 ## $t8 = DA380002 -/* 000AC 80977EEC 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008 -/* 000B0 80977EF0 AE0F02C0 */ sw $t7, 0x02C0($s0) ## 000002C0 -/* 000B4 80977EF4 3C058098 */ lui $a1, %hi(D_80978630) ## $a1 = 80980000 -/* 000B8 80977EF8 AC580000 */ sw $t8, 0x0000($v0) ## 00000000 -/* 000BC 80977EFC 24A58630 */ addiu $a1, $a1, %lo(D_80978630) ## $a1 = 80978630 -/* 000C0 80977F00 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 000C4 80977F04 240600B7 */ addiu $a2, $zero, 0x00B7 ## $a2 = 000000B7 -/* 000C8 80977F08 0C0346A2 */ jal Matrix_NewMtx -/* 000CC 80977F0C AFA2002C */ sw $v0, 0x002C($sp) -/* 000D0 80977F10 8FA3002C */ lw $v1, 0x002C($sp) -/* 000D4 80977F14 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000 -/* 000D8 80977F18 3C0BD838 */ lui $t3, 0xD838 ## $t3 = D8380000 -/* 000DC 80977F1C AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 000E0 80977F20 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 000E4 80977F24 356B0002 */ ori $t3, $t3, 0x0002 ## $t3 = D8380002 -/* 000E8 80977F28 240C0040 */ addiu $t4, $zero, 0x0040 ## $t4 = 00000040 -/* 000EC 80977F2C 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008 -/* 000F0 80977F30 AE1902C0 */ sw $t9, 0x02C0($s0) ## 000002C0 -/* 000F4 80977F34 AC480000 */ sw $t0, 0x0000($v0) ## 00000000 -/* 000F8 80977F38 8FA9004C */ lw $t1, 0x004C($sp) -/* 000FC 80977F3C 3C068098 */ lui $a2, %hi(D_80978644) ## $a2 = 80980000 -/* 00100 80977F40 24C68644 */ addiu $a2, $a2, %lo(D_80978644) ## $a2 = 80978644 -/* 00104 80977F44 AC490004 */ sw $t1, 0x0004($v0) ## 00000004 -/* 00108 80977F48 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 0010C 80977F4C 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFE8 -/* 00110 80977F50 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00114 80977F54 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008 -/* 00118 80977F58 AE0A02C0 */ sw $t2, 0x02C0($s0) ## 000002C0 -/* 0011C 80977F5C 240700BC */ addiu $a3, $zero, 0x00BC ## $a3 = 000000BC -/* 00120 80977F60 AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004 -/* 00124 80977F64 0C031AD5 */ jal func_800C6B54 -/* 00128 80977F68 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000 -/* 0012C 80977F6C 8FBF001C */ lw $ra, 0x001C($sp) -/* 00130 80977F70 8FB00018 */ lw $s0, 0x0018($sp) -/* 00134 80977F74 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000 -/* 00138 80977F78 03E00008 */ jr $ra -/* 0013C 80977F7C 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_809782A0.s b/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_809782A0.s deleted file mode 100644 index f30ee56636..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_809782A0.s +++ /dev/null @@ -1,30 +0,0 @@ -glabel func_809782A0 -/* 00460 809782A0 AFA50004 */ sw $a1, 0x0004($sp) -/* 00464 809782A4 8C820158 */ lw $v0, 0x0158($a0) ## 00000158 -/* 00468 809782A8 8483001C */ lh $v1, 0x001C($a0) ## 0000001C -/* 0046C 809782AC 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006 -/* 00470 809782B0 10400013 */ beq $v0, $zero, .L80978300 -/* 00474 809782B4 00000000 */ nop -/* 00478 809782B8 10610011 */ beq $v1, $at, .L80978300 -/* 0047C 809782BC 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007 -/* 00480 809782C0 1061000F */ beq $v1, $at, .L80978300 -/* 00484 809782C4 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008 -/* 00488 809782C8 1061000D */ beq $v1, $at, .L80978300 -/* 0048C 809782CC 00000000 */ nop -/* 00490 809782D0 C4440024 */ lwc1 $f4, 0x0024($v0) ## 00000024 -/* 00494 809782D4 C486015C */ lwc1 $f6, 0x015C($a0) ## 0000015C -/* 00498 809782D8 C4900160 */ lwc1 $f16, 0x0160($a0) ## 00000160 -/* 0049C 809782DC 46062200 */ add.s $f8, $f4, $f6 -/* 004A0 809782E0 C4860164 */ lwc1 $f6, 0x0164($a0) ## 00000164 -/* 004A4 809782E4 E4880024 */ swc1 $f8, 0x0024($a0) ## 00000024 -/* 004A8 809782E8 C44A0028 */ lwc1 $f10, 0x0028($v0) ## 00000028 -/* 004AC 809782EC 46105480 */ add.s $f18, $f10, $f16 -/* 004B0 809782F0 E4920028 */ swc1 $f18, 0x0028($a0) ## 00000028 -/* 004B4 809782F4 C444002C */ lwc1 $f4, 0x002C($v0) ## 0000002C -/* 004B8 809782F8 46062200 */ add.s $f8, $f4, $f6 -/* 004BC 809782FC E488002C */ swc1 $f8, 0x002C($a0) ## 0000002C -.L80978300: -/* 004C0 80978300 03E00008 */ jr $ra -/* 004C4 80978304 00000000 */ nop - - diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80978370.s b/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80978370.s deleted file mode 100644 index 22f7325187..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80978370.s +++ /dev/null @@ -1,40 +0,0 @@ -.rdata - -glabel D_80978680 - .asciz " Demo_Geff_main_init:初期化処理がおかしいarg_data = %d!\n" - .balign 4 - -.text - -glabel func_80978370 -/* 00530 80978370 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00534 80978374 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00538 80978378 8486001C */ lh $a2, 0x001C($a0) ## 0000001C -/* 0053C 8097837C 3C028098 */ lui $v0, %hi(D_80978584) ## $v0 = 80980000 -/* 00540 80978380 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000 -/* 00544 80978384 00067080 */ sll $t6, $a2, 2 -/* 00548 80978388 004E1021 */ addu $v0, $v0, $t6 -/* 0054C 8097838C 8C428584 */ lw $v0, %lo(D_80978584)($v0) -/* 00550 80978390 3C048098 */ lui $a0, %hi(D_80978680) ## $a0 = 80980000 -/* 00554 80978394 24848680 */ addiu $a0, $a0, %lo(D_80978680) ## $a0 = 80978680 -/* 00558 80978398 14400008 */ bne $v0, $zero, .L809783BC -/* 0055C 8097839C 00000000 */ nop -/* 00560 809783A0 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000 -/* 00564 809783A4 0C00084C */ jal osSyncPrintf - -/* 00568 809783A8 AFA70018 */ sw $a3, 0x0018($sp) -/* 0056C 809783AC 0C00B55C */ jal Actor_Kill - -/* 00570 809783B0 8FA40018 */ lw $a0, 0x0018($sp) -/* 00574 809783B4 10000004 */ beq $zero, $zero, .L809783C8 -/* 00578 809783B8 8FBF0014 */ lw $ra, 0x0014($sp) -.L809783BC: -/* 0057C 809783BC 0040F809 */ jalr $ra, $v0 -/* 00580 809783C0 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000 -/* 00584 809783C4 8FBF0014 */ lw $ra, 0x0014($sp) -.L809783C8: -/* 00588 809783C8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0058C 809783CC 03E00008 */ jr $ra -/* 00590 809783D0 00000000 */ nop - - diff --git a/src/overlays/actors/ovl_Demo_Geff/z_demo_geff.c b/src/overlays/actors/ovl_Demo_Geff/z_demo_geff.c index 828bcd08ae..5dea81cff0 100644 --- a/src/overlays/actors/ovl_Demo_Geff/z_demo_geff.c +++ b/src/overlays/actors/ovl_Demo_Geff/z_demo_geff.c @@ -56,35 +56,36 @@ void DemoGeff_Init(DemoGeff* this, GlobalContext* globalCtx) { this->drawConfig = 0; } -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80977EA8.s") -/*void func_80977EA8(GlobalContext* globalCtx, u32 dlist) { - GraphicsContext* gfxCtx = &globalCtx->state.gfxCtx; +void func_80977EA8(GlobalContext* globalCtx, u32 dlist) { + GraphicsContext* gfxCtx = globalCtx->state.gfxCtx; + s16 pad; Gfx* gfxArr[4]; - func_800C6AC4(gfxArr, globalCtx->state.gfxCtx, "../z_demo_geff.c", 181); - func_80093D18(globalCtx->state.gfxCtx); - gSPMatrix(gfxCtx->polyOpa.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_demo_geff.c", 183), + func_800C6AC4(gfxArr, gfxCtx, "../z_demo_geff.c", 181); + func_80093D18(gfxCtx); + + gSPMatrix(gfxCtx->polyOpa.p++, Matrix_NewMtx(gfxCtx, "../z_demo_geff.c", 183), G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPDisplayList(gfxCtx->polyOpa.p++, dlist); gSPPopMatrix(gfxCtx->polyOpa.p++, G_MTX_MODELVIEW); - func_800C6B54(gfxArr, globalCtx->state.gfxCtx, "../z_demo_geff.c", 188); -}*/ + func_800C6B54(gfxArr, gfxCtx, "../z_demo_geff.c", 188); +} #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80977F80.s") /*void func_80977F80(DemoGeff* this, GlobalContext* globalCtx) { + s32 unk_154 = this->unk_154; + s32 pad[2]; GraphicsContext* gfxCtx = globalCtx->state.gfxCtx; + ObjectContext* objCtx = &globalCtx->objectCtx; Gfx* gfxArr[4]; func_800C6AC4(gfxArr, globalCtx->state.gfxCtx, "../z_demo_geff.c", 204); + + gSPSegment(gfxCtx->polyOpa.p++, 0x06, objCtx->status[unk_154].segment); + gSegments[6] = PHYSICAL_TO_VIRTUAL(objCtx->status[unk_154].segment); - temp_a0 = (arg1 + (this->unk_154 * 0x44)) + 0x10000; - - gSPSegment(gfxCtx->polyOpa.p++, 0x06, temp_a0->unk17B4), - - *(void *)0x80166FC0 = (s32) (temp_a0->unk17B4 + 0x80000000); - - func_800C6B54(gfxArr, &globalCtx->state.gfxCtx, "../z_demo_geff.c", 212); + func_800C6B54(gfxArr, globalCtx->state.gfxCtx, "../z_demo_geff.c", 212); }*/ #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80978030.s") @@ -140,18 +141,18 @@ void func_809781FC(DemoGeff* this, GlobalContext* globalCtx) { } } -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_809782A0.s") -/*void func_809782A0(DemoGeff* this, GlobalContext* globalCtx) { - s16 params; - if (this->unk_158 != 0) { - params = this->actor.params; +void func_809782A0(DemoGeff* this, GlobalContext* globalCtx) { + Actor* unk_158 = this->unk_158; + s16 params = this->actor.params; + if (unk_158 != NULL) { if ((params != 6) && (params != 7) && (params != 8)) { - this->actor.posRot.pos.x = this->unk_158->posRot.pos.x + this->unk_15C; - this->actor.posRot.pos.y = this->unk_158->posRot.pos.y + this->unk_160; - this->actor.posRot.pos.z = this->unk_158->posRot.pos.z + this->unk_164; + this->actor.posRot.pos.x = unk_158->posRot.pos.x + this->unk_15C; + this->actor.posRot.pos.y = unk_158->posRot.pos.y + this->unk_160; + this->actor.posRot.pos.z = unk_158->posRot.pos.z + this->unk_164; } - } -}*/ + } + +} void func_80978308(DemoGeff* this, GlobalContext* globalCtx) { func_809781FC(this, globalCtx); @@ -163,17 +164,16 @@ void func_80978344(DemoGeff* this, GlobalContext* globalCtx) { func_80977EA8(globalCtx, &D_06000EA0); } -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Geff/func_80978370.s") -/*void func_80978370(DemoGeff* this, GlobalContext* globalCtx) { - Actor* thisx = &this->actor; - ActorFunc actorFunc = D_80978584[thisx->params]; +void func_80978370(DemoGeff* this, GlobalContext* globalCtx) { + s16 params = this->actor.params; + ActorFunc actorFunc = D_80978584[params]; if (actorFunc == NULL) { - osSyncPrintf(VT_FGCOL(RED) " Demo_Geff_main_init:初期化処理がおかしいarg_data = %d!\n" VT_RST, thisx->params); - Actor_Kill(thisx); + osSyncPrintf(VT_FGCOL(RED) " Demo_Geff_main_init:初期化処理がおかしいarg_data = %d!\n" VT_RST, params); + Actor_Kill(&this->actor); return; } actorFunc(this, globalCtx); -}*/ +} void func_809783D4(DemoGeff* this, GlobalContext* globalCtx) { ObjectContext* objCtx = &globalCtx->objectCtx;