summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/6C0690.h9
-rw-r--r--include/6E2300.h26
-rw-r--r--include/m_clip.h12
-rw-r--r--include/m_home.h4
-rw-r--r--include/m_melody.h15
-rw-r--r--include/m_room_type.h95
6 files changed, 124 insertions, 37 deletions
diff --git a/include/6C0690.h b/include/6C0690.h
index ad2c312..e5c6aac 100644
--- a/include/6C0690.h
+++ b/include/6C0690.h
@@ -12,13 +12,6 @@ struct Game;
// void func_8009CC00_jp();
// void func_8009CC94_jp();
void mMkRm_MarkRoom(struct Game* game);
-void mMld_SetDefaultMelody(void);
-// void func_8009CFD4_jp();
-// void func_8009D03C_jp();
-// void func_8009D0CC_jp();
-// void func_8009D100_jp();
-// void func_8009D128_jp();
-// void func_8009D160_jp();
-// void func_8009D1A8_jp();
+
#endif
diff --git a/include/6E2300.h b/include/6E2300.h
deleted file mode 100644
index bd5902d..0000000
--- a/include/6E2300.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#ifndef C_6E2300_H
-#define C_6E2300_H
-
-#include "ultra64.h"
-
-// void func_800BE660_jp();
-// void func_800BE69C_jp();
-// void func_800BE6D8_jp();
-// void func_800BE72C_jp();
-// void func_800BE844_jp();
-// void func_800BEA50_jp();
-// void func_800BEBEC_jp();
-// void func_800BEC3C_jp();
-// void func_800BEC80_jp();
-// void func_800BED5C_jp();
-// void func_800BEE50_jp();
-// void func_800BEEB4_jp();
-// void func_800BEEC4_jp();
-u16 mRmTp_Item1ItemNo2FtrItemNo_AtPlayerRoom(u16 item);
-// void func_800BF10C_jp();
-// void func_800BF230_jp();
-// void func_800BF26C_jp();
-// void mRmTp_DrawFamicomInfo();
-// void mRmTp_MakeFamicom_Fdebug();
-
-#endif
diff --git a/include/m_clip.h b/include/m_clip.h
index b1ba09d..56714f7 100644
--- a/include/m_clip.h
+++ b/include/m_clip.h
@@ -11,6 +11,7 @@ struct Clip_unk_040_unk_14_arg0;
struct Clip_unk_07C_unk_0_arg0;
struct FurnitureActor;
struct Game_Play;
+struct Game;
struct ObjectExchangeBank;
struct ObjectStatus;
struct ShadowData;
@@ -107,13 +108,20 @@ typedef struct Clip_unk_07C {
/* 0x00 */ Clip_unk_07C_unk_0 unk_0;
/* 0x04 */ Clip_unk_07C_unk_4 unk_4;
} Clip_unk_07C; // size >= 0x8
+typedef s32 (*Clip_unk_080_unk_04)(struct Game* game, u16 ftr, s32* utX, s32* utZ, u16* rotation,
+ s32* squareOffs, s32* layer);
typedef void (*Clip_unk_080_unk_24)(void);
+typedef s32 (*Clip_unk_080_unk_28)(struct Game* game, u16 ftr, s32 res,s32 utX, s32 utZ, u16 rotation,
+ s32 squareOffs, s32 layer);
typedef UNK_RET (*Clip_unk_080_unk_34)(struct FurnitureActor* furnitureActor, struct Actor* myHouseActor, struct Game_Play* game_play, f32 arg0, f32 arg1);
typedef struct Clip_unk_080 {
- /* 0x00 */ UNK_TYPE1 unk_00[0x24];
+ /* 0x00 */ UNK_TYPE1 unk_00[0x4];
+ /* 0x04 */ Clip_unk_080_unk_04 unk_04;
+ /* 0x08 */ UNK_TYPE1 unk_08[0x1C];
/* 0x24 */ Clip_unk_080_unk_24 unk_24;
- /* 0x28 */ UNK_TYPE1 unk_28[0xC];
+ /* 0x28 */ Clip_unk_080_unk_28 unk_28;
+ /* 0x2C */ UNK_TYPE1 unk_2C[0x8];
/* 0x34 */ Clip_unk_080_unk_34 unk_34; // open close proc
} Clip_unk_080; // size >= 0x8
diff --git a/include/m_home.h b/include/m_home.h
index 6b64bf0..4888504 100644
--- a/include/m_home.h
+++ b/include/m_home.h
@@ -66,7 +66,9 @@ typedef struct HomeBitfield {
// Original name, taken from m_flashrom
typedef struct mHm_hs_c {
/* 0x000 */ PersonalID_c ownerID;
- /* 0x010 */ UNK_TYPE1 unk_010[0x12];
+ /* 0x010 */ UNK_TYPE1 unk_010[0x4];
+ /* 0x014 */ u8 roomId;
+ /* 0x014 */ UNK_TYPE1 unk_015[0xD];
/* 0x022 */ HomeBitfield unk_022;
/* 0x024 */ u8 unk_024;
/* 0x025 */ UNK_TYPE1 unk_025[0x3];
diff --git a/include/m_melody.h b/include/m_melody.h
new file mode 100644
index 0000000..dfb0e5b
--- /dev/null
+++ b/include/m_melody.h
@@ -0,0 +1,15 @@
+#ifndef M_MELODY_H
+#define M_MELODY_H
+
+#include "ultra64.h"
+
+void mMld_SetDefaultMelody(void);
+void mMld_TransformMelodyData_u64_2_u8(u8* dst, u64 src);
+// void func_8009D03C_jp();
+// void func_8009D0CC_jp();
+// void func_8009D100_jp();
+// void func_8009D128_jp();
+// void func_8009D160_jp();
+// void func_8009D1A8_jp();
+
+#endif
diff --git a/include/m_room_type.h b/include/m_room_type.h
new file mode 100644
index 0000000..f5396a0
--- /dev/null
+++ b/include/m_room_type.h
@@ -0,0 +1,95 @@
+#ifndef M_ROOM_TYPE_H
+#define M_ROOM_TYPE_H
+
+#include "ultra64.h"
+#include "libu64/gfxprint.h"
+
+struct Game;
+
+#define mRmTp_FTR_UNIT_MAX 4
+#define FTR_NUM 947
+
+typedef enum mRmTp_FurnitureSize {
+ /* 0 */ mRmTp_FTRSIZE_1x1,
+ /* 1 */ mRmTp_FTRSIZE_1x2,
+ /* 2 */ mRmTp_FTRSIZE_2x2,
+ /* 3 */ mRmTp_FTRSIZE_MAX
+} mRmTp_FurnitureSize;
+
+typedef enum mRmTp_Direction {
+ /* 0 */ mRmTp_DIRECT_SOUTH,
+ /* 1 */ mRmTp_DIRECT_EAST,
+ /* 2 */ mRmTp_DIRECT_NORTH,
+ /* 3 */ mRmTp_DIRECT_WEST,
+ /* 4 */ mRmTp_DIRECT_MAX
+} mRmTp_Direction;
+
+typedef enum mRmTp_SEType {
+ /* 0 */ mRmTp_FTR_SE_NONE,
+ /* 1 */ mRmTp_FTR_SE_SOFT_CHAIR,
+ /* 2 */ mRmTp_FTR_SE_HARD_CHAIR,
+ /* 3 */ mRmTp_FTR_SE_BUBU_CHAIR,
+ /* 4 */ mRmTp_FTR_SE_TOILET_CHAIR,
+ /* 5 */ mRmTp_FTR_SE_MAX
+} mRmTp_SEType;
+
+typedef enum mRmTp_Action {
+ /* 0 */ mRmTp_CHAIR_ACTION_SIT,
+ /* 1 */ mRmTp_CHAIR_ACTION_STAND,
+ /* 2 */ mRmTp_CHAIR_ACTION_MAX
+} mRmTp_Action;
+
+typedef enum mRmTp_BirthType {
+ /* 00 */ mRmTp_BIRTH_TYPE_GRP_A,
+ /* 01 */ mRmTp_BIRTH_TYPE_GRP_B,
+ /* 02 */ mRmTp_BIRTH_TYPE_GRP_C,
+ /* 03 */ mRmTp_BIRTH_TYPE_EVENT,
+ /* 04 */ mRmTp_BIRTH_TYPE_BIRTHDAY,
+ /* 05 */ mRmTp_BIRTH_TYPE_HALLOWEEN,
+ /* 06 */ mRmTp_BIRTH_TYPE_HANIWA,
+ /* 07 */ mRmTp_BIRTH_TYPE_LOTTERY,
+ /* 08 */ mRmTp_BIRTH_TYPE_FTR_CLOTH,
+ /* 09 */ mRmTp_BIRTH_TYPE_FTR_UMBRELLA,
+ /* 10 */ mRmTp_BIRTH_TYPE_FTR_INSECT,
+ /* 11 */ mRmTp_BIRTH_TYPE_FTR_FISH,
+ /* 12 */ mRmTp_BIRTH_TYPE_SINGLE_FOSSIL,
+ /* 13 */ mRmTp_BIRTH_TYPE_MULTI_FOSSIL,
+ /* 14 */ mRmTp_BIRTH_TYPE_XMAS,
+ /* 15 */ mRmTp_BIRTH_TYPE_SANTA,
+ /* 16 */ mRmTp_BIRTH_TYPE_UNOBTAINABLE,
+ /* 17 */ mRmTp_BIRTH_TYPE_SNOWMAN,
+} mRmTp_BirthType;
+
+typedef struct mRmTp_FtrPlaceInfo {
+ /* 0x0 */ s32 exists;
+ /* 0x4 */ s32 utX;
+ /* 0x8 */ s32 utZ;
+} mRmTp_FtrPlaceInfo; // size = 0xC
+
+typedef struct mRmTp_FtrPlaceData {
+ /* 0x0 */ u8 exist;
+ /* 0x2 */ s16 ofsX;
+ /* 0x4 */ s16 ofsZ;
+} mRmTp_FtrPlaceData; // size = 0x8
+
+void mRmTp_InitFtrPlaceInfo(mRmTp_FtrPlaceInfo* info);
+s32 mRmTp_ItemNo2FtrSize(u16 name);
+mRmTp_FtrPlaceData* mRmTp_GetFtrUnitPlaceData(s32 size, s32 dir);
+s32 mRmTp_GetFurnitureData(u16 ftr, s32 ut_x, s32 ut_z, mRmTp_FtrPlaceInfo* info);
+void mRmTp_AssignFtrFgIdx(u16* dst, u16* src, u16* arg2, u16* arg3);
+void mRmTp_MakeFtrNoTable(u16* dst, u16* src);
+void* mRmTp_MallocRam(struct Game* game, size_t size);
+void mRmTp_FreeRam(struct Game* game, void* ptr);
+s32 mRmTp_CharVacRight2Left(u8* str, s32 len);
+s32 mRmTp_GetFtrActionSE(s32 ftr_idx, s32 mode);
+s32 mRmTp_CheckShopFtr(u16 item);
+u8* mRmTp_CheckFtrBirthInfoTop();
+s32 mRmTp_GetFloorIdx(void);
+u16 mRmTp_Item1ItemNo2FtrItemNo_AtPlayerRoom(u16 item);
+u16 mRmTp_FtrItemNo2Item1ItemNo(u16 item);
+void mRmTp_MakeMelodyData();
+u8* mRmTp_GetMelodyData();
+void mRmTp_DrawFamicomInfo(gfxprint* gfxprint);
+void mRmTp_MakeFamicom_Fdebug();
+
+#endif