1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-03 06:24:30 +00:00

9 small functions

Signed-off-by: Anghelo <angheloalf95@gmail.com>
This commit is contained in:
Anghelo 2021-01-25 13:57:45 -03:00
parent 86e378a7e6
commit d89d54b6d7
11 changed files with 407 additions and 196 deletions

View file

@ -1,13 +0,0 @@
glabel func_8097A9B4
/* 02084 8097A9B4 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 02088 8097A9B8 3C0E0600 */ lui $t6, %hi(D_060033E0) ## $t6 = 06000000
/* 0208C 8097A9BC AFBF001C */ sw $ra, 0x001C($sp)
/* 02090 8097A9C0 25CE33E0 */ addiu $t6, $t6, %lo(D_060033E0) ## $t6 = 060033E0
/* 02094 8097A9C4 AFAE0010 */ sw $t6, 0x0010($sp)
/* 02098 8097A9C8 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
/* 0209C 8097A9CC 0C25E3F3 */ jal func_80978FCC
/* 020A0 8097A9D0 24070007 */ addiu $a3, $zero, 0x0007 ## $a3 = 00000007
/* 020A4 8097A9D4 8FBF001C */ lw $ra, 0x001C($sp)
/* 020A8 8097A9D8 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 020AC 8097A9DC 03E00008 */ jr $ra
/* 020B0 8097A9E0 00000000 */ nop

View file

@ -1,13 +0,0 @@
glabel func_8097AB84
/* 02254 8097AB84 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 02258 8097AB88 3C0E0600 */ lui $t6, %hi(D_06003AF0) ## $t6 = 06000000
/* 0225C 8097AB8C AFBF001C */ sw $ra, 0x001C($sp)
/* 02260 8097AB90 25CE3AF0 */ addiu $t6, $t6, %lo(D_06003AF0) ## $t6 = 06003AF0
/* 02264 8097AB94 AFAE0010 */ sw $t6, 0x0010($sp)
/* 02268 8097AB98 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
/* 0226C 8097AB9C 0C25E3F3 */ jal func_80978FCC
/* 02270 8097ABA0 24070008 */ addiu $a3, $zero, 0x0008 ## $a3 = 00000008
/* 02274 8097ABA4 8FBF001C */ lw $ra, 0x001C($sp)
/* 02278 8097ABA8 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 0227C 8097ABAC 03E00008 */ jr $ra
/* 02280 8097ABB0 00000000 */ nop

View file

@ -1,13 +0,0 @@
glabel func_8097ADC0
/* 02490 8097ADC0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 02494 8097ADC4 3C0E0600 */ lui $t6, %hi(D_06001B70) ## $t6 = 06000000
/* 02498 8097ADC8 AFBF001C */ sw $ra, 0x001C($sp)
/* 0249C 8097ADCC 25CE1B70 */ addiu $t6, $t6, %lo(D_06001B70) ## $t6 = 06001B70
/* 024A0 8097ADD0 AFAE0010 */ sw $t6, 0x0010($sp)
/* 024A4 8097ADD4 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 024A8 8097ADD8 0C25E3F3 */ jal func_80978FCC
/* 024AC 8097ADDC 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 024B0 8097ADE0 8FBF001C */ lw $ra, 0x001C($sp)
/* 024B4 8097ADE4 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 024B8 8097ADE8 03E00008 */ jr $ra
/* 024BC 8097ADEC 00000000 */ nop

View file

