Skip to content

Commit

Permalink
Merge branch 'master' into mpColl_80046904_inlines
Browse files Browse the repository at this point in the history
  • Loading branch information
ribbanya authored Feb 15, 2024
2 parents b9a5d4e + 42ef5de commit fae32eb
Show file tree
Hide file tree
Showing 10 changed files with 1,947 additions and 1,784 deletions.
3,579 changes: 1,823 additions & 1,756 deletions asm/melee/ef/eflib.s

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions config/GALE01/scratches.txt
Original file line number Diff line number Diff line change
Expand Up @@ -595,8 +595,8 @@ func_8005AC8C = OK:0x8005AC8C; // author:ssbmcortex id:52CHk updated:2023-01-30T
func_8005AC8C = OK:0x8005AC8C; // id:p5dgh parent:52CHk updated:2023-01-30T21:06:33.671596Z created:2023-01-30T20:55:19.506976Z
func_8005ACE8 = OK:0x8005ACE8; // author:ssbmcortex id:cXB25 updated:2023-02-09T05:00:09.210693Z created:2023-02-01T17:13:16.864626Z
func_8005ACE8 = OK:0x8005ACE8; // id:QxHkk parent:cXB25 updated:2023-02-09T12:08:50.849266Z created:2023-02-09T12:07:51.04481Z
efLib_8005CC2C = 100%:0x8005CC2C; // author:RevoSucks id:5etom updated:2023-12-17T22:09:48.448833Z created:2023-12-17T22:02:34.883806Z
func_8005FCD8 = 66.77%:0x8005FCD8; // author:ribbanya id:C3oLq parent:mPRxu updated:2022-12-06T04:44:16.194032Z created:2022-12-06T04:35:16.653878Z
efLib_8005CC2C = OK:0x8005CC2C; // author:RevoSucks id:5etom updated:2023-12-17T22:09:48.448833Z created:2023-12-17T22:02:34.883806Z
func_8005FCD8 = OK:0x8005FCD8; // author:ribbanya id:C3oLq parent:mPRxu updated:2022-12-06T04:44:16.194032Z created:2022-12-06T04:35:16.653878Z
Fighter_800679B0 = 100%:0x800679B0; // author:RevoSucks id:vHQNe updated:2022-12-24T23:49:02.60415Z created:2022-12-24T23:47:30.524476Z
Fighter_800679B0 = 100%:0x800679B0; // author:RevoSucks id:C71Lx parent:vHQNe updated:2022-12-24T23:59:56.487771Z created:2022-12-24T23:49:08.583259Z
func_800679B0 = 99.81%:0x800679B0; // author:Ka-lua id:2ujaZ updated:2022-02-15T16:41:29.224135Z created:2022-02-15T12:31:12.335143Z
Expand Down
46 changes: 46 additions & 0 deletions src/melee/ef/eflib.c
Original file line number Diff line number Diff line change
@@ -1 +1,47 @@
#include "eflib.h"

#include "types.h"

#include <placeholder.h>
#include <baselib/jobj.h>
#include <baselib/particle.h>
#include <baselib/psappsrt.h>

void efLib_8005CC2C(int arg0, HSD_JObj* arg1)
{
UnkGeneratorStruct* particle = hsd_8039EFAC(0, arg0 / 1000, arg0, arg1);
if (particle != NULL) {
particle->x16_flags &= ~PSAPPSRT_UNK_B10;
}
}

ef_UnkStruct0* efLib_8005FCD8(int arg0, int arg2, ef_UnkStruct1* arg3)
{
UnkGeneratorMember* var_r3;
UnkGeneratorStruct* temp_r3_2;
ef_UnkStruct0* temp_r3;

temp_r3 = efLib_8005BE88(0);
if (temp_r3 != NULL) {
temp_r3->x8 = fn_8005FBE4;
temp_r3->x4 = arg2;
temp_r3->x10 = arg3->x0;
temp_r3->x14 = arg3->x4;
temp_r3->x18 = arg3->x8;
temp_r3_2 = hsd_8039EFAC(0, arg0 / 1000, arg0, temp_r3->x0->x0);
if (temp_r3_2 != NULL) {
var_r3 = temp_r3_2->x54;
if (var_r3 == NULL) {
var_r3 = psAddGeneratorAppSRT_begin(temp_r3_2, 0);
}
if (var_r3 != NULL) {
var_r3->x4 = temp_r3_2;
temp_r3_2->x16_flags &= ~PSAPPSRT_UNK_B09;
temp_r3_2->x16_flags |= PSAPPSRT_UNK_B11;
} else {
hsd_8039D4DC(temp_r3_2);
}
}
}
return temp_r3;
}
9 changes: 6 additions & 3 deletions src/melee/ef/eflib.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,16 @@
#define GALE01_05B4B8

