diff --git a/.vscode/settings.json b/.vscode/settings.json index a555a30f..98182b37 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -17,6 +17,9 @@ "_LANGUAGE_C" // For gbi.h ], "files.associations": { - "hud.h": "c" + "hud.h": "c", + "global.h": "c", + "ultratypes.h": "c", + "mbi.h": "c" }, } \ No newline at end of file diff --git a/include/functions.h b/include/functions.h index f7b158c4..224bb79a 100644 --- a/include/functions.h +++ b/include/functions.h @@ -1,8 +1,10 @@ #ifndef FUNCTIONS_H #define FUNCTIONS_H -void func_80005C34(s32, f32, f32, f32, s32); /* extern */ -void func_80006EB8(Gfx **); /* extern */ +void func_80005C34(s32, f32, f32, f32, s32); +void func_80006EB8(Gfx **); +void func_8009D994(Gfx*, void*, u32, u32, f32, f32, f32, f32); +void func_800A1200(s32, s32, f32, f32, s32*); void func_800B8DD0(Gfx **, s32); #endif diff --git a/include/global.h b/include/global.h index 9ceef36c..b66328ae 100644 --- a/include/global.h +++ b/include/global.h @@ -7,4 +7,6 @@ #include "variables.h" #include "macros.h" +extern Gfx* D_80137E64; + #endif // GLOBAL_H diff --git a/include/hud.h b/include/hud.h index 3f122e4f..6c4b8f94 100644 --- a/include/hud.h +++ b/include/hud.h @@ -39,7 +39,7 @@ void func_80090E8C(void); void func_800910C0(void); void func_8009C320(Gfx*, s32*, s32*, s32, s32, f32, f32, f32, f32); void func_8009D0BC(Gfx*, void*, void*, u32, u32, f32, f32, f32, f32); -void func_8009D994(Gfx*, s32*, s32, s32, f32, f32, f32, f32); +void func_8009D994(Gfx*, void*, u32, u32, f32, f32, f32, f32); void func_8009E1E8(Gfx*, s32*, s32, s32, f32, f32, f32, f32); // Weird addresses, assets maybe? @@ -65,7 +65,6 @@ extern s32 D_1013700; extern s32 D_3000B20; extern s32 D_30013E0; -extern Gfx* D_80137E64; extern s32 D_80161690; extern s32 D_801617E8[]; extern s32 D_801617FC; diff --git a/src/main/B99D0.c b/src/main/B99D0.c index b42485f0..15e0b18f 100644 --- a/src/main/B99D0.c +++ b/src/main/B99D0.c @@ -1,7 +1,6 @@ #include "global.h" extern Gfx D_800D31B0[]; -extern Gfx* D_80137E64; #pragma GLOBAL_ASM("asm/us/nonmatchings/main/B99D0/func_800B8DD0.s") diff --git a/src/overlays/segment_EBFBE0/EBFCA0.c b/src/overlays/segment_EBFBE0/EBFCA0.c index 728f1fc9..9672c837 100644 --- a/src/overlays/segment_EBFBE0/EBFCA0.c +++ b/src/overlays/segment_EBFBE0/EBFCA0.c @@ -12,6 +12,7 @@ void func_8001DC6C(s32, s32); void func_801877F0_EBFEB0(void); s32 func_80187ABC_EC017C(void); void func_80187B00_EC01C0(void); +void func_80187E28_EC04E8(void); void func_801888E8_EC0FA8(void); void func_8018994C_EC200C(void); void func_8018A644_EC2D04(void); @@ -88,6 +89,12 @@ extern f32 D_801B833C; extern s32 D_801B8344; extern s32 D_801B8348; +extern s32 D_801ADA44_EE6104[]; + +extern s32 D_5000200[]; +extern s32 D_5000300[]; +extern s32 D_50077B0; + void func_801875E0_EBFCA0(void) { D_80137E78 = 2; @@ -321,7 +328,28 @@ void func_80187B00_EC01C0(void) { } } -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/segment_EBFBE0/EBFCA0/func_80187CA8_EC0368.s") +void func_80187CA8_EC0368(void) { + s32 temp = 20; + s32 temp2 = 36; + + func_800B8DD0(&D_80137E64, 0x53); + + gDPSetPrimColor(D_80137E64++, 0, 0, 255, 255, 0, 255); + + func_800A1200(temp2, temp, 1.0f, 1.0f, D_801ADA44_EE6104); + + gDPSetPrimColor(D_80137E64++, 0, 0, 255, 255, 255, 255); + + func_8009D994(&D_80137E64, D_5000300, 16, 8, 148.0f, temp, 1.0f, 1.0f); + func_8009D994(&D_80137E64, D_5000200, 16, 8, 164, temp, 1.0f, 1.0f); + + func_800B8DD0(&D_80137E64, 0x53); + + gDPSetPrimColor(D_80137E64++, 0, 0, 255, 255, 255, 255); + + func_8009D994(&D_80137E64, &D_50077B0, 16, 2, 36, 32, 15.2f, 1.0f); + func_80187E28_EC04E8(); +} #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/segment_EBFBE0/EBFCA0/func_80187E28_EC04E8.s")