From 678233f749afe3e92154f89696a36f75c507af69 Mon Sep 17 00:00:00 2001 From: angie Date: Sun, 17 Jan 2021 15:32:52 -0300 Subject: [PATCH] Fix some pointers in the struct Signed-off-by: angie --- src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c | 18 ++++++++++++------ src/overlays/actors/ovl_Eff_Dust/z_eff_dust.h | 4 +++- undefined_syms.txt | 1 + 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c index eeb914bac6..814394e882 100644 --- a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c +++ b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c @@ -25,24 +25,26 @@ const ActorInit Eff_Dust_InitVars = { }; */ +extern Gfx D_8099EB60[]; + //#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/func_8099D8D0.s") -void func_8099D8D0(void *arg0, s32 arg1) { - //arg0->unk560 = arg1; - *((s32*)arg0 + 0x0560/4) = arg1; +void func_8099D8D0(EffDust* this, void (*callback)()) { + this->unk_0560 = callback; } //#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/func_8099D8D8.s") -void func_8099D8D8(void *arg0, s32 arg1) { - //arg0->unk564 = arg1; - *((s32*)arg0 + 0x0564/4) = arg1; +void func_8099D8D8(EffDust* this, void (*callback)()) { + this->unk_0564 = callback; } #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/func_8099D8E0.s") +s32 func_8099D8E0(EffDust* this); + #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/EffDust_Init.s") //#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/EffDust_Destroy.s") @@ -62,6 +64,10 @@ void EffDust_Destroy(Actor *thisx, GlobalContext *globalCtx) { #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/func_8099E4F4.s") +void func_8099E4F4(EffDust* this, GlobalContext* globalCtx); + #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/func_8099E784.s") +void func_8099E784(EffDust* this, GlobalContext* globalCtx); + #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Eff_Dust/EffDust_Draw.s") diff --git a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.h b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.h index 6df1016812..f7f06e5a33 100644 --- a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.h +++ b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.h @@ -8,7 +8,9 @@ struct EffDust; typedef struct EffDust { /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x41C]; + /* 0x014C */ char unk_14C[0x414]; + /* 0x0560 */ void (*unk_0560)(); + /* 0x0560 */ void (*unk_0564)(); } EffDust; // size = 0x0568 extern const ActorInit Eff_Dust_InitVars; diff --git a/undefined_syms.txt b/undefined_syms.txt index 49d1486d83..6dec19bf9b 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -2348,6 +2348,7 @@ D_060027D8 = 0x060027D8; // z_eff_dust D_04037880 = 0x04037880; +D_8099EB60 = 0x8099EB60; // z_en_am D_06000118 = 0x06000118;