Merge pull request #171 from Ryan-Myers/master

Several more large-ish changes for header files
This commit is contained in:
David Benepe
2021-09-14 21:11:24 -05:00
committed by GitHub
26 changed files with 888 additions and 739 deletions
+32
View File
@@ -905,4 +905,36 @@ typedef struct Object {
u32 unk378[174]; // Not an array. Unknown values.
} Object;
/* Size: 0x44 bytes, might just be Object? */
typedef struct unk80120AC0 {
s16 unk0;
s16 unk2;
s16 unk4;
u8 pad6[6];
f32 x_position;
f32 y_position;
f32 z_position;
f32 pad18;
f32 unk1C;
f32 pad20;
f32 unk24;
f32 unk28;
f32 unk2C;
f32 unk30;
s16 unk34;
s16 pad36;
s16 unk38;
s8 pad3A;
s8 unk3B;
u8 pad3C[8];
} unk80120AC0;
typedef struct unk80027FC4 {
u8 unk0;
u8 unk1;
s16 unk2;
s16 unk4;
s16 unk6;
} unk80027FC4;
#endif
+1 -1
View File
@@ -143,7 +143,7 @@ ALMicroTime alEvtqNextEvent(ALEventQueue *evtq, ALEvent *evt) {
}
void alEvtqNew(ALEventQueue *evtq, ALEventListItem *items, s32 itemCount){
void alEvtqNew(ALEventQueue *evtq, ALEventListItem *items, s32 itemCount) {
s32 i;
evtq->eventCount = 0;
+1 -9
View File
@@ -9,7 +9,7 @@
#include "asset_sections.h"
#include "asset_loading.h"
#include "audio_internal.h"
#include "unknown_003260.h"
/* Size: 0x08 bytes */
typedef struct unk80115D48 {
@@ -100,14 +100,6 @@ u32 D_80115F88;
/******************************/
typedef struct audioMgrConfig_s{
u32 unk00;
u32 unk04;
u32 maxChannels;
ALHeap *hp;
u16 unk10;
} audioMgrConfig;
void audio_init(u32 arg0) {
s32 iCnt;
ALSynConfig synth_config;
+1
View File
@@ -5,6 +5,7 @@
#include "audio.h"
#include "unknown_00BC20.h"
#include "unknown_06B2B0.h"
#include "unknown_0255E0.h"
extern u32 osTvType;
-25
View File
@@ -59,30 +59,6 @@ typedef struct unk80121110 {
s8 unk6;
} unk80121110;
/* Size: 0x44 bytes, might just be Object? */
typedef struct unk80120AC0 {
s16 unk0;
s16 unk2;
s16 unk4;
u8 pad6[6];
f32 x_position;
f32 y_position;
f32 z_position;
f32 pad18;
f32 unk1C;
f32 pad20;
f32 unk24;
f32 unk28;
f32 unk2C;
f32 unk30;
s16 unk34;
s16 pad36;
s16 unk38;
s8 pad3A;
s8 unk3B;
u8 pad3C[8];
} unk80120AC0;
extern ScreenViewport gScreenViewports[4];
// Not sure about the typing here
@@ -109,7 +85,6 @@ extern s32 SP_IMEM;
//TODO: Remove from here once header files for below are created with these signatures.
void func_8006F870(Matrix, Matrix); //unknown_070110
s16 get_level_segment_index_from_position(f32 xPos, f32 yPos, f32 zPos); //unknown_0255E0
void func_800705F8(s32, f32, f32, f32); //From unknown_070110
f32 sqrtf(f32); //IDO?
+1
View File
@@ -129,5 +129,6 @@ void func_800B2260(unk800B2260 *arg0);
void func_800AF134(unk800B2260 *arg0, s32 arg1, s32 arg2, s16 arg3, s16 arg4, s16 arg5); // Non Matching
void func_800AF404(s32 arg0); // Non Matching
void func_800B263C(unk800B2260_C *arg0); // Non Matching
void func_800AFC3C(Object *, s32); // Non Matching
#endif
+8 -38
View File
@@ -4,19 +4,6 @@
#include "unknown_003260.h"
#include "memory.h"
#define AL_SNDP_PLAY_EVT (1 << 0)
#define AL_SNDP_STOP_EVT (1 << 1)
#define AL_SNDP_PAN_EVT (1 << 2)
#define AL_SNDP_VOL_EVT (1 << 3)
#define AL_SNDP_PITCH_EVT (1 << 4)
#define AL_SNDP_API_EVT (1 << 5)
#define AL_SNDP_DECAY_EVT (1 << 6)
#define AL_SNDP_END_EVT (1 << 7)
#define AL_SNDP_FX_EVT (1 << 8)
extern void func_80002A98(void*);
extern u32 func_80003008;
/************ .bss ************/
// All of these are defined in unknown_003260_bss.c
@@ -45,7 +32,6 @@ extern OSMesgQueue D_80119AF0;
extern OSMesg D_80119B08[50];
extern unk800DC6BC D_80119BD0;
extern u16 *D_80119C28;
extern f32 gVideoRefreshRate;
/******************************/
@@ -92,12 +78,10 @@ const char D_800E4B80[] = "WARNING: Attempt to stop NULL sound aborted\n";
/*********************************/
void *alHeapDBAlloc(u8 *, s32, ALHeap *, s32, s32);
#if 1
GLOBAL_ASM("asm/non_matchings/unknown_003260/audioNewThread.s")
#else
void audioNewThread(ALSynConfig *c, OSPri p, s32 arg2){
void audioNewThread(ALSynConfig *c, OSPri p, s32 arg2) {
u32 *reg_v0;
void *reg_s0;
u32 tmp_size;
@@ -178,11 +162,7 @@ void func_8000318C(s32 arg0) {
}
}
ALMicroTime _sndpVoiceHandler(void *node);
void alSndPNew(audioMgrConfig *c){
void alSndPNew(audioMgrConfig *c) {
u32 i;
unk800DC6BC_40 *tmp1;
ALEvent sp_38;
@@ -220,7 +200,7 @@ void alSndPNew(audioMgrConfig *c){
#if 1
GLOBAL_ASM("asm/non_matchings/unknown_003260/_sndpVoiceHandler.s")
#else
ALMicroTime _sndpVoiceHandler(void *node){
ALMicroTime _sndpVoiceHandler(void *node) {
unk800DC6BC *sndp = (unk800DC6BC *) node;
ALSndpEvent evt;
@@ -244,29 +224,20 @@ ALMicroTime _sndpVoiceHandler(void *node){
}
#endif
#if 1
GLOBAL_ASM("asm/non_matchings/unknown_003260/_handleEvent.s")
#else
#endif
GLOBAL_ASM("asm/non_matchings/unknown_003260/func_8000410C.s")
GLOBAL_ASM("asm/non_matchings/unknown_003260/func_8000418C.s")
GLOBAL_ASM("asm/non_matchings/unknown_003260/func_800041FC.s")
GLOBAL_ASM("asm/non_matchings/unknown_003260/func_800042CC.s")
GLOBAL_ASM("asm/non_matchings/unknown_003260/func_80004384.s")
GLOBAL_ASM("asm/non_matchings/unknown_003260/func_80004520.s")
void func_80004604(u8 *arg0, u8 arg1){
void func_80004604(u8 *arg0, u8 arg1) {
if (arg0)
arg0[0x36]=arg1;
}
u8 func_8000461C(u8 *arg0){
u8 func_8000461C(u8 *arg0) {
if (arg0)
return arg0[0x3F];
return 0;
@@ -276,16 +247,15 @@ void func_80004638(ALBank *bnk, s16 sndIndx, s32 arg2) {
func_80004668(bnk, sndIndx, 0, arg2);
}
#if 1
GLOBAL_ASM("asm/non_matchings/unknown_003260/func_80004668.s")
#else
void func_80004668(ALBank *bnk, s16 sndIndx, u8, s32){
void func_80004668(ALBank *bnk, s16 sndIndx, u8, s32) {
}
#endif
//input typing not right (some type of struct)
void func_8000488C(u8 *arg0){
void func_8000488C(u8 *arg0) {
ALEvent sp_18;
sp_18.type = 1024;
((u32*)(&sp_18))[1] = (u32) arg0;
@@ -300,7 +270,7 @@ void func_800049D8(void) {
func_800048D8(3);
}
void func_800049F8(void * sndState,s16 type, u32 arg2){
void func_800049F8(void * sndState,s16 type, u32 arg2) {
ALSndpEvent sndEvt;
sndEvt.snd_event.type = type;
sndEvt.snd_event.state = sndState;
+37
View File
@@ -7,6 +7,16 @@
#include "asset_sections.h"
#include "libultra_internal.h"
#define AL_SNDP_PLAY_EVT (1 << 0)
#define AL_SNDP_STOP_EVT (1 << 1)
#define AL_SNDP_PAN_EVT (1 << 2)
#define AL_SNDP_VOL_EVT (1 << 3)
#define AL_SNDP_PITCH_EVT (1 << 4)
#define AL_SNDP_API_EVT (1 << 5)
#define AL_SNDP_DECAY_EVT (1 << 6)
#define AL_SNDP_END_EVT (1 << 7)
#define AL_SNDP_FX_EVT (1 << 8)
typedef struct unk800DC6BC_40 {
ALLink node;
u8 pad0C[0x38];
@@ -82,6 +92,33 @@ extern unk800DC6BC* gAlSndPlayer;
extern s32 sfxVolumeSlider;
extern s32 D_800DC6C4;
extern void func_80002A98(void*);
extern u32 func_80003008;
void *alHeapDBAlloc(u8 *file, s32 line, ALHeap *hp, s32 num, s32 size); //lib/src/al
void alEvtqNew(ALEventQueue *evtq, ALEventListItem *items, s32 itemCount); //lib/src/unknown_0C9C90.c
ALMicroTime alEvtqNextEvent(ALEventQueue *evtq, ALEvent *evt); //lib/src/unknown_0C9C90.c
void alSynAddPlayer(ALSynth *drvr, ALPlayer *client); //lib/src/unknown_0C9C90.c
void alEvtqPostEvent(ALEventQueue *evtq, ALEvent *evt, ALMicroTime delta); //lib/src/unknown_0C9C90.c Non Matching
void audioStartThread(void);
void audioStopThread(void);
void set_sfx_volume_slider(u32 arg0);
s32 sfxGetVolumeSlider(void);
void func_8000318C(s32 arg0);
void alSndPNew(audioMgrConfig *c);
void func_80004604(u8 *arg0, u8 arg1);
u8 func_8000461C(u8 *arg0);
void func_80004638(ALBank *bnk, s16 sndIndx, s32 arg2);
//Causes issues with its type
//void func_8000488C(u8 *arg0);
void func_800049D8(void);
void func_800049F8(void * sndState,s16 type, u32 arg2);
u16 func_80004A3C(u8 arg0);
// Non Matching
ALMicroTime _sndpVoiceHandler(void *node);
void func_80004668(ALBank *bnk, s16 sndIndx, u8, s32);
void audioNewThread(ALSynConfig *c, OSPri p, s32 arg2);
#endif
+1
View File
@@ -1,6 +1,7 @@
/* The comment below is needed for this file to be picked up by generate_ld */
/* RAM_POS: 0x80008040 */
#include "unknown_008C40.h"
#include "types.h"
#include "macros.h"
#include "audio_internal.h"
+12
View File
@@ -0,0 +1,12 @@
#ifndef _UNKNOWN_008C40_H_
#define _UNKNOWN_008C40_H_
#include "types.h"
void func_80008168(void);
void func_80009558(u16, f32 x, f32 y, f32 z, s32, s32 *); // Non Matching
void func_80009968(f32, f32, f32, u8, u8, s32); // Non Matching
void func_800096D8(s32, f32, f32, f32); // Non Matching
#endif
+3 -3
View File
@@ -245,7 +245,7 @@ s32 D_8011B000;
s32 D_8011B004;
s32 D_8011B008;
s32 D_8011B010[4];
u32 *D_8011B020[10];
Object *D_8011B020[10];
s32 D_8011B048[4];
s32 D_8011B058[4];
s32 D_8011B068[4];
@@ -300,7 +300,7 @@ GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B38C.s")
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B750.s")
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000BADC.s")
u32 *func_8000BF44(s32 arg0) {
Object *func_8000BF44(s32 arg0) {
if (arg0 == -1) {
arg0 = D_800DC760;
}
@@ -1868,7 +1868,7 @@ void run_object_loop_func(Object *obj, s32 arg1) {
func_80039330(obj, arg1);
break;
case 64:
obj_loop_world_key(obj, arg1);
obj_loop_world_key(obj, arg1); //arg1=speed
break;
case 65:
func_8003D3FC(obj, arg1);
+6 -1
View File
@@ -119,7 +119,7 @@ extern u16 D_800DC864;
void free_tt_ghost_data(void); //unknown_043920.c
f32 func_800707F8(s16); //?
u32 *func_8000BF44(s32 arg0);
Object *func_8000BF44(s32 arg0);
void func_8000BF8C(void);
void func_8000C460(void);
void func_8000C604(void);
@@ -211,6 +211,7 @@ void func_800228EC(s32 arg0);
s8 func_8002341C(void);
s32 func_80023568(void);
s8 func_800235C0(void);
void func_800235D0(s32 arg0);
void func_800238BC(Object *arg0);
void run_object_loop_func(Object *obj, s32 arg1);
void func_8002458C(s32 arg0);
@@ -227,5 +228,9 @@ void func_80011960(Object*, s32, u32, Object_64*, u32, u32, u32, u32, f32);
void func_80011AD0(Object *this);
void func_80012E28(Object *this);
void func_8001D5E0(f32 arg0, f32 arg1, f32 arg2);
s32 func_80014814(s32 *);
void func_80015348(s32, s32);
Object *func_8000EA54(unk80027FC4*, s32);
s32 func_8001F460(Object*, s32, Object*);
#endif
+12 -120
View File
@@ -8,30 +8,12 @@
#include "structs.h"
#include "f3ddkr.h"
#include "PR/gu.h"
/* Size: 0x44 bytes */
typedef struct unk80120AC0 {
s16 unk0;
s16 unk2;
s16 unk4;
u8 pad6[6];
f32 x_position;
f32 y_position;
f32 z_position;
f32 pad18;
f32 unk1C;
f32 pad20;
f32 unk24;
f32 unk28;
f32 unk2C;
f32 unk30;
s16 unk34;
s16 pad36;
s16 unk38;
s8 pad3A;
s8 unk3B;
u8 pad3C[8];
} unk80120AC0;
#include "textures_sprites.h"
#include "unknown_00BC20.h"
#include "unknown_06B2B0.h"
#include "memory.h"
#include "unknown_043920.h"
#include "camera.h"
/************ .data ************/
@@ -141,17 +123,7 @@ s32 D_8011D0E8;
s32 D_8011D0EC;
s32 D_8011D0F0;
s32 D_8011D0F4;
/* Size: 0x10 bytes */
typedef struct unk8011D0F8 {
f32 unk0;
f32 unk4;
f32 unk8;
f32 unkC;
} unk8011D0F8;
unk8011D0F8 D_8011D0F8[3];
s32 D_8011D128[15];
s32 D_8011D164;
s32 D_8011D168[84];
@@ -163,37 +135,13 @@ s32 D_8011D314;
s32 D_8011D318;
s32 D_8011D31C;
s32 D_8011D320[4];
/* Size: 0x10 bytes */
typedef struct unk8011D330 {
u8 pad0[0x10];
} unk8011D330;
unk8011D330 *D_8011D330;
s32 D_8011D334;
s32 D_8011D338[4];
/* Size: 0xA bytes */
typedef struct unk8011D348 {
u8 pad0[0x9];
u8 unk9;
} unk8011D348;
unk8011D348 *D_8011D348;
s32 D_8011D34C;
s32 D_8011D350[4];
/* Size: 0x8 bytes */
typedef struct unk8011D360 {
u8 pad0[4];
s16 unk4;
s16 unk6;
} unk8011D360;
unk8011D360 *D_8011D360;
s32 D_8011D364;
s32 D_8011D368;
s32 D_8011D36C;
@@ -203,36 +151,8 @@ s32 D_8011D378;
s32 D_8011D37C;
f32 D_8011D380;
u32 D_8011D384;
/* Size: 0x38 bytes */
typedef struct unk8011D388 {
s32 unk0;
s32 unk4;
s32 unk8;
s32 unkC;
s32 unk10;
s32 unk14;
s32 unk18;
s32 unk1C;
s32 unk20;
s32 unk24;
u8 unk28;
u8 unk29;
u8 unk2A;
s16 unk2C;
s16 unk2E;
s32 unk30;
s32 unk34;
} unk8011D388;
unk8011D388 D_8011D388[4];
typedef struct {
/* 0x00 */ s32 x;
/* 0x04 */ s32 y;
/* 0x08 */ s32 z;
} unk8011D468;
unk8011D468 D_8011D468;
s32 D_8011D474;
s32 D_8011D478;
s32 D_8011D47C;
@@ -256,16 +176,6 @@ s32 D_8011D4BC;
/******************************/
f32 func_800BB2F4(s32, f32, f32, f32*);
void func_8007B3D0(Gfx**);
Object *get_object(s32);
Settings *get_settings();
void traverse_segments_bsp_tree(s32 nodeIndex, s32 segmentIndex, s32 segmentIndex2, u8 *segmentsOrder, u32 *segmentsOrderIndex);
s32 func_80014814(s32*);
void func_80015348(s32, s32);
void render_level_segment(s32 segmentId, s32 nonOpaque);
s32 func_800249E0(s32 arg0) {
D_8011D37C = arg0;
return 0;
@@ -274,7 +184,7 @@ s32 func_800249E0(s32 arg0) {
#if 1
GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_800249F0.s")
#else
void func_800249F0(u32 arg0, u32 arg1, s32 arg2, u32 arg3, u32 arg4, u32 arg5, u32 arg6){
void func_800249F0(u32 arg0, u32 arg1, s32 arg2, u32 arg3, u32 arg4, u32 arg5, u32 arg6) {
s32 i;
s32 tmp_a2;
@@ -370,17 +280,6 @@ GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_80027568.s")
GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_800278E8.s")
GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_80027E24.s")
typedef struct unk80027FC4 {
u8 unk0;
u8 unk1;
s16 unk2;
s16 unk4;
s16 unk6;
} unk80027FC4;
void func_8005A3D0(void);
Object * func_8000EA54(unk80027FC4*, s32);
void func_80027FC4(s32 arg0) {
unk80027FC4 sp20;
@@ -424,7 +323,7 @@ void func_800289B8(void){
}
#endif
void render_skydome(void){
void render_skydome(void) {
unk80120AC0 * v0_some_struct;
if(D_8011B0B8 == NULL)
return;
@@ -720,9 +619,6 @@ GLOBAL_ASM("asm/non_matchings/unknown_0255E0/render_level_segment.s")
#endif
#ifdef NON_MATCHING
void add_segment_to_order(s32 segmentIndex, u32 *segmentsOrderIndex, u8 *segmentsOrder);
// Regalloc issues.
void traverse_segments_bsp_tree(s32 nodeIndex, s32 segmentIndex, s32 segmentIndex2, u8 *segmentsOrder, u32 *segmentsOrderIndex) {
BspTreeNode *curNode;
@@ -811,7 +707,6 @@ GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_80029DE0.s")
#endif
#ifdef NON_MATCHING
// Has regalloc issues.
s32 get_level_segment_index_from_position(f32 xPos, f32 yPos, f32 zPos) {
LevelModelSegmentBoundingBox *bb;
@@ -843,13 +738,12 @@ s32 get_level_segment_index_from_position(f32 xPos, f32 yPos, f32 zPos) {
return result;
}
#else
GLOBAL_ASM("asm/non_matchings/unknown_0255E0/get_level_segment_index_from_position.s")
#endif
s32 func_8002A05C(s32 arg0, s32 arg1, s32 *arg2){
s32 func_8002A05C(s32 arg0, s32 arg1, s32 *arg2) {
s32 i;
s32 cnt = 0;
LevelModelSegmentBoundingBox * a0;
@@ -895,14 +789,14 @@ s32 func_8002A134(s32 *arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5, s
return phi_v1;
}
LevelModelSegment *func_8002A2C8(s32 arg0){
LevelModelSegment *func_8002A2C8(s32 arg0) {
if(arg0 < 0 || gCurrentLevelModel->numberOfSegments < arg0)
return NULL;
return gCurrentLevelModel->segments + arg0;
}
LevelModelSegmentBoundingBox *func_8002A2DC(s32 arg0){
LevelModelSegmentBoundingBox *func_8002A2DC(s32 arg0) {
if(arg0 < 0 || gCurrentLevelModel->numberOfSegments < arg0)
return NULL;
@@ -912,8 +806,6 @@ LevelModelSegmentBoundingBox *func_8002A2DC(s32 arg0){
GLOBAL_ASM("asm/non_matchings/unknown_0255E0/func_8002A31C.s")
#ifdef NON_MATCHING
f32 func_80066348(f32, f32, f32);
// Has some minor issues, but should be functionally equivalent.
s32 func_8002A5F8(LevelModelSegmentBoundingBox *bb) {
s64 sp48;
@@ -1210,4 +1102,4 @@ void func_80031018(void) {
D_8011D468.x = (s32) x;
D_8011D468.y = (s32) y;
D_8011D468.z = (s32) z;
}
}
+87
View File
@@ -14,6 +14,59 @@ typedef struct unknown800DC874 {
s16 unk06;
} unknown800DC874;
/* Size: 0x10 bytes */
typedef struct unk8011D0F8 {
f32 unk0;
f32 unk4;
f32 unk8;
f32 unkC;
} unk8011D0F8;
/* Size: 0x10 bytes */
typedef struct unk8011D330 {
u8 pad0[0x10];
} unk8011D330;
/* Size: 0xA bytes */
typedef struct unk8011D348 {
u8 pad0[0x9];
u8 unk9;
} unk8011D348;
/* Size: 0x8 bytes */
typedef struct unk8011D360 {
u8 pad0[4];
s16 unk4;
s16 unk6;
} unk8011D360;
/* Size: 0x38 bytes */
typedef struct unk8011D388 {
s32 unk0;
s32 unk4;
s32 unk8;
s32 unkC;
s32 unk10;
s32 unk14;
s32 unk18;
s32 unk1C;
s32 unk20;
s32 unk24;
u8 unk28;
u8 unk29;
u8 unk2A;
s16 unk2C;
s16 unk2E;
s32 unk30;
s32 unk34;
} unk8011D388;
typedef struct {
/* 0x00 */ s32 x;
/* 0x04 */ s32 y;
/* 0x08 */ s32 z;
} unk8011D468;
extern s32 D_800DC870;
extern unknown800DC874 D_800DC874;
extern unknown800DC874 D_800DC87C;
@@ -31,4 +84,38 @@ extern s32 D_800DC928;
extern s8 D_800DC92C[24];
f32 func_800BB2F4(s32, f32, f32, f32*); //waves.c //Non Matching
s32 func_800249E0(s32 arg0);
void func_800257D0(void);
void func_80027FC4(s32 arg0);
void func_80028044(s32 arg0);
void render_skydome(void);
void func_80028FA0(s32 arg0);
void add_segment_to_order(s32 segmentIndex, u32 *segmentsOrderIndex, u8 *segmentsOrder);
s32 func_8002A05C(s32 arg0, s32 arg1, s32 *arg2);
s32 func_8002A134(s32 *arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5, s16 arg6);
LevelModelSegment *func_8002A2C8(s32 arg0);
LevelModelSegmentBoundingBox *func_8002A2DC(s32 arg0);
void func_8002ACC8(s32 arg0);
s32 func_8002ACD4(f32 *arg0, f32 *arg1, f32 *arg2);
s32 func_8002B9BC(Object *obj, f32 *arg1, f32 *arg2, s32 arg3);
void func_8002C71C(LevelModelSegment *segment);
LevelModel *func_8002C7C4(void);
void func_80030750(s32 arg0, s16 *arg1, s16 *arg2, s8 *arg3, s8 *arg4, s8 *arg5);
void func_800307BC(s32 arg0);
void func_80030838(s32 arg0, s32 arg1);
void func_8003093C(s32 arg0);
void func_80031018(void);
//Non Matching
void traverse_segments_bsp_tree(s32 nodeIndex, s32 segmentIndex, s32 segmentIndex2,
u8 *segmentsOrder, u32 *segmentsOrderIndex);
void render_level_segment(s32 segmentId, s32 nonOpaque);
void render_level_geometry_and_objects(void);
s32 func_80029DE0(Object *obj, s32 segmentIndex);
s32 get_level_segment_index_from_position(f32 xPos, f32 yPos, f32 zPos);
s32 func_8002A5F8(LevelModelSegmentBoundingBox *bb);
void func_80030664(s32 arg0, s16 arg1, s16 arg2, u8 arg3, u8 arg4, u8 arg5);
#endif
+19 -482
View File
File diff suppressed because it is too large Load Diff
+565 -1
View File
File diff suppressed because it is too large Load Diff
+1 -8
View File
@@ -11,6 +11,7 @@
#include "structs.h"
#include "asset_sections.h"
//#include "controller_pak.h"
#include "unknown_008C40.h"
/* Size: 8 bytes */
typedef struct GhostHeader {
@@ -741,9 +742,6 @@ void func_800570A4(Object *arg0, s32 arg1, s32 arg2) {
}
#ifdef NON_MATCHING
void func_80009558(u16, f32 x, f32 y, f32 z, s32, s32 *); //unknown_008C40
typedef struct Object_64_800570B8 {
u8 pad0[3];
s8 unk3;
@@ -882,10 +880,6 @@ GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80058B84.s")
GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80058D5C.s")
#ifdef NON_MATCHING
s32 func_8007066C(s32, s32);
s16 get_level_segment_index_from_position(f32, f32, f32);
void func_80058F44(f32 arg0, Object *arg1, Object *arg2) {
s32 temp0, temp1;
temp0 = (s32)arg0;
@@ -894,7 +888,6 @@ void func_80058F44(f32 arg0, Object *arg1, Object *arg2) {
gCameraObject->z_rotation -= (gCameraObject->z_rotation * temp0) >> 4;
gCameraObject->unk34 = get_level_segment_index_from_position(gCameraObject->x_position, arg2->unk3C_a.unk3C_f, gCameraObject->z_position);
}
#else
GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80058F44.s")
#endif
+4
View File
@@ -2,6 +2,7 @@
#define _UNKNOWN_043920_H_
#include "types.h"
#include "structs.h"
extern s32 D_800DCB50;
extern s16 D_800DCB54;
@@ -46,5 +47,8 @@ extern s32 D_800DCDD0;
extern s16 D_800DCDD4[4];
s32 func_80059B7C(s32 arg0, s32 arg1, s16 arg2, s16 arg3, s16 arg4);
void func_8005A3D0(void);
void set_ghost_position_and_rotation(Object *obj); // Non Matching
#endif
+1
View File
@@ -9,6 +9,7 @@
#include "audio.h"
#include "unknown_00BC20.h"
#include "unknown_005740.h"
#include "unknown_008C40.h"
/************ .data ************/
-1
View File
@@ -20,7 +20,6 @@ typedef struct unk8005D048 {
extern s16 D_800DCDE0[16];
void func_80009558(u16, f32 x, f32 y, f32 z, s32, s32 *); //unknown_008C40
s32 get_random_number_from_range(s32, s32); //?
void func_8005C2F0(Object *object, unk8005C2F0 *arg1);

Some files were not shown because too many files have changed in this diff Show More