#include <platform.h>
#include "ef/forward.h"
#include <baselib/forward.h>

#include <placeholder.h>

/* 05B880 */ void efLib_DestroyAll(HSD_GObj* gobj);
/* 05BA40 */ void efLib_PauseAll(HSD_GObj* gobj);
/* 05BAC4 */ void efLib_ResumeAll(HSD_GObj* gobj);
/* 05BE88 */ ef_UnkStruct0* efLib_8005BE88(int);
/* 05F864 */ void efLib_8005F864(HSD_GObj* gobj, s8, float, float);
void efLib_PauseAll(HSD_GObj* gobj);
void efLib_ResumeAll(HSD_GObj* gobj);
void efLib_DestroyAll(HSD_GObj* gobj);
/* 05FBE4 */ UNK_RET fn_8005FBE4(UNK_PARAMS);

#endif
8 changes: 8 additions & 0 deletions src/melee/ef/forward.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#ifndef MELEE_EF_FORWARD_H
#define MELEE_EF_FORWARD_H

typedef struct ef_UnkStruct0 ef_UnkStruct0;
typedef struct ef_UnkStruct1 ef_UnkStruct1;
typedef struct ef_UnkStruct2 ef_UnkStruct2;

#endif
31 changes: 31 additions & 0 deletions src/melee/ef/types.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#ifndef MELEE_EF_TYPES_H
#define MELEE_EF_TYPES_H

#include "ef/forward.h" // IWYU pragma: export
#include <baselib/forward.h>

#include <placeholder.h>

struct ef_UnkStruct2 {
/* +0 */ HSD_JObj* x0;
};

struct ef_UnkStruct0 {
/* +0 */ ef_UnkStruct2* x0;
/* +4 */ int x4;
/* +8 */ UNK_T x8;
/* +C */ s16 xC;
/* +E */ s16 xE;
/* +10 */ int x10;
/* +14 */ int x14;
/* +18 */ int x18;
};

struct ef_UnkStruct1 {
/* +0 */ int x0;
/* +4 */ int x4;
/* +8 */ int x8;
/* +C */ int xC;
};

#endif
27 changes: 14 additions & 13 deletions src/sysdolphin/baselib/forward.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,21 @@

#include <platform.h>