@ -1,33 +0,0 @@
glabel func_8097AE5C
/* 0252C 8097AE5C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 02530 8097AE60 AFBF0024 */ sw $ra, 0x0024($sp)
/* 02534 8097AE64 AFB00020 */ sw $s0, 0x0020($sp)
/* 02538 8097AE68 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0253C 8097AE6C AFA5002C */ sw $a1, 0x002C($sp)
/* 02540 8097AE70 AFA00010 */ sw $zero, 0x0010($sp)
/* 02544 8097AE74 2406000F */ addiu $a2, $zero, 0x000F ## $a2 = 0000000F
/* 02548 8097AE78 0C25E3F3 */ jal func_80978FCC
/* 0254C 8097AE7C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 02550 8097AE80 3C078098 */ lui $a3, %hi(D_8097BDE0) ## $a3 = 80980000
/* 02554 8097AE84 24E7BDE0 */ addiu $a3, $a3, %lo(D_8097BDE0) ## $a3 = 8097BDE0
/* 02558 8097AE88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0255C 8097AE8C 8FA5002C */ lw $a1, 0x002C($sp)
/* 02560 8097AE90 0C25E257 */ jal func_8097895C
/* 02564 8097AE94 26060184 */ addiu $a2, $s0, 0x0184 ## $a2 = 00000184
/* 02568 8097AE98 3C078098 */ lui $a3, %hi(D_8097BDE0) ## $a3 = 80980000
/* 0256C 8097AE9C 24E7BDE0 */ addiu $a3, $a3, %lo(D_8097BDE0) ## $a3 = 8097BDE0
/* 02570 8097AEA0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02574 8097AEA4 8FA5002C */ lw $a1, 0x002C($sp)
/* 02578 8097AEA8 0C25E257 */ jal func_8097895C
/* 0257C 8097AEAC 260601D0 */ addiu $a2, $s0, 0x01D0 ## $a2 = 000001D0
/* 02580 8097AEB0 3C078098 */ lui $a3, %hi(D_8097BDE0) ## $a3 = 80980000
/* 02584 8097AEB4 24E7BDE0 */ addiu $a3, $a3, %lo(D_8097BDE0) ## $a3 = 8097BDE0
/* 02588 8097AEB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0258C 8097AEBC 8FA5002C */ lw $a1, 0x002C($sp)
/* 02590 8097AEC0 0C25E257 */ jal func_8097895C
/* 02594 8097AEC4 2606021C */ addiu $a2, $s0, 0x021C ## $a2 = 0000021C
/* 02598 8097AEC8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 0259C 8097AECC 8FB00020 */ lw $s0, 0x0020($sp)
/* 025A0 8097AED0 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 025A4 8097AED4 03E00008 */ jr $ra
/* 025A8 8097AED8 00000000 */ nop

View file

@ -1,4 +0,0 @@
glabel func_8097AEDC
/* 025AC 8097AEDC AFA40000 */ sw $a0, 0x0000($sp)
/* 025B0 8097AEE0 03E00008 */ jr $ra
/* 025B4 8097AEE4 AFA50004 */ sw $a1, 0x0004($sp)

View file

@ -1,33 +0,0 @@
glabel func_8097B3C4
/* 02A94 8097B3C4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 02A98 8097B3C8 AFBF0024 */ sw $ra, 0x0024($sp)
/* 02A9C 8097B3CC AFB00020 */ sw $s0, 0x0020($sp)
/* 02AA0 8097B3D0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 02AA4 8097B3D4 AFA5002C */ sw $a1, 0x002C($sp)
/* 02AA8 8097B3D8 AFA00010 */ sw $zero, 0x0010($sp)
/* 02AAC 8097B3DC 24060010 */ addiu $a2, $zero, 0x0010 ## $a2 = 00000010
/* 02AB0 8097B3E0 0C25E3F3 */ jal func_80978FCC
/* 02AB4 8097B3E4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 02AB8 8097B3E8 3C078098 */ lui $a3, %hi(D_8097BE0C) ## $a3 = 80980000
/* 02ABC 8097B3EC 24E7BE0C */ addiu $a3, $a3, %lo(D_8097BE0C) ## $a3 = 8097BE0C
/* 02AC0 8097B3F0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02AC4 8097B3F4 8FA5002C */ lw $a1, 0x002C($sp)
/* 02AC8 8097B3F8 0C25E257 */ jal func_8097895C
/* 02ACC 8097B3FC 26060184 */ addiu $a2, $s0, 0x0184 ## $a2 = 00000184
/* 02AD0 8097B400 3C078098 */ lui $a3, %hi(D_8097BE0C) ## $a3 = 80980000
/* 02AD4 8097B404 24E7BE0C */ addiu $a3, $a3, %lo(D_8097BE0C) ## $a3 = 8097BE0C
/* 02AD8 8097B408 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02ADC 8097B40C 8FA5002C */ lw $a1, 0x002C($sp)
/* 02AE0 8097B410 0C25E257 */ jal func_8097895C
/* 02AE4 8097B414 260601D0 */ addiu $a2, $s0, 0x01D0 ## $a2 = 000001D0
/* 02AE8 8097B418 3C078098 */ lui $a3, %hi(D_8097BE0C) ## $a3 = 80980000
/* 02AEC 8097B41C 24E7BE0C */ addiu $a3, $a3, %lo(D_8097BE0C) ## $a3 = 8097BE0C
/* 02AF0 8097B420 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02AF4 8097B424 8FA5002C */ lw $a1, 0x002C($sp)
/* 02AF8 8097B428 0C25E257 */ jal func_8097895C
/* 02AFC 8097B42C 2606021C */ addiu $a2, $s0, 0x021C ## $a2 = 0000021C
/* 02B00 8097B430 8FBF0024 */ lw $ra, 0x0024($sp)
/* 02B04 8097B434 8FB00020 */ lw $s0, 0x0020($sp)
/* 02B08 8097B438 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 02B0C 8097B43C 03E00008 */ jr $ra
/* 02B10 8097B440 00000000 */ nop

