summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorrozlette <uberpanzermensch@gmail.com>2018-11-13 22:13:33 -0600
committerrozlette <uberpanzermensch@gmail.com>2018-11-13 22:13:33 -0600
commit53b1539754e7ea4fbafddb38db8bd97069596c83 (patch)
tree35f00ad76f331bba38b7505c3ea086d4982c27fb /include
parent6e19e97a8a9186eecaaea4c6c8971a9b996c133b (diff)
Add more function and variable documentation
Diffstat (limited to 'include')
-rw-r--r--include/functions.h35
-rw-r--r--include/structs.h64
-rw-r--r--include/variables.h12
3 files changed, 89 insertions, 22 deletions
diff --git a/include/functions.h b/include/functions.h
index 2e334a88e..2d1aa4578 100644
--- a/include/functions.h
+++ b/include/functions.h
@@ -118,7 +118,8 @@ UNK_RET func_8008481C(UNK_TYPE, UNK_TYPE, UNK_PTR, UNK_PTR); // func_8008481C
// UNK_RET func_8008486C(UNK_ARGS);
// UNK_RET func_800848A4(UNK_ARGS);
// UNK_RET func_800848B8(UNK_ARGS);
-// UNK_RET func_80084940(UNK_ARGS);
+void func_80084940(void); // func_80084940
+void func_80084968(void); // func_80084968
// UNK_RET func_800849A0(UNK_ARGS);
// UNK_RET func_80084DB0(UNK_ARGS);
// UNK_RET func_8008501C(UNK_ARGS);
@@ -421,7 +422,7 @@ UNK_RET func_80094828(UNK_ARGS); // func_80094828
ldiv_t ldiv(long numer, long denom); // func_80094DF0
lldiv_t lldiv(long long numer, long long denom); // func_80094E74
void _Litob(_Pft* px, unsigned char code); // func_80094F80
-s32 __osSiRawWriteIo(u32 devAddr, u32* data); // func_80095220
+s32 __osSiRawWriteIo(u32 devAddr, u32 data); // func_80095220
u32 __osSpGetStatus(void); // func_80095270
void __osSpSetStatus(u32 data); // func_80095280
void osCreateViManager(OSPri pri); // func_800952A0
@@ -431,8 +432,8 @@ OSThread* __osGetCurrFaultedThread(void); // func_800955F0
// UNK_RET func_80095600(UNK_ARGS);
void guMtxF2L(float* mf[4], Mtx* m); // func_80095740
void osStartThread(OSThread* t); // func_800957B0
-void func_80095900(f32); // func_80095900
-UNK_RET func_80095950(f32); // func_80095950
+void osViSetYScale(f32); // func_80095900
+void osViSetXScale(f32); // func_80095950
long long __d_to_ll(double d); // func_80095A60
long long __f_to_ll(float f); // func_80095A7C
unsigned long long __d_to_ull(double d); // func_80095A98
@@ -458,7 +459,7 @@ UNK_RET osViModeMpalLan1(UNK_ARGS); // func_80098010
UNK_RET __osRcpImTable(UNK_ARGS); // func_800991A0
UNK_RET __libm_qnan_f(UNK_ARGS); // func_80099450
UNK_RET func_800A5AC0(void*, UNK_TYPE); // func_800A5AC0
-UNK_RET func_800A5B6C(struct s800A5AC0*, UNK_TYPE); // func_800A5B6C
+UNK_RET func_800A5B6C(struct s800A5AC0*, z_GlobalContext*); // func_800A5B6C
UNK_RET func_800A5B98(struct s800A5AC0*, UNK_TYPE); // func_800A5B98
UNK_RET func_800A5C28(struct s800A5AC0*); // func_800A5C28
UNK_RET func_800A5C60(struct s800A5AC0*, UNK_TYPE); // func_800A5C60
@@ -684,7 +685,7 @@ UNK_RET func_800A5CB8(struct s800A5AC0*, UNK_TYPE); // func_800A5CB8
// UNK_RET func_800B3880(UNK_ARGS);
// UNK_RET func_800B39A4(UNK_ARGS);
// UNK_RET func_800B3AD0(UNK_ARGS);
-UNK_RET func_800B3BA4(UNK_PTR, UNK_TYPE, UNK_PTR, UNK_TYPE); // func_800B3BA4
+UNK_RET func_800B3BA4(UNK_PTR, f32, UNK_PTR, UNK_TYPE); // func_800B3BA4
// UNK_RET func_800B3BC8(UNK_ARGS);
UNK_TYPE func_800B3FC0(UNK_TYPE); // func_800B3FC0
// UNK_RET func_800B4024(UNK_ARGS);
@@ -702,7 +703,7 @@ UNK_TYPE func_800B3FC0(UNK_TYPE); // func_800B3FC0
// UNK_RET func_800B51A4(UNK_ARGS);
// UNK_RET func_800B5208(UNK_ARGS);
// UNK_RET func_800B5814(UNK_ARGS);
-// UNK_RET func_800B5BB0(UNK_ARGS);
+UNK_TYPE func_800B5BB0(z_GlobalContext*, UNK_TYPE); // func_800B5BB0
// UNK_RET func_800B5BF4(UNK_ARGS);
// UNK_RET func_800B5C34(UNK_ARGS);
// UNK_RET func_800B5C78(UNK_ARGS);
@@ -888,7 +889,7 @@ UNK_TYPE func_800B867C(struct s800A5AC0*); // func_800B867C
// UNK_RET func_800BDC5C(UNK_ARGS);
// UNK_RET func_800BDFB0(UNK_ARGS);
UNK_RET func_800BDFC0(UNK_TYPE, UNK_TYPE, UNK_TYPE, struct s800A5AC0*); // func_800BDFC0
-// UNK_RET func_800BE03C(UNK_ARGS);
+void func_800BE03C(z_GlobalContext*, UNK_TYPE); // func_800BE03C
// UNK_RET func_800BE0B8(UNK_ARGS);
// UNK_RET func_800BE184(UNK_ARGS);
// UNK_RET func_800BE22C(UNK_ARGS);
@@ -1380,11 +1381,11 @@ void func_800E03CC(u8*); // func_800E03CC
// UNK_RET func_800E110C(UNK_ARGS);
// UNK_RET func_800E1148(UNK_ARGS);
// UNK_RET func_800E115C(UNK_ARGS);
-// UNK_RET func_800E119C(UNK_ARGS);
-UNK_RET func_800E11EC(UNK_TYPE, UNK_PTR); // func_800E11EC
+void func_800E119C(z_GlobalContext*, UNK_PTR); // func_800E119C
+void func_800E11EC(z_GlobalContext*, UNK_PTR); // func_800E11EC
// UNK_RET func_800E12A4(UNK_ARGS);
-// UNK_RET func_800E130C(UNK_ARGS);
-UNK_RET func_800E1374(UNK_TYPE, UNK_PTR, struct s800A5AC0*, UNK_PTR); // func_800E1374
+void func_800E130C(z_GlobalContext*, UNK_PTR, z_Actor*, UNK_PTR); // func_800E130C
+UNK_RET func_800E1374(UNK_TYPE, UNK_PTR, z_Actor*, UNK_PTR); // func_800E1374
// UNK_RET func_800E13C0(UNK_ARGS);
// UNK_RET func_800E1400(UNK_ARGS);
// UNK_RET func_800E1440(UNK_ARGS);
@@ -1429,7 +1430,7 @@ UNK_RET func_800E1374(UNK_TYPE, UNK_PTR, struct s800A5AC0*, UNK_PTR); // func_80
// UNK_RET func_800E2450(UNK_ARGS);
// UNK_RET func_800E2470(UNK_ARGS);
// UNK_RET func_800E2480(UNK_ARGS);
-// UNK_RET func_800E2558(UNK_ARGS);
+void func_800E2558(z_GlobalContext*, UNK_PTR, UNK_PTR); // func_800E2558
// UNK_RET func_800E2740(UNK_ARGS);
UNK_RET func_800E2928(UNK_TYPE, UNK_TYPE, UNK_PTR); // func_800E2928
// UNK_RET func_800E2B98(UNK_ARGS);
@@ -1511,7 +1512,7 @@ UNK_RET func_800E2928(UNK_TYPE, UNK_TYPE, UNK_PTR); // func_800E2928
// UNK_RET func_800E7BCC(UNK_ARGS);
// UNK_RET func_800E7C64(UNK_ARGS);
// UNK_RET func_800E7DCC(UNK_ARGS);
-UNK_RET func_800E7DF8(struct s800A5AC0*, UNK_PTR); // func_800E7DF8
+void func_800E7DF8(z_Actor*, UNK_PTR); // func_800E7DF8
// UNK_RET func_800E7E3C(UNK_ARGS);
// UNK_RET func_800E7E5C(UNK_ARGS);
// UNK_RET func_800E7ECC(UNK_ARGS);
@@ -1923,7 +1924,7 @@ UNK_RET func_800E7DF8(struct s800A5AC0*, UNK_PTR); // func_800E7DF8
// UNK_RET func_800FFA4C(UNK_ARGS);
// UNK_RET func_800FFA60(UNK_ARGS);
// UNK_RET func_800FFA94(UNK_ARGS);
-UNK_RET func_800FFADC(struct s800A5AC0*, UNK_PTR); // func_800FFADC
+void func_800FFADC(z_Actor*, z_ActorCompInitEntry*); // func_800FFADC
// UNK_RET func_800FFB54(UNK_ARGS);
// UNK_RET func_800FFB70(UNK_ARGS);
// UNK_RET func_800FFB8C(UNK_ARGS);
@@ -1949,7 +1950,7 @@ UNK_RET func_800FFADC(struct s800A5AC0*, UNK_PTR); // func_800FFADC
// UNK_RET func_8010011C(UNK_ARGS);
// UNK_RET func_801001B8(UNK_ARGS);
// UNK_RET func_80100448(UNK_ARGS);
-// UNK_RET func_80100504(UNK_ARGS);
+UNK_TYPE func_80100504(UNK_TYPE); // func_80100504
// UNK_RET func_80100584(UNK_ARGS);
// UNK_RET func_801005A0(UNK_ARGS);
// UNK_RET func_801005C0(UNK_ARGS);
@@ -2537,7 +2538,7 @@ UNK_RET func_800FFADC(struct s800A5AC0*, UNK_PTR); // func_800FFADC
// UNK_RET func_801311B4(UNK_ARGS);
// UNK_RET func_80131580(UNK_ARGS);
// UNK_RET func_80131690(UNK_ARGS);
-// UNK_RET func_80131758(UNK_ARGS);
+void func_80131758(z_GlobalContext*, UNK_TYPE); // func_80131758
// UNK_RET func_8013178C(UNK_ARGS);
// UNK_RET func_801317C0(UNK_ARGS);
// UNK_RET func_8013189C(UNK_ARGS);
diff --git a/include/structs.h b/include/structs.h
index 8e86e14f9..eddd217a1 100644
--- a/include/structs.h
+++ b/include/structs.h
@@ -22,6 +22,7 @@ struct s8008A6FC {
/* 12 */ UNK_TYPE unk12;
};
+// TODO this should extend from z_Actor
struct s800A5AC0 {
/* 000 */ u8 pad0[28];
/* 028 */ s16 unk28;
@@ -104,6 +105,69 @@ typedef struct s800F4F54_s {
/* 92152 */ u8 unk92152;
} s800F4F54;
+typedef struct {
+ /* 0x0 */ f32 x;
+ /* 0x4 */ f32 y;
+ /* 0x8 */ f32 z;
+} z_Vector3D;
+
+struct z_Actor;
+
+typedef void(*z_ActorFunc)(struct z_Actor*, void*);
+
+typedef struct {
+ /* 000 */ u8 pad0[4];
+ /* 004 */ UNK_TYPE unk4;
+ /* 008 */ u8 pad1[20];
+ /* 028 */ s16 unk28;
+ /* 030 */ u8 pad2[58];
+ /* 088 */ z_Vector3D unk088; // scale?
+ /* 100 */ u8 pad3[46];
+ /* 146 */ s16 unk146;
+ /* 148 */ u8 pad4[34];
+ /* 182 */ u8 unk182;
+ /* 183 */ u8 pad5[5];
+ /* 188 */ u16 unk188; // or char
+ /* 190 */ s16 unk190;
+ /* 192 */ u8 pad6[60];
+ /* 252 */ f32 unk252; // start of z_Vector3D?
+ /* 256 */ f32 unk256;
+ /* 260 */ f32 unk260;
+ /* 264 */ u8 pad7[14];
+ /* 278 */ u16 unk278;
+ /* 280 */ u8 pad8[36];
+ /* 316 */ z_ActorFunc drawFunc;
+ /* 320 */ u8 pad9[4];
+ // TODO figure out what size this is
+} z_Actor;
+
+typedef struct s80BD5530_s {
+ /* 000000 */ u8 pad[100484];
+ /* 100484 */ UNK_TYPE unk100484;
+} z_GlobalContext;
+
+typedef struct {
+ u32 cont : 1;
+ u32 type : 4;
+ u32 offset : 11;
+ u32 value : 16;
+} z_ActorCompInitEntry;
+
+typedef struct {
+ /* 0x00 */ s16 id;
+ /* 0x02 */ u8 type; // Classifies actor and determines when actor will execute
+ /* 0x03 */ u8 room; // Room instance was spawned in. If value set to FF in
+ // rom, instance does not despawn when swapping rooms
+ /* 0x04 */ s32 flags; // unknown
+ /* 0x08 */ s16 objectId; // Possibly it's primary object dependency
+ /* 0x0A */ // Padding
+ /* 0x0C */ u32 instanceSize;
+ /* 0x10 */ z_ActorFunc init; // Constructor
+ /* 0x14 */ z_ActorFunc fini; // Destructor
+ /* 0x18 */ z_ActorFunc main; // Main Update Function
+ /* 0x1C */ z_ActorFunc draw; // Draw function
+} z_ActorInit;
+
// TODO everything past here should be placed in an appropiate libultra header
typedef long Mtx_t[4][4];
diff --git a/include/variables.h b/include/variables.h
index 86a36e175..98613f4fe 100644
--- a/include/variables.h
+++ b/include/variables.h
@@ -1871,8 +1871,8 @@ extern UNK_TYPE D_80000500; // D_80000500
extern UNK_TYPE D_80025D00; // D_80025D00
//extern UNK_TYPE D_800969C0;
extern u8 D_80096B20; // D_80096B20
-extern u8* D_80096B24; // D_80096B24
-extern u32 D_80096B28; // D_80096B28
+extern volatile u8 D_80096B24; // D_80096B24
+extern u8 D_80096B28; // D_80096B28
extern u32 D_80096B2C; // D_80096B2C
extern f32 D_80096B30; // D_80096B30
extern f32 D_80096B34; // D_80096B34
@@ -1934,7 +1934,7 @@ extern u32* D_80098010; // D_80098010
//extern UNK_TYPE D_80098060;
//extern UNK_TYPE D_80098090;
extern __OSViContext* __osViCurr; // D_800980C0
-extern UNK_TYPE __osViNext; // D_800980C4
+extern __OSViContext* __osViNext; // D_800980C4
extern UNK_PTR D_800980D0; // D_800980D0
extern u32* D_800980E0; // D_800980E0
extern UNK_TYPE D_80098130; // D_80098130
@@ -13626,8 +13626,10 @@ extern f32 D_808637D0; // D_808637D0
//extern UNK_TYPE D_80BD52F4;
//extern UNK_TYPE D_80BD52F8;
//extern UNK_TYPE D_80BD52FC;
-//extern UNK_TYPE D_80BD55F0;
-//extern UNK_TYPE D_80BD561C;
+extern z_ActorInit bgIkanaRayInitVar; // D_80BD55D0
+extern UNK_TYPE D_80BD55F0; // D_80BD55F0
+extern z_ActorCompInitEntry bgIkanaRayCompInit[]; // D_80BD561C
+extern UNK_TYPE D_80BD562C; // D_80BD562C
//extern UNK_TYPE D_80BD5D10;
//extern UNK_TYPE D_80BD5D20;
//extern UNK_TYPE D_80BD5D24;