typedef struct HSD_AnimJoint HSD_AnimJoint;
typedef struct HSD_AObj HSD_AObj;
typedef struct HSD_AObjDesc HSD_AObjDesc;
typedef struct HSD_AnimJoint HSD_AnimJoint;
typedef struct HSD_Archive HSD_Archive;
typedef struct HSD_ArchiveExternInfo HSD_ArchiveExternInfo;
typedef struct HSD_ArchiveHeader HSD_ArchiveHeader;
typedef struct HSD_ArchivePublicInfo HSD_ArchivePublicInfo;
typedef struct HSD_ArchiveRelocationInfo HSD_ArchiveRelocationInfo;
typedef struct HSD_ByteCodeExpDesc HSD_ByteCodeExpDesc;
typedef struct HSD_CObj HSD_CObj;
typedef union HSD_CObjDesc HSD_CObjDesc;
typedef struct HSD_CObjInfo HSD_CObjInfo;
typedef struct HSD_CameraAnim HSD_CameraAnim;
typedef struct HSD_CameraDescCommon HSD_CameraDescCommon;
typedef struct HSD_CameraDescFrustum HSD_CameraDescFrustum;
typedef struct HSD_CameraDescPerspective HSD_CameraDescPerspective;
typedef struct HSD_CObj HSD_CObj;
typedef struct HSD_CObjInfo HSD_CObjInfo;
typedef struct HSD_DObj HSD_DObj;
typedef struct HSD_DObjDesc HSD_DObjDesc;
typedef struct HSD_DObjInfo HSD_DObjInfo;
Expand All @@ -36,42 +35,43 @@ typedef struct HSD_GObj HSD_GObj;
typedef struct HSD_GObjProc HSD_GObjProc;
typedef struct HSD_IKHint HSD_IKHint;
typedef struct HSD_IKHintDesc HSD_IKHintDesc;
typedef struct HSD_ImageDesc HSD_ImageDesc;
typedef struct HSD_JObj HSD_JObj;
typedef struct HSD_Joint HSD_Joint;
typedef struct HSD_LObj HSD_LObj;
typedef struct HSD_LObjInfo HSD_LObjInfo;
typedef struct HSD_LightAnim HSD_LightAnim;
typedef struct HSD_LightAttn HSD_LightAttn;
typedef struct HSD_LightDesc HSD_LightDesc;
typedef struct HSD_LightPoint HSD_LightPoint;
typedef struct HSD_LightPointDesc HSD_LightPointDesc;
typedef struct HSD_LightSpot HSD_LightSpot;
typedef struct HSD_LightSpotDesc HSD_LightSpotDesc;
typedef struct HSD_MObj HSD_MObj;
typedef struct HSD_MObjInfo HSD_MObjInfo;
typedef struct HSD_LObj HSD_LObj;
typedef struct HSD_LObjInfo HSD_LObjInfo;
typedef struct HSD_MatAnimJoint HSD_MatAnimJoint;
typedef struct HSD_Material HSD_Material;
typedef struct HSD_MObj HSD_MObj;
typedef struct HSD_MObjInfo HSD_MObjInfo;
typedef struct HSD_Obj HSD_Obj;
typedef struct HSD_PadData HSD_PadData;
typedef struct HSD_PadRumbleListData HSD_PadRumbleListData;
typedef struct HSD_PadStatus HSD_PadStatus;
typedef struct HSD_PEDesc HSD_PEDesc;
typedef struct HSD_PObj HSD_PObj;
typedef struct HSD_PObjDesc HSD_PObjDesc;
typedef struct HSD_PObjInfo HSD_PObjInfo;
typedef struct HSD_PadData HSD_PadData;
typedef struct HSD_PadRumbleListData HSD_PadRumbleListData;
typedef struct HSD_PadStatus HSD_PadStatus;
typedef struct HSD_RObj HSD_RObj;
typedef struct HSD_RObjAnimJoint HSD_RObjAnimJoint;
typedef struct HSD_RObjDesc HSD_RObjDesc;
typedef struct HSD_RumbleData HSD_RumbleData;
typedef struct HSD_Rvalue HSD_Rvalue;
typedef struct HSD_RvalueList HSD_RvalueList;
typedef struct HSD_SM HSD_SM;
typedef struct HSD_Shadow HSD_Shadow;
typedef struct HSD_ShapeAnim HSD_ShapeAnim;
typedef struct HSD_ShapeAnimDObj HSD_ShapeAnimDObj;
typedef struct HSD_ShapeAnimJoint HSD_ShapeAnimJoint;
typedef struct HSD_ShapeSet HSD_ShapeSet;
typedef struct HSD_ShapeSetDesc HSD_ShapeSetDesc;
typedef struct HSD_SM HSD_SM;
typedef struct HSD_Spline HSD_Spline;
typedef struct HSD_TExpDag HSD_TExpDag;
typedef struct HSD_TExpRes HSD_TExpRes;
Expand All @@ -86,8 +86,9 @@ typedef struct PadLibData PadLibData;
typedef struct RumbleCommand RumbleCommand;
typedef struct RumbleInfo RumbleInfo;
typedef struct TextKerning TextKerning;
typedef struct UnkGeneratorMember UnkGeneratorMember;
typedef struct UnkGeneratorStruct UnkGeneratorStruct;
typedef struct _HSD_ImageDesc HSD_ImageDesc;
typedef union HSD_CObjDesc HSD_CObjDesc;
typedef union HSD_ObjData HSD_ObjData;
typedef union HSD_Rumble HSD_Rumble;
typedef union HSD_TExp HSD_TExp;
Expand Down
2 changes: 1 addition & 1 deletion src/sysdolphin/baselib/particle.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
/* 393A54 */ void hsd_80393A54(bool);
/* 39D4DC */ void hsd_8039D4DC(UnkGeneratorStruct*);
/* 39D5DC */ void hsd_8039D5DC(s32);
/* 39EFAC */ void hsd_8039EFAC(s32, s32, s32, HSD_JObj*);
/* 39EFAC */ UnkGeneratorStruct* hsd_8039EFAC(s32, s32, s32, HSD_JObj*);
/* 39F6CC */ void hsd_8039F6CC(s32, s32, s32, HSD_JObj*);
/* 4D78D0 */ extern u32 hsd_804D78D0;
/* 4D78D4 */ extern u32 hsd_804D78D4;
Expand Down
15 changes: 11 additions & 4 deletions src/sysdolphin/baselib/psappsrt.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,29 @@
#include <platform.h>
#include "baselib/forward.h"