View file

@ -1,4 +0,0 @@
glabel func_8097B444
/* 02B14 8097B444 AFA40000 */ sw $a0, 0x0000($sp)
/* 02B18 8097B448 03E00008 */ jr $ra
/* 02B1C 8097B44C AFA50004 */ sw $a1, 0x0004($sp)

View file

@ -1,19 +0,0 @@
glabel func_8097B8E8
/* 02FB8 8097B8E8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 02FBC 8097B8EC AFBF001C */ sw $ra, 0x001C($sp)
/* 02FC0 8097B8F0 AFA50024 */ sw $a1, 0x0024($sp)
/* 02FC4 8097B8F4 AFA00010 */ sw $zero, 0x0010($sp)
/* 02FC8 8097B8F8 AFA40020 */ sw $a0, 0x0020($sp)
/* 02FCC 8097B8FC 24060011 */ addiu $a2, $zero, 0x0011 ## $a2 = 00000011
/* 02FD0 8097B900 0C25E3F3 */ jal func_80978FCC
/* 02FD4 8097B904 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 02FD8 8097B908 8FA40020 */ lw $a0, 0x0020($sp)
/* 02FDC 8097B90C 3C078098 */ lui $a3, %hi(D_8097BE38) ## $a3 = 80980000
/* 02FE0 8097B910 24E7BE38 */ addiu $a3, $a3, %lo(D_8097BE38) ## $a3 = 8097BE38
/* 02FE4 8097B914 8FA50024 */ lw $a1, 0x0024($sp)
/* 02FE8 8097B918 0C25E257 */ jal func_8097895C
/* 02FEC 8097B91C 24860184 */ addiu $a2, $a0, 0x0184 ## $a2 = 00000184
/* 02FF0 8097B920 8FBF001C */ lw $ra, 0x001C($sp)
/* 02FF4 8097B924 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 02FF8 8097B928 03E00008 */ jr $ra
/* 02FFC 8097B92C 00000000 */ nop

View file

@ -1,4 +0,0 @@
glabel func_8097B930
/* 03000 8097B930 AFA40000 */ sw $a0, 0x0000($sp)
/* 03004 8097B934 03E00008 */ jr $ra
/* 03008 8097B938 AFA50004 */ sw $a1, 0x0004($sp)

View file

