mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
Fill out unknown_00BC20.h
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "camera.h"
|
||||
#include "audio.h"
|
||||
#include "unknown_00BC20.h"
|
||||
|
||||
extern u32 osTvType;
|
||||
|
||||
|
||||
@@ -108,13 +108,9 @@ extern s32 D_A4000000;
|
||||
extern s32 SP_IMEM;
|
||||
|
||||
//TODO: Remove from here once header files for below are created with these signatures.
|
||||
s8* get_misc_asset(s32 arg0); //unknown_00BC20
|
||||
void func_8006F870(Matrix, Matrix); //unknown_070110
|
||||
s16 get_level_segment_index_from_position(f32 xPos, f32 yPos, f32 zPos); //unknown_0255E0
|
||||
void load_level_2(s32 arg0, s32 arg1, s32 arg2, s32 arg3); //unknown_06B2B0
|
||||
void func_8006C164(void); //unknown_00BC20
|
||||
void func_8000E194(void); //unknown_00BC20
|
||||
void func_8001D5E0(f32 arg0, f32 arg1, f32 arg2); //unknown_00BC20
|
||||
void func_800705F8(s32, f32, f32, f32); //From unknown_070110
|
||||
void func_8006ECFC(s32 arg0); //From unknown_06B2B0
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "game_text.h"
|
||||
#include "menu.h"
|
||||
#include "unknown_00BC20.h"
|
||||
|
||||
/************ .data ************/
|
||||
|
||||
|
||||
@@ -22,7 +22,6 @@ typedef struct unk8012A798 {
|
||||
extern u32 osTvType;
|
||||
|
||||
void func_8005A3B0(void); //unknown_043920.c
|
||||
s32 func_8000C8B4(s32 arg0); //unknown_00BC20.c
|
||||
|
||||
void func_800C29F0(void);
|
||||
void func_800C2AB4(void);
|
||||
|
||||
+2
-1
@@ -20,6 +20,7 @@
|
||||
#include "printf.h"
|
||||
#include "textures_sprites.h"
|
||||
#include "thread30.h"
|
||||
#include "unknown_00BC20.h"
|
||||
|
||||
/**
|
||||
* @file Contains all the code used for every menu in the game.
|
||||
@@ -5481,7 +5482,7 @@ void func_8009ABD8(s8 *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5) {
|
||||
arg0++;
|
||||
}
|
||||
|
||||
if ((phi_v1 == 0) && (get_misc_asset(0x19) == arg0)) {
|
||||
if ((phi_v1 == 0) && (get_misc_asset(0x19) == (s32 *)arg0)) {
|
||||
D_8012684C = 1;
|
||||
} else {
|
||||
D_8012684C = 0;
|
||||
|
||||
@@ -646,13 +646,10 @@ extern s16 D_800E1E2C[10];
|
||||
extern s16 D_800E1E40[10];
|
||||
|
||||
Settings *get_settings(void); //src/unknown_06B2B0.c
|
||||
s8* get_misc_asset(s32 arg0); //unknown_00BC20
|
||||
void render_textured_rectangle(Gfx **dlist, DrawTexture *arg1,
|
||||
s32 arg2, s32 arg3, u8 red, u8 green, u8 blue, u8 alpha); // Non Matching src/unknown_078050.c
|
||||
void load_level_for_menu(s32 levelId, s32 numberOfPlayers, s32 cutsceneId); //src/unknown_06B2B0.c
|
||||
void func_80078D00(Gfx**, void *element, s32, s32, f32, f32, u32, s32); //Non Matching src/unknown_078050.c
|
||||
void func_8001D5E0(f32 arg0, f32 arg1, f32 arg2); //unknown_00BC20
|
||||
void gParticlePtrList_addObject(Object *object); //src/unknown_00BC20.c
|
||||
s32 get_random_number_from_range(s32, s32); // Non Matching src/unknown_070110.c
|
||||
|
||||
void func_8007FF88(void);
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "menu.h"
|
||||
#include "controller_pak.h"
|
||||
#include "printf.h"
|
||||
#include "unknown_00BC20.h"
|
||||
|
||||
/************ .rodata ************/
|
||||
|
||||
|
||||
@@ -69,8 +69,6 @@ typedef struct unk800D2470 {
|
||||
/* 0x118 */ s32 unk118;
|
||||
} unk800D2470;
|
||||
|
||||
s16 *func_80024594(s32 *arg0, s32 *arg1); //unknown_00BC20.c
|
||||
|
||||
void func_800B6E50(void);
|
||||
void func_800B6EE0(void);
|
||||
void func_800B6F04(void);
|
||||
@@ -82,7 +80,6 @@ void func_800B76B8(s32 arg0, s32 arg1);
|
||||
s32 func_800B76DC(void);
|
||||
void func_800B77D4(s32 arg0);
|
||||
|
||||
|
||||
void func_800B6F50(void); // Non Matching
|
||||
void thread0(s32 arg0); // Non Matching
|
||||
void func_800B7460(s32 *epc, s32 size, s32 mask); // Non Matching
|
||||
|
||||
+34
-109
@@ -7,10 +7,10 @@
|
||||
#include "types.h"
|
||||
#include "macros.h"
|
||||
#include "structs.h"
|
||||
#include "f3ddkr.h"
|
||||
#include "asset_sections.h"
|
||||
#include "asset_loading.h"
|
||||
#include "thread0_epc.h"
|
||||
#include "controller_pak.h"
|
||||
|
||||
/************ .data ************/
|
||||
|
||||
@@ -208,13 +208,6 @@ s32 gAssetsLvlObjTranslationTableLength;
|
||||
s32 D_8011AEC0;
|
||||
Object **gParticlePtrList;
|
||||
s32 gParticleCount;
|
||||
|
||||
/* Size: 0x3C bytes */
|
||||
typedef struct unknown8011AECC {
|
||||
u8 unk00[0x3A];
|
||||
s8 unk3A;
|
||||
s8 unk3B;
|
||||
} unknown8011AECC;
|
||||
unknown8011AECC *D_8011AECC; // Array of structs, unknown number of members
|
||||
s32 D_8011AED0;
|
||||
s32 D_8011AED4;
|
||||
@@ -240,21 +233,6 @@ s32 D_8011AF2C;
|
||||
s32 D_8011AF30[12];
|
||||
s32 D_8011AF60[2];
|
||||
s32 D_8011AF68[32];
|
||||
|
||||
/* Size: 0x40 bytes */
|
||||
typedef struct unk800179D0 {
|
||||
s32 unk0;
|
||||
u32 *unk04;
|
||||
u32 *unk08;
|
||||
f32 unk0C[12];
|
||||
u32 unk3C;
|
||||
} unk800179D0;
|
||||
|
||||
/* Unknown Size */
|
||||
typedef struct unk800179D0_2 {
|
||||
s32 unk04;
|
||||
} unk800179D0_2;
|
||||
|
||||
s32 D_8011AFE8;
|
||||
s16 D_8011AFEC;
|
||||
s16 D_8011AFEE;
|
||||
@@ -279,43 +257,18 @@ extern s16 D_8011D5AC;
|
||||
|
||||
/******************************/
|
||||
|
||||
typedef struct unk8001D6E4_arg1_40 {
|
||||
u8 pad0[0x71];
|
||||
/* 0x71 */ u8 unk71;
|
||||
} unk8001D6E4_arg1_40;
|
||||
|
||||
typedef struct unk8001D6E4_arg1 {
|
||||
/* 0x00 */ s16 unk0;
|
||||
/* 0x02 */ s16 unk2;
|
||||
/* 0x04 */ s16 unk4;
|
||||
u8 pad6[0x3A];
|
||||
/* 0x40 */ unk8001D6E4_arg1_40 *unk40;
|
||||
} unk8001D6E4_arg1;
|
||||
|
||||
void calc_dynamic_lighting_for_object_1(unk8001D6E4_arg1 *, ObjectModel *, s16, unk8001D6E4_arg1 *, f32, f32);
|
||||
void calc_dynamic_lighting_for_object_2(unk8001D6E4_arg1 *, ObjectModel *, s16, f32);
|
||||
|
||||
void func_8000C460(void);
|
||||
void gParticlePtrList_addObject(Object *);
|
||||
void gParticlePtrList_flush(void);
|
||||
void func_8001D258(f32, f32, s32, s32, s32);
|
||||
|
||||
extern void func_800245B4(s16);
|
||||
|
||||
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B020.s")
|
||||
|
||||
#if 1
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B290.s")
|
||||
#else
|
||||
|
||||
extern s32 D_800DC754;
|
||||
extern Object *D_800DC75C;
|
||||
extern Object *D_800DC764;
|
||||
|
||||
s32 *get_misc_asset(s32 arg0);
|
||||
|
||||
void func_8000B290(){
|
||||
void func_8000B290() {
|
||||
|
||||
if(D_800DC754){
|
||||
free_from_memory_pool();
|
||||
@@ -356,38 +309,36 @@ u32 *func_8000BF44(s32 arg0) {
|
||||
return D_8011B020[arg0];
|
||||
}
|
||||
|
||||
void decrypt_magic_codes(u8 *arg0, s32 length);
|
||||
|
||||
void func_8000BF8C(void) {
|
||||
s32 i;
|
||||
|
||||
func_8001D258(0.67f, 0.33f, 0, -0x2000, 0);
|
||||
D_8011AE68 = (s32*)new_sub_memory_pool(0x15800, 0x200);
|
||||
D_8011AE68 = (s32 *)new_sub_memory_pool(0x15800, 0x200);
|
||||
gParticlePtrList = (Object **)allocate_from_main_pool_safe(0x320, COLOR_TAG_BLUE);
|
||||
D_8011AE6C = (s32*)allocate_from_main_pool_safe(0x50, COLOR_TAG_BLUE);
|
||||
D_8011AE74 = (s32*)allocate_from_main_pool_safe(0x200, COLOR_TAG_BLUE);
|
||||
D_8011AECC = (unknown8011AECC*)allocate_from_main_pool_safe(0xE10, COLOR_TAG_BLUE);
|
||||
D_8011AEDC = (s32*)allocate_from_main_pool_safe(0x50, COLOR_TAG_BLUE);
|
||||
gObjectStructArrayPtr = (s32*)allocate_from_main_pool_safe(0x28, COLOR_TAG_BLUE);
|
||||
D_8011AEEC = (s32*)allocate_from_main_pool_safe(0x28, COLOR_TAG_BLUE);
|
||||
D_8011AEE8 = (s32*)allocate_from_main_pool_safe(0x28, COLOR_TAG_BLUE);
|
||||
D_8011AF04 = (s32*)allocate_from_main_pool_safe(0x200, COLOR_TAG_BLUE);
|
||||
D_8011ADCC = (s32*)allocate_from_main_pool_safe(8, COLOR_TAG_BLUE);
|
||||
D_8011AFF4 = (s32*)allocate_from_main_pool_safe(0x400, COLOR_TAG_BLUE);
|
||||
gAssetsLvlObjTranslationTable = (s32*)load_asset_section_from_rom(ASSET_LEVEL_OBJECT_TRANSLATION_TABLE);
|
||||
D_8011AE6C = (s32 *)allocate_from_main_pool_safe(0x50, COLOR_TAG_BLUE);
|
||||
D_8011AE74 = (s32 *)allocate_from_main_pool_safe(0x200, COLOR_TAG_BLUE);
|
||||
D_8011AECC = (unknown8011AECC *)allocate_from_main_pool_safe(0xE10, COLOR_TAG_BLUE);
|
||||
D_8011AEDC = (u32 *)allocate_from_main_pool_safe(0x50, COLOR_TAG_BLUE);
|
||||
gObjectStructArrayPtr = (Object *)allocate_from_main_pool_safe(0x28, COLOR_TAG_BLUE);
|
||||
D_8011AEEC = (s32 *)allocate_from_main_pool_safe(0x28, COLOR_TAG_BLUE);
|
||||
D_8011AEE8 = (s32 *)allocate_from_main_pool_safe(0x28, COLOR_TAG_BLUE);
|
||||
D_8011AF04 = (u32 *)allocate_from_main_pool_safe(0x200, COLOR_TAG_BLUE);
|
||||
D_8011ADCC = (s8 *)allocate_from_main_pool_safe(8, COLOR_TAG_BLUE);
|
||||
D_8011AFF4 = (unk800179D0 *)allocate_from_main_pool_safe(0x400, COLOR_TAG_BLUE);
|
||||
gAssetsLvlObjTranslationTable = (s16 *)load_asset_section_from_rom(ASSET_LEVEL_OBJECT_TRANSLATION_TABLE);
|
||||
gAssetsLvlObjTranslationTableLength = (get_size_of_asset_section(ASSET_LEVEL_OBJECT_TRANSLATION_TABLE) >> 1) - 1;
|
||||
while (gAssetsLvlObjTranslationTable[gAssetsLvlObjTranslationTableLength] == 0) {
|
||||
gAssetsLvlObjTranslationTableLength--;
|
||||
}
|
||||
D_8011AD58 = (s32*)allocate_from_main_pool_safe(0x800, COLOR_TAG_BLUE);
|
||||
D_8011AD58 = (s32 *)allocate_from_main_pool_safe(0x800, COLOR_TAG_BLUE);
|
||||
gAssetsObjectHeadersTable = load_asset_section_from_rom(ASSET_OBJECT_HEADERS_TABLE);
|
||||
gAssetsObjectHeadersTableLength = 0;
|
||||
while (-1 != gAssetsObjectHeadersTable[gAssetsObjectHeadersTableLength]) {
|
||||
gAssetsObjectHeadersTableLength++;
|
||||
}
|
||||
gAssetsObjectHeadersTableLength--;
|
||||
D_8011AE48 = (s32*)allocate_from_main_pool_safe(gAssetsObjectHeadersTableLength * 4, COLOR_TAG_WHITE);
|
||||
D_8011AE4C = (s32*)allocate_from_main_pool_safe(gAssetsObjectHeadersTableLength, COLOR_TAG_WHITE);
|
||||
D_8011AE48 = (s32 *)allocate_from_main_pool_safe(gAssetsObjectHeadersTableLength * 4, COLOR_TAG_WHITE);
|
||||
D_8011AE4C = (u8 *)allocate_from_main_pool_safe(gAssetsObjectHeadersTableLength, COLOR_TAG_WHITE);
|
||||
|
||||
for (i = 0; i < gAssetsObjectHeadersTableLength; i++) {
|
||||
(*D_8011AE4C)[i] = 0;
|
||||
@@ -401,7 +352,7 @@ void func_8000BF8C(void) {
|
||||
}
|
||||
|
||||
decrypt_magic_codes(&gAssetsMiscSection[gAssetsMiscTable[65]], (gAssetsMiscTable[66] - gAssetsMiscTable[65]) * 4);
|
||||
gObjPtrList = (Object**)allocate_from_main_pool_safe(0x800, COLOR_TAG_BLUE);
|
||||
gObjPtrList = (Object **)allocate_from_main_pool_safe(0x800, COLOR_TAG_BLUE);
|
||||
D_8011ADC4 = 0;
|
||||
gTimeTrialEnabled = 0;
|
||||
D_8011AEF5 = 0;
|
||||
@@ -664,7 +615,7 @@ u8 is_time_trial_enabled() {
|
||||
return gTimeTrialEnabled;
|
||||
}
|
||||
|
||||
u8 func_8000E4D8(void){
|
||||
u8 func_8000E4D8(void) {
|
||||
return D_8011AEF5;
|
||||
}
|
||||
|
||||
@@ -698,7 +649,7 @@ s32 func_8000E9C0(void) {
|
||||
return D_8011AE64;
|
||||
}
|
||||
|
||||
void func_8000E9D0(Object *arg0){
|
||||
void func_8000E9D0(Object *arg0) {
|
||||
arg0->unk6 |= 0x8000;
|
||||
func_800245B4(arg0->unk2C | 0xC000);
|
||||
gObjPtrList[objCount++] = arg0;
|
||||
@@ -715,30 +666,12 @@ GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000FAC4.s")
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000FBCC.s")
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000FC6C.s")
|
||||
|
||||
/* Unknown Size */
|
||||
typedef struct unk8000FD20_2 {
|
||||
u8 unk00[0x13];
|
||||
u8 unk13;
|
||||
} unk8000FD20_2;
|
||||
|
||||
/* Unknown Size */
|
||||
typedef struct unk8000FD20 {
|
||||
u8 unk00[0x4C];
|
||||
unk8000FD20_2 *unk4C;
|
||||
} unk8000FD20;
|
||||
|
||||
s32 func_8000FD20(unk8000FD20 *arg0, unk8000FD20_2 *arg1) {
|
||||
arg0->unk4C = arg1;
|
||||
arg1->unk13 = 0xFF;
|
||||
return 0x28;
|
||||
}
|
||||
|
||||
/* Unknown Size. This might just be unk8000FD20. */
|
||||
typedef struct unk8000FD34 {
|
||||
u8 unk00[0x5C];
|
||||
s32 unk5C;
|
||||
} unk8000FD34;
|
||||
|
||||
s32 func_8000FD34(unk8000FD34 *arg0, s32 arg1) {
|
||||
arg0->unk5C = arg1;
|
||||
func_80016BC4();
|
||||
@@ -754,11 +687,11 @@ void gParticlePtrList_addObject(Object *object) {
|
||||
gParticleCount++;
|
||||
}
|
||||
|
||||
s32 func_80010018(void){
|
||||
s32 func_80010018(void) {
|
||||
return gAssetsLvlObjTranslationTableLength;
|
||||
}
|
||||
|
||||
s32 func_80010028(s32 arg0){
|
||||
s32 func_80010028(s32 arg0) {
|
||||
return (gAssetsLvlObjTranslationTable[arg0] < gAssetsObjectHeadersTableLength);
|
||||
}
|
||||
|
||||
@@ -767,7 +700,7 @@ GLOBAL_ASM("asm/non_matchings/unknown_00BC20/gParticlePtrList_flush.s")
|
||||
#else
|
||||
//bad regalloc; swap s2 = s3
|
||||
/*removes objects in particleList from gObjPtrList and frees*/
|
||||
void gParticlePtrList_flush(void){
|
||||
void gParticlePtrList_flush(void) {
|
||||
s32 j, i, search_indx, tmp;
|
||||
Object *searchObj;
|
||||
|
||||
@@ -827,7 +760,7 @@ void func_80011560(void) {
|
||||
}
|
||||
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80011570.s")
|
||||
void func_80011960(Object*, s32, u32, Object_64*, u32, u32, u32, u32, f32);
|
||||
|
||||
#if 1
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80011960.s")
|
||||
#else
|
||||
@@ -843,7 +776,7 @@ void func_80011960(Object *arg0, s32 arg2, u32 arg3, Object_64 *arg4
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80011AD0.s")
|
||||
#else
|
||||
extern f32 D_800E5550;
|
||||
void func_80011AD0(Object *this){
|
||||
void func_80011AD0(Object *this) {
|
||||
f32 tmp_f0;
|
||||
u32 offset;
|
||||
switch(this->unk48){
|
||||
@@ -896,7 +829,7 @@ void func_80012C30(void) {
|
||||
D_8011ADA4 = 0;
|
||||
}
|
||||
|
||||
void func_80012C3C(Gfx** dlist){
|
||||
void func_80012C3C(Gfx** dlist) {
|
||||
s32 i;
|
||||
Gfx *tmp;
|
||||
for(i = 0; i<D_8011ADA4; i++){
|
||||
@@ -919,9 +852,7 @@ void func_80012CE8(Gfx **dlist) {
|
||||
}
|
||||
}
|
||||
|
||||
void render_object(Object *);
|
||||
|
||||
func_80012D5C(u32 *arg0, u32 *arg1, u32 *arg2, Object *object){
|
||||
void func_80012D5C(u32 *arg0, u32 *arg1, u32 *arg2, Object *object) {
|
||||
f32 scale;
|
||||
u32 tmp2;
|
||||
u32 tmp3;
|
||||
@@ -940,11 +871,10 @@ func_80012D5C(u32 *arg0, u32 *arg1, u32 *arg2, Object *object){
|
||||
func_800B76B8(2, -1);
|
||||
}
|
||||
|
||||
extern f32 func_800707F8(s16);
|
||||
#if 1
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80012E28.s")
|
||||
#else
|
||||
void func_80012E28(Object *this){
|
||||
void func_80012E28(Object *this) {
|
||||
s32 unused1;
|
||||
Object_64 *sp_20;
|
||||
f32 tmp_f2;
|
||||
@@ -978,7 +908,6 @@ void func_80012E28(Object *this){
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
void func_80012F30(Object *arg0) {
|
||||
if (arg0->unk48 == 1) {
|
||||
Object_64 *object_64 = arg0->unk64;
|
||||
@@ -991,10 +920,7 @@ void func_80012F30(Object *arg0) {
|
||||
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80012F94.s")
|
||||
|
||||
|
||||
void func_80013548(Object *arg0);
|
||||
|
||||
void render_object(Object *this){
|
||||
void render_object(Object *this) {
|
||||
func_80012F94(this);
|
||||
if(this->unk6 & 0x8000){
|
||||
func_800B3740(this, &D_8011AE8C, &D_8011AE90, &D_8011AE94, 32768);
|
||||
@@ -1024,7 +950,7 @@ GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80013A0C.s")
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80013DCC.s")
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80014090.s")
|
||||
|
||||
void func_800142B8(void){
|
||||
void func_800142B8(void) {
|
||||
s32 i = D_8011AE60;
|
||||
s32 j;
|
||||
Object *currObj;
|
||||
@@ -1086,7 +1012,7 @@ s16 func_80017E88(void) {
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80017E98.s")
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_800185E4.s")
|
||||
|
||||
Object * func_80018C6C(void){
|
||||
Object *func_80018C6C(void) {
|
||||
s32 i;
|
||||
Object *current_obj;
|
||||
for(i=D_8011AE60; i < objCount; i++){
|
||||
@@ -1132,7 +1058,6 @@ s32 func_8001B288(void) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
s32 func_8001B2E0() {
|
||||
return D_8011AD34;
|
||||
}
|
||||
@@ -1156,8 +1081,8 @@ s32 func_8001B650(void) {
|
||||
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001B668.s")
|
||||
|
||||
void func_8001B738(s32 arg0) {
|
||||
func_80059B7C(arg0, func_800599A8(), D_800DC728, D_800DC72C, D_800DC724);
|
||||
s32 func_8001B738(s32 arg0) {
|
||||
return func_80059B7C(arg0, func_800599A8(), D_800DC728, D_800DC72C, D_800DC724);
|
||||
}
|
||||
|
||||
u8 func_8001B780() {
|
||||
@@ -1339,7 +1264,7 @@ void func_8001E344(s32 arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_8001E36C(s32 arg0, f32 *arg1, f32 *arg2, f32 *arg3){
|
||||
void func_8001E36C(s32 arg0, f32 *arg1, f32 *arg2, f32 *arg3) {
|
||||
s32 i;
|
||||
Object *current_obj;
|
||||
*arg1 = -32000.0f;
|
||||
|
||||
+169
-2
@@ -2,17 +2,71 @@
|
||||
#define _UNKNOWN_00BC20_H_
|
||||
|
||||
#include "types.h"
|
||||
#include "structs.h"
|
||||
#include "f3ddkr.h"
|
||||
|
||||
/* Size: 0x8 bytes */
|
||||
typedef struct unknown800DC6F0 {
|
||||
union {
|
||||
s8 unk00;
|
||||
s32 dummy_force_alignment; // Not sure of a better way to do this.
|
||||
};
|
||||
} unk00_a;
|
||||
u16 unk04;
|
||||
u16 unk06;
|
||||
} unknown800DC6F0;
|
||||
|
||||
/* Size: 0x3C bytes */
|
||||
typedef struct unknown8011AECC {
|
||||
u8 unk00[0x3A];
|
||||
s8 unk3A;
|
||||
s8 unk3B;
|
||||
} unknown8011AECC;
|
||||
|
||||
/* Size: 0x40 bytes */
|
||||
typedef struct unk800179D0 {
|
||||
s32 unk0;
|
||||
u32 *unk04;
|
||||
u32 *unk08;
|
||||
f32 unk0C[12];
|
||||
u32 unk3C;
|
||||
} unk800179D0;
|
||||
|
||||
/* Unknown Size */
|
||||
typedef struct unk800179D0_2 {
|
||||
s32 unk04;
|
||||
} unk800179D0_2;
|
||||
|
||||
typedef struct unk8001D6E4_arg1_40 {
|
||||
u8 pad0[0x71];
|
||||
/* 0x71 */ u8 unk71;
|
||||
} unk8001D6E4_arg1_40;
|
||||
|
||||
typedef struct unk8001D6E4_arg1 {
|
||||
/* 0x00 */ s16 unk0;
|
||||
/* 0x02 */ s16 unk2;
|
||||
/* 0x04 */ s16 unk4;
|
||||
u8 pad6[0x3A];
|
||||
/* 0x40 */ unk8001D6E4_arg1_40 *unk40;
|
||||
} unk8001D6E4_arg1;
|
||||
|
||||
/* Unknown Size */
|
||||
typedef struct unk8000FD20_2 {
|
||||
u8 unk00[0x13];
|
||||
u8 unk13;
|
||||
} unk8000FD20_2;
|
||||
|
||||
/* Unknown Size */
|
||||
typedef struct unk8000FD20 {
|
||||
u8 unk00[0x4C];
|
||||
unk8000FD20_2 *unk4C;
|
||||
} unk8000FD20;
|
||||
|
||||
/* Unknown Size. This might just be unk8000FD20. */
|
||||
typedef struct unk8000FD34 {
|
||||
u8 unk00[0x5C];
|
||||
s32 unk5C;
|
||||
} unk8000FD34;
|
||||
|
||||
extern unknown800DC6F0 D_800DC6F0;
|
||||
extern unknown800DC6F0 D_800DC6F8;
|
||||
|
||||
@@ -62,4 +116,117 @@ extern s32 D_800DC85C;
|
||||
extern u8 D_800DC860;
|
||||
extern u16 D_800DC864;
|
||||
|
||||
#endif
|
||||
void free_tt_ghost_data(void); //unknown_043920.c
|
||||
f32 func_800707F8(s16); //?
|
||||
void func_8006C164(void); //unknown_06B2B0
|
||||
|
||||
u32 *func_8000BF44(s32 arg0);
|
||||
void func_8000BF8C(void);
|
||||
void func_8000C460(void);
|
||||
void func_8000C604(void);
|
||||
s32 func_8000C8B4(s32 arg0);
|
||||
void func_8000CBC0(void);
|
||||
s32 func_8000CC20(u32 *arg0);
|
||||
u32 func_8000E0B0(void);
|
||||
void func_8000E128(void);
|
||||
s8 func_8000E138();
|
||||
s8 func_8000E148();
|
||||
s8 func_8000E158(void);
|
||||
s8 func_8000E184();
|
||||
void func_8000E194(void);
|
||||
void func_8000E1B8(void);
|
||||
s8 func_8000E1CC(void);
|
||||
s8 func_8000E1DC();
|
||||
void func_8000E1EC(Object *object, s32 arg1);
|
||||
void set_time_trial_enabled(s32 arg0);
|
||||
u8 is_time_trial_enabled();
|
||||
u8 func_8000E4D8(void);
|
||||
Object *get_object(s32 index);
|
||||
Object **func_8000E988(s32 *arg0, s32 *cnt);
|
||||
s32 getObjectCount(void);
|
||||
s32 func_8000E9C0(void);
|
||||
void func_8000E9D0(Object *arg0);
|
||||
void gParticlePtrList_addObject(Object *object);
|
||||
s32 func_80010018(void);
|
||||
s32 func_80010028(s32 arg0);
|
||||
void func_80011390(void);
|
||||
s32 func_8001139C();
|
||||
s32 func_800113AC();
|
||||
s32 func_800113BC();
|
||||
void func_80011560(void);
|
||||
void func_80012C30(void);
|
||||
void func_80012C3C(Gfx** dlist);
|
||||
void func_80012C98(Gfx **dlist);
|
||||
void func_80012CE8(Gfx **dlist);
|
||||
void func_80012D5C(u32 *arg0, u32 *arg1, u32 *arg2, Object *object);
|
||||
void func_80012F30(Object *arg0);
|
||||
void render_object(Object *this);
|
||||
void func_80013548(Object *arg0);
|
||||
void func_800142B8(void);
|
||||
u32 func_800179D0(void);
|
||||
void func_80017E74(s32 arg0);
|
||||
s16 func_80017E88(void);
|
||||
Object *func_80018C6C(void);
|
||||
void func_8001A8D4(s32 arg0);
|
||||
s16 func_8001AE44();
|
||||
s32 func_8001AE54();
|
||||
s32 func_8001B288(void);
|
||||
s32 func_8001B2E0();
|
||||
s32 func_8001B3AC(s32 arg0);
|
||||
s32 func_8001B640();
|
||||
s32 func_8001B650(void);
|
||||
s32 func_8001B738(s32 arg0);
|
||||
u8 func_8001B780();
|
||||
void func_8001B790(void);
|
||||
unknown8011AECC *func_8001BA00(s32 arg0);
|
||||
unknown8011AECC *func_8001BA1C(s32 arg0, s32 arg1);
|
||||
s32 func_8001BA64();
|
||||
Object **get_object_struct_array(s32 *cnt);
|
||||
s32 *func_8001BA90(s32 *arg0);
|
||||
s32 *func_8001BAAC(s32 *arg0);
|
||||
Object *get_object_struct(s32 indx);
|
||||
void func_8001BC40(s32 arg0, s32 arg1, s32 arg2, s32 arg3);
|
||||
u32 func_8001BD94(s32 arg0);
|
||||
void func_8001D1AC(void);
|
||||
void func_8001D1BC(s32 arg0);
|
||||
u32 func_8001D1E4(s32 *arg0);
|
||||
u32 func_8001D214(s32 arg0);
|
||||
void func_8001D23C(s32 arg0, s32 arg1, s32 arg2);
|
||||
void calc_dyn_light_and_env_map_for_object(ObjectModel *model, Object *object, s32 arg2, f32 arg3);
|
||||
s32 *get_misc_asset(s32 index);
|
||||
s32 func_8001E2EC(s32 arg0);
|
||||
void func_8001E344(s32 arg0);
|
||||
void func_8001E36C(s32 arg0, f32 *arg1, f32 *arg2, f32 *arg3);
|
||||
s16 func_8001E440();
|
||||
void func_8001E450(s32 arg0);
|
||||
void func_8001E45C(s32 arg0);
|
||||
s32 func_8001E4B4(void);
|
||||
s8 func_8001F3B8(void);
|
||||
void func_8001F3C8(s32 arg0);
|
||||
void func_8001F450(void);
|
||||
s32 func_800210CC(s8 arg0);
|
||||
s8 func_800214C4(void);
|
||||
f32 lerp(f32 *arg0, u32 arg1, f32 arg2);
|
||||
void func_800228DC(s32 arg0, s32 arg1, s32 arg2);
|
||||
void func_800228EC(s32 arg0);
|
||||
s8 func_8002341C(void);
|
||||
s32 func_80023568(void);
|
||||
s8 func_800235C0(void);
|
||||
void func_800238BC(Object *arg0);
|
||||
void run_object_loop_func(Object *obj, s32 arg1);
|
||||
void func_8002458C(s32 arg0);
|
||||
s16 *func_80024594(s32 *arg0, s32 *arg1);
|
||||
void func_800245B4(s16 arg0);
|
||||
|
||||
//Non Matching
|
||||
void calc_dynamic_lighting_for_object_1(unk8001D6E4_arg1 *, ObjectModel *, s16, unk8001D6E4_arg1 *, f32, f32);
|
||||
void calc_dynamic_lighting_for_object_2(unk8001D6E4_arg1 *, ObjectModel *, s16, f32);
|
||||
void gParticlePtrList_flush(void);
|
||||
void func_8001D258(f32, f32, s32, s32, s32);
|
||||
void decrypt_magic_codes(u8 *arg0, s32 length);
|
||||
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);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "camera.h"
|
||||
#include "menu.h" // For cheats
|
||||
#include "unknown_0ABDF0.h"
|
||||
#include "unknown_043920.h"
|
||||
|
||||
/************ .data ************/
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
#include "macros.h"
|
||||
#include "structs.h"
|
||||
#include "asset_sections.h"
|
||||
//#include "controller_pak.h"
|
||||
|
||||
/* Size: 8 bytes */
|
||||
typedef struct GhostHeader {
|
||||
@@ -994,8 +995,8 @@ void free_tt_ghost_data(void) {
|
||||
gGhostData[2] = NULL;
|
||||
}
|
||||
|
||||
void func_80059B7C(s32 arg0, s32 arg1, s16 arg2, s16 arg3, s16 arg4) {
|
||||
func_80075000(arg0, (s16)arg1, arg2, arg3, arg4, D_8011D5A0[D_8011D59C], gGhostData[D_8011D59C]);
|
||||
s32 func_80059B7C(s32 arg0, s32 arg1, s16 arg2, s16 arg3, s16 arg4) {
|
||||
return func_80075000(arg0, (s16)arg1, arg2, arg3, arg4, D_8011D5A0[D_8011D59C], gGhostData[D_8011D59C]);
|
||||
}
|
||||
|
||||
GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059BF0.s")
|
||||
|
||||
@@ -45,4 +45,6 @@ extern s32 D_800DCDD0;
|
||||
|
||||
extern s16 D_800DCDD4[4];
|
||||
|
||||
s32 func_80059B7C(s32 arg0, s32 arg1, s16 arg2, s16 arg3, s16 arg4);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user