diff --git a/config/GMPE01_00/rels/m415Dll/symbols.txt b/config/GMPE01_00/rels/m415Dll/symbols.txt index d67685cf..47a384f7 100644 --- a/config/GMPE01_00/rels/m415Dll/symbols.txt +++ b/config/GMPE01_00/rels/m415Dll/symbols.txt @@ -215,7 +215,8 @@ lbl_1_data_D8 = .data:0x000000D8; // type:object size:0x8 data:string jumptable_1_data_E0 = .data:0x000000E0; // type:object size:0x28 scope:local lbl_1_data_108 = .data:0x00000108; // type:object size:0x8 data:string lbl_1_data_110 = .data:0x00000110; // type:object size:0x4 data:4byte -lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x30 +lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x28 +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x8 lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x200 lbl_1_bss_234 = .bss:0x00000234; // type:object size:0x100 lbl_1_bss_334 = .bss:0x00000334; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 367f53bb..35e04cd1 100644 --- a/configure.py +++ b/configure.py @@ -940,7 +940,7 @@ config.libs = [ "m415Dll", # Stamp Out! objects={ Object(Matching, "REL/executor.c"), - Object(NonMatching, "REL/m415Dll/main.c"), + Object(Matching, "REL/m415Dll/main.c"), Object(NonMatching, "REL/m415Dll/map.c"), }, ), diff --git a/src/REL/m415Dll/main.c b/src/REL/m415Dll/main.c index db4f6a8d..6863e2b5 100644 --- a/src/REL/m415Dll/main.c +++ b/src/REL/m415Dll/main.c @@ -34,7 +34,9 @@ s16 lbl_1_bss_338; u8* lbl_1_bss_334; s32 lbl_1_bss_234[4][4][4]; void* lbl_1_bss_34[0x80]; +s32 lbl_1_bss_2C[2]; unkStruct lbl_1_bss_4[4]; +static s32 pad_05_00000000_bss; // data Vec lbl_1_data_0 = { 0.0f, 3000.0f, 2000.0f }; @@ -1762,27 +1764,27 @@ void fn_1_7674(f32* arg0, Vec* arg1, Vec* arg2, s32 arg3) { } } -// https://decomp.me/scratch/QIpaI -// void fn_1_7A54(f32 arg0, Vec* arg1, f32* arg2, Vec* arg3, Vec* arg4, s32 arg5) { -// f32 sp48[0x10]; -// f32 sp8[0x10]; -// f32 temp_f29; -// f32 temp_f31; -// f32 var_f28; -// s32 temp_r31; -// s32 var_r29; -// s32 var_r30; + +void fn_1_7A54(f32 arg0, Vec* arg1, f32* arg2, Vec* arg3, Vec* arg4, s32 arg5) { + f32 sp48[0x10]; + f32 sp8[0x10]; + f32 temp_f29; + f32 temp_f31; + f32 var_f28; + s32 temp_r31; + s32 var_r29; + s32 var_r30; -// for (var_r29 = 0; var_r29 < 3; var_r29++) { -// for (var_r30 = 0; var_r30 < arg5; var_r30++) { -// sp48[var_r30] = ((f32(*)[3])arg3)[var_r30][var_r29]; -// sp8[var_r30] = ((f32(*)[3])arg4)[var_r30][var_r29]; -// } + for (var_r29 = 0; var_r29 < 3; var_r29++) { + for (var_r30 = 0; var_r30 < arg5; var_r30++) { + sp48[var_r30] = ((f32(*)[3])arg3)[var_r30][var_r29]; + sp8[var_r30] = ((f32(*)[3])arg4)[var_r30][var_r29]; + } -// ((f32(*)[3])arg1)[0][var_r29] = fn_1_7520(arg0, arg2, sp48, sp8, 0); -// } -// } + ((f32(*)[3])arg1)[0][var_r29] = fn_1_7520(arg0, arg2, sp48, sp8, 0); + } +} f32 fn_1_7C68(Vec* arg0) { f32 temp_f29;