@ -1,4 +1,5 @@
#include "z_demo_gj.h"
#include "overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.h"
#define FLAGS 0x00000030
@ -209,6 +210,12 @@ extern Vec3f D_8097BE70; // accel
extern Color_RGBA8 D_8097BE7C; // primColor
extern Color_RGBA8 D_8097BE80; // envColor
extern Vec3f D_8097BE88;
extern Vec3f D_8097BEA0;
extern ColliderCylinderInitType1 D_8097BDE0;
extern ColliderCylinderInitType1 D_8097BE0C;
extern ColliderCylinderInitType1 D_8097BE38;
s32 func_80978930(DemoGj *this) {
@ -318,34 +325,33 @@ s32 func_80978EBC(void) {
return 1;
}
void func_80978EE4(DemoGj* this, GlobalContext* globalCtx);
/*
void func_80978EE4(DemoGj* this, GlobalContext* globalCtx) {
Actor *temp_v0;
char *temp_v0_2;
char *phi_v0;
s32 func_80978EE4(DemoGj *this, GlobalContext *globalCtx);
#ifdef NON_MATCHING
s32 func_80978EE4(DemoGj *this, GlobalContext *globalCtx) {
Actor* actor;
if (this->unk_178 == 0) {
temp_v0 = globalCtx->actorCtx.actorLists[9].head;
phi_v0 = (char *) temp_v0;
if (temp_v0 != 0) {
loop_2:
if (phi_v0->unk0 == 0x17A) {
this->unk_178 = phi_v0;
osSyncPrintf((const char *) "Demo_Gj_Search_Boss_Ganon %d:ガノン発見!!!!\n", this->dyna.actor.params, this);
return;
}
temp_v0_2 = phi_v0->unk124;
phi_v0 = temp_v0_2;
if (temp_v0_2 != 0) {
goto loop_2;
if (this->ganon == NULL) {
actor = globalCtx->actorCtx.actorLists[ACTORCAT_BOSS].head;
for (; actor != NULL; actor = actor->next) {
if (actor->id == ACTOR_BOSS_GANON2) {
this->ganon = actor;
// Demo_Gj_Search_Boss_Ganon %d: Discover Ganon !!!!
osSyncPrintf("Demo_Gj_Search_Boss_Ganon %d:ガノン発見!!!!\n", this->dyna.actor.params, this);
return 1;
}
}
osSyncPrintf((const char *) "Demo_Gj_Search_Boss_Ganon %d:ガノン発見出来ず\n", this->dyna.actor.params, this);
// Demo_Gj_Search_Boss_Ganon %d: I couldn't find Ganon
osSyncPrintf("Demo_Gj_Search_Boss_Ganon %d:ガノン発見出来ず\n", this->dyna.actor.params, this);
}
return 0;
}
*/
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_80978EE4.s")
#endif
#ifdef NON_MATCHING
void func_80978F60(DemoGj* this, GlobalContext* globalCtx, CollisionHeader *arg2) {
@ -398,14 +404,14 @@ void func_80979030(DemoGj* this, GlobalContext* globalCtx, Gfx* displayList) {
}
void func_8097911C(DemoGj* this, GlobalContext* globalCtx, Gfx* displayList) {
void* dummy;
void* dummy; // Needed for matching.
GraphicsContext *gfxCtx;
s16 sp56;
s16 sp54;
s16 sp52;
void* dummy2;
void* dummy2; // Needed for matching.
Mtx* matrix;
sp56 = this->unk_16C.x;
@ -432,8 +438,104 @@ void func_8097911C(DemoGj* this, GlobalContext* globalCtx, Gfx* displayList) {
CLOSE_DISPS(gfxCtx, "../z_demo_gj.c", 1201);
}
void func_8097923C(DemoGj* this, UNK_TYPE arg1);
void func_8097923C(DemoGj* this, GlobalContext* globalCtx);
#ifdef NON_MATCHING
void func_8097923C(DemoGj *this, GlobalContext *globalCtx) {
f32 actor_y = this->dyna.actor.world.pos.y;
f32* actor_y_velocity = &this->dyna.actor.velocity.y;
f32* actor_speedXZ = &this->dyna.actor.speedXZ;
Vec3s* unk_172 = &this->unk_172;
f32 phi_f12;
f32 phi_f14;
f32 phi_f16;
f32 phi_f18;
f32 phi_f20;
f32 phi_f22;
switch (func_80978950(this) - 8) {
case 0:
phi_f12 = gGameInfo->data[2615];
phi_f14 = gGameInfo->data[2616] * 0.01f + 1.0f;
phi_f16 = gGameInfo->data[2617] * 0.01f + 1.0f;
phi_f18 = gGameInfo->data[2618] * 0.01f + 1.0f;
phi_f20 = gGameInfo->data[2619] * 0.01f + -1.0f;
phi_f22 = gGameInfo->data[2620] * 0.01f + 1.0f;
break;
case 1:
phi_f12 = gGameInfo->data[2628];
phi_f14 = gGameInfo->data[2629] * 0.01f + 1.0f;
phi_f16 = gGameInfo->data[2630] * 0.01f + 1.0f;
phi_f18 = gGameInfo->data[2631] * 0.01f + 1.0f;
phi_f20 = gGameInfo->data[2632] * 0.01f + -1.0f;
phi_f22 = gGameInfo->data[2633] * 0.01f + 1.0f;
break;
case 2:
phi_f12 = gGameInfo->data[2641];
phi_f14 = gGameInfo->data[2642] * 0.01f + 1.0f;
phi_f16 = gGameInfo->data[2643] * 0.01f + 1.0f;
phi_f18 = gGameInfo->data[2644] * 0.01f + 1.0f;
phi_f20 = gGameInfo->data[2645] * 0.01f + -1.0f;
phi_f22 = gGameInfo->data[2646] * 0.01f + 1.0f;
break;
case 3:
phi_f12 = gGameInfo->data[2654];
phi_f14 = gGameInfo->data[2655] * 0.01f + 1.0f;
phi_f16 = gGameInfo->data[2656] * 0.01f + 1.0f;
phi_f18 = gGameInfo->data[2657] * 0.01f + 1.0f;
phi_f20 = gGameInfo->data[2658] * 0.01f + -1.0f;
phi_f22 = gGameInfo->data[2659] * 0.01f + 1.0f;
break;
case 4:
phi_f12 = gGameInfo->data[2667];
phi_f14 = gGameInfo->data[2668] * 0.01f + 1.0f;
phi_f16 = gGameInfo->data[2669] * 0.01f + 1.0f;
phi_f18 = gGameInfo->data[2670] * 0.01f + 1.0f;
phi_f20 = gGameInfo->data[2671] * 0.01f + -1.0f;
phi_f22 = gGameInfo->data[2672] * 0.01f + 1.0f;
break;
case 5:
phi_f12 = gGameInfo->data[2680];
phi_f14 = gGameInfo->data[2681] * 0.01f + 1.0f;
phi_f16 = gGameInfo->data[2682] * 0.01f + 1.0f;
phi_f18 = gGameInfo->data[2683] * 0.01f + 1.0f;
phi_f20 = gGameInfo->data[2684] * 0.01f + -1.0f;
phi_f22 = gGameInfo->data[2685] * 0.01f + 1.0f;
break;
case 6:
phi_f12 = gGameInfo->data[2602] + -190.0f;
phi_f14 = gGameInfo->data[2601] * 0.01f + 1.0f;
phi_f16 = gGameInfo->data[2600] * 0.01f + 1.0f;
phi_f18 = gGameInfo->data[2599] * 0.01f + 1.0f;
phi_f20 = gGameInfo->data[2598] * 0.01f + -1.0f;
phi_f22 = gGameInfo->data[2597] * 0.01f + 1.0f;
break;
default:
osSyncPrintf("\x1b[31mDemo_Gj_common_Reflect : そんなarg_dataには対応していない = %d\n\x1b[m", this->dyna.actor.params);
return;
}
if ((actor_y + phi_f12) <= 1086.0f) {
if ((*actor_y_velocity < 0.0f) && (this->unk_180 == 0)) {
*actor_y_velocity *= phi_f20;
*actor_speedXZ *= phi_f22;
unk_172->x *= phi_f14;
unk_172->y *= phi_f16;
unk_172->z *= phi_f18;
if (*actor_y_velocity <= -this->dyna.actor.gravity) {
*actor_y_velocity = 0.0f;
*actor_speedXZ = 0.0f;
unk_172->x = 0;
unk_172->y = 0;
unk_172->z = 0;
}
this->unk_180 = 1;
}
}
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097923C.s")
#endif
/*
s32 func_809797E4(void* arg0, s32 arg1) {
@ -449,14 +551,14 @@ s32 func_809797E4(void* arg0, s32 arg1) {
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_809797E4.s")
/*
void func_80979818(? arg1) {
s32 func_80979818(? arg1) {
func_809797E4(1);
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_80979818.s")
/*
void func_8097983C(? arg1) {
s32 func_8097983C(? arg1) {
func_809797E4(2);
}
*/
@ -477,34 +579,39 @@ void func_80979FD0(DemoGj* this, GlobalContext* globalCtx) {
func_80978FCC(this, globalCtx, 1, 2, &D_06001F70);
}
void func_8097A000(DemoGj* this, s32 arg1);
void func_8097A000(DemoGj* this, GlobalContext* globalCtx);
#ifdef NON_MATCHING
void func_8097A000(DemoGj *this, s32 arg1) {
/*
void func_8097A000(DemoGj *this, GlobalContext *globalCtx) {
Actor_MoveForward(&this->dyna.actor);
this->unk_16C.x += gGameInfo->data[2610];
this->unk_16C.y += 0x3E8 + gGameInfo->data[2611];
this->unk_16C.z = 0xBB8 + gGameInfo->data[2612] + this->unk_16C.z;
func_8097923C(this, arg1);
func_8097923C(this, globalCtx);
}
*/
void func_8097A000(DemoGj *this, GlobalContext *globalCtx) {
Actor_MoveForward(&this->dyna.actor);
this->unk_16C.x = this->unk_16C.x + gGameInfo->data[2610];
this->unk_16C.y = this->unk_16C.y + (gGameInfo->data[2611] + 0x3E8);
this->unk_16C.z = this->unk_16C.z + (gGameInfo->data[2612] + 0xBB8);
func_8097923C(this, globalCtx);
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097A000.s")
#endif
//s32 func_8097A07C(DemoGj* this, GlobalContext* globalCtx);
void func_8097A07C(DemoGj* this, GlobalContext* globalCtx);
/*
s32 func_8097A07C(DemoGj* this, GlobalContext* globalCtx) {
s32 phi_return;
phi_return = globalCtx + 0x10000;
if (this->unk17C == 0) {
if (((u32) globalCtx->gameplayFrames % 3U) == 0) {
this = this;
void func_8097A07C(DemoGj *this, GlobalContext *globalCtx) {
if (this->unk_17C == 0) {
if ((globalCtx->gameplayFrames % 3)==0) {
func_80978AFC(globalCtx, &D_8097BE88, 300.0f);
}
phi_return = func_80979F9C(this);
func_80979F9C(this);
}
return phi_return;
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097A07C.s")
@ -759,9 +866,25 @@ void func_8097A814(DemoGj* this, GlobalContext* globalCtx) {
#endif
void func_8097A890(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097A890(DemoGj *this, GlobalContext *globalCtx) {
if (func_80979818() != 0) {
func_80979860(this, globalCtx);
this->unk_164 = 0xC;
this->unk_168 = 0xD;
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097A890.s")
void func_8097A8DC(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097A8DC(DemoGj *this, GlobalContext *globalCtx) {
if (func_8097983C() != 0) {
Actor_Kill((Actor *) this);
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097A8DC.s")
void func_8097A90C(DemoGj *this, GlobalContext *globalCtx) {
@ -782,16 +905,42 @@ void func_8097A990(DemoGj *this, GlobalContext *globalCtx) {
func_8097911C(this, globalCtx, &D_06002E80);
}
void func_8097A9B4(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097A9B4.s")
void func_8097A9B4(DemoGj *this, GlobalContext *globalCtx) {
func_80978FCC(this, globalCtx, 6, 7, &D_060033E0);
}
void func_8097A9E4(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097A9E4(DemoGj *this, GlobalContext *globalCtx) {
Actor_MoveForward((Actor *) this);
this->unk_16C.x = this->unk_16C.x + gGameInfo->data[2675];
this->unk_16C.y = this->unk_16C.y + (gGameInfo->data[2676] + 0x3E8);
this->unk_16C.z = this->unk_16C.z + (gGameInfo->data[2677] + 0xBB8);
func_8097923C(this, globalCtx);
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097A9E4.s")
void func_8097AA60(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097AA60(DemoGj *this, GlobalContext *globalCtx) {
if (func_80979818() != 0) {
func_80979860(this, globalCtx);
this->unk_164 = 0xD;
this->unk_168 = 0xE;
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AA60.s")
void func_8097AAAC(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097AAAC(DemoGj *this, GlobalContext *globalCtx) {
if (func_8097983C() != 0) {
Actor_Kill((Actor *) this);
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AAAC.s")
void func_8097AADC(DemoGj *this, GlobalContext *globalCtx) {
@ -812,19 +961,55 @@ void func_8097AB60(DemoGj *this, GlobalContext *globalCtx) {
func_8097911C(this, globalCtx, &D_06003190);
}
void func_8097AB84(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AB84.s")
void func_8097AB84(DemoGj *this, GlobalContext *globalCtx) {
func_80978FCC(this, globalCtx, 7, 8, &D_06003AF0);
}
void func_8097ABB4(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097ABB4(DemoGj *this, GlobalContext *globalCtx) {
Actor_MoveForward((Actor *) this);
this->unk_16C.x = this->unk_16C.x + gGameInfo->data[2607];
this->unk_16C.y = this->unk_16C.y + (gGameInfo->data[2606] + 0x3E8);
this->unk_16C.z = this->unk_16C.z + (gGameInfo->data[2605] + 0xBB8);
func_8097923C(this, globalCtx);
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097ABB4.s")
void func_8097AC30(DemoGj *this, GlobalContext *globalCtx);
/*void func_8097AC30(DemoGj *this, GlobalContext *globalCtx) {
if (this->unk_17C == 0) {
if (((u32) globalCtx->gameplayFrames % 3U) == 2) {
this = this;
func_80978AFC(globalCtx, &D_8097BEA0, 300.0f);
}
func_80979F9C(this);
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AC30.s")
void func_8097AC9C(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097AC9C(DemoGj *this, GlobalContext *globalCtx) {
if (func_80979818() != 0) {
func_80979860(this, globalCtx);
this->unk_164 = 0xE;
this->unk_168 = 0xF;
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AC9C.s")
void func_8097ACE8(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097ACE8(DemoGj *this, GlobalContext *globalCtx) {
if (func_8097983C() != 0) {
Actor_Kill((Actor *) this);
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097ACE8.s")
void func_8097AD18(DemoGj *this, GlobalContext *globalCtx) {
@ -845,8 +1030,9 @@ void func_8097AD9C(DemoGj *this, GlobalContext *globalCtx) {
func_8097911C(this, globalCtx, &D_06003710);
}
void func_8097ADC0(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097ADC0.s")
void func_8097ADC0(DemoGj *this, GlobalContext *globalCtx) {
func_80978FCC(this, globalCtx, 0, 1, &D_06001B70);
}
void func_8097ADF0(DemoGj *this, GlobalContext *globalCtx) {
func_80978EE4(this, globalCtx);
@ -859,11 +1045,15 @@ void func_8097AE38(DemoGj *this, GlobalContext *globalCtx) {
func_80979030(this, globalCtx, &D_06000DC0);
}
void func_8097AE5C(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AE5C.s")
void func_8097AE5C(DemoGj *this, GlobalContext *globalCtx) {
func_80978FCC(this, globalCtx, 0xF, 0, 0);
func_8097895C(this, globalCtx, &this->unk_184, &D_8097BDE0);
func_8097895C(this, globalCtx, &this->unk_1D0, &D_8097BDE0);
func_8097895C(this, globalCtx, &this->unk_21C, &D_8097BDE0);
}
void func_8097AEDC(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AEDC.s")
void func_8097AEDC(DemoGj *this, GlobalContext *globalCtx) {
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097AEE8.s")
@ -872,11 +1062,57 @@ void func_8097AEDC(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B0EC.s")
void func_8097B128(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097B128(DemoGj *this, GlobalContext *globalCtx) {
DemoGj *temp_a0;
Vec3f *temp_v0;
temp_a0 = this;
if (func_8097983C() != 0) {
this = temp_a0;
func_80978F60(temp_a0, globalCtx, &D_06001F70);
this->unk_164 = 0x12;
this->unk_168 = 0x10;
temp_v0 = &this->dyna.actor.scale;
temp_v0->x = temp_v0->x * 0.8f;
temp_v0->y = temp_v0->y * 0.8f;
temp_v0->z = temp_v0->z * 0.8f;
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B128.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B1B4.s")
void func_8097B22C(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097B22C(DemoGj *this, GlobalContext *globalCtx) {
? sp30;
f32 sp28;
? sp24;
if (func_809797E4(4) != 0) {
Actor_Kill((Actor *) this);
} else if (func_8097B1B4(this, globalCtx) != 0) {
sp30.unk0 = (s32) D_8097BEAC.unk0;
sp30.unk4 = (s32) D_8097BEAC.unk4;
sp30.unk8 = (s32) D_8097BEAC.unk8;
func_80978B90(this, globalCtx);
func_8097B0EC(this, globalCtx, &sp30);
Actor_Kill((Actor *) this);
} else if (this->unk_268 != 0) {
sp24.unk0 = (s32) this->unk26C;
sp24.unk4 = (s32) this->unk270;
sp24.unk8 = (s32) this->unk274;
sp28 = 0.0f;
func_80978B90(this, globalCtx);
func_8097B0EC(this, globalCtx, &sp24);
Actor_Kill((Actor *) this);
}
func_8097AEE8(this, globalCtx);
func_8097B080(this, globalCtx);
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B22C.s")
void func_8097B340(DemoGj *this, GlobalContext *globalCtx) {
@ -893,11 +1129,15 @@ void func_8097B3A0(DemoGj *this, GlobalContext *globalCtx) {
func_80979030(this, globalCtx, &D_06001D20);
}
void func_8097B3C4(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B3C4.s")
void func_8097B3C4(DemoGj *this, GlobalContext *globalCtx) {
func_80978FCC(this, globalCtx, 0x10, 0, 0);
func_8097895C(this, globalCtx, &this->unk_184, &D_8097BE0C);
func_8097895C(this, globalCtx, &this->unk_1D0, &D_8097BE0C);
func_8097895C(this, globalCtx, &this->unk_21C, &D_8097BE0C);
}
void func_8097B444(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B444.s")
void func_8097B444(DemoGj *this, GlobalContext *globalCtx) {
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B450.s")
@ -908,9 +1148,55 @@ void func_8097B444(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B688.s")
void func_8097B6C4(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097B6C4(DemoGj *this, GlobalContext *globalCtx) {
DemoGj *temp_a0;
Vec3f *temp_v0;
temp_a0 = this;
if (func_8097983C() != 0) {
this = temp_a0;
func_80978F60(temp_a0, globalCtx, &D_06002448);
this->unk_164 = 0x13;
this->unk_168 = 0x11;
temp_v0 = &this->dyna.actor.scale;
temp_v0->x = temp_v0->x * 0.8f;
temp_v0->y = temp_v0->y * 0.8f;
temp_v0->z = temp_v0->z * 0.8f;
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B6C4.s")
void func_8097B750(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097B750(DemoGj *this, GlobalContext *globalCtx) {
? sp30;
f32 sp28;
? sp24;
if (func_809797E4(4) != 0) {
Actor_Kill((Actor *) this);
} else if (func_8097B610(this, globalCtx) != 0) {
sp30.unk0 = (s32) D_8097BEB8.unk0;
sp30.unk4 = (s32) D_8097BEB8.unk4;
sp30.unk8 = (s32) D_8097BEB8.unk8;
func_80978B90(this, globalCtx);
func_8097B688(this, globalCtx, &sp30);
Actor_Kill((Actor *) this);
} else if (this->unk_268 != 0) {
sp24.unk0 = (s32) this->unk26C;
sp24.unk4 = (s32) this->unk270;
sp24.unk8 = (s32) this->unk274;
sp28 = 0.0f;
func_80978B90(this, globalCtx);
func_8097B688(this, globalCtx, &sp24);
Actor_Kill((Actor *) this);
}
func_8097B450(this, globalCtx);
func_8097B5A4(this, globalCtx);
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B750.s")
void func_8097B864(DemoGj *this, GlobalContext *globalCtx) {
@ -927,18 +1213,77 @@ void func_8097B8C4(DemoGj *this, GlobalContext *globalCtx) {
func_80979030(this, globalCtx, &D_06002160);
}
void func_8097B8E8(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B8E8.s")
void func_8097B8E8(DemoGj *this, GlobalContext *globalCtx) {
func_80978FCC(this, globalCtx, 0x11, 0, 0);
func_8097895C(this, globalCtx, &this->unk_184, &D_8097BE38);
}
void func_8097B930(DemoGj *this, GlobalContext *globalCtx);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B930.s")
void func_8097B930(DemoGj *this, GlobalContext *globalCtx) {
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B93C.s")
void func_8097B9BC(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097B9BC(DemoGj *this, GlobalContext *globalCtx) {
DemoGj *temp_a0;
Vec3f *temp_v0;
temp_a0 = this;
if (func_8097983C() != 0) {
this = temp_a0;
func_80978F60(temp_a0, globalCtx, (CollisionHeader *) &D_06003AF0);
this->unk_164 = 0x14;
this->unk_168 = 0x12;
temp_v0 = &this->dyna.actor.scale;
temp_v0->x = temp_v0->x * 0.8f;
temp_v0->y = temp_v0->y * 0.8f;
temp_v0->z = temp_v0->z * 0.8f;
}
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097B9BC.s")
void func_8097BA48(DemoGj *this, GlobalContext *globalCtx);
/*
void func_8097BA48(DemoGj *this, GlobalContext *globalCtx) {
? sp3C;
f32 sp34;
? sp30;
ColliderCylinder *temp_s2;
ColliderCylinder *phi_s2;
if (func_809797E4(4) != 0) {
Actor_Kill((Actor *) this);
phi_s2 = &this->unk_184;
} else {
temp_s2 = &this->unk_184;
if (func_809789A4(this, globalCtx, temp_s2) != 0) {
sp3C.unk0 = (s32) D_8097BEC4.unk0;
sp3C.unk4 = (s32) D_8097BEC4.unk4;
sp3C.unk8 = (s32) D_8097BEC4.unk8;
func_80978B90(this, globalCtx);
func_8097B93C(this, globalCtx, &sp3C);
Actor_Kill((Actor *) this);
phi_s2 = temp_s2;
} else {
phi_s2 = temp_s2;
if (this->unk_268 != 0) {
sp30.unk0 = (s32) this->unk26C;
sp30.unk4 = (s32) this->unk270;
sp30.unk8 = (s32) this->unk274;
sp34 = 0.0f;
func_80978B90(this, globalCtx);
func_8097B93C(this, globalCtx, &sp30);
Actor_Kill((Actor *) this);
phi_s2 = temp_s2;
}
}
}
Collider_UpdateCylinder((Actor *) this, phi_s2);
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, (Collider *) phi_s2);
}
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Demo_Gj/func_8097BA48.s")
void func_8097BB78(DemoGj *this, GlobalContext *globalCtx) {

View file

@ -11,8 +11,10 @@ typedef struct DemoGj {
/* 0x0164 */ s32 unk_164;
/* 0x0168 */ s32 unk_168;
/* 0x016C */ Vec3s unk_16C; // x,y,z?
/* 0x0172 */ char unk_172[0x06];
/* 0x0178 */ char unk_178[0x0C];
/* 0x0172 */ Vec3s unk_172;
/* 0x0178 */ Actor* ganon;
/* 0x017C */ char unk_17C[0x04];
/* 0x0180 */ s32 unk_180;
/* 0x0184 */ ColliderCylinder unk_184;
/* 0x01D0 */ ColliderCylinder unk_1D0;
/* 0x021C */ ColliderCylinder unk_21C;