From 583f953179e1ab02533079205c8b87b420283f22 Mon Sep 17 00:00:00 2001 From: robojumper Date: Thu, 17 Jul 2025 15:42:03 +0200 Subject: [PATCH] Split MSL and TRK --- config/SOUE01/config.yml | 5 + .../rels/d_a_obj_desert_debrisNP/symbols.txt | 2 +- config/SOUE01/splits.txt | 192 +++++++++++++++++- config/SOUE01/symbols.txt | 182 ++++++++--------- configure.py | 135 +++++++++++- 5 files changed, 414 insertions(+), 102 deletions(-) diff --git a/config/SOUE01/config.yml b/config/SOUE01/config.yml index 1a9714e7..6e3f1933 100644 --- a/config/SOUE01/config.yml +++ b/config/SOUE01/config.yml @@ -38,6 +38,11 @@ add_relocations: - source: .text:0x80306FCC type: l target: lbl_804F0A00 + # TRK branches + - source: .init:0x80004844 + type: rel24 + target: __TRKreset + # TODO - all the TRK_InterruptHandler loads extract: - symbol: DOL_BACKUP_FONT header: d/dol_backup_error_font.inc diff --git a/config/SOUE01/rels/d_a_obj_desert_debrisNP/symbols.txt b/config/SOUE01/rels/d_a_obj_desert_debrisNP/symbols.txt index 1a8f83af..92204ec7 100644 --- a/config/SOUE01/rels/d_a_obj_desert_debrisNP/symbols.txt +++ b/config/SOUE01/rels/d_a_obj_desert_debrisNP/symbols.txt @@ -14,4 +14,4 @@ _dtors = .dtors:0x00000000; // type:label scope:global lbl_428_rodata_0 = .rodata:0x00000000; // type:object size:0x4 scope:local data:float g_profile_OBJ_DESERT_DEBRIS = .data:0x00000000; // type:object size:0x70 lbl_428_data_70 = .data:0x00000070; // type:object size:0x20 scope:local data:string -AcOdesertDebris__vtable = .data:0x00000090; // type:object size:0x80 +AcOdesertDebris__vtable = .data:0x00000090; // type:object size:0x80 scope:local diff --git a/config/SOUE01/splits.txt b/config/SOUE01/splits.txt index 3f493104..c8b0c789 100644 --- a/config/SOUE01/splits.txt +++ b/config/SOUE01/splits.txt @@ -4792,6 +4792,7 @@ JSystem/JStudio/JStudio_JAudio2/object-sound.cpp: .ctors start:0x804DB9C8 end:0x804DB9CC PowerPC_EABI_Support/Runtime/Src/__mem.c: + .init start:0x800043C4 end:0x80004744 .text start:0x804C64DC end:0x804C64F8 PowerPC_EABI_Support/Runtime/Src/__va_arg.c: @@ -4808,9 +4809,11 @@ PowerPC_EABI_Support/Runtime/Src/NMWException.cp: PowerPC_EABI_Support/Runtime/Src/ptmf.c: .text start:0x804C69D0 end:0x804C6A64 + .rodata start:0x804FBFA8 end:0x804FBFB8 PowerPC_EABI_Support/Runtime/Src/runtime.c: .text start:0x804C6A64 end:0x804C71A8 + .rodata start:0x804FBFB8 end:0x804FBFD0 PowerPC_EABI_Support/Runtime/Src/__init_cpp_exceptions.cpp: .text start:0x804C71A8 end:0x804C7218 @@ -4821,15 +4824,39 @@ PowerPC_EABI_Support/Runtime/Src/__init_cpp_exceptions.cpp: PowerPC_EABI_Support/Runtime/Src/Gecko_ExceptionPPC.cp: .text start:0x804C7218 end:0x804C728C + .bss start:0x80675948 end:0x80675AC8 PowerPC_EABI_Support/Runtime/Src/GCN_Mem_Alloc.c: - .text start:0x804C728C end:0x804C7858 + .text start:0x804C728C end:0x804C7344 + .rodata start:0x804FBFD0 end:0x804FC040 + +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/alloc.c: + .text start:0x804C7344 end:0x804C7858 + .rodata start:0x804FC040 end:0x804FC058 + .sbss start:0x80576938 end:0x80576940 + .bss start:0x80675AC8 end:0x80675B00 + +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/errno.c: + .sbss start:0x80576940 end:0x80576948 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ansi_files.c: .text start:0x804C7858 end:0x804C7968 + .data start:0x80570560 end:0x805706A0 + .bss start:0x80675B00 end:0x80675E00 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Src/ansi_fp.c: .text start:0x804C7968 end:0x804C91E8 + .rodata start:0x804FC058 end:0x804FC138 + .data start:0x805706A0 end:0x80570808 + .sdata2 start:0x8057FA00 end:0x8057FA38 + +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ctype.c: + .rodata start:0x804FC138 end:0x804FC538 + +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/locale.c: + .rodata start:0x804FC538 end:0x804FC640 + .data start:0x80570808 end:0x80570A00 + .sdata2 start:0x8057FA38 end:0x8057FA50 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/arith.c: .text start:0x804C91E8 end:0x804C9264 @@ -4855,7 +4882,7 @@ PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/mem.c: PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/mem_funcs.c: .text start:0x804C9E14 end:0x804CA0E4 -PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/float.c: +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/math_api.c: .text start:0x804CA0E4 end:0x804CA1D8 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/misc_io.c: @@ -4863,21 +4890,41 @@ PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/misc_io.c: PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/printf.c: .text start:0x804CA1E8 end:0x804CC6AC + .rodata start:0x804FC640 end:0x804FC668 + .data start:0x80570A00 end:0x80570C30 + .sdata start:0x80574F80 end:0x80574F88 + .sdata2 start:0x8057FA50 end:0x8057FA58 + +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/float.c: + .sdata start:0x80574F88 end:0x80574F98 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/scanf.c: .text start:0x804CC6AC end:0x804CDB90 + .rodata start:0x804FC668 end:0x804FC690 + .data start:0x80570C30 end:0x80570EA0 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/string.c: .text start:0x804CDB90 end:0x804CDF4C +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/strtold.c: + .text start:0x804CDF4C end:0x804CF270 + .rodata start:0x804FC690 end:0x804FC6A0 + .sdata2 start:0x8057FA58 end:0x8057FA78 + +PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wctype.c: + .rodata start:0x804FC6A0 end:0x804FCCA0 + PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/strtoul.c: - .text start:0x804CDF4C end:0x804CFBF0 + .text start:0x804CF270 end:0x804CFBF0 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wmem.c: .text start:0x804CFBF0 end:0x804CFC80 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wprintf.c: .text start:0x804CFC80 end:0x804D1F98 + .rodata start:0x804FCCA0 end:0x804FCCA8 + .data start:0x80570EA0 end:0x80571140 + .sdata2 start:0x8057FA78 end:0x8057FA80 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wstring.c: .text start:0x804D1F98 end:0x804D20C0 @@ -4887,78 +4934,110 @@ PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wchar_io.c: PowerPC_EABI_Support/MSL/MSL_C/PPC_EABI/Src/uart_console_io_gcn.c: .text start:0x804D2138 end:0x804D2210 + .sbss start:0x80576948 end:0x80576950 + +PowerPC_EABI_Support/MSL/MSL_C/PPC_EABI/Src/abort_exit_ppc_eabi.c: + .sbss start:0x80576950 end:0x80576958 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/secure_error.c: .text start:0x804D2210 end:0x804D2228 + .sbss start:0x80576958 end:0x80576960 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Src/math_sun.c: .text start:0x804D2228 end:0x804D2268 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_acos.c: .text start:0x804D2268 end:0x804D2534 + .sdata2 start:0x8057FA80 end:0x8057FB08 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_asin.c: .text start:0x804D2534 end:0x804D27CC + .sdata2 start:0x8057FB08 end:0x8057FB90 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_atan2.c: .text start:0x804D27CC end:0x804D2A24 + .sdata2 start:0x8057FB90 end:0x8057FBE8 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_fmod.c: .text start:0x804D2A24 end:0x804D2DA4 + .rodata start:0x804FCCA8 end:0x804FCCB8 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_log.c: .text start:0x804D2DA4 end:0x804D3058 + .sbss start:0x80576960 end:0x80576968 + .sdata2 start:0x8057FBE8 end:0x8057FC68 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_log10.c: .text start:0x804D3058 end:0x804D316C + .sbss start:0x80576968 end:0x80576970 + .sdata2 start:0x8057FC68 end:0x8057FC98 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_pow.c: .text start:0x804D316C end:0x804D3980 + .rodata start:0x804FCCB8 end:0x804FCCE8 + .sdata2 start:0x8057FC98 end:0x8057FDA8 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_rem_pio2.c: .text start:0x804D3980 end:0x804D3D04 + .rodata start:0x804FCCE8 end:0x804FCE70 + .sdata2 start:0x8057FDA8 end:0x8057FE00 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/k_cos.c: .text start:0x804D3D04 end:0x804D3E14 + .sdata2 start:0x8057FE00 end:0x8057FE48 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/k_rem_pio2.c: .text start:0x804D3E14 end:0x804D54CC + .rodata start:0x804FCE70 end:0x804FCEC0 + .sdata2 start:0x8057FE48 end:0x8057FE88 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/k_sin.c: .text start:0x804D54CC end:0x804D558C + .sdata2 start:0x8057FE88 end:0x8057FEC0 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/k_tan.c: .text start:0x804D558C end:0x804D57DC + .rodata start:0x804FCEC0 end:0x804FCF28 + .sdata2 start:0x8057FEC0 end:0x8057FEF8 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_atan.c: .text start:0x804D57DC end:0x804D5A0C + .rodata start:0x804FCF28 end:0x804FCFC0 + .sdata2 start:0x8057FEF8 end:0x8057FF20 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_ceil.c: .text start:0x804D5A0C end:0x804D5B58 + .sdata2 start:0x8057FF20 end:0x8057FF30 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_copysign.c: .text start:0x804D5B58 end:0x804D5B84 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_cos.c: .text start:0x804D5B84 end:0x804D5C4C + .sdata2 start:0x8057FF30 end:0x8057FF38 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_floor.c: .text start:0x804D5C4C end:0x804D5D9C + .sdata2 start:0x8057FF38 end:0x8057FF48 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_frexp.c: .text start:0x804D5D9C end:0x804D5E24 + .sdata2 start:0x8057FF48 end:0x8057FF50 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_ldexp.c: .text start:0x804D5E24 end:0x804D5F90 + .sdata2 start:0x8057FF50 end:0x8057FF78 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_modf.c: .text start:0x804D5F90 end:0x804D608C PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_sin.c: .text start:0x804D608C end:0x804D6158 + .sdata2 start:0x8057FF78 end:0x8057FF80 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/s_tan.c: .text start:0x804D6158 end:0x804D61D0 + .sdata2 start:0x8057FF80 end:0x8057FF88 PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/w_acos.c: .text start:0x804D61D0 end:0x804D61D4 @@ -4980,6 +5059,7 @@ PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/w_pow.c PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/e_sqrt.c: .text start:0x804D61E8 end:0x804D6430 + .sdata2 start:0x8057FF88 end:0x8057FF90 PowerPC_EABI_Support/MSL/MSL_C/PPC_EABI/Src/math_ppc.c: .text start:0x804D6430 end:0x804D6434 @@ -4990,5 +5070,107 @@ PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Math/Double_precision/w_sqrt. PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/extras.c: .text start:0x804D6438 end:0x804D6570 -toBeSorted/TRK.c: - .text start:0x804D6570 end:0x804DB638 +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Export/targsupp.s: + .text start:0x804D6570 end:0x804D6590 + +TRK_MINNOW_DOLPHIN/gamedev/cust_connection/cc/exi2/GCN/EXI2_GDEV_GCN/main.c: + .text start:0x804D6590 end:0x804D6808 + .sbss start:0x80576970 end:0x80576978 + .bss start:0x80675E00 end:0x80676320 + +TRK_MINNOW_DOLPHIN/gamedev/cust_connection/utils/gc/MWCriticalSection_gc.c: + .text start:0x804D6808 end:0x804D6844 + +TRK_MINNOW_DOLPHIN/gamedev/cust_connection/utils/common/CircleBuffer.c: + .text start:0x804D6844 end:0x804D6A80 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/flush_cache.c: + .text start:0x804D6A80 end:0x804D6AB8 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/main_TRK.c: + .text start:0x804D6AB8 end:0x804D6AF4 + .sbss start:0x80576978 end:0x80576980 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/mainloop.c: + .text start:0x804D6AF4 end:0x804D6BE0 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/mem_TRK.c: + .text start:0x804D6BE0 end:0x804D6E44 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/dispatch.c: + .text start:0x804D6E44 end:0x804D6F64 + .data start:0x80571140 end:0x805711B0 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/dolphin_trk.c: + .text start:0x804D6F64 end:0x804D7288 + .data start:0x805711B0 end:0x805711F0 + .sbss start:0x80576980 end:0x80576988 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/dolphin_trk_glue.c: + .text start:0x804D7288 end:0x804D7624 + .data start:0x805711F0 end:0x805712D8 + .sbss start:0x80576988 end:0x80576990 + .sdata2 start:0x8057FF90 end:0x8057FF94 + .bss start:0x80676320 end:0x80676348 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/notify.c: + .text start:0x804D7624 end:0x804D76B4 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/nubevent.c: + .text start:0x804D76B4 end:0x804D7850 + .data start:0x805712D8 end:0x805712F8 + .bss start:0x80676348 end:0x80676370 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/nubinit.c: + .text start:0x804D7850 end:0x804D79A0 + .data start:0x805712F8 end:0x80571318 + .sbss start:0x80576990 end:0x80576998 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/serpoll.c: + .text start:0x804D79A0 end:0x804D7AE8 + .sbss start:0x80576998 end:0x805769A0 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/string_TRK.c: + .text start:0x804D7AE8 end:0x804D7B04 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/support.c: + .text start:0x804D7B04 end:0x804D8128 + .data start:0x80571318 end:0x80571360 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/targcont.c: + .text start:0x804D8128 end:0x804D815C + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/mpc_7xx_603e.c: + .text start:0x804D815C end:0x804D8484 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/msg.c: + .text start:0x804D8484 end:0x804D84E8 + .data start:0x80571360 end:0x80571388 + .sbss start:0x805769A0 end:0x805769A8 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/msgbuf.c: + .text start:0x804D84E8 end:0x804D8CF4 + .data start:0x80571388 end:0x805713B0 + .bss start:0x80676370 end:0x80677D18 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/msghndlr.c: + .text start:0x804D8CF4 end:0x804D9C78 + .data start:0x805713B0 end:0x80571418 + .sbss start:0x805769A8 end:0x805769B0 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Export/mslsupp.c: + .text start:0x804D9C78 end:0x804D9E04 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/targimpl.c: + .text start:0x804D9E04 end:0x804DB628 + .rodata start:0x804FCFC0 end:0x804FD048 + .data start:0x80571418 end:0x80571428 + .sbss start:0x805769B0 end:0x805769B8 + .bss start:0x80677D18 end:0x806782C0 + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/target_options.c: + .text start:0x804DB628 end:0x804DB638 + .sbss start:0x805769B8 end:0x805769BC + +TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/exception.s: + .init start:0x80004744 end:0x80006678 diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt index db720fbd..81318497 100644 --- a/config/SOUE01/symbols.txt +++ b/config/SOUE01/symbols.txt @@ -17227,7 +17227,7 @@ __ct__8sPhase_cFPPFPv_Q28sPhase_c15METHOD_RESULT_ei = .text:0x802DEEB0; // type: callMethod__8sPhase_cFPv = .text:0x802DEED0; // type:function size:0xA4 vprintf_wrap = .text:0x802DEF80; // type:function size:0x8 OSVReportGhidra = .text:0x802DEF90; // type:function size:0x4C -printf = .text:0x802DEFE0; // type:function size:0x80 +fn_802DEFE0 = .text:0x802DEFE0; // type:function size:0x80 OSReport = .text:0x802DF060; // type:function size:0x80 scope:weak OSVReport = .text:0x802DF0E0; // type:function size:0x4 scope:global cCounter_c__clear = .text:0x802DF0F0; // type:function size:0x10 @@ -27383,12 +27383,12 @@ __va_arg = .text:0x804C64F8; // type:function size:0xC8 scope:global __register_global_object = .text:0x804C65C0; // type:function size:0x18 scope:global __destroy_global_chain = .text:0x804C65D8; // type:function size:0x48 scope:global __construct_new_array = .text:0x804C6620; // type:function size:0x104 -Runtime.PPCEABI.H____partial_array_destructor____dt = .text:0x804C6724; // type:function size:0xBC +__dt__26__partial_array_destructorFv = .text:0x804C6724; // type:function size:0xBC __construct_array = .text:0x804C67E0; // type:function size:0xF8 __destroy_arr = .text:0x804C68D8; // type:function size:0x78 __destroy_new_array = .text:0x804C6950; // type:function size:0x80 __ptmf_test = .text:0x804C69D0; // type:function size:0x30 -Runtime.PPCEABI.H____ptmf_cmpr = .text:0x804C6A00; // type:function size:0x3C +__ptmf_cmpr = .text:0x804C6A00; // type:function size:0x3C __ptmf_scall = .text:0x804C6A3C; // type:function size:0x28 __cvt_fp2unsigned = .text:0x804C6A64; // type:function size:0x5C __save_fpr = .text:0x804C6AC0; // type:function size:0x4C @@ -27498,7 +27498,7 @@ __num2dec = .text:0x804C88F8; // type:function size:0x1A4 __dec2num = .text:0x804C8A9C; // type:function size:0x74C abs = .text:0x804C91E8; // type:function size:0x10 labs = .text:0x804C91F8; // type:function size:0x10 -fn_804C9208 = .text:0x804C9208; // type:function size:0x5C +div = .text:0x804C9208; // type:function size:0x5C __prep_buffer = .text:0x804C9264; // type:function size:0x28 scope:global __flush_buffer = .text:0x804C928C; // type:function size:0xB8 scope:global __fwrite = .text:0x804C9344; // type:function size:0x308 scope:global @@ -27533,15 +27533,15 @@ float2str = .text:0x804CB184; // type:function size:0x79C scope:local __pformatter = .text:0x804CB920; // type:function size:0x8AC scope:local __FileWrite = .text:0x804CC1CC; // type:function size:0x58 scope:global __StringWrite = .text:0x804CC224; // type:function size:0x6C scope:global -fn_804CC290 = .text:0x804CC290; // type:function size:0xCC -MSL_C.PPCEABI.bare.H__vprintf = .text:0x804CC35C; // type:function size:0x7C +printf = .text:0x804CC290; // type:function size:0xCC +vprintf = .text:0x804CC35C; // type:function size:0x7C vsnprintf = .text:0x804CC3D8; // type:function size:0x88 scope:global vsprintf = .text:0x804CC460; // type:function size:0x84 scope:global snprintf = .text:0x804CC4E4; // type:function size:0xF4 sprintf = .text:0x804CC5D8; // type:function size:0xD4 scope:global -__StringRead = .text:0x804CC6AC; // type:function size:0x694 -fn_804CCD40 = .text:0x804CCD40; // type:function size:0xC98 -fn_804CD9D8 = .text:0x804CD9D8; // type:function size:0x88 +parse_format = .text:0x804CC6AC; // type:function size:0x694 scope:local +__sformatter = .text:0x804CCD40; // type:function size:0xC98 scope:local +__StringRead = .text:0x804CD9D8; // type:function size:0x88 sscanf = .text:0x804CDA60; // type:function size:0x130 strcpy = .text:0x804CDB90; // type:function size:0xC0 scope:global strncpy = .text:0x804CDC50; // type:function size:0x44 @@ -27553,18 +27553,18 @@ strchr = .text:0x804CDE68; // type:function size:0x30 scope:global strrchr = .text:0x804CDE98; // type:function size:0x48 strstr = .text:0x804CDEE0; // type:function size:0x6C __strtold = .text:0x804CDF4C; // type:function size:0x1324 -atof = .text:0x804CF270; // type:function size:0x414 -__strtoul = .text:0x804CF684; // type:function size:0x4A8 +__strtoul = .text:0x804CF270; // type:function size:0x414 +__strtoull = .text:0x804CF684; // type:function size:0x4A8 atoi = .text:0x804CFB2C; // type:function size:0xC4 -fn_804CFBF0 = .text:0x804CFBF0; // type:function size:0x8 -wmemcpy = .text:0x804CFBF8; // type:function size:0x60 +wmemcpy = .text:0x804CFBF0; // type:function size:0x8 +wmemset = .text:0x804CFBF8; // type:function size:0x60 wmemchr = .text:0x804CFC58; // type:function size:0x28 -parse_format_wchar = .text:0x804CFC80; // type:function size:0x590 -long2str_wchar = .text:0x804D0210; // type:function size:0x244 -longlong2str_wchar = .text:0x804D0454; // type:function size:0x2BC -double2hex_wchar = .text:0x804D0710; // type:function size:0x454 -round_decimal_wchar = .text:0x804D0B64; // type:function size:0x128 -float2str_wchar = .text:0x804D0C8C; // type:function size:0x790 +parse_format = .text:0x804CFC80; // type:function size:0x590 scope:local +long2str = .text:0x804D0210; // type:function size:0x244 scope:local +longlong2str = .text:0x804D0454; // type:function size:0x2BC scope:local +double2hex = .text:0x804D0710; // type:function size:0x454 scope:local +round_decimal = .text:0x804D0B64; // type:function size:0x128 scope:local +float2str = .text:0x804D0C8C; // type:function size:0x790 scope:local __wpformatter = .text:0x804D141C; // type:function size:0x98C __wStringWrite = .text:0x804D1DA8; // type:function size:0x6C swprintf = .text:0x804D1E14; // type:function size:0xF8 @@ -27572,7 +27572,7 @@ vswprintf = .text:0x804D1F0C; // type:function size:0x8C wcslen = .text:0x804D1F98; // type:function size:0x1C wcscpy = .text:0x804D1FB4; // type:function size:0x1C wcsncpy = .text:0x804D1FD0; // type:function size:0x44 -fn_804D2014 = .text:0x804D2014; // type:function size:0x4C +wcsncat = .text:0x804D2014; // type:function size:0x4C wcscmp = .text:0x804D2060; // type:function size:0x34 wcschr = .text:0x804D2094; // type:function size:0x2C fwide = .text:0x804D20C0; // type:function size:0x78 scope:global @@ -27608,15 +27608,15 @@ atan2 = .text:0x804D61D8; // type:function size:0x4 fmod = .text:0x804D61DC; // type:function size:0x4 log10 = .text:0x804D61E0; // type:function size:0x4 pow = .text:0x804D61E4; // type:function size:0x4 -__ieee757_sqrt = .text:0x804D61E8; // type:function size:0x248 +__ieee754_sqrt = .text:0x804D61E8; // type:function size:0x248 nan = .text:0x804D6430; // type:function size:0x4 sqrt = .text:0x804D6434; // type:function size:0x4 stricmp = .text:0x804D6438; // type:function size:0xA0 -fn_804D64D8 = .text:0x804D64D8; // type:function size:0x98 -fn_804D6570 = .text:0x804D6570; // type:function size:0x8 -fn_804D6578 = .text:0x804D6578; // type:function size:0x8 -fn_804D6580 = .text:0x804D6580; // type:function size:0x8 -fn_804D6588 = .text:0x804D6588; // type:function size:0x8 +wcsnicmp = .text:0x804D64D8; // type:function size:0x98 +TRKAccessFile = .text:0x804D6570; // type:function size:0x8 +TRKOpenFile = .text:0x804D6578; // type:function size:0x8 +TRKCloseFile = .text:0x804D6580; // type:function size:0x8 +TRKPositionFile = .text:0x804D6588; // type:function size:0x8 gdev_cc_initialize = .text:0x804D6590; // type:function size:0x3C scope:global gdev_cc_shutdown = .text:0x804D65CC; // type:function size:0x8 scope:global gdev_cc_open = .text:0x804D65D4; // type:function size:0x24 scope:global @@ -27636,11 +27636,11 @@ CircleBufferWriteBytes = .text:0x804D6870; // type:function size:0x108 CircleBufferReadBytes = .text:0x804D6978; // type:function size:0x108 TRK_flush_cache = .text:0x804D6A80; // type:function size:0x38 TRK_main = .text:0x804D6AB8; // type:function size:0x3C scope:global -TRKNubMainLoop = .text:0x804D6AF4; // type:function size:0xEC scope:global +TRK_NubMainLoop = .text:0x804D6AF4; // type:function size:0xEC scope:global TRK_memcpy = .text:0x804D6BE0; // type:function size:0x13C TRK_memset = .text:0x804D6D1C; // type:function size:0x128 -TRKDispatchMessage = .text:0x804D6E44; // type:function size:0x120 scope:global -InitMetroTRK = .text:0x804D6F64; // type:function size:0x94 scope:global +TRK_DispatchMessage = .text:0x804D6E44; // type:function size:0x120 scope:global +InitMetroTRK = .text:0x804D6F64; // type:function size:0x98 scope:global InitMetroTRK_BBA = .text:0x804D6FFC; // type:function size:0x94 scope:global EnableMetroTRKInterrupts = .text:0x804D7090; // type:function size:0x4 scope:global TRKTargetTranslate = .text:0x804D7094; // type:function size:0x68 @@ -27651,7 +27651,7 @@ TRKLoadContext = .text:0x804D7288; // type:function size:0x88 scope:global TRKEXICallBack = .text:0x804D7310; // type:function size:0x38 scope:global InitMetroTRKCommTable = .text:0x804D7348; // type:function size:0x138 scope:global TRKUARTInterruptHandler = .text:0x804D7480; // type:function size:0x4 scope:global -TRKInitializeIntDrivenUART = .text:0x804D7484; // type:function size:0x54 scope:global +TRK_InitializeIntDrivenUART = .text:0x804D7484; // type:function size:0x54 scope:global EnableEXI2Interrupts = .text:0x804D74D8; // type:function size:0x2C TRKPollUART = .text:0x804D7504; // type:function size:0x14 TRKReadUARTN = .text:0x804D7518; // type:function size:0x3C @@ -27666,10 +27666,10 @@ TRKGetNextEvent = .text:0x804D76D8; // type:function size:0x8C scope:global TRKPostEvent = .text:0x804D7764; // type:function size:0xCC TRKConstructEvent = .text:0x804D7830; // type:function size:0x18 TRKDestructEvent = .text:0x804D7848; // type:function size:0x8 scope:global -TRKInitializeNub = .text:0x804D7850; // type:function size:0xAC scope:global -TRKTerminateNub = .text:0x804D78FC; // type:function size:0x24 scope:global -TRKNubWelcome = .text:0x804D7920; // type:function size:0xC scope:global -TRKInitializeEndian = .text:0x804D792C; // type:function size:0x74 scope:global +TRK_InitializeNub = .text:0x804D7850; // type:function size:0xAC scope:global +TRK_TerminateNub = .text:0x804D78FC; // type:function size:0x24 scope:global +TRK_NubWelcome = .text:0x804D7920; // type:function size:0xC scope:global +TRK_InitializeEndian = .text:0x804D792C; // type:function size:0x74 scope:global TRKTestForPacket = .text:0x804D79A0; // type:function size:0xCC TRKGetInput = .text:0x804D7A6C; // type:function size:0x2C scope:global TRKProcessInput = .text:0x804D7A98; // type:function size:0x40 @@ -27685,7 +27685,7 @@ TRKTargetContinue = .text:0x804D8128; // type:function size:0x34 scope:global TRKSaveExtended1Block = .text:0x804D815C; // type:function size:0x1C4 scope:global TRKRestoreExtended1Block = .text:0x804D8320; // type:function size:0x164 scope:global TRK_MessageSend = .text:0x804D8484; // type:function size:0x64 -TRKInitializeMessageBuffers = .text:0x804D84E8; // type:function size:0x20 scope:global +TRK_InitializeMessageBuffers = .text:0x804D84E8; // type:function size:0x20 scope:global TRK_GetFreeBuffer = .text:0x804D8508; // type:function size:0x9C TRKGetBuffer = .text:0x804D85A4; // type:function size:0x24 scope:global TRK_ReleaseBuffer = .text:0x804D85C8; // type:function size:0x28 @@ -27727,7 +27727,7 @@ TRKTargetAccessDefault = .text:0x804DA128; // type:function size:0xF8 TRKTargetAccessFP = .text:0x804DA220; // type:function size:0x13C TRKTargetAccessExtended1 = .text:0x804DA35C; // type:function size:0x164 TRKTargetAccessExtended2 = .text:0x804DA4C0; // type:function size:0x170 -TRKInterruptHandler = .text:0x804DA630; // type:function size:0x194 scope:global +TRK_InterruptHandler = .text:0x804DA630; // type:function size:0x194 scope:global TRKExceptionHandler = .text:0x804DA7C4; // type:function size:0x9C scope:global TRKPostInterruptEvent = .text:0x804DA860; // type:function size:0xB8 scope:global TRKSwapAndGo = .text:0x804DA918; // type:function size:0xC4 scope:global @@ -29233,13 +29233,13 @@ lbl_804FBF68 = .rodata:0x804FBF68; // type:object size:0x10 lbl_804FBF78 = .rodata:0x804FBF78; // type:object size:0x20 lbl_804FBF98 = .rodata:0x804FBF98; // type:object size:0x10 __ptmf_null = .rodata:0x804FBFA8; // type:object size:0x10 data:4byte -lbl_804FBFB8 = .rodata:0x804FBFB8; // type:object size:0x18 align:8 data:double -lbl_804FBFD0 = .rodata:0x804FBFD0; // type:object size:0x70 -lbl_804FC040 = .rodata:0x804FC040; // type:object size:0x18 data:4byte -lbl_804FC058 = .rodata:0x804FC058; // type:object size:0xE0 -lbl_804FC138 = .rodata:0x804FC138; // type:object size:0x200 -lbl_804FC338 = .rodata:0x804FC338; // type:object size:0x100 -lbl_804FC438 = .rodata:0x804FC438; // type:object size:0x100 +__constants = .rodata:0x804FBFB8; // type:object size:0x18 align:8 data:double +@stringBase0 = .rodata:0x804FBFD0; // type:object size:0x70 scope:local data:string_table +fix_pool_sizes = .rodata:0x804FC040; // type:object size:0x18 scope:local data:4byte +@stringBase0 = .rodata:0x804FC058; // type:object size:0xDD scope:local data:string_table +__ctype_mapC = .rodata:0x804FC138; // type:object size:0x200 +__lower_mapC = .rodata:0x804FC338; // type:object size:0x100 +__upper_mapC = .rodata:0x804FC438; // type:object size:0x100 lbl_804FC538 = .rodata:0x804FC538; // type:object size:0x10 lbl_804FC548 = .rodata:0x804FC548; // type:object size:0xC data:string lbl_804FC554 = .rodata:0x804FC554; // type:object size:0xC @@ -29247,12 +29247,12 @@ lbl_804FC560 = .rodata:0x804FC560; // type:object size:0x58 lbl_804FC5B8 = .rodata:0x804FC5B8; // type:object size:0x88 @stringBase0 = .rodata:0x804FC640; // type:object size:0x25 scope:local data:string_table lbl_804FC668 = .rodata:0x804FC668; // type:object size:0x28 data:4byte -lbl_804FC690 = .rodata:0x804FC690; // type:object size:0x10 data:4byte -lbl_804FC6A0 = .rodata:0x804FC6A0; // type:object size:0x200 -lbl_804FC8A0 = .rodata:0x804FC8A0; // type:object size:0x200 -lbl_804FCAA0 = .rodata:0x804FCAA0; // type:object size:0x200 -lbl_804FCCA0 = .rodata:0x804FCCA0; // type:object size:0x8 -lbl_804FCCA8 = .rodata:0x804FCCA8; // type:object size:0x10 +lbl_804FC690 = .rodata:0x804FC690; // type:object size:0x9 data:string +__wctype_mapC = .rodata:0x804FC6A0; // type:object size:0x200 +__wlower_mapC = .rodata:0x804FC8A0; // type:object size:0x200 +__wupper_mapC = .rodata:0x804FCAA0; // type:object size:0x200 +@stringBase0 = .rodata:0x804FCCA0; // type:object size:0x1 scope:local data:string_table +Zero = .rodata:0x804FCCA8; // type:object size:0x10 scope:local lbl_804FCCB8 = .rodata:0x804FCCB8; // type:object size:0x30 lbl_804FCCE8 = .rodata:0x804FCCE8; // type:object size:0x108 lbl_804FCDF0 = .rodata:0x804FCDF0; // type:object size:0x80 @@ -29260,7 +29260,7 @@ lbl_804FCE70 = .rodata:0x804FCE70; // type:object size:0x10 lbl_804FCE80 = .rodata:0x804FCE80; // type:object size:0x40 align:8 data:double lbl_804FCEC0 = .rodata:0x804FCEC0; // type:object size:0x68 align:8 data:double lbl_804FCF28 = .rodata:0x804FCF28; // type:object size:0x98 -lbl_804FCFC0 = .rodata:0x804FCFC0; // type:object size:0x10 data:4byte +gTRKMemMap = .rodata:0x804FCFC0; // type:object size:0x10 data:4byte lbl_804FCFD0 = .rodata:0x804FCFD0; // type:object size:0x28 data:4byte lbl_804FCFF8 = .rodata:0x804FCFF8; // type:object size:0x28 data:4byte lbl_804FD020 = .rodata:0x804FD020; // type:object size:0x28 data:4byte @@ -38884,19 +38884,16 @@ lbl_80570488 = .data:0x80570488; // type:object size:0x18 lbl_805704A0 = .data:0x805704A0; // type:object size:0x58 lbl_805704F8 = .data:0x805704F8; // type:object size:0x10 lbl_80570508 = .data:0x80570508; // type:object size:0x58 -lbl_80570560 = .data:0x80570560; // type:object size:0x50 -lbl_805705B0 = .data:0x805705B0; // type:object size:0x50 -lbl_80570600 = .data:0x80570600; // type:object size:0x50 -lbl_80570650 = .data:0x80570650; // type:object size:0x50 +__files = .data:0x80570560; // type:object size:0x140 jumptable_805706A0 = .data:0x805706A0; // type:object size:0x124 scope:local lbl_805707C8 = .data:0x805707C8; // type:object size:0x40 -lbl_80570808 = .data:0x80570808; // type:object size:0x38 data:4byte -lbl_80570840 = .data:0x80570840; // type:object size:0x28 -lbl_80570868 = .data:0x80570868; // type:object size:0xC0 -lbl_80570928 = .data:0x80570928; // type:object size:0x1C -lbl_80570944 = .data:0x80570944; // type:object size:0x34 -lbl_80570978 = .data:0x80570978; // type:object size:0x18 -lbl_80570990 = .data:0x80570990; // type:object size:0x28 +__lconv = .data:0x80570808; // type:object size:0x38 data:4byte +_loc_ctyp_C = .data:0x80570840; // type:object size:0x28 +char_coll_tableC = .data:0x80570868; // type:object size:0xC0 +_loc_coll_C = .data:0x80570928; // type:object size:0x1C +_loc_mon_C = .data:0x80570944; // type:object size:0x34 +_loc_num_C = .data:0x80570978; // type:object size:0x14 +_loc_tim_C = .data:0x80570990; // type:object size:0x28 _current_locale = .data:0x805709B8; // type:object size:0x48 jumptable_80570A00 = .data:0x80570A00; // type:object size:0xE0 scope:local @2934 = .data:0x80570AE0; // type:object size:0x150 scope:local @@ -38908,16 +38905,16 @@ jumptable_80570EA0 = .data:0x80570EA0; // type:object size:0xE0 scope:local jumptable_80570F80 = .data:0x80570F80; // type:object size:0x150 scope:local lbl_805710D0 = .data:0x805710D0; // type:object size:0x70 jumptable_80571140 = .data:0x80571140; // type:object size:0x6C scope:local -lbl_805711B0 = .data:0x805711B0; // type:object size:0x40 data:4byte +TRK_ISR_OFFSETS = .data:0x805711B0; // type:object size:0x40 data:4byte @stringBase0 = .data:0x805711F0; // type:object size:0xE1 scope:local data:string_table -lbl_805712D8 = .data:0x805712D8; // type:object size:0x20 +@stringBase0 = .data:0x805712D8; // type:object size:0x1D scope:local data:string @stringBase0 = .data:0x805712F8; // type:object size:0x1D scope:local data:string -lbl_80571318 = .data:0x80571318; // type:object size:0x48 -lbl_80571360 = .data:0x80571360; // type:object size:0x28 data:string -lbl_80571388 = .data:0x80571388; // type:object size:0x28 data:string +@stringBase0 = .data:0x80571318; // type:object size:0x41 scope:local data:string +@stringBase0 = .data:0x80571360; // type:object size:0x28 scope:local data:string +@stringBase0 = .data:0x80571388; // type:object size:0x28 scope:local data:string jumptable_805713B0 = .data:0x805713B0; // type:object size:0x1C scope:local jumptable_805713CC = .data:0x805713CC; // type:object size:0x1C scope:local -lbl_805713E8 = .data:0x805713E8; // type:object size:0x30 +@stringBase0 = .data:0x805713E8; // type:object size:0x30 scope:local data:string_table gTRKExceptionStatus = .data:0x80571418; // type:object size:0x10 scope:local data:4byte lbl_80571440 = .sdata:0x80571440; // type:object size:0x8 lbl_80571448 = .sdata:0x80571448; // type:object size:0x8 data:string @@ -41259,9 +41256,9 @@ sAudioRmtSpeakerWpadVolume__Q23EGG18AudioRmtSpeakerMgr = .sdata:0x80574F68; // t sHBFadeframe__Q33EGG12AudioUtility3HBM = .sdata:0x80574F70; // type:object size:0x4 data:4byte fragmentID = .sdata:0x80574F78; // type:object size:0x4 scope:local data:4byte @wstringBase0 = .sdata:0x80574F80; // type:object size:0x2 scope:local -lbl_80574F88 = .sdata:0x80574F88; // type:object size:0x4 align:4 data:float -lbl_80574F8C = .sdata:0x80574F8C; // type:object size:0x4 align:4 data:float -lbl_80574F90 = .sdata:0x80574F90; // type:object size:0x8 align:8 data:double +__float_nan = .sdata:0x80574F88; // type:object size:0x4 align:4 data:float +__float_huge = .sdata:0x80574F8C; // type:object size:0x4 align:4 data:float +__double_huge = .sdata:0x80574F90; // type:object size:0x8 align:8 data:double lbl_80574FA0 = .sbss:0x80574FA0; // type:object size:0x4 data:4byte lbl_80574FA4 = .sbss:0x80574FA4; // type:object size:0x4 data:4byte lbl_80574FA8 = .sbss:0x80574FA8; // type:object size:0x1 data:byte @@ -42626,24 +42623,24 @@ sExceptionDisplayInfo__Q23EGG9Exception = .sbss:0x8057691E; // type:object size: lbl_80576920 = .sbss:0x80576920; // type:object size:0x4 align:4 data:float lbl_80576928 = .sbss:0x80576928; // type:object size:0x8 data:4byte __global_destructor_chain = .sbss:0x80576930; // type:object size:0x4 scope:global data:4byte -lbl_80576938 = .sbss:0x80576938; // type:object size:0x8 data:byte -ERRNOMaybe = .sbss:0x80576940; // type:object size:0x8 data:4byte -lbl_80576948 = .sbss:0x80576948; // type:object size:0x8 data:4byte +@LOCAL@get_malloc_pool__Fv@init@0 = .sbss:0x80576938; // type:object size:0x8 scope:local data:byte +errno = .sbss:0x80576940; // type:object size:0x8 data:4byte +@LOCAL@__init_uart_console__Fv@initialized = .sbss:0x80576948; // type:object size:0x8 data:4byte __stdio_exit = .sbss:0x80576950; // type:object size:0x4 scope:global data:4byte __msl_constraint_handler = .sbss:0x80576958; // type:object size:0x4 scope:local data:4byte lbl_80576960 = .sbss:0x80576960; // type:object size:0x8 align:8 data:double lbl_80576968 = .sbss:0x80576968; // type:object size:0x8 align:8 data:double -lbl_80576970 = .sbss:0x80576970; // type:object size:0x8 data:4byte +gIsInitialized = .sbss:0x80576970; // type:object size:0x8 data:4byte TRK_mainError = .sbss:0x80576978; // type:object size:0x4 scope:local data:4byte -lbl_80576980 = .sbss:0x80576980; // type:object size:0x8 data:4byte +lc_base = .sbss:0x80576980; // type:object size:0x8 data:4byte TRK_Use_BBA = .sbss:0x80576988; // type:object size:0x1 scope:global data:byte -lbl_80576990 = .sbss:0x80576990; // type:object size:0x8 data:4byte +gTRKBigEndian = .sbss:0x80576990; // type:object size:0x8 data:4byte gTRKInputPendingPtr = .sbss:0x80576998; // type:object size:0x4 scope:global data:4byte -lbl_805769A0 = .sbss:0x805769A0; // type:object size:0x8 data:2byte -lbl_805769A8 = .sbss:0x805769A8; // type:object size:0x4 data:4byte -TRKConnected = .sbss:0x805769AC; // type:object size:0x4 data:4byte +gPacketSeq = .sbss:0x805769A0; // type:object size:0x8 data:2byte +g_CurrentSequence = .sbss:0x805769A8; // type:object size:0x4 data:4byte +IsTRKConnected = .sbss:0x805769AC; // type:object size:0x4 data:4byte TRK_saved_exceptionID = .sbss:0x805769B0; // type:object size:0x2 scope:local data:2byte -lbl_805769B8 = .sbss:0x805769B8; // type:object size:0x1 data:byte +bUseSerialIO = .sbss:0x805769B8; // type:object size:0x1 data:byte lbl_805769C0 = .sdata2:0x805769C0; // type:object size:0x8 data:byte lbl_805769C8 = .sdata2:0x805769C8; // type:object size:0x4 align:4 data:float lbl_805769CC = .sdata2:0x805769CC; // type:object size:0x4 align:4 data:float @@ -50211,8 +50208,7 @@ lbl_8057FA3C = .sdata2:0x8057FA3C; // type:object size:0x4 lbl_8057FA40 = .sdata2:0x8057FA40; // type:object size:0x8 lbl_8057FA48 = .sdata2:0x8057FA48; // type:object size:0x8 lbl_8057FA50 = .sdata2:0x8057FA50; // type:object size:0x8 align:8 data:double -lbl_8057FA58 = .sdata2:0x8057FA58; // type:object size:0x4 data:4byte -lbl_8057FA5C = .sdata2:0x8057FA5C; // type:object size:0x1 data:byte +lbl_8057FA58 = .sdata2:0x8057FA58; // type:object size:0x5 data:string lbl_8057FA60 = .sdata2:0x8057FA60; // type:object size:0x8 align:8 data:double lbl_8057FA68 = .sdata2:0x8057FA68; // type:object size:0x8 align:8 data:double lbl_8057FA70 = .sdata2:0x8057FA70; // type:object size:0x8 align:8 data:double @@ -50379,7 +50375,7 @@ lbl_8057FF70 = .sdata2:0x8057FF70; // type:object size:0x8 align:8 data:double lbl_8057FF78 = .sdata2:0x8057FF78; // type:object size:0x8 align:8 data:double lbl_8057FF80 = .sdata2:0x8057FF80; // type:object size:0x8 align:8 data:double lbl_8057FF88 = .sdata2:0x8057FF88; // type:object size:0x8 align:8 data:double -lbl_8057FF90 = .sdata2:0x8057FF90; // type:object size:0x4 +EndofProgramInstruction$631 = .sdata2:0x8057FF90; // type:object size:0x4 scope:local lbl_8057FFA0 = .sbss2:0x8057FFA0; // type:object size:0x8 data:4byte bta_dm_pm_cfg = .sbss2:0x8057FFA8; // type:object size:0x8 bd_addr_null = .sbss2:0x8057FFB0; // type:object size:0x8 @@ -52085,18 +52081,18 @@ lbl_80675820 = .bss:0x80675820; // type:object size:0x90 data:4byte lbl_806758B0 = .bss:0x806758B0; // type:object size:0x5C data:4byte lbl_8067590C = .bss:0x8067590C; // type:object size:0x3C data:4byte fragmentinfo = .bss:0x80675948; // type:object size:0x180 scope:local data:4byte -lbl_80675AC8 = .bss:0x80675AC8; // type:object size:0x38 data:4byte -lbl_80675B00 = .bss:0x80675B00; // type:object size:0x100 -lbl_80675C00 = .bss:0x80675C00; // type:object size:0x100 -lbl_80675D00 = .bss:0x80675D00; // type:object size:0x100 -lbl_80675E00 = .bss:0x80675E00; // type:object size:0x500 -lbl_80676300 = .bss:0x80676300; // type:object size:0x20 +@LOCAL@get_malloc_pool__Fv@protopool = .bss:0x80675AC8; // type:object size:0x38 scope:local data:4byte +stderr_buff = .bss:0x80675B00; // type:object size:0x100 scope:local +stdout_buff = .bss:0x80675C00; // type:object size:0x100 scope:local +stdin_buff = .bss:0x80675D00; // type:object size:0x100 scope:local +gRecvBuf = .bss:0x80675E00; // type:object size:0x500 +gRecvCB = .bss:0x80676300; // type:object size:0x20 gDBCommTable = .bss:0x80676320; // type:object size:0x28 scope:global data:4byte -lbl_80676348 = .bss:0x80676348; // type:object size:0x28 data:4byte -lbl_80676370 = .bss:0x80676370; // type:object size:0x19A8 data:4byte +gTRKEventQueue = .bss:0x80676348; // type:object size:0x28 data:4byte +gTRKMsgBufs = .bss:0x80676370; // type:object size:0x19A8 data:4byte gTRKRestoreFlags = .bss:0x80677D18; // type:object size:0x9 scope:global data:byte -lbl_80677D28 = .bss:0x80677D28; // type:object size:0x18 data:4byte +gTRKStepStatus = .bss:0x80677D28; // type:object size:0x18 data:4byte gTRKSaveState = .bss:0x80677D40; // type:object size:0x94 scope:global data:4byte -lbl_80677DD8 = .bss:0x80677DD8; // type:object size:0x10 +TRKvalue128_temp = .bss:0x80677DD8; // type:object size:0x10 gTRKState = .bss:0x80677DE8; // type:object size:0xA4 scope:global data:4byte gTRKCPUState = .bss:0x80677E90; // type:object size:0x430 scope:global data:4byte diff --git a/configure.py b/configure.py index d17eaebe..58190044 100644 --- a/configure.py +++ b/configure.py @@ -1555,6 +1555,14 @@ config.libs = [ "progress_category": "runtime", "host": False, "objects": [ + Object( + NonMatching, + "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/alloc.c", + ), + Object( + NonMatching, + "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/errno.c", + ), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ansi_files.c", @@ -1563,6 +1571,12 @@ config.libs = [ NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common_Embedded/Src/ansi_fp.c", ), + Object( + NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ctype.c" + ), + Object( + NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/locale.c" + ), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/arith.c" ), @@ -1586,7 +1600,7 @@ config.libs = [ NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/mem_funcs.c" ), Object( - NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/float.c" + NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/math_api.c" ), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/misc_io.c" @@ -1594,15 +1608,24 @@ config.libs = [ Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/printf.c" ), + Object( + NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/float.c" + ), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/scanf.c" ), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/string.c" ), + Object( + NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/strtold.c" + ), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/strtoul.c" ), + Object( + NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wctype.c" + ), Object(NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wmem.c"), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/wprintf.c" @@ -1617,6 +1640,10 @@ config.libs = [ NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/PPC_EABI/Src/uart_console_io_gcn.c", ), + Object( + NonMatching, + "PowerPC_EABI_Support/MSL/MSL_C/PPC_EABI/Src/abort_exit_ppc_eabi.c", + ), Object( NonMatching, "PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/secure_error.c", @@ -1761,8 +1788,110 @@ config.libs = [ "progress_category": "runtime", "host": False, "objects": [ - # TODO, just here for progress tracking, split further - Object(NonMatching, "toBeSorted/TRK.c"), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Export/targsupp.s", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/gamedev/cust_connection/cc/exi2/GCN/EXI2_GDEV_GCN/main.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/gamedev/cust_connection/utils/gc/MWCriticalSection_gc.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/gamedev/cust_connection/utils/common/CircleBuffer.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/flush_cache.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/main_TRK.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/mainloop.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/mem_TRK.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/dispatch.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/dolphin_trk.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/dolphin_trk_glue.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/notify.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/nubevent.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/nubinit.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/serpoll.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/string_TRK.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/support.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/targcont.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/mpc_7xx_603e.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/msg.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/msgbuf.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/msghndlr.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Export/mslsupp.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/targimpl.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/target_options.c", + ), + Object( + NonMatching, + "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/exception.s", + ), ], }, # Begin RELs