fopKy_Draw attempt

This commit is contained in:
Pheenoh 2021-03-21 16:52:43 -04:00
parent d22c4f797d
commit 717afc1429
No known key found for this signature in database
GPG Key ID: 4312662758CE7D5A
6 changed files with 34 additions and 31 deletions

View File

@ -362,8 +362,8 @@ lbl_80450CD8:
.global l_fopScnRq_IsUsingOfOverlap
l_fopScnRq_IsUsingOfOverlap:
.skip 0x8
.global lbl_80450CE8
lbl_80450CE8:
.global fopKy_KANKYO_TYPE
fopKy_KANKYO_TYPE:
.skip 0x8
.global lbl_80450CF0
lbl_80450CF0:

View File

@ -8,7 +8,7 @@
/* 8001F3D0 0001C310 7C 00 07 75 */ extsb. r0, r0
/* 8001F3D4 0001C314 40 82 00 6C */ bne lbl_8001F440
/* 8001F3D8 0001C318 83 C3 00 10 */ lwz r30, 0x10(r3)
/* 8001F3DC 0001C31C 38 6D 87 68 */ la r3, lbl_80450CE8(r13)
/* 8001F3DC 0001C31C 38 6D 87 68 */ la r3, fopKy_KANKYO_TYPE(r13)
/* 8001F3E0 0001C320 48 00 12 7D */ bl fpcBs_MakeOfType__FPi
/* 8001F3E4 0001C324 90 7F 00 C0 */ stw r3, 0xc0(r31)
/* 8001F3E8 0001C328 80 1E 00 24 */ lwz r0, 0x24(r30)

View File

@ -28,6 +28,8 @@ typedef struct leaf_process_profile_definition {
s32 unk24;
} leaf_process_profile_definition;
int i = sizeof(process_profile_definition);
s32 fpcLf_GetPriority(const leafdraw_class* pLeaf);
s32 fpcLf_DrawMethod(leafdraw_method_class* pMthd, void* pUserData);
s32 fpcLf_Draw(leafdraw_class* pMthd);

View File

@ -3293,6 +3293,11 @@ fopDwTg_ToDrawQ__FP16create_tag_classi
fopDwTg_DrawQTo__FP16create_tag_class
fopDwTg_Init__FP16create_tag_classPv
fopDwTg_CreateQueue__Fv
fopKy_Draw__FPv
fopKy_Execute__FPv
fopKy_IsDelete__FPv
fopKy_Delete__FPv
fopKy_Create__FPv
}
/*
.init 80003100 - 80005600

View File

@ -3,15 +3,6 @@
#include "f/f_op/f_op_draw_tag.h"
#include "global.h"
// additional symbols needed for f_op_draw_tag.cpp
// autogenerated by split.py v0.4 at 2021-02-15 20:18:52.463040
extern "C" {
void fopDwTg_CreateQueue__Fv(void);
void fopDwTg_DrawQTo(void);
void fopDwTg_Init__FP16create_tag_classPv(void);
void fopDwTg_ToDrawQ__FP16create_tag_classi(void);
}
// additional symbols needed for f_op_draw_tag.cpp
// autogenerated by split.py v0.4 at 2021-02-15 20:18:52.463045
extern node_list_class lists;

View File

@ -3,6 +3,7 @@
#include "d/d_com/d_com_inf_game/d_com_inf_game.h"
#include "f/f_op/f_op_draw_tag.h"
#include "f/f_pc/f_pc_base.h"
#include "f/f_pc/f_pc_leaf.h"
#include "global.h"
// additional symbols needed for f_op_kankyo.cpp
@ -28,42 +29,46 @@ void fopKy_Create__FPv(void);
// additional symbols needed for f_op_kankyo.cpp
// autogenerated by split.py v0.4 at 2021-02-15 21:03:24.816069
extern u8 lbl_80450CE8;
extern u8 fopKy_KANKYO_TYPE;
extern u8 lbl_80451124;
extern "C" {
// fopKy_Draw__FPv
// fopKy_Draw__FPv(void*)
asm void fopKy_Draw__FPv(void) {
// Doesn't appear to be a part of anything currently define in f_pc_leaf.h
struct unk {
u8 field_0x00[0xd8];
leafdraw_method_class* mpDrawMtd;
};
// matches except wrong registers
#ifdef NON_MATCHING
void fopKy_Draw(void* i_pUserData) {
unk* pMtd = (unk*)i_pUserData;
if (!g_dComIfG_gameInfo.getPlay().getField0x4f7d()) {
fpcLf_DrawMethod(pMtd->mpDrawMtd,i_pUserData);
}
}
#else
asm void fopKy_Draw(void*) {
nofralloc
#include "f/f_op/f_op_kankyo/asm/func_8001F284.s"
}
#endif
// fopKy_Execute__FPv
// fopKy_Execute(void*)
asm void fopKy_Execute__FPv(void) {
asm void fopKy_Execute(void*) {
nofralloc
#include "f/f_op/f_op_kankyo/asm/func_8001F2C0.s"
}
// fopKy_IsDelete__FPv
// fopKy_IsDelete(void*)
asm void fopKy_IsDelete__FPv(void) {
asm void fopKy_IsDelete(void*) {
nofralloc
#include "f/f_op/f_op_kankyo/asm/func_8001F314.s"
}
// fopKy_Delete__FPv
// fopKy_Delete(void*)
asm void fopKy_Delete__FPv(void) {
asm void fopKy_Delete(void*) {
nofralloc
#include "f/f_op/f_op_kankyo/asm/func_8001F368.s"
}
// fopKy_Create__FPv
// fopKy_Create(void*)
asm void fopKy_Create__FPv(void) {
asm void fopKy_Create(void*) {
nofralloc
#include "f/f_op/f_op_kankyo/asm/func_8001F3B4.s"
}
};
}