diff --git a/config/GZ2E01/rels/d_a_mg_rod/symbols.txt b/config/GZ2E01/rels/d_a_mg_rod/symbols.txt index e53965fc4d8..98c77154084 100644 --- a/config/GZ2E01/rels/d_a_mg_rod/symbols.txt +++ b/config/GZ2E01/rels/d_a_mg_rod/symbols.txt @@ -362,19 +362,23 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa @1010 = .bss:0x00000040; // type:object size:0x1 scope:local @1009 = .bss:0x00000044; // type:object size:0x1 scope:local henna = .bss:0x00000048; // type:object size:0x4 scope:global data:4byte -lbl_50_bss_4C = .bss:0x0000004C; // type:object size:0x1 data:byte -lbl_50_bss_4D = .bss:0x0000004D; // type:object size:0x1 data:byte +data_804BBBD4 = .bss:0x0000004C; // type:object size:0x1 data:byte +l_HIOInit = .bss:0x0000004D; // type:object size:0x1 data:byte @4280 = .bss:0x00000050; // type:object size:0xC scope:local l_HIO = .bss:0x0000005C; // type:object size:0x28 scope:global data:byte @4921 = .bss:0x00000084; // type:object size:0xC scope:local old_line_pos = .bss:0x00000090; // type:object size:0x4B0 scope:global @5446 = .bss:0x00000540; // type:object size:0xC scope:local +init$5447 = .bss:0x0000054C; // type:object size:0x1 scope:local data:byte sc$5445 = .bss:0x00000550; // type:object size:0xC scope:local @8906 = .bss:0x0000055C; // type:object size:0xC scope:local +init$8907 = .bss:0x00000568; // type:object size:0x1 scope:local data:byte @8909 = .bss:0x0000056C; // type:object size:0xC scope:local sp_pos$8905 = .bss:0x00000578; // type:object size:0x18 scope:local old_stick_x$9448 = .bss:0x00000590; // type:object size:0x4 scope:local +init$9449 = .bss:0x00000594; // type:object size:0x1 scope:local data:byte old_stick_sx$9451 = .bss:0x00000598; // type:object size:0x4 scope:local +init$9452 = .bss:0x0000059C; // type:object size:0x1 scope:local data:byte sInstance__40JASGlobalInstance<19JASDefaultBankTable> = .bss:0x000005A0; // type:object size:0x4 scope:global sInstance__35JASGlobalInstance<14JASAudioThread> = .bss:0x000005A4; // type:object size:0x4 scope:global sInstance__27JASGlobalInstance<7Z2SeMgr> = .bss:0x000005A8; // type:object size:0x4 scope:global diff --git a/config/GZ2E01/rels/d_a_obj_iceleaf/symbols.txt b/config/GZ2E01/rels/d_a_obj_iceleaf/symbols.txt index 514f0f3e9f4..4e26d78eba1 100644 --- a/config/GZ2E01/rels/d_a_obj_iceleaf/symbols.txt +++ b/config/GZ2E01/rels/d_a_obj_iceleaf/symbols.txt @@ -77,5 +77,5 @@ __vt__8cM3dGCyl = .data:0x0000019C; // type:object size:0xC scope:global __vt__8cM3dGAab = .data:0x000001A8; // type:object size:0xC scope:global __vt__12dBgS_ObjAcch = .data:0x000001B4; // type:object size:0x24 scope:global __vt__12J3DFrameCtrl = .data:0x000001D8; // type:object size:0xC scope:global -lbl_482_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte -lbl_482_bss_1 = .bss:0x00000001; // type:object size:0x1 data:byte +init$1997 = .bss:0x00000000; // type:object size:0x1 data:byte +init$2129 = .bss:0x00000001; // type:object size:0x1 data:byte diff --git a/config/GZ2J01/rels/d_a_e_hp/symbols.txt b/config/GZ2J01/rels/d_a_e_hp/symbols.txt index 14c65d2ff6b..2259904b4fb 100644 --- a/config/GZ2J01/rels/d_a_e_hp/symbols.txt +++ b/config/GZ2J01/rels/d_a_e_hp/symbols.txt @@ -121,6 +121,6 @@ __vt__12dBgS_ObjAcch = .data:0x000001B8; // type:object size:0x24 scope:global __vt__8cM3dGPla = .data:0x000001DC; // type:object size:0xC scope:global __vt__12daE_HP_HIO_c = .data:0x000001E8; // type:object size:0xC scope:global __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global -lbl_200_bss_8 = .bss:0x00000008; // type:object size:0x1 data:byte +l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte @3921 = .bss:0x0000000C; // type:object size:0xC scope:local l_HIO = .bss:0x00000018; // type:object size:0x14 scope:global data:byte diff --git a/config/GZ2J01/rels/d_a_grass/symbols.txt b/config/GZ2J01/rels/d_a_grass/symbols.txt index b0bd8c6d1d6..598ce5af48e 100644 --- a/config/GZ2J01/rels/d_a_grass/symbols.txt +++ b/config/GZ2J01/rels/d_a_grass/symbols.txt @@ -230,13 +230,18 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa @1012 = .bss:0x0000003C; // type:object size:0x1 scope:local @1010 = .bss:0x00000040; // type:object size:0x1 scope:local @1009 = .bss:0x00000044; // type:object size:0x1 scope:local +data_8052790d = .bss:0x00000045; // type:object size:0x1 scope:local @4293 = .bss:0x00000048; // type:object size:0xC scope:local +init$4294 = .bss:0x00000054; // type:object size:0x1 scope:local ang$4292 = .bss:0x00000058; // type:object size:0x6 scope:local exec_count_dammy$4868 = .bss:0x0000005E; // type:object size:0x2 scope:local +init$4869 = .bss:0x00000060; // type:object size:0x1 scope:local exec_count_dammy2$4871 = .bss:0x00000062; // type:object size:0x2 scope:local +init$4872 = .bss:0x00000064; // type:object size:0x1 scope:local mAngleZ$5046 = .bss:0x00000068; // type:object size:0xBB8 scope:local data_805284E8 = .bss:0x00000C20; // type:object size:0x1 scope:local data:byte @5442 = .bss:0x00000C24; // type:object size:0xC scope:local +init$5443 = .bss:0x00000C30; // type:object size:0x1 scope:local ang$5441 = .bss:0x00000C34; // type:object size:0x6 scope:local @6340 = .bss:0x00000C3C; // type:object size:0xC scope:local @6342 = .bss:0x00000C48; // type:object size:0xC scope:local @@ -325,15 +330,15 @@ sInstance__32JASGlobalInstance<11Z2FxLineMgr> = .bss:0x00000F78; // type:object sInstance__31JASGlobalInstance<10Z2EnvSeMgr> = .bss:0x00000F7C; // type:object size:0x4 scope:global sInstance__32JASGlobalInstance<11Z2SpeechMgr> = .bss:0x00000F80; // type:object size:0x4 scope:global sInstance__34JASGlobalInstance<13Z2WolfHowlMgr> = .bss:0x00000F84; // type:object size:0x4 scope:global -lbl_73_bss_F88 = .bss:0x00000F88; // type:object size:0x1 data:byte -l_setType0$localstatic3$create__9daGrass_cFv = .bss:0x00000F8C; // type:object size:0x2A scope:local data:2byte -lbl_73_bss_FB6 = .bss:0x00000FB6; // type:object size:0x1 data:byte -l_setType1$localstatic5$create__9daGrass_cFv = .bss:0x00000FB8; // type:object size:0x7E scope:local data:2byte -lbl_73_bss_1036 = .bss:0x00001036; // type:object size:0x1 data:byte -l_setType2$localstatic7$create__9daGrass_cFv = .bss:0x00001038; // type:object size:0x12 scope:local data:2byte -lbl_73_bss_104A = .bss:0x0000104A; // type:object size:0x1 data:byte -l_setType3$localstatic9$create__9daGrass_cFv = .bss:0x0000104C; // type:object size:0x2A scope:local data:2byte -lbl_73_bss_1076 = .bss:0x00001076; // type:object size:0x1 data:byte -l_setType4$localstatic11$create__9daGrass_cFv = .bss:0x00001078; // type:object size:0x66 scope:local data:2byte -lbl_73_bss_10DE = .bss:0x000010DE; // type:object size:0x1 data:byte +init$localstatic4$create__9daGrass_cFv = .bss:0x00000F88; // type:object size:0x1 scope:global data:byte +l_setType0$localstatic3$create__9daGrass_cFv = .bss:0x00000F8C; // type:object size:0x2A scope:global data:2byte +init$localstatic6$create__9daGrass_cFv = .bss:0x00000FB6; // type:object size:0x1 scope:global data:byte +l_setType1$localstatic5$create__9daGrass_cFv = .bss:0x00000FB8; // type:object size:0x7E scope:global data:2byte +init$localstatic8$create__9daGrass_cFv = .bss:0x00001036; // type:object size:0x1 scope:global data:byte +l_setType2$localstatic7$create__9daGrass_cFv = .bss:0x00001038; // type:object size:0x12 scope:global data:2byte +init$localstatic10$create__9daGrass_cFv = .bss:0x0000104A; // type:object size:0x1 scope:global data:byte +l_setType3$localstatic9$create__9daGrass_cFv = .bss:0x0000104C; // type:object size:0x2A scope:global data:2byte +init$localstatic12$create__9daGrass_cFv = .bss:0x00001076; // type:object size:0x1 scope:global data:byte +l_setType4$localstatic11$create__9daGrass_cFv = .bss:0x00001078; // type:object size:0x66 scope:global data:2byte +init$localstatic14$create__9daGrass_cFv = .bss:0x000010DE; // type:object size:0x1 scope:global data:byte l_setType5$localstatic13$create__9daGrass_cFv = .bss:0x000010E0; // type:object size:0x2A scope:local data:2byte diff --git a/config/GZ2J01/rels/d_a_mg_rod/symbols.txt b/config/GZ2J01/rels/d_a_mg_rod/symbols.txt index 9d1fb1761b4..98c77154084 100644 --- a/config/GZ2J01/rels/d_a_mg_rod/symbols.txt +++ b/config/GZ2J01/rels/d_a_mg_rod/symbols.txt @@ -293,6 +293,7 @@ _dtors = .dtors:0x00000000; // type:label scope:global @11348 = .rodata:0x000002F4; // type:object size:0x4 scope:local @11462 = .rodata:0x000002F8; // type:object size:0x4 scope:local @stringBase0 = .rodata:0x000002FC; // type:object size:0x1D scope:local data:string_table +...data.0 = .data:0x00000000; // type:label scope:local cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global @1787 = .data:0x0000000C; // type:object size:0x4 scope:local lbl_50_data_10 = .data:0x00000010; // type:object size:0x10 @@ -361,19 +362,23 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa @1010 = .bss:0x00000040; // type:object size:0x1 scope:local @1009 = .bss:0x00000044; // type:object size:0x1 scope:local henna = .bss:0x00000048; // type:object size:0x4 scope:global data:4byte -lbl_50_bss_4C = .bss:0x0000004C; // type:object size:0x1 data:byte -lbl_50_bss_4D = .bss:0x0000004D; // type:object size:0x1 data:byte +data_804BBBD4 = .bss:0x0000004C; // type:object size:0x1 data:byte +l_HIOInit = .bss:0x0000004D; // type:object size:0x1 data:byte @4280 = .bss:0x00000050; // type:object size:0xC scope:local l_HIO = .bss:0x0000005C; // type:object size:0x28 scope:global data:byte @4921 = .bss:0x00000084; // type:object size:0xC scope:local old_line_pos = .bss:0x00000090; // type:object size:0x4B0 scope:global @5446 = .bss:0x00000540; // type:object size:0xC scope:local +init$5447 = .bss:0x0000054C; // type:object size:0x1 scope:local data:byte sc$5445 = .bss:0x00000550; // type:object size:0xC scope:local @8906 = .bss:0x0000055C; // type:object size:0xC scope:local +init$8907 = .bss:0x00000568; // type:object size:0x1 scope:local data:byte @8909 = .bss:0x0000056C; // type:object size:0xC scope:local sp_pos$8905 = .bss:0x00000578; // type:object size:0x18 scope:local old_stick_x$9448 = .bss:0x00000590; // type:object size:0x4 scope:local +init$9449 = .bss:0x00000594; // type:object size:0x1 scope:local data:byte old_stick_sx$9451 = .bss:0x00000598; // type:object size:0x4 scope:local +init$9452 = .bss:0x0000059C; // type:object size:0x1 scope:local data:byte sInstance__40JASGlobalInstance<19JASDefaultBankTable> = .bss:0x000005A0; // type:object size:0x4 scope:global sInstance__35JASGlobalInstance<14JASAudioThread> = .bss:0x000005A4; // type:object size:0x4 scope:global sInstance__27JASGlobalInstance<7Z2SeMgr> = .bss:0x000005A8; // type:object size:0x4 scope:global diff --git a/config/GZ2J01/rels/d_a_obj_iceleaf/symbols.txt b/config/GZ2J01/rels/d_a_obj_iceleaf/symbols.txt index fc27141a7e6..4e26d78eba1 100644 --- a/config/GZ2J01/rels/d_a_obj_iceleaf/symbols.txt +++ b/config/GZ2J01/rels/d_a_obj_iceleaf/symbols.txt @@ -52,6 +52,7 @@ _dtors = .dtors:0x00000000; // type:label scope:global @4094 = .rodata:0x00000038; // type:object size:0x4 scope:local @4095 = .rodata:0x0000003C; // type:object size:0x4 scope:local align:4 data:float @stringBase0 = .rodata:0x00000040; // type:object size:0xA scope:local data:string_table +...data.0 = .data:0x00000000; // type:label scope:local cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global @1787 = .data:0x0000000C; // type:object size:0x4 scope:local lbl_482_data_10 = .data:0x00000010; // type:object size:0x10 @@ -76,5 +77,5 @@ __vt__8cM3dGCyl = .data:0x0000019C; // type:object size:0xC scope:global __vt__8cM3dGAab = .data:0x000001A8; // type:object size:0xC scope:global __vt__12dBgS_ObjAcch = .data:0x000001B4; // type:object size:0x24 scope:global __vt__12J3DFrameCtrl = .data:0x000001D8; // type:object size:0xC scope:global -lbl_482_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte -lbl_482_bss_1 = .bss:0x00000001; // type:object size:0x1 data:byte +init$1997 = .bss:0x00000000; // type:object size:0x1 data:byte +init$2129 = .bss:0x00000001; // type:object size:0x1 data:byte diff --git a/config/GZ2J01/splits.txt b/config/GZ2J01/splits.txt index c124b19d78f..3ed377a92bd 100644 --- a/config/GZ2J01/splits.txt +++ b/config/GZ2J01/splits.txt @@ -280,7 +280,7 @@ f_pc/f_pc_layer.cpp: f_pc/f_pc_leaf.cpp: .text start:0x80021A00 end:0x80021B88 .data start:0x8039DB48 end:0x8039DB60 - .sbss start:0x8044AE70 end:0x8044AE80 + .sbss start:0x8044AE70 end:0x8044AE78 f_pc/f_pc_layer_iter.cpp: .text start:0x80021B88 end:0x80021CD4 @@ -300,6 +300,7 @@ f_pc/f_pc_load.cpp: f_pc/f_pc_manager.cpp: .text start:0x800220A0 end:0x80022428 .bss start:0x803EEEF0 end:0x803EEF98 + .sbss start:0x8044AE78 end:0x8044AE80 f_pc/f_pc_method.cpp: .text start:0x80022428 end:0x800224F0 @@ -590,13 +591,14 @@ d/d_bg_plc.cpp: d/d_bg_s.cpp: .text start:0x80074134 end:0x80075EEC .data start:0x803A5768 end:0x803A57A0 - .sbss start:0x8044B0A0 end:0x8044B0B0 + .sbss start:0x8044B0A0 end:0x8044B0A8 .sdata2 start:0x8044C7F8 end:0x8044C800 d/d_bg_s_acch.cpp: .text start:0x80075EEC end:0x800774DC .data start:0x803A57A0 end:0x803A57D0 .bss start:0x8041EC60 end:0x8041ECC0 + .sbss start:0x8044B0A8 end:0x8044B0B0 .sdata2 start:0x8044C800 end:0x8044C828 d/d_bg_s_chk.cpp: @@ -1395,7 +1397,7 @@ SSystem/SComponent/c_API.cpp: SSystem/SComponent/c_malloc.cpp: .text start:0x80265650 end:0x802656BC - .sbss start:0x8044B290 end:0x8044B2A0 + .sbss start:0x8044B290 end:0x8044B298 SSystem/SComponent/c_API_controller_pad.cpp: .text start:0x802656BC end:0x802656F8 @@ -1415,6 +1417,7 @@ SSystem/SComponent/c_cc_s.cpp: .text start:0x80266E9C end:0x8026824C .data start:0x803BD888 end:0x803BD8B8 .bss start:0x8042AE00 end:0x8042AE18 + .sbss start:0x8044B298 end:0x8044B2A0 .sdata2 start:0x8044F158 end:0x8044F190 SSystem/SComponent/c_counter.cpp: @@ -3560,13 +3563,14 @@ TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/dolphin_trk_glue.c: .text start:0x80374084 end:0x803745DC .rodata start:0x8039CD68 end:0x8039CE70 .data start:0x803CD3E8 end:0x803CD410 - .bss start:0x80449960 end:0x80449970 + .bss start:0x80449960 end:0x80449968 TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/targcont.c: .text start:0x803745DC end:0x80374610 TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/target_options.c: .text start:0x80374610 end:0x8037462C + .bss start:0x80449968 end:0x80449970 TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Export/mslsupp.c: .text start:0x8037462C end:0x803747A4 diff --git a/config/GZ2P01/rels/d_a_e_hp/symbols.txt b/config/GZ2P01/rels/d_a_e_hp/symbols.txt index 14c65d2ff6b..2259904b4fb 100644 --- a/config/GZ2P01/rels/d_a_e_hp/symbols.txt +++ b/config/GZ2P01/rels/d_a_e_hp/symbols.txt @@ -121,6 +121,6 @@ __vt__12dBgS_ObjAcch = .data:0x000001B8; // type:object size:0x24 scope:global __vt__8cM3dGPla = .data:0x000001DC; // type:object size:0xC scope:global __vt__12daE_HP_HIO_c = .data:0x000001E8; // type:object size:0xC scope:global __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global -lbl_200_bss_8 = .bss:0x00000008; // type:object size:0x1 data:byte +l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte @3921 = .bss:0x0000000C; // type:object size:0xC scope:local l_HIO = .bss:0x00000018; // type:object size:0x14 scope:global data:byte diff --git a/config/GZ2P01/rels/d_a_mg_rod/symbols.txt b/config/GZ2P01/rels/d_a_mg_rod/symbols.txt index 4d3617fedd9..6918801b443 100644 --- a/config/GZ2P01/rels/d_a_mg_rod/symbols.txt +++ b/config/GZ2P01/rels/d_a_mg_rod/symbols.txt @@ -293,6 +293,7 @@ _dtors = .dtors:0x00000000; // type:label scope:global @11356 = .rodata:0x000002F4; // type:object size:0x4 scope:local @11481 = .rodata:0x000002F8; // type:object size:0x4 scope:local @stringBase0 = .rodata:0x000002FC; // type:object size:0x1D scope:local data:string_table +...data.0 = .data:0x00000000; // type:label scope:local cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global @1787 = .data:0x0000000C; // type:object size:0x4 scope:local lbl_50_data_10 = .data:0x00000010; // type:object size:0x10 @@ -361,19 +362,23 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa @1010 = .bss:0x00000040; // type:object size:0x1 scope:local @1009 = .bss:0x00000044; // type:object size:0x1 scope:local henna = .bss:0x00000048; // type:object size:0x4 scope:global data:4byte -lbl_50_bss_4C = .bss:0x0000004C; // type:object size:0x1 data:byte -lbl_50_bss_4D = .bss:0x0000004D; // type:object size:0x1 data:byte +data_804BBBD4 = .bss:0x0000004C; // type:object size:0x1 data:byte +l_HIOInit = .bss:0x0000004D; // type:object size:0x1 data:byte @4280 = .bss:0x00000050; // type:object size:0xC scope:local l_HIO = .bss:0x0000005C; // type:object size:0x28 scope:global data:byte @4921 = .bss:0x00000084; // type:object size:0xC scope:local old_line_pos = .bss:0x00000090; // type:object size:0x4B0 scope:global @5446 = .bss:0x00000540; // type:object size:0xC scope:local +init$5447 = .bss:0x0000054C; // type:object size:0x1 scope:local data:byte sc$5445 = .bss:0x00000550; // type:object size:0xC scope:local @8906 = .bss:0x0000055C; // type:object size:0xC scope:local +init$8907 = .bss:0x00000568; // type:object size:0x1 scope:local data:byte @8909 = .bss:0x0000056C; // type:object size:0xC scope:local sp_pos$8905 = .bss:0x00000578; // type:object size:0x18 scope:local old_stick_x$9448 = .bss:0x00000590; // type:object size:0x4 scope:local +init$9449 = .bss:0x00000594; // type:object size:0x1 scope:local data:byte old_stick_sx$9451 = .bss:0x00000598; // type:object size:0x4 scope:local +init$9452 = .bss:0x0000059C; // type:object size:0x1 scope:local data:byte sInstance__40JASGlobalInstance<19JASDefaultBankTable> = .bss:0x000005A0; // type:object size:0x4 scope:global sInstance__35JASGlobalInstance<14JASAudioThread> = .bss:0x000005A4; // type:object size:0x4 scope:global sInstance__27JASGlobalInstance<7Z2SeMgr> = .bss:0x000005A8; // type:object size:0x4 scope:global diff --git a/config/GZ2P01/rels/d_a_obj_iceleaf/splits.txt b/config/GZ2P01/rels/d_a_obj_iceleaf/splits.txt index ba9e4888b81..4bf024c28ab 100644 --- a/config/GZ2P01/rels/d_a_obj_iceleaf/splits.txt +++ b/config/GZ2P01/rels/d_a_obj_iceleaf/splits.txt @@ -13,3 +13,4 @@ d/actor/d_a_obj_iceleaf.cpp: .text start:0x00000078 end:0x000016BC .rodata start:0x00000000 end:0x0000004C .data start:0x00000000 end:0x000001E4 + .bss start:0x00000000 end:0x00000004 diff --git a/config/GZ2P01/rels/d_a_obj_iceleaf/symbols.txt b/config/GZ2P01/rels/d_a_obj_iceleaf/symbols.txt index fc27141a7e6..4e26d78eba1 100644 --- a/config/GZ2P01/rels/d_a_obj_iceleaf/symbols.txt +++ b/config/GZ2P01/rels/d_a_obj_iceleaf/symbols.txt @@ -52,6 +52,7 @@ _dtors = .dtors:0x00000000; // type:label scope:global @4094 = .rodata:0x00000038; // type:object size:0x4 scope:local @4095 = .rodata:0x0000003C; // type:object size:0x4 scope:local align:4 data:float @stringBase0 = .rodata:0x00000040; // type:object size:0xA scope:local data:string_table +...data.0 = .data:0x00000000; // type:label scope:local cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global @1787 = .data:0x0000000C; // type:object size:0x4 scope:local lbl_482_data_10 = .data:0x00000010; // type:object size:0x10 @@ -76,5 +77,5 @@ __vt__8cM3dGCyl = .data:0x0000019C; // type:object size:0xC scope:global __vt__8cM3dGAab = .data:0x000001A8; // type:object size:0xC scope:global __vt__12dBgS_ObjAcch = .data:0x000001B4; // type:object size:0x24 scope:global __vt__12J3DFrameCtrl = .data:0x000001D8; // type:object size:0xC scope:global -lbl_482_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte -lbl_482_bss_1 = .bss:0x00000001; // type:object size:0x1 data:byte +init$1997 = .bss:0x00000000; // type:object size:0x1 data:byte +init$2129 = .bss:0x00000001; // type:object size:0x1 data:byte diff --git a/configure.py b/configure.py index 757c826785b..5ee7ad4f883 100755 --- a/configure.py +++ b/configure.py @@ -1771,7 +1771,7 @@ config.libs = [ ActorRel(MatchingFor(ALL_GCN), "d_a_e_gs"), ActorRel(MatchingFor(ALL_GCN), "d_a_e_hb_leaf"), ActorRel(MatchingFor(ALL_GCN), "d_a_e_hm"), - ActorRel(MatchingFor("GZ2E01"), "d_a_e_hp"), + ActorRel(MatchingFor(ALL_GCN), "d_a_e_hp"), ActorRel(MatchingFor(ALL_GCN), "d_a_e_hz"), ActorRel(MatchingFor(ALL_GCN), "d_a_e_hzelda"), ActorRel(MatchingFor(ALL_GCN), "d_a_e_is"), diff --git a/src/d/actor/d_a_mg_rod.cpp b/src/d/actor/d_a_mg_rod.cpp index ff3bf2fdae3..d8441072068 100644 --- a/src/d/actor/d_a_mg_rod.cpp +++ b/src/d/actor/d_a_mg_rod.cpp @@ -5720,12 +5720,16 @@ static int dmg_rod_Execute(dmg_rod_class* i_this) { } else { data_804BBBD4 = 0; } - #elif VERSION == VERSION_GCN_PAL + #elif VERSION == VERSION_SHIELD + data_804BBBD4 = 0; + #elif REGION_PAL if (dComIfGs_getPalLanguage() == 0) { data_804BBBD4 = 2; } else { data_804BBBD4 = 0; } + #elif REGION_JPN + data_804BBBD4 = 0; #else data_804BBBD4 = 1; #endif @@ -6283,12 +6287,16 @@ static int dmg_rod_Create(fopAc_ac_c* i_this) { } else { data_804BBBD4 = 0; } - #elif VERSION == VERSION_GCN_PAL + #elif VERSION == VERSION_SHIELD + data_804BBBD4 = 0; + #elif REGION_PAL if (dComIfGs_getPalLanguage() == 0) { data_804BBBD4 = 2; } else { data_804BBBD4 = 0; } + #elif REGION_JPN + data_804BBBD4 = 0; #else data_804BBBD4 = 1; #endif diff --git a/src/d/d_menu_collect.cpp b/src/d/d_menu_collect.cpp index 9d84c4a1348..f82896114b0 100644 --- a/src/d/d_menu_collect.cpp +++ b/src/d/d_menu_collect.cpp @@ -273,13 +273,33 @@ void dMenu_Collect2D_c::screenSet() { static const u64 text_a_tag[5] = {'atext1_1', 'atext1_2', 'atext1_3', 'atext1_4', 'atext1_5'}; static const u64 text_b_tag[5] = {'btext1_1', 'btext1_2', 'btext1_3', 'btext1_4', 'btext1_5'}; +#if REGION_JPN + static_cast(mpScreen->search('t_t00'))->setFont(mDoExt_getRubyFont()); + static_cast(mpScreen->search('t_t00'))->setString(0x20, ""); + dMeter2Info_getStringKanji( + 0x3E1, static_cast(mpScreen->search('t_t00'))->getStringPtr(), NULL); + mpScreen->search('f_t00')->hide(); +#else static_cast(mpScreen->search('f_t00'))->setFont(mDoExt_getRubyFont()); static_cast(mpScreen->search('f_t00'))->setString(0x20, ""); dMeter2Info_getStringKanji( 0x3E1, static_cast(mpScreen->search('f_t00'))->getStringPtr(), NULL); mpScreen->search('t_t00')->hide(); +#endif for (int i = 0; i < 3; i++) { +#if REGION_JPN + static_cast(mpScreen->search(text_sv[i]))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search(text_op[i]))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search(text_sv[i]))->setString(0x20, ""); + static_cast(mpScreen->search(text_op[i]))->setString(0x20, ""); + dMeter2Info_getStringKanji( + 0x60, static_cast(mpScreen->search(text_sv[i]))->getStringPtr(), NULL); + dMeter2Info_getStringKanji( + 0x5F, static_cast(mpScreen->search(text_op[i]))->getStringPtr(), NULL); + mpScreen->search(ftext_sv[i])->hide(); + mpScreen->search(ftext_op[i])->hide(); +#else static_cast(mpScreen->search(ftext_sv[i]))->setFont(mDoExt_getMesgFont()); static_cast(mpScreen->search(ftext_op[i]))->setFont(mDoExt_getMesgFont()); static_cast(mpScreen->search(ftext_sv[i]))->setString(0x20, ""); @@ -290,6 +310,7 @@ void dMenu_Collect2D_c::screenSet() { 0x5F, static_cast(mpScreen->search(ftext_op[i]))->getStringPtr(), NULL); mpScreen->search(text_sv[i])->hide(); mpScreen->search(text_op[i])->hide(); +#endif } for (int i = 0; i < 5; i++) { @@ -301,6 +322,27 @@ void dMenu_Collect2D_c::screenSet() { static_cast(mpScreenIcon->search(text_b_tag[i]))->setString(0x20, ""); } +#if REGION_JPN + static_cast(mpScreen->search('item_n00'))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search('item_n01'))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search('item_n02'))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search('item_n03'))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search('item_n00'))->setString(0x20, ""); + static_cast(mpScreen->search('item_n01'))->setString(0x20, ""); + static_cast(mpScreen->search('item_n02'))->setString(0x20, ""); + static_cast(mpScreen->search('item_n03'))->setString(0x20, ""); + static_cast(mpScreen->search('i_text1'))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search('i_text0'))->setFont(mDoExt_getMesgFont()); + static_cast(mpScreen->search('i_text1'))->setString(0x100, ""); + static_cast(mpScreen->search('i_text0'))->setString(0x100, ""); + + mpScreen->search('item_n04')->hide(); + mpScreen->search('item_n05')->hide(); + mpScreen->search('item_n06')->hide(); + mpScreen->search('item_n07')->hide(); + mpScreen->search('f_text1')->hide(); + mpScreen->search('f_text0')->hide(); +#else static_cast(mpScreen->search('item_n04'))->setFont(mDoExt_getMesgFont()); static_cast(mpScreen->search('item_n05'))->setFont(mDoExt_getMesgFont()); static_cast(mpScreen->search('item_n06'))->setFont(mDoExt_getMesgFont()); @@ -320,6 +362,7 @@ void dMenu_Collect2D_c::screenSet() { mpScreen->search('item_n03')->hide(); mpScreen->search('i_text1')->hide(); mpScreen->search('i_text0')->hide(); +#endif field_0x22d[0][0] = 0; field_0x22d[1][0] = 0; @@ -2072,19 +2115,39 @@ void dMenu_Collect2D_c::_draw() { mpScreen->draw(0.0f, 0.0f, grafPort); if (mItemNameString == 0) { +#if REGION_JPN + char* stringPtr1 = static_cast(mpScreen->search('i_text1'))->getStringPtr(); +#else char* stringPtr1 = static_cast(mpScreen->search('f_text1'))->getStringPtr(); +#endif strcpy(stringPtr1, ""); +#if REGION_JPN + char* stringPtr0 = static_cast(mpScreen->search('i_text0'))->getStringPtr(); +#else char* stringPtr0 = static_cast(mpScreen->search('f_text0'))->getStringPtr(); +#endif strcpy(stringPtr0, ""); } else { +#if REGION_JPN + J2DTextBox* textBox1 = static_cast(mpScreen->search('i_text1')); +#else J2DTextBox* textBox1 = static_cast(mpScreen->search('f_text1')); +#endif mpString->getString(mItemNameString, textBox1, NULL, NULL, NULL, 0); +#if REGION_JPN + J2DTextBox* textBox0 = static_cast(mpScreen->search('i_text0')); +#else J2DTextBox* textBox0 = static_cast(mpScreen->search('f_text0')); +#endif mpString->getString(mItemNameString, textBox0, NULL, NULL, NULL, 0); +#if REGION_JPN + textBox0 = static_cast(mpScreen->search('i_text0')); +#else textBox0 = static_cast(mpScreen->search('f_text0')); +#endif mpString->drawOutFontLocal(textBox0, -1.0f); } mpDrawCursor->draw(); @@ -2174,6 +2237,17 @@ void dMenu_Collect2D_c::setItemNameString(u8 param_0, u8 param_1) { if (uVar6 == 0) { setItemNameStringNull(); } else { +#if REGION_JPN + char* stringPtr = + static_cast(mpScreen->search('item_n00'))->getStringPtr(); + dMeter2Info_getStringKanji(uVar6, stringPtr, NULL); + stringPtr = static_cast(mpScreen->search('item_n01'))->getStringPtr(); + dMeter2Info_getStringKanji(uVar6, stringPtr, NULL); + stringPtr = static_cast(mpScreen->search('item_n02'))->getStringPtr(); + dMeter2Info_getStringKanji(uVar6, stringPtr, NULL); + stringPtr = static_cast(mpScreen->search('item_n03'))->getStringPtr(); + dMeter2Info_getStringKanji(uVar6, stringPtr, NULL); +#else char* stringPtr = static_cast(mpScreen->search('item_n04'))->getStringPtr(); dMeter2Info_getStringKanji(uVar6, stringPtr, NULL); @@ -2183,6 +2257,7 @@ void dMenu_Collect2D_c::setItemNameString(u8 param_0, u8 param_1) { dMeter2Info_getStringKanji(uVar6, stringPtr, NULL); stringPtr = static_cast(mpScreen->search('item_n07'))->getStringPtr(); dMeter2Info_getStringKanji(uVar6, stringPtr, NULL); +#endif } } } @@ -2191,6 +2266,15 @@ void dMenu_Collect2D_c::setItemNameString(u8 param_0, u8 param_1) { */ void dMenu_Collect2D_c::setItemNameStringNull() { mItemNameString = 0; +#if REGION_JPN + J2DTextBox* textBox = (J2DTextBox*)mpScreen->search('item_n00'); + strcpy(textBox->getStringPtr(), ""); + textBox = (J2DTextBox*)mpScreen->search('item_n01'); + strcpy(textBox->getStringPtr(), ""); + textBox = (J2DTextBox*)mpScreen->search('item_n02'); + strcpy(textBox->getStringPtr(), ""); + textBox = (J2DTextBox*)mpScreen->search('item_n03'); +#else J2DTextBox* textBox = (J2DTextBox*)mpScreen->search('item_n04'); strcpy(textBox->getStringPtr(), ""); textBox = (J2DTextBox*)mpScreen->search('item_n05'); @@ -2198,6 +2282,7 @@ void dMenu_Collect2D_c::setItemNameStringNull() { textBox = (J2DTextBox*)mpScreen->search('item_n06'); strcpy(textBox->getStringPtr(), ""); textBox = (J2DTextBox*)mpScreen->search('item_n07'); +#endif strcpy(textBox->getStringPtr(), ""); } diff --git a/src/d/d_msg_object.cpp b/src/d/d_msg_object.cpp index 98cb3cf0554..f4216075025 100644 --- a/src/d/d_msg_object.cpp +++ b/src/d/d_msg_object.cpp @@ -134,7 +134,11 @@ dMsgObject_HIO_c::dMsgObject_HIO_c() { mBoxMidnaHaloAlpha = 1.0f; mBoxWolfHaloAlpha = 0.3f; mBoxTalkHaloAlpha = 1.0f; +#if REGION_JPN + mBoxTalkScaleX = 1.1f; +#else mBoxTalkScaleX = 1.2f; +#endif mBoxNaviScaleX = 1.0f; mBoxMidnaScaleX = 1.0f; mBoxItemScaleX = 1.05f; @@ -1652,7 +1656,7 @@ void dMsgObject_c::readMessageGroupLocal(mDoDvdThd_mountXArchive_c** p_arcMount) static char arcName[22]; int msgGroup = dStage_stagInfo_GetMsgGroup(dComIfGp_getStage()->getStagInfo()); - #if VERSION == VERSION_GCN_PAL + #if REGION_PAL switch (dComIfGs_getPalLanguage()) { case dSv_player_config_c::LANGAUGE_GERMAN: sprintf(arcName, "/res/Msgde/bmgres%d.arc", msgGroup); @@ -1669,6 +1673,8 @@ void dMsgObject_c::readMessageGroupLocal(mDoDvdThd_mountXArchive_c** p_arcMount) default: sprintf(arcName, "/res/Msguk/bmgres%d.arc", msgGroup); } + #elif REGION_JPN + sprintf(arcName, "/res/Msgjp/bmgres%d.arc", msgGroup); #else sprintf(arcName, "/res/Msgus/bmgres%d.arc", msgGroup); #endif diff --git a/src/d/d_msg_unit.cpp b/src/d/d_msg_unit.cpp index d816398ff1b..9708ad3316c 100644 --- a/src/d/d_msg_unit.cpp +++ b/src/d/d_msg_unit.cpp @@ -219,17 +219,27 @@ void dMsgUnit_c::setTag(int i_type, int i_value, char* o_buffer, bool param_4) { *o_buffer = 0; bool stack9 = false; bool stack8 = false; - int param_2b = i_value; + int param_2b = i_value; // sp40 + int tens_digit; // sp3C + int ones_digit; // sp38 + int seconds; // r27 + int minutes; // sp34 if (i_type == 0x10000) { sprintf(o_buffer, "%d", i_value); - } else if (i_type == 0x10001) { - int tens_digit = i_value / 10; - int ones_digit = i_value % 10; + return; + } + + if (i_type == 0x10001) { + tens_digit = i_value / 10; + ones_digit = i_value % 10; sprintf(o_buffer, "%d-%d", tens_digit, ones_digit); - } else if (i_type == 4 && param_4 == true) { - int seconds = i_value / 1000; - int minutes = seconds / 60; + return; + } + + if (i_type == 4 && param_4 == true) { + seconds = i_value / 1000; + minutes = seconds / 60; seconds -= minutes * 60; if (minutes > 99) { minutes = 99; @@ -238,7 +248,12 @@ void dMsgUnit_c::setTag(int i_type, int i_value, char* o_buffer, bool param_4) { if (minutes != 0 || seconds != 0) { sprintf(o_buffer, "%d:%02d", minutes, seconds); } - } else if (i_type == 3 && param_4 == true) { + + return; + } + + if (i_type == 3 && param_4 == true) { + (void)seconds; // dummy use to force into register instead of stack f32 iVar8b; f32 dayTime = g_env_light.getDaytime(); f32 hour = dayTime / 15.0f; @@ -266,20 +281,20 @@ void dMsgUnit_c::setTag(int i_type, int i_value, char* o_buffer, bool param_4) { bmg_section_t* pSection = (bmg_section_t*)(((u8*)pHeader) + filepos); for (; filepos < filesize; filepos += pSection->size) { - switch(pSection->magic) { - case 'FLW1': - break; - case 'FLI1': - break; - case 'INF1': - pInfoBlock = (dMsgUnit_inf1_section_t*)pSection; - break; - case 'DAT1': - pMsgDataBlock = pSection; - break; - case 'STR1': - pStrAttributeBlock = (str1_section_t*)pSection; - break; + switch (pSection->magic) { + case 'FLW1': + break; + case 'FLI1': + break; + case 'INF1': + pInfoBlock = (dMsgUnit_inf1_section_t*)pSection; + break; + case 'DAT1': + pMsgDataBlock = pSection; + break; + case 'STR1': + pStrAttributeBlock = (str1_section_t*)pSection; + break; } pSection = (bmg_section_t*)((u8*)pSection + pSection->size); } @@ -287,39 +302,45 @@ void dMsgUnit_c::setTag(int i_type, int i_value, char* o_buffer, bool param_4) { // This section is weird. The debug seems like entriesStr is outside the condition // but the normal build doesn't really work with that. Same for pInfoBlock->entries. - #ifdef DEBUG - dMsgUnit_inf1_entry* entry = &pInfoBlock->entries[i_type]; - u32 dat1EntryOffset = entry->dat1EntryOffset; - u16 startFrame = entry->startFrame; - u16 endFrame = entry->endFrame; - const char* entriesStr = pStrAttributeBlock->entries->str; - #else - u16 startFrame = pInfoBlock->entries[i_type].startFrame; - u16 endFrame = pInfoBlock->entries[i_type].endFrame; - const char* entriesStr; - #endif - +#ifdef DEBUG + dMsgUnit_inf1_entry* entriesInf = &pInfoBlock->entries[i_type]; + u32 dat1EntryOffset = entriesInf->dat1EntryOffset; const char* uVar5; - if (i_value == 1 - #ifdef DEBUG - || (dComIfGs_getPalLanguage() == dSv_player_config_c::LANGAUGE_SPANISH && i_value == 0) - #elif VERSION == VERSION_GCN_PAL - || (dComIfGs_getPalLanguage() == dSv_player_config_c::LANGAUGE_FRENCH && i_value == 0) - #endif - ) { - #ifdef DEBUG - uVar5 = entriesStr + endFrame; + u16 vals[14]; + vals[0] = entriesInf->startFrame; + vals[1] = entriesInf->endFrame; + (void)entriesInf; // dummy use to force into register instead of stack + str1_entry_t* entriesStr = pStrAttributeBlock->entries; +#else + u32 dat1EntryOffset = pInfoBlock->entries[i_type].dat1EntryOffset; + const char* uVar5; + u16 vals[14]; + vals[0] = pInfoBlock->entries[i_type].startFrame; + vals[1] = pInfoBlock->entries[i_type].endFrame; +#endif + +#if REGION_PAL + if (i_value == 1 || + (dComIfGs_getPalLanguage() == dSv_player_config_c::LANGAUGE_FRENCH && + i_value == 0)) { +#elif !REGION_USA + if (i_value == 1 || + (dComIfGs_getPalLanguage() == dSv_player_config_c::LANGAUGE_SPANISH && + i_value == 0)) { +#else + if (i_value == 1) { +#endif +#ifdef DEBUG + uVar5 = entriesStr->str + vals[0]; +#else + uVar5 = pStrAttributeBlock->entries->str + vals[0]; +#endif } else { - uVar5 = entriesStr + startFrame; - #elif VERSION == VERSION_GCN_PAL - uVar5 = pStrAttributeBlock->entries->str + startFrame; - } else { - uVar5 = pStrAttributeBlock->entries->str + endFrame; - #else - uVar5 = pStrAttributeBlock->entries->str + endFrame; - } else { - uVar5 = pStrAttributeBlock->entries->str + startFrame; - #endif +#ifdef DEBUG + uVar5 = entriesStr->str + vals[1]; +#else + uVar5 = pStrAttributeBlock->entries->str + vals[1]; +#endif } if (strcmp(uVar5, "") == 0) { @@ -328,7 +349,6 @@ void dMsgUnit_c::setTag(int i_type, int i_value, char* o_buffer, bool param_4) { sprintf(o_buffer, "%d %s", i_value, uVar5); } } - if (i_type == 3 && param_4 == true) { char buffer[20]; setTag(4, 0, buffer, false); diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp index 132edace672..3b23d8abd09 100644 --- a/src/m_Do/m_Do_ext.cpp +++ b/src/m_Do/m_Do_ext.cpp @@ -3540,8 +3540,13 @@ static ResFONT* mDoExt_resfont0; /* 80014994-800149F0 00F2D4 005C+00 1/1 0/0 0/0 .text mDoExt_initFont0__Fv */ static void mDoExt_initFont0() { static char const fontdata[] = "rodan_b_24_22.bfn"; +#if REGION_JPN + mDoExt_initFontCommon(&mDoExt_font0, &mDoExt_resfont0, mDoExt_getZeldaHeap(), + fontdata, dComIfGp_getFontArchive(), 0, 200, 512); +#else mDoExt_initFontCommon(&mDoExt_font0, &mDoExt_resfont0, mDoExt_getZeldaHeap(), fontdata, dComIfGp_getFontArchive(), 1, 0, 0); +#endif } /* 800149F0-80014A2C 00F330 003C+00 0/0 51/51 2/2 .text mDoExt_getMesgFont__Fv */ @@ -3564,7 +3569,11 @@ void mDoExt_removeMesgFont() { delete mDoExt_font0; mDoExt_font0 = NULL; if (mDoExt_resfont0 != NULL) { +#if REGION_JPN + JKRFileLoader::removeResource(mDoExt_resfont0, NULL); +#else JKRFree(mDoExt_resfont0); +#endif mDoExt_resfont0 = NULL; } }