diff --git a/include/fox_option.h b/include/fox_option.h index daee6fb8..f11ebe3c 100644 --- a/include/fox_option.h +++ b/include/fox_option.h @@ -56,22 +56,49 @@ typedef struct { /* 0x8 */ s32 unk_8; } UnkStruct_D_EBFBE0_801AED4C; // size = 0xC - - - -extern void* D_EBFBE0_801B68B0[]; -extern void* D_EBFBE0_801B68D4[]; - -extern s32 D_EBFBE0_801B68F8; - -extern s32 D_EBFBE0_801B81A8[][3]; - +extern s32 D_EBFBE0_801B9090; +extern s32 D_EBFBE0_801B9094; +extern s32 D_EBFBE0_801B9098; //gap +extern s32 D_EBFBE0_801B90A0[3]; //gap +extern s32 D_EBFBE0_801B90B0[3]; //gap +extern f32 D_EBFBE0_801B90C0[3]; //gap +extern f32 D_EBFBE0_801B90D0[3]; //gap +extern f32 D_EBFBE0_801B90E0[3]; //gap +extern f32 D_EBFBE0_801B90F0[3]; //gap +extern f32 D_EBFBE0_801B9100[3]; //gap +extern f32 D_EBFBE0_801B9110[3]; +extern f32 D_EBFBE0_801B911C; +extern f32 D_EBFBE0_801B9120; +extern s32 D_EBFBE0_801B9124; +extern s32 D_EBFBE0_801B9128; +extern s32 D_EBFBE0_801B912C; +extern s32 D_EBFBE0_801B9130; +extern s32 D_EBFBE0_801B9134; +extern s32 D_EBFBE0_801B9138; +extern s32 D_EBFBE0_801B913C; +extern s32 D_EBFBE0_801B9140[3]; extern s32 D_EBFBE0_801B914C; +extern u8 D_EBFBE0_801B9150[3][2]; extern s32 D_EBFBE0_801B9158; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9160[]; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9160[3]; +extern s32 D_EBFBE0_801B9178; +extern s32 D_EBFBE0_801B917C; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9180; //gap +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9188; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9190; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9198; extern s32 D_EBFBE0_801B91A0; +extern s32 D_EBFBE0_801B91A4; +extern s32 D_EBFBE0_801B91A8; +extern s32 D_EBFBE0_801B91AC; +extern s32 D_EBFBE0_801B91B0; extern s32 D_EBFBE0_801B91B4; extern s32 D_EBFBE0_801B91B8; +extern s32 D_EBFBE0_801B91BC; +extern s32 D_EBFBE0_801B91C0; +extern s32 D_EBFBE0_801B91C4; +extern s32 D_EBFBE0_801B91C8; +extern s32 D_EBFBE0_801B91CC; extern s32 D_EBFBE0_801B91D0; extern f32 D_EBFBE0_801B91D4; extern f32 D_EBFBE0_801B91D8; @@ -79,15 +106,10 @@ extern f32 D_EBFBE0_801B91DC; extern f32 D_EBFBE0_801B91E0; extern f32 D_EBFBE0_801B91E4; extern f32 D_EBFBE0_801B91E8; -extern s32 D_EBFBE0_801B9124; -extern s32 D_EBFBE0_801B912C; -extern s32 D_EBFBE0_801B9178; -extern s32 D_EBFBE0_801B917C; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9180; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9188; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9190; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9198; -extern s32 D_EBFBE0_801B91BC; +extern f32 D_EBFBE0_801B91EC; +extern s32 D_EBFBE0_801B91F0; +extern f32 D_EBFBE0_801B91F4; +extern f32 D_EBFBE0_801B91F8; extern f32 D_EBFBE0_801B91FC; extern f32 D_EBFBE0_801B9200; extern f32 D_EBFBE0_801B9204; @@ -98,81 +120,6 @@ extern s32 D_EBFBE0_801B9214; extern f32 D_EBFBE0_801B9218; extern f32 D_EBFBE0_801B921C; extern f32 D_EBFBE0_801B9220; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9250; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9258; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9260; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9268; -extern f32 D_EBFBE0_801B9270[]; -extern s32 D_EBFBE0_801B9284; -extern s32 D_EBFBE0_801B9288; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9290; -extern f32 D_EBFBE0_801B9298[]; -extern s32 spectrumAnalizerMode; -extern s32 D_EBFBE0_801B931C; -extern u8 D_EBFBE0_801B931F; -extern bool D_EBFBE0_801B9320; // MusicPlaying status in the expert sound options -extern s32 D_EBFBE0_801B9340; -extern s32 D_EBFBE0_801B9348[4]; -extern f32 D_EBFBE0_801B9358[4]; - -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B93A0[4]; -extern u8 D_EBFBE0_801B93C4; -extern s32 D_EBFBE0_801B93D0; -extern s32 D_EBFBE0_801B93E8; -extern s32 D_EBFBE0_801B93E0; -extern s32 D_EBFBE0_801B93E4; -extern s32 D_EBFBE0_801B93EC; -extern f32 D_EBFBE0_801B93F0; -extern f32 D_EBFBE0_801B93F4; -extern f32 D_EBFBE0_801B93F8; - -// Planet textures -extern s8 D_EBFBE0_801BB810[96 * 96]; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9400; -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9408; -extern s8 D_EBFBE0_801B9410[96 * 96]; -extern s8 D_EBFBE0_801BDC10[96 * 96]; -extern s8 D_EBFBE0_801C0010[96 * 96]; -extern s8 D_EBFBE0_801C2410[96 * 96]; -extern s8 D_EBFBE0_801C4810[96 * 96]; -extern s8 D_EBFBE0_801C6C10[96 * 96]; -extern s8 D_EBFBE0_801C9010[96 * 96]; -extern s8 D_EBFBE0_801CB410[96 * 96]; - -extern f32 D_EBFBE0_801CD818[]; - -extern s32 D_EBFBE0_801B9090; -extern s32 D_EBFBE0_801B9094; -extern s32 D_EBFBE0_801B9098; -extern s32 D_EBFBE0_801B90A0[]; -extern s32 D_EBFBE0_801B90B0[]; -extern f32 D_EBFBE0_801B90C0[]; -extern f32 D_EBFBE0_801B90D0[]; -extern f32 D_EBFBE0_801B90E0[]; -extern f32 D_EBFBE0_801B90F0[]; -extern f32 D_EBFBE0_801B9100[]; -extern f32 D_EBFBE0_801B9110[]; -extern s32 D_EBFBE0_801B9140[]; -extern f32 D_EBFBE0_801B911C; -extern f32 D_EBFBE0_801B9120; -extern s32 D_EBFBE0_801B9128; -extern s32 D_EBFBE0_801B9130; -extern s32 D_EBFBE0_801B9134; -extern s32 D_EBFBE0_801B9138; -extern s32 D_EBFBE0_801B913C; -extern u8 D_EBFBE0_801B9150[][2]; -extern s32 D_EBFBE0_801B91A4; -extern s32 D_EBFBE0_801B91A8; -extern s32 D_EBFBE0_801B91AC; -extern s32 D_EBFBE0_801B91B0; -extern s32 D_EBFBE0_801B91C0; -extern s32 D_EBFBE0_801B91C4; -extern s32 D_EBFBE0_801B91C8; -extern s32 D_EBFBE0_801B91CC; -extern f32 D_EBFBE0_801B91EC; -extern s32 D_EBFBE0_801B91F0; -extern f32 D_EBFBE0_801B91F4; -extern f32 D_EBFBE0_801B91F8; extern f32 D_EBFBE0_801B9224; extern f32 D_EBFBE0_801B9228; extern s32 D_EBFBE0_801B922C; @@ -183,18 +130,67 @@ extern s32 D_EBFBE0_801B923C; extern s32 D_EBFBE0_801B9240; extern s32 D_EBFBE0_801B9244; extern s32 D_EBFBE0_801B9248; -extern u8 D_EBFBE0_801B924C; -extern s32 D_EBFBE0_801B9330[]; +extern u8 D_EBFBE0_801B924C; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9250; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9258; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9260; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9268; +extern f32 D_EBFBE0_801B9270[5]; +extern s32 D_EBFBE0_801B9284; +extern s32 D_EBFBE0_801B9288; //gap +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9290; +extern f32 D_EBFBE0_801B9298[32]; +extern s32 spectrumAnalizerMode; +extern s32 D_EBFBE0_801B931C; +extern bool D_EBFBE0_801B9320; // MusicPlaying status in the expert sound options +extern s32 D_EBFBE0_801B9330[2]; extern s32 D_EBFBE0_801B933C; +extern s32 D_EBFBE0_801B9340; //gap +extern s32 D_EBFBE0_801B9348[4]; +extern f32 D_EBFBE0_801B9358[4]; extern f32 D_EBFBE0_801B9368; extern s32 D_EBFBE0_801B936C; extern f32 D_EBFBE0_801B9370; extern s32 D_EBFBE0_801B9374; extern f32 D_EBFBE0_801B9378; extern s32 D_EBFBE0_801B937C; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9380[4]; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B93A0[4]; +extern u8 D_EBFBE0_801B93C4; +extern s32 D_EBFBE0_801B93D0; extern s32 D_EBFBE0_801B93D4; extern s32 D_EBFBE0_801B93D8; extern s32 D_EBFBE0_801B93DC; +extern s32 D_EBFBE0_801B93E0; +extern s32 D_EBFBE0_801B93E4; +extern s32 D_EBFBE0_801B93E8; +extern s32 D_EBFBE0_801B93EC; +extern f32 D_EBFBE0_801B93F0; +extern f32 D_EBFBE0_801B93F4; +extern f32 D_EBFBE0_801B93F8; //gap +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9400; +extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9408; + +extern void* D_EBFBE0_801B68B0[]; +extern void* D_EBFBE0_801B68D4[]; +extern s32 D_EBFBE0_801B68F8; + +extern s32 D_EBFBE0_801B81A8[][3]; + +// Planet textures +extern s8 D_EBFBE0_801B9410[96 * 96]; +extern s8 D_EBFBE0_801BB810[96 * 96]; +extern s8 D_EBFBE0_801BDC10[96 * 96]; +extern s8 D_EBFBE0_801C0010[96 * 96]; +extern s8 D_EBFBE0_801C2410[96 * 96]; +extern s8 D_EBFBE0_801C4810[96 * 96]; +extern s8 D_EBFBE0_801C6C10[96 * 96]; +extern s8 D_EBFBE0_801C9010[96 * 96]; +extern s8 D_EBFBE0_801CB410[96 * 96]; + +extern f32 D_EBFBE0_801CD818[]; + + void func_EBFBE0_801877F0(void); s32 func_EBFBE0_80187ABC(void); diff --git a/linker_scripts/us/symbol_addrs_overlays.txt b/linker_scripts/us/symbol_addrs_overlays.txt index 0bb0d61c..c84d45cf 100644 --- a/linker_scripts/us/symbol_addrs_overlays.txt +++ b/linker_scripts/us/symbol_addrs_overlays.txt @@ -14,6 +14,21 @@ D_DF4260_8019A008 = 0x8019A008; func_E08400_80187B08 = 0x80187B08; func_E08400_80188A40 = 0x80188A40; D_E08400_80195D70 = 0x80195D70; +D_EBFBE0_801AE570 = 0x801AE570; // type:f32 size:0x18 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AE588 = 0x801AE588; // type:f32 size:0x18 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AE5A0 = 0x801AE5A0; // type:f32 size:0x18 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AE5B8 = 0x801AE5B8; // type:f32 size:0x18 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AE5D0 = 0x801AE5D0; // type:f32 size:0x18 force_migration:True segment:ovl_EBFBE0 + +D_EBFBE0_801AE9A0 = 0x801AE9A0; // type:f32 size:0x10 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AE9B0 = 0x801AE9B0; // type:f32 size:0x10 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AE9C0 = 0x801AE9C0; // type:s32 size:0xE0 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AEAA0 = 0x801AEAA0; // type:s32 size:0xA8 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AEB48 = 0x801AEB48; // type:s32 size:0xA8 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AED20 = 0x801AED20; // type:f32 size:0x8 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AEE6C = 0x801AEE6C; // type:s32 size:0x58 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AF25C = 0x801AF25C; // type:f32 size:0x18 force_migration:True segment:ovl_EBFBE0 +D_EBFBE0_801AF274 = 0x801AF274; // type:f32 size:0x18 force_migration:True segment:ovl_EBFBE0 func_E16C50_80187754 = 0x80187754; func_E16C50_801932AC = 0x801932AC; diff --git a/src/overlays/ovl_EBFBE0/fox_option.c b/src/overlays/ovl_EBFBE0/fox_option.c index 28f7b83d..97d7cbb6 100644 --- a/src/overlays/ovl_EBFBE0/fox_option.c +++ b/src/overlays/ovl_EBFBE0/fox_option.c @@ -1,6 +1,8 @@ #include "global.h" #include "fox_option.h" +//! TODO: IMPORT BSS + extern Gfx D_EBFBE0_801B4A40[]; extern Gfx D_EBFBE0_801B5E78[]; extern Gfx D_EBFBE0_801B61E0[]; @@ -12,7 +14,8 @@ extern Gfx D_EBFBE0_801B50D8[]; extern Gfx D_EBFBE0_801B5E78[]; extern Gfx D_EBFBE0_801B57A8[]; -#ifdef IMPORT_DATA_PENDING +// #define IMPORT_BSS + static f32 D_EBFBE0_801AE570[] = { 60.0f, 36.0f, 12.0f, -12.0f, -36.0f, -60.0f }; static f32 D_EBFBE0_801AE588[] = { 124.0f, 118.0f, 145.0f, 125.0f, 133.0f, 118.0f }; static f32 D_EBFBE0_801AE5A0[] = { 54.0f, 78.0f, 103.0f, 126.0f, 151.0f, 175.0f }; @@ -129,9 +132,10 @@ static u32 D_EBFBE0_801AEBF0[] = { 0xFFFF0000, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00010000, 0x00000000, 0x00000000, 0xFFFFFFFF, }; -// DisplayList? -static u32 D_EBFBE0_801AEC30[] = { - 0x0400103F, (void*) D_EBFBE0_801AEBF0, 0xB1020406, 0x00020600, 0xB8000000, 0x00000000, +static Gfx D_EBFBE0_801AEC30[] = { + gsSPVertex(D_EBFBE0_801AEBF0, 4, 0), + gsSP1Quadrangle(1, 2, 3, 0, 0), + gsSPEndDisplayList(), }; // Something inside D_EBFBE0_801AEC88 display list @@ -140,9 +144,10 @@ static u32 D_EBFBE0_801AEC48[] = { 0xFFFFFFFF, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x0001FFFF, 0x00000000, 0x00000000, 0xFFFFFFFF, }; -// DisplayList? -static u32 D_EBFBE0_801AEC88[] = { - 0x0400103F, D_EBFBE0_801AEC48, 0xB1020406, 0x00020600, 0xB8000000, 0x00000000, +static Gfx D_EBFBE0_801AEC88[] = { + gsSPVertex(D_EBFBE0_801AEC48, 4, 0), + gsSP1Quadrangle(1, 2, 3, 0, 0), + gsSPEndDisplayList(), }; // Something inside D_EBFBE0_801AECE0 display list @@ -150,9 +155,11 @@ static u32 D_EBFBE0_801AECA0[] = { 0x00010001, 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFF0001, 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x0001FFFF, 0x00000000, 0x00000000, 0xFFFFFFFF, }; -// DisplayList? -static u32 D_EBFBE0_801AECE0[] = { - 0x0400103F, D_EBFBE0_801AECA0, 0xB1020406, 0x00020600, 0xB8000000, 0x00000000, + +static Gfx D_EBFBE0_801AECE0[] = { + gsSPVertex(D_EBFBE0_801AECA0, 4, 0), + gsSP1Quadrangle(1, 2, 3, 0, 0), + gsSPEndDisplayList(), }; static u8* D_EBFBE0_801AECF8[10] = { @@ -175,7 +182,7 @@ static s32 D_EBFBE0_801AED3C[4] = { 0, 0, 0, 0 }; static UnkStruct_D_EBFBE0_801AED4C D_EBFBE0_801AED4C[24] = { { 9, 0, 0 }, { 0, 12, 0 }, { 12, 4, 0 }, { 4, 10, 0 }, { 10, 2, 0 }, { 6, 4, 0 }, { 7, 2, 0 }, { 3, 2, 0 }, { 2, 14, 0 }, { 5, 6, 1 }, { 6, 13, 1 }, { 13, 7, 1 }, { 4, 7, 1 }, { 12, 13, 1 }, { 8, 7, 1 }, { 9, 5, 2 }, - { 5, 1, 2 }, { 11, 8, 2 }, { 8, 3, 2 }, { 3, 1, 2 }, { 7, 1, 2 }, { 1, 14, 2 }, { 0, 6, 3 }, { 4, 3, 4 }, + { 5, 11, 2 }, { 11, 8, 2 }, { 8, 3, 2 }, { 3, 1, 2 }, { 7, 1, 2 }, { 1, 14, 2 }, { 0, 6, 3 }, { 4, 3, 4 }, }; static Gfx* D_EBFBE0_801AEE6C[16] = { @@ -188,92 +195,144 @@ static char* D_EBFBE0_801AEEAC[] = { "ME", "A6", "BO", "SZ", "SX", "SY", "KA", "MA", "ZO", "CO", "TI", "AQ", "FO", "SO", "VE", "VE", }; +static s32 PAD_EBFBE0_801AEEEC = 0; + // Something inside D_EBFBE0_801AEF30 display list static u32 D_EBFBE0_801AEEF0[] = { 0xFFF5FFF5, 0x00000000, 0x000000FF, 0x00000000, 0x000BFFF5, 0x00000000, 0x00FF00FF, 0x00000000, 0x000B000B, 0x00000000, 0x00FF0000, 0x00000000, 0xFFF5000B, 0x00000000, 0x00000000, 0x00000000, }; -// DisplayList? -static u32 D_EBFBE0_801AEF30[] = { - 0x0400103F, D_EBFBE0_801AEEF0, 0xBF000000, 0x00000204, 0xBF000000, 0x00000406, - 0xB8000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, +static Gfx D_EBFBE0_801AEF30[] = { + gsSPVertex(D_EBFBE0_801AEEF0, 4, 0), + gsSP1Triangle(0, 1, 2, 0), + gsSP1Triangle(0, 2, 3, 0), + gsSPEndDisplayList(), }; +static s32 PAD_EBFBE0_801AEF50[] = { 0x00000000, 0x00000000, 0x00000000 }; + static char D_EBFBE0_801AEF5C[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789."; static f32 D_EBFBE0_801AEF84[] = { 24.0f, 0.0f, -24.0f }; static f32 D_EBFBE0_801AEF90[] = { 111.0f, 112.0f, 121.0f }; static f32 D_EBFBE0_801AEF9C[] = { 89.0f, 115.0f, 139.0f }; -/* beyond this point, data might be in-function static or near function static */ - -static UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9380[4]; // bss -#else -extern UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9380[]; -extern f32 D_EBFBE0_801AE588[]; -extern f32 D_EBFBE0_801AE5A0[]; -extern f32 D_EBFBE0_801AE5E8[2]; -extern f32 D_EBFBE0_801AE5F0[2]; -extern f32 D_EBFBE0_801AE5F8[2]; -extern f32 D_EBFBE0_801AE600[2]; -extern f32 D_EBFBE0_801AE608[]; -extern f32 D_EBFBE0_801AE620[]; -extern MenuContext D_EBFBE0_801AE878[]; -extern u8 D_EBFBE0_801AE998[]; -extern u8 D_EBFBE0_801AE99C[]; -extern Gfx D_EBFBE0_801AEC30[]; -extern Gfx D_EBFBE0_801AEC88[]; -extern Gfx D_EBFBE0_801AECE0[]; -extern u8* D_EBFBE0_801AECF8[]; -extern UnkStruct_D_EBFBE0_801AED4C D_EBFBE0_801AED4C[24]; -extern char* D_EBFBE0_801AEEAC[]; -extern Gfx D_EBFBE0_801AEF30[]; -extern u8 D_EBFBE0_801AEF5C[]; -extern f32 D_EBFBE0_801AEF84[]; -extern f32 D_EBFBE0_801AEF90[]; -extern f32 D_EBFBE0_801AEF9C[]; -extern char* D_EBFBE0_801AF0C4[]; -extern s32 D_EBFBE0_801AF0D0[]; -extern s32 D_EBFBE0_801AF0DC[]; -extern s32 D_EBFBE0_801AF0E8[]; - -extern Vec3f D_EBFBE0_801AF100[]; -extern Vec3f D_EBFBE0_801AF118[]; -extern f32 D_EBFBE0_801AF13C; -extern f32 D_EBFBE0_801AF140; -extern f32 D_EBFBE0_801AF144; - -extern MenuContext_00 D_EBFBE0_801AE9C0[4]; -extern MenuContext_00 D_EBFBE0_801AEB48[]; -extern f32 D_EBFBE0_801AE9A0[4]; -extern f32 D_EBFBE0_801AE9B0[4]; -extern f32 D_EBFBE0_801AE570[]; -extern f32 D_EBFBE0_801AE5B8[]; -extern f32 D_EBFBE0_801AE5D0[]; -extern MenuContext D_EBFBE0_801AE638[]; -extern s32 D_EBFBE0_801AED3C[4]; -extern f32 D_EBFBE0_801AF148[4]; -extern f32 D_EBFBE0_801AF158[4]; -extern f32 D_EBFBE0_801AF188[4]; -extern f32 D_EBFBE0_801AF198; -extern f32 D_EBFBE0_801AF19C[4]; -extern f32 D_EBFBE0_801AF1AC; -extern f32 D_EBFBE0_801AF1B0; -extern f32 D_EBFBE0_801AF1B4; -extern f32 D_EBFBE0_801AF1B8; -extern f32 D_EBFBE0_801AF1BC; -extern f32 D_EBFBE0_801AF1C0; -extern f32 D_EBFBE0_801AF1C4; -extern f32 D_EBFBE0_801AF1C8; -extern f32 D_EBFBE0_801AF1CC; -extern f32 D_EBFBE0_801AF1D0; -extern f32 D_EBFBE0_801AF1D4; -extern f32 D_EBFBE0_801AF1D8; -extern f32 D_EBFBE0_801AF1DC; -extern s32 D_EBFBE0_801AF168[4]; -extern s32 D_EBFBE0_801AF178[4]; -extern u8 D_EBFBE0_801AEF5C[0x28]; +#ifdef IMPORT_BSS +s32 D_EBFBE0_801B9090; +s32 D_EBFBE0_801B9094; +s32 D_EBFBE0_801B9098; // gap +s32 D_EBFBE0_801B90A0[3]; // gap +s32 D_EBFBE0_801B90B0[3]; // gap +f32 D_EBFBE0_801B90C0[3]; // gap +f32 D_EBFBE0_801B90D0[3]; // gap +f32 D_EBFBE0_801B90E0[3]; // gap +f32 D_EBFBE0_801B90F0[3]; // gap +f32 D_EBFBE0_801B9100[3]; // gap +f32 D_EBFBE0_801B9110[3]; +f32 D_EBFBE0_801B911C; +f32 D_EBFBE0_801B9120; +s32 D_EBFBE0_801B9124; +s32 D_EBFBE0_801B9128; +s32 D_EBFBE0_801B912C; +s32 D_EBFBE0_801B9130; +s32 D_EBFBE0_801B9134; +s32 D_EBFBE0_801B9138; +s32 D_EBFBE0_801B913C; +s32 D_EBFBE0_801B9140[3]; +s32 D_EBFBE0_801B914C; +u8 D_EBFBE0_801B9150[3][2]; +s32 D_EBFBE0_801B9158; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9160[3]; +s32 D_EBFBE0_801B9178; +s32 D_EBFBE0_801B917C; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9180; // gap +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9188; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9190; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9198; +s32 D_EBFBE0_801B91A0; +s32 D_EBFBE0_801B91A4; +s32 D_EBFBE0_801B91A8; +s32 D_EBFBE0_801B91AC; +s32 D_EBFBE0_801B91B0; +s32 D_EBFBE0_801B91B4; +s32 D_EBFBE0_801B91B8; +s32 D_EBFBE0_801B91BC; +s32 D_EBFBE0_801B91C0; +s32 D_EBFBE0_801B91C4; +s32 D_EBFBE0_801B91C8; +s32 D_EBFBE0_801B91CC; +s32 D_EBFBE0_801B91D0; +f32 D_EBFBE0_801B91D4; +f32 D_EBFBE0_801B91D8; +f32 D_EBFBE0_801B91DC; +f32 D_EBFBE0_801B91E0; +f32 D_EBFBE0_801B91E4; +f32 D_EBFBE0_801B91E8; +f32 D_EBFBE0_801B91EC; +s32 D_EBFBE0_801B91F0; +f32 D_EBFBE0_801B91F4; +f32 D_EBFBE0_801B91F8; +f32 D_EBFBE0_801B91FC; +f32 D_EBFBE0_801B9200; +f32 D_EBFBE0_801B9204; +f32 D_EBFBE0_801B9208; +f32 D_EBFBE0_801B920C; +f32 D_EBFBE0_801B9210; +s32 D_EBFBE0_801B9214; +f32 D_EBFBE0_801B9218; +f32 D_EBFBE0_801B921C; +f32 D_EBFBE0_801B9220; +f32 D_EBFBE0_801B9224; +f32 D_EBFBE0_801B9228; +s32 D_EBFBE0_801B922C; +s32 D_EBFBE0_801B9230; +s32 D_EBFBE0_801B9234; +s32 D_EBFBE0_801B9238; +s32 D_EBFBE0_801B923C; +s32 D_EBFBE0_801B9240; +s32 D_EBFBE0_801B9244; +s32 D_EBFBE0_801B9248; +u8 D_EBFBE0_801B924C; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9250; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9258; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9260; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9268; +f32 D_EBFBE0_801B9270[5]; +s32 D_EBFBE0_801B9284; +s32 D_EBFBE0_801B9288; // gap +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9290; +f32 D_EBFBE0_801B9298[32]; +s32 spectrumAnalizerMode; +s32 D_EBFBE0_801B931C; +bool D_EBFBE0_801B9320; // MusicPlaying status in the expert sound options +s32 D_EBFBE0_801B9330[2]; +s32 D_EBFBE0_801B933C; +s32 D_EBFBE0_801B9340; // gap +s32 D_EBFBE0_801B9348[4]; +f32 D_EBFBE0_801B9358[4]; +f32 D_EBFBE0_801B9368; +s32 D_EBFBE0_801B936C; +f32 D_EBFBE0_801B9370; +s32 D_EBFBE0_801B9374; +f32 D_EBFBE0_801B9378; +s32 D_EBFBE0_801B937C; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9380[4]; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B93A0[4]; +u8 D_EBFBE0_801B93C4; +s32 D_EBFBE0_801B93D0; +s32 D_EBFBE0_801B93D4; +s32 D_EBFBE0_801B93D8; +s32 D_EBFBE0_801B93DC; +s32 D_EBFBE0_801B93E0; +s32 D_EBFBE0_801B93E4; +s32 D_EBFBE0_801B93E8; +s32 D_EBFBE0_801B93EC; +f32 D_EBFBE0_801B93F0; +f32 D_EBFBE0_801B93F4; +f32 D_EBFBE0_801B93F8; // gap +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9400; +UnkStruct_D_EBFBE0_801B9250 D_EBFBE0_801B9408; #endif void func_EBFBE0_80191B20(void) { @@ -727,9 +786,6 @@ void func_EBFBE0_80192938(void) { } } -// https://decomp.me/scratch/qI7sN -// Matches but requires data migration -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_801929F0(void) { s32 i; @@ -775,9 +831,6 @@ void func_EBFBE0_801929F0(void) { D_EBFBE0_801B9198.unk_0 = 0; D_EBFBE0_801B9198.unk_4 = 0; } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_801929F0.s") -#endif void func_EBFBE0_80192D58(void) { s32 i; @@ -1367,7 +1420,6 @@ void func_EBFBE0_80194BD0(void) { } } -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_80194CE4(void) { s32 i; s32 colorGB; @@ -1444,12 +1496,7 @@ void func_EBFBE0_80194CE4(void) { func_EBFBE0_8019C120(D_EBFBE0_801AEB48[i]); } } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_80194CE4.s") -#endif -// needs data declared as static -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_801952B4(void) { s32 i; @@ -1556,9 +1603,6 @@ void func_EBFBE0_801952B4(void) { } } } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_801952B4.s") -#endif void func_EBFBE0_801958DC(void) { s32 i; @@ -1588,7 +1632,7 @@ void func_EBFBE0_80195944(void) { } if (gChangedInput[D_80177AF8].button & A_BUTTON) { - func_8001DA90(D_EBFBE0_801B931F); + func_8001DA90(D_EBFBE0_801B931C); D_EBFBE0_801B9320 = true; } @@ -1617,11 +1661,6 @@ void func_EBFBE0_80195944(void) { } } -#ifdef IMPORT_DATA_PENDING -// u8* D_EBFBE0_801AECF8[10] = { -// D_5009F60, D_500A050, D_500A140, D_500A230, D_500A320, D_500A410, D_500A500, 0x0500A5F0, 0x0500A6E0, 0x0500A7D0, -// }; - void func_EBFBE0_80195B74(void) { u8* temp_v0_4; f32 var_fs0; @@ -1684,14 +1723,16 @@ void func_EBFBE0_80195B74(void) { } for (i = 0; i < 32; i++) { - if (spectrumAnalizerMode == 0 || spectrumAnalizerMode == 2) + if (spectrumAnalizerMode == 0 || spectrumAnalizerMode == 2) { D_EBFBE0_801B9298[i] = (var_fv1 / 255.0f) * temp_v0_4[i]; - else + } else { D_EBFBE0_801B9298[i] = var_fv1 - ((var_fv1 / 255.0f) * temp_v0_4[i]); + } } } else { - for (i = 0; i < 32; i++) + for (i = 0; i < 32; i++) { Math_SmoothStepToF(&D_EBFBE0_801B9298[i], 0.0f, 0.2f, 100.0f, 0.1f); + } } Lib_Ortho(&gMasterDisp); @@ -1722,9 +1763,6 @@ void func_EBFBE0_80195B74(void) { Matrix_Pop(&gGfxMatrix); Lib_Perspective(&gMasterDisp); } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_80195B74.s") -#endif void func_EBFBE0_80196260(void) { D_80178410 = 800; @@ -1865,8 +1903,6 @@ void func_EBFBE0_8019669C(void) { } } -#ifdef IMPORT_DATA_PENDING - void func_EBFBE0_80196894(void) { s32 i; s32 sp7C[2]; @@ -1955,19 +1991,11 @@ void func_EBFBE0_80196894(void) { func_EBFBE0_8019B7D4(); } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_80196894.s") -#endif -#ifdef IMPORT_DATA_PENDING -extern s8 D_EBFBE0_801B7150; -extern s8 D_EBFBE0_801B7154; -extern s8 D_EBFBE0_801B7158; -static s8* D_EBFBE0_801AF0C4[3] = { &D_EBFBE0_801B7150, &D_EBFBE0_801B7154, &D_EBFBE0_801B7158 }; +static char* D_EBFBE0_801AF0C4[3] = { "P", "S", "F" }; static s32 D_EBFBE0_801AF0D0[3] = { 255, 0, 30 }; static s32 D_EBFBE0_801AF0DC[3] = { 30, 179, 30 }; static s32 D_EBFBE0_801AF0E8[3] = { 0, 67, 255 }; -#endif void func_EBFBE0_80196E54(void) { func_EBFBE0_80188010(); @@ -2077,44 +2105,6 @@ void func_EBFBE0_8019715C(void) { } } -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7110.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7114.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7118.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B711C.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7120.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7124.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7128.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B712C.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7130.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7134.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7138.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B713C.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7140.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7144.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7148.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B714C.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7150.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7154.s") - -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/D_EBFBE0_801B7158.s") - void func_EBFBE0_801973C0(void) { s32 temp_t0; @@ -2133,7 +2123,6 @@ void func_EBFBE0_801973C0(void) { Graphics_DisplaySmallText(242, 215, 1.0f, 1.0f, "PUSH A"); } -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_8019752C(void) { f32 var_fs0; f32 var_fs1; @@ -2193,14 +2182,9 @@ void func_EBFBE0_8019752C(void) { TextureRect_8bIA_MirY(&gMasterDisp, D_800D070, 0x10, 0x10, 150.0f, 200.0f, 1.0f, 1.0f); } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019752C.s") -#endif -#ifdef IMPORT_DATA_PENDING static Vec3f D_EBFBE0_801AF100[2] = { { 0.0f, 167.0f, 0.0f }, { 0.0f, -167.0f, 0.0f } }; static Vec3f D_EBFBE0_801AF118[2] = { { 25.0f, 3.6f, 0.0f }, { 25.0f, 3.6f, 0.0f } }; -#endif void func_EBFBE0_80197914(void) { Vec3f* vec1; @@ -2416,8 +2400,6 @@ void func_EBFBE0_8019882C(s32 arg0, s32 arg1, f32 arg2, f32 arg3) { } } -#ifdef IMPORT_DATA_PENDING - void func_EBFBE0_8019896C(s32 arg0, f32 y, s32 arg2) { static f32 D_EBFBE0_801AF130 = 0.0f; static f32 D_EBFBE0_801AF134 = -121.0f; @@ -2572,15 +2554,10 @@ void func_EBFBE0_8019896C(s32 arg0, f32 y, s32 arg2) { Lib_Perspective(&gMasterDisp); } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019896C.s") -#endif -#ifdef IMPORT_DATA_PENDING static f32 D_EBFBE0_801AF13C = 0.7f; static f32 D_EBFBE0_801AF140 = 11.0f; static f32 D_EBFBE0_801AF144 = 2.7f; -#endif void func_EBFBE0_80199198(f32 arg0, f32 arg1, f32 arg2) { RCP_SetupDL(&gMasterDisp, 0x35); @@ -2716,7 +2693,6 @@ void func_EBFBE0_8019978C(void) { } } -#ifdef IMPORT_DATA_PENDING static f32 D_EBFBE0_801AF148[4] = { 30.0f, 214.0f, 30.0f, 215.0f }; static f32 D_EBFBE0_801AF158[4] = { 18.0f, 18.0f, 151.0f, 151.0f }; static s32 D_EBFBE0_801AF168[4] = { 56, 48, 56, 48 }; @@ -2737,9 +2713,7 @@ static f32 D_EBFBE0_801AF1D0 = 11.0f; static f32 D_EBFBE0_801AF1D4 = 7.0f; static f32 D_EBFBE0_801AF1D8 = 59.0f; static f32 D_EBFBE0_801AF1DC = 58.0f; -#endif -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_80199820(s32 arg0) { s32 var_v0; s32 var_a2; @@ -2855,9 +2829,6 @@ void func_EBFBE0_80199820(s32 arg0) { D_EBFBE0_801AF148[arg0] + D_EBFBE0_801AF19C[arg0], D_EBFBE0_801AF158[arg0] + D_EBFBE0_801AF1AC, D_EBFBE0_801AF1B0, D_EBFBE0_801AF1B0); } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_80199820.s") -#endif void func_EBFBE0_80199EA8(void) { s32 i; @@ -2872,7 +2843,7 @@ void func_EBFBE0_80199EA8(void) { } // D_EBFBE0_801B9358 needs to be static but belongs to bss section? -#ifdef IMPORT_DATA_PENDING +#ifdef IMPORT_BSS void func_EBFBE0_80199FA8(void) { s32 i; @@ -2903,7 +2874,7 @@ void func_EBFBE0_80199FA8(void) { #endif // D_EBFBE0_801B9380 needs to be static but belongs to bss section? -#ifdef IMPORT_DATA_PENDING +#ifdef IMPORT_BSS void func_EBFBE0_8019A080(void) { s32 i; @@ -3231,11 +3202,16 @@ void func_EBFBE0_8019AB30(void) { TextureRect_8bIA(&gMasterDisp, D_7001DF0, 80, 10, 122.0f, 49.0f, 1.0f, 1.0f); } } +// extern f32 D_EBFBE0_801B9324; // in-function +// extern f32 D_EBFBE0_801B9328; //gap, in-function +// extern f32 D_EBFBE0_801B9338; // in-function // needs in function static -#ifdef IMPORT_DATA_PENDING +#ifdef IMPORT_BSS void func_EBFBE0_8019AD84(void) { - static f32 D_EBFBE0_801B9324, D_EBFBE0_801B9328, D_EBFBE0_801B9338; + static f32 D_EBFBE0_801B9324; + static f32 D_EBFBE0_801B9328; + static f32 D_EBFBE0_801B9338; s32 pad[2]; s32 colorGB; s32 var_v0; @@ -3289,11 +3265,16 @@ void func_EBFBE0_8019AD84(void) { } } #else +static f32 D_EBFBE0_801AF25C[6] = { 156.0f, 112.0f, 112.0f, 112.0f, 112.0f, 112.0f }; +static f32 D_EBFBE0_801AF274[6] = { 46.0f, 43.0f, 43.0f, 43.0f, 43.0f, 43.0f }; +static u8* D_EBFBE0_801AF28C[] = { + (u8*) 0x070024D0, (u8*) 0x07002730, (u8*) 0x07002990, (u8*) 0x07002BF0, (u8*) 0x07002E50, +}; #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019AD84.s") #endif -// needs in-function static -#ifdef IMPORT_DATA_PENDING +// needs in-function static data & bss +#ifdef IMPORT_BSS void func_EBFBE0_8019AFFC(void) { static f32 D_EBFBE0_801AF2A0 = 101.0f; static f32 D_EBFBE0_801AF2A4 = 86.0f; @@ -3342,10 +3323,11 @@ void func_EBFBE0_8019AFFC(void) { } } #else +static f32 D_EBFBE0_801AF2A0 = 101.0f; +static f32 D_EBFBE0_801AF2A4 = 86.0f; #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019AFFC.s") #endif -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_8019B1F8(void) { static f32 D_EBFBE0_801AF2A8 = 69.0f; static f32 D_EBFBE0_801AF2AC = 110.0f; @@ -3383,11 +3365,7 @@ void func_EBFBE0_8019B1F8(void) { 1.0f, 1.0f); } } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019B1F8.s") -#endif -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_8019B3DC(void) { static f32 D_EBFBE0_801AF2D4 = 69.0f; static f32 D_EBFBE0_801AF2D8 = 110.0f; @@ -3431,9 +3409,6 @@ void func_EBFBE0_8019B3DC(void) { 1.0f, 1.0f); } } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019B3DC.s") -#endif void func_EBFBE0_8019B5AC(void) { s32 pad[2]; @@ -4072,7 +4047,6 @@ void func_EBFBE0_8019CD54(void) { } } -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_8019D118(void) { static f32 D_EBFBE0_801AF300[] = { -120.0f, 0.0f, 120.0f }; f32 dirX; @@ -4097,7 +4071,7 @@ void func_EBFBE0_8019D118(void) { gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255); Graphics_DisplaySmallText(D_EBFBE0_801AF30C[1], D_EBFBE0_801AF324[1], 1.0f, 1.0f, "RANK"); Graphics_DisplaySmallText(D_EBFBE0_801AF30C[2], D_EBFBE0_801AF324[2], 1.0f, 1.0f, "TOTAL HITS"); - + (void) "p:%d x:%f y:%f\n"; if (D_EBFBE0_801B9138 == 1) { if (D_80177DB0 & 0x10) { gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255); @@ -4154,9 +4128,6 @@ void func_EBFBE0_8019D118(void) { Matrix_Pop(&gGfxMatrix); } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019D118.s") -#endif void func_EBFBE0_8019D624(void) { s32 i; @@ -4265,7 +4236,6 @@ void func_EBFBE0_8019D624(void) { Save_Write(); } -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_8019DB20(s32 character, f32 x, f32 y, f32 z, f32 scale, f32 xAngle, f32 yAngle, f32 zAngle) { static Gfx* D_EBFBE0_801AF33C[37] = { (Gfx*) 0x090086F0, (Gfx*) 0x09007FD0, (Gfx*) 0x09007BB0, (Gfx*) 0x09000980, (Gfx*) 0x090075A0, @@ -4312,9 +4282,6 @@ void func_EBFBE0_8019DB20(s32 character, f32 x, f32 y, f32 z, f32 scale, f32 xAn Matrix_Pop(&gGfxMatrix); } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019DB20.s") -#endif s32 func_EBFBE0_8019DCE8(s32 arg0) { s32 i = 0; @@ -4443,7 +4410,6 @@ void func_EBFBE0_8019E030(void) { } } -#ifdef IMPORT_DATA_PENDING void func_EBFBE0_8019E284(void) { s32 i; s32 temp_a0; @@ -4506,6 +4472,12 @@ void func_EBFBE0_8019E284(void) { } } + /** + * Debug: The following code was probably left out by mistake, + * It lets you move the graphics on the bill at the end with the 4th controller, + * programmers probably used it to know which position values to hardcode in place. + */ + if (gChangedInput[3].button & R_TRIG) { D_EBFBE0_801AF410++; if (D_EBFBE0_801AF410 > 7) { @@ -4536,6 +4508,3 @@ void func_EBFBE0_8019E284(void) { D_EBFBE0_801AF3D0[D_EBFBE0_801AF410] += 1.0f; } } -#else -#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/fox_option/func_EBFBE0_8019E284.s") -#endif diff --git a/yamls/us/overlays.yaml b/yamls/us/overlays.yaml index 9b8488d1..08eee4fc 100644 --- a/yamls/us/overlays.yaml +++ b/yamls/us/overlays.yaml @@ -142,13 +142,16 @@ - [0xECA1E0, c, fox_option] - [0xED6EC0, c, ED6EC0] - [0xEE60B0, .data, fox_title] - - [0xEE6C30, data, fox_option] + - [0xEE6C30, .data, fox_option] - [0xEE7AE0, data, ED6EC0] - [0xEEF410, .rodata, EBFBE0] - [0xEEF430, .rodata, fox_title] - [0xEEF7D0, .rodata, fox_option] - [0xEEFB80, .rodata, ED6EC0] - - { start: 0xEF0260, type: bss, vram: 0x801B7BA0, name: ovl_EBFBE0 } + # - { start: 0xEF0260, type: bss, vram: 0x801B7BA0, name: ovl_EBFBE0 } + - { start: 0xEF0260, type: bss, vram: 0x801B7BA0, name: fox_title } + - { start: 0xEF0260, type: bss, vram: 0x801B9090, name: fox_option } + - { start: 0xEF0260, type: bss, vram: 0x801B9410, name: ED6EC0 } - name: ovl_EF0260 type: code