#include <placeholder.h>
#include <dolphin/mtx/types.h>

typedef struct _UnkGeneratorMember { // MexTK: GeneratorAppSRT
u32 x0_fill[2];
#define PSAPPSRT_UNK_B09 (1 << 9)
#define PSAPPSRT_UNK_B10 (1 << 10)
#define PSAPPSRT_UNK_B11 (1 << 11)

/// MexTK: GeneratorAppSRT
struct UnkGeneratorMember {
UNK_T x0;
UnkGeneratorStruct* x4;
S32Vec3 x8;
u8 x14_fill[0x10];
f32 x24;
f32 x28;
f32 x2C;
u8 x30_fill[0x72];
s8 xA2;
} UnkGeneratorMember;
};

/// @remarks MexTK: Particle
struct UnkGeneratorStruct {
struct UnkGeneratorStruct* next;
UnkGeneratorStruct* next;
u8 x4_fill[0xC];
HSD_JObj* x10_jobj;
u16 x14_fill;
Expand Down
10 changes: 5 additions & 5 deletions src/sysdolphin/baselib/tobj.h
Original file line number Diff line number Diff line change
Expand Up @@ -145,11 +145,11 @@ struct HSD_TObj {
u32 flags;
f32 blending;
GXTexFilter magFilt;
struct _HSD_ImageDesc* imagedesc;
struct HSD_ImageDesc* imagedesc;
struct _HSD_Tlut* tlut;
struct _HSD_TexLODDesc* lod;
HSD_AObj* aobj;
struct _HSD_ImageDesc** imagetbl;
struct HSD_ImageDesc** imagetbl;
struct _HSD_Tlut** tluttbl;
u8 tlut_no;
Mtx mtx;
Expand All @@ -172,7 +172,7 @@ typedef struct _HSD_TObjDesc {
u32 blend_flags;
f32 blending;
GXTexFilter magFilt;
struct _HSD_ImageDesc* imagedesc;
struct HSD_ImageDesc* imagedesc;
struct _HSD_TlutDesc* tlutdesc;
struct _HSD_TexLODDesc* lod;
struct _HSD_TObjTevDesc* tev;
Expand Down Expand Up @@ -200,7 +200,7 @@ typedef struct _HSD_TexLODDesc {
GXAnisotropy max_anisotropy;
} HSD_TexLODDesc;

struct _HSD_ImageDesc {
struct HSD_ImageDesc {
void* image_ptr;
u16 width;
u16 height;
Expand Down Expand Up @@ -252,7 +252,7 @@ typedef struct _HSD_TexAnim {
struct _HSD_TexAnim* next;
GXTexMapID id;
HSD_AObjDesc* aobjdesc;
struct _HSD_ImageDesc** imagetbl;
struct HSD_ImageDesc** imagetbl;
struct _HSD_TlutDesc** tluttbl;
u16 n_imagetbl;
u16 n_tluttbl;
Expand Down

0 comments on commit fae32eb

Please sign in to comment.