diff --git a/config/RSBE01_02/splits.txt b/config/RSBE01_02/splits.txt index 543e525..7862071 100644 --- a/config/RSBE01_02/splits.txt +++ b/config/RSBE01_02/splits.txt @@ -13,6 +13,10 @@ Sections: .sdata2 type:rodata align:16 .sbss2 type:bss align:32 +sora/sr/sr_getappname.cpp: + .text start:0x8000C860 end:0x8000C8A4 + .data start:0x80420680 end:0x80420690 + sora/sr/sr_common.cpp: .text start:0x8000C8A4 end:0x8000C8E0 .sdata start:0x8059C420 end:0x8059C428 @@ -43,10 +47,17 @@ sora/mt/mt_prng.cpp: .sbss start:0x805A00B8 end:0x805A00C0 .sdata2 start:0x805A1748 end:0x805A176C +sora/ef/ef_screen_handle.cpp: + .text start:0x8005E5C8 end:0x8005E5E8 + sora/cm/cm_controller_default.cpp: .text start:0x8009F560 end:0x8009F564 .data start:0x80454CC0 end:0x80454CD0 +sora/cm/cm_stage_param.cpp: + .text start:0x800AC9B8 end:0x800AC9DC + .sdata2 start:0x805A21D8 end:0x805A21E8 + sora/ty/ty_fig_listmng.cpp: .text start:0x800AC9DC end:0x800AD808 .data start:0x80455120 end:0x80455180 diff --git a/config/RSBE01_02/symbols.txt b/config/RSBE01_02/symbols.txt index 06e14a6..91778c7 100644 --- a/config/RSBE01_02/symbols.txt +++ b/config/RSBE01_02/symbols.txt @@ -2099,10 +2099,10 @@ _bss_init_info = .init:0x800064A4; // type:object size:0x20 scope:global data:4b @eti_8000C814 = extabindex:0x8000C814; // type:object size:0xC scope:local hidden @eti_8000C820 = extabindex:0x8000C820; // type:object size:0xC scope:local hidden _eti_init_info = extabindex:0x8000C82C; // type:object size:0x20 scope:global -fn_8000C860 = .text:0x8000C860; // type:function size:0x4 -fn_8000C864 = .text:0x8000C864; // type:function size:0x24 -fn_8000C888 = .text:0x8000C888; // type:function size:0x8 -fn_8000C890 = .text:0x8000C890; // type:function size:0x14 +srGetAppGamename__Fv = .text:0x8000C860; // type:function size:0x4 +srGetAppInitialCode__Fv = .text:0x8000C864; // type:function size:0x24 +srGetAppInitialCodeLocaleNum__Fv = .text:0x8000C888; // type:function size:0x8 +srGetAppInitialCodeLocale__FUl = .text:0x8000C890; // type:function size:0x14 srSystemGetDebugLevel__Fv = .text:0x8000C8A4; // type:function size:0x8 __nw__FUl = .text:0x8000C8AC; // type:function size:0xC __nw__FUlQ25Heaps8HeapType = .text:0x8000C8B8; // type:function size:0x10 @@ -2217,7 +2217,7 @@ fn_800130A8 = .text:0x800130A8; // type:function size:0x10C fn_800131B4 = .text:0x800131B4; // type:function size:0x134 fn_800132E8 = .text:0x800132E8; // type:function size:0xD4 fn_800133BC = .text:0x800133BC; // type:function size:0x104 -run__8gfThreadFv = .text:0x800134C0; // type:function size:0x4 +run__8gfThreadFv = .text:0x800134C0; // type:function size:0x4 scope:weak fn_800134C4 = .text:0x800134C4; // type:function size:0x248 __ct__9gfArchiveFv = .text:0x8001370C; // type:function size:0xB4 fn_800137C0 = .text:0x800137C0; // type:function size:0x35C @@ -3466,7 +3466,7 @@ requestFill__8efScreenFfiiP8_GXColor = .text:0x8005E0FC; // type:function size:0 fn_8005E344 = .text:0x8005E344; // type:function size:0x84 fn_8005E3C8 = .text:0x8005E3C8; // type:function size:0x70 fn_8005E438 = .text:0x8005E438; // type:function size:0x190 -fn_8005E5C8 = .text:0x8005E5C8; // type:function size:0x20 +isValid__14efScreenHandleCFv = .text:0x8005E5C8; // type:function size:0x20 fn_8005E5E8 = .text:0x8005E5E8; // type:function size:0xD8 fn_8005E6C0 = .text:0x8005E6C0; // type:function size:0x8 fn_8005E6C8 = .text:0x8005E6C8; // type:function size:0x1D0 @@ -4339,7 +4339,7 @@ fn_800AB2E8 = .text:0x800AB2E8; // type:function size:0x4C4 fn_800AB7AC = .text:0x800AB7AC; // type:function size:0x8B8 fn_800AC064 = .text:0x800AC064; // type:function size:0x940 fn_800AC9A4 = .text:0x800AC9A4; // type:function size:0x14 -fn_800AC9B8 = .text:0x800AC9B8; // type:function size:0x24 +__ct__29cmStageParamPausedOffsetRangeFv = .text:0x800AC9B8; // type:function size:0x24 __ct__20tyFigListDataManagerFb = .text:0x800AC9DC; // type:function size:0xA8 __dt__20tyFigListDataManagerFv = .text:0x800ACA84; // type:function size:0x7C loadRequest__20tyFigListDataManagerFv = .text:0x800ACB00; // type:function size:0x98 @@ -6003,16 +6003,16 @@ getArg__13acAnimCmdImplCFP8acCmdArgl = .text:0x8013CA78; // type:function size:0 isArgEmpty__13acAnimCmdImplCFv = .text:0x8013CB5C; // type:function size:0x34 getArgList__13acAnimCmdImplFv = .text:0x8013CB90; // type:function size:0xA4 isValid__13acAnimCmdImplCFv = .text:0x8013CC34; // type:function size:0x34 -__dt__41soArrayContractibleTableFv = .text:0x8013CC68; // type:function size:0x40 -isEmpty__29soArrayFixedCFv = .text:0x8013CCA8; // type:function size:0x34 -at__41soArrayContractibleTableFUl = .text:0x8013CCDC; // type:function size:0x10 -at__41soArrayContractibleTableFi = .text:0x8013CCEC; // type:function size:0x10 -shift__41soArrayContractibleTableFv = .text:0x8013CCFC; // type:function size:0x90 -pop__41soArrayContractibleTableFv = .text:0x8013CD8C; // type:function size:0x7C -clear__41soArrayContractibleTableFv = .text:0x8013CE08; // type:function size:0x54 -size__41soArrayContractibleTableCFv = .text:0x8013CE5C; // type:function size:0x60 -isNull__41soArrayContractibleTableCFv = .text:0x8013CEBC; // type:function size:0x8 -atSub__41soArrayContractibleTableFl = .text:0x8013CEC4; // type:function size:0x40 +__dt__41soArrayContractibleTableFv = .text:0x8013CC68; // type:function size:0x40 scope:weak +isEmpty__29soArrayFixedCFv = .text:0x8013CCA8; // type:function size:0x34 scope:weak +at__41soArrayContractibleTableFl = .text:0x8013CCDC; // type:function size:0x10 scope:weak +at__41soArrayContractibleTableCFl = .text:0x8013CCEC; // type:function size:0x10 scope:weak +shift__41soArrayContractibleTableFv = .text:0x8013CCFC; // type:function size:0x90 scope:weak +pop__41soArrayContractibleTableFv = .text:0x8013CD8C; // type:function size:0x7C scope:weak +clear__41soArrayContractibleTableFv = .text:0x8013CE08; // type:function size:0x54 scope:weak +size__41soArrayContractibleTableCFv = .text:0x8013CE5C; // type:function size:0x60 scope:weak +isNull__41soArrayContractibleTableCFv = .text:0x8013CEBC; // type:function size:0x8 scope:weak +atSub__41soArrayContractibleTableCFl = .text:0x8013CEC4; // type:function size:0x40 scope:weak __dt__13acAnimCmdNullFv = .text:0x8013CF04; // type:function size:0x40 getOption__13acAnimCmdNullCFv = .text:0x8013CF44; // type:function size:0x8 isValid__13acAnimCmdNullCFv = .text:0x8013CF4C; // type:function size:0x8 @@ -8721,7 +8721,7 @@ fn_801D64D0 = .text:0x801D64D0; // type:function size:0x58 __OSPSInit = .text:0x801D6528; // type:function size:0x54 scope:global fn_801D657C = .text:0x801D657C; // type:function size:0x10 OSRegisterVersion = .text:0x801D658C; // type:function size:0x10 scope:global -fn_801D659C = .text:0x801D659C; // type:function size:0x84 +OSGetAppGamename = .text:0x801D659C; // type:function size:0x84 fn_801D6620 = .text:0x801D6620; // type:function size:0x20 fn_801D6640 = .text:0x801D6640; // type:function size:0x58 fn_801D6698 = .text:0x801D6698; // type:function size:0x10 @@ -17570,7 +17570,7 @@ lbl_80420518 = .rodata:0x80420518; // type:object size:0x28 data:4byte lbl_80420540 = .rodata:0x80420540; // type:object size:0x28 data:4byte EndofProgramInstruction$159 = .rodata:0x80420568; // type:object size:0x4 scope:local lbl_8042056C = .rodata:0x8042056C; // type:object size:0x104 -lbl_80420680 = .data:0x80420680; // type:object size:0x10 +@58 = .data:0x80420680; // type:object size:0xD scope:local data:string lbl_80420690 = .data:0x80420690; // type:object size:0xC lbl_8042069C = .data:0x8042069C; // type:object size:0x14 data:string lbl_804206B0 = .data:0x804206B0; // type:object size:0x64 @@ -17591,11 +17591,11 @@ lbl_8042081C = .data:0x8042081C; // type:object size:0xC lbl_80420828 = .data:0x80420828; // type:object size:0x18 lbl_80420840 = .data:0x80420840; // type:object size:0xC data:string lbl_8042084C = .data:0x8042084C; // type:object size:0x64 -__vt__8gfThread = .data:0x804208B0; // type:object size:0xC -lbl_804208BC = .data:0x804208BC; // type:object size:0xC -lbl_804208C8 = .data:0x804208C8; // type:object size:0xC -__vt__10gfRunnable = .data:0x804208D4; // type:object size:0xC -lbl_804208E0 = .data:0x804208E0; // type:object size:0x10 data:string +__vt__8gfThread = .data:0x804208B0; // type:object size:0xC scope:weak +@17 = .data:0x804208BC; // type:object size:0x9 scope:local data:string +@18 = .data:0x804208C8; // type:object size:0xC scope:local +__vt__10gfRunnable = .data:0x804208D4; // type:object size:0xC scope:weak +@19 = .data:0x804208E0; // type:object size:0xB scope:local data:string lbl_804208F0 = .data:0x804208F0; // type:object size:0x30 lbl_80420920 = .data:0x80420920; // type:object size:0x1C lbl_8042093C = .data:0x8042093C; // type:object size:0xC @@ -17613,7 +17613,7 @@ jumptable_80420AE8 = .data:0x80420AE8; // type:object size:0x20 scope:local lbl_80420B08 = .data:0x80420B08; // type:object size:0x64 lbl_80420B6C = .data:0x80420B6C; // type:object size:0xC lbl_80420B78 = .data:0x80420B78; // type:object size:0x10 -lbl_80420B88 = .data:0x80420B88; // type:object size:0x18 +@237 = .data:0x80420B88; // type:object size:0x13 scope:local data:string lbl_80420BA0 = .data:0x80420BA0; // type:object size:0x10 lbl_80420BB0 = .data:0x80420BB0; // type:object size:0x10 lbl_80420BC0 = .data:0x80420BC0; // type:object size:0x10 @@ -26069,19 +26069,19 @@ __vt__10soNullable = .data:0x8045DDC4; // type:object size:0xC lbl_8045DDD0 = .data:0x8045DDD0; // type:object size:0xC lbl_8045DDDC = .data:0x8045DDDC; // type:object size:0x14 data:string __vt__13acAnimCmdImpl = .data:0x8045DDF0; // type:object size:0x34 -lbl_8045DE24 = .data:0x8045DE24; // type:object size:0x10 -lbl_8045DE34 = .data:0x8045DE34; // type:object size:0x14 -__vt__41soArrayContractibleTable = .data:0x8045DE48; // type:object size:0x30 -lbl_8045DE78 = .data:0x8045DE78; // type:object size:0x30 -lbl_8045DEA8 = .data:0x8045DEA8; // type:object size:0x28 -lbl_8045DED0 = .data:0x8045DED0; // type:object size:0x28 data:string -lbl_8045DEF8 = .data:0x8045DEF8; // type:object size:0x14 -lbl_8045DF0C = .data:0x8045DF0C; // type:object size:0x24 -lbl_8045DF30 = .data:0x8045DF30; // type:object size:0xC -lbl_8045DF3C = .data:0x8045DF3C; // type:object size:0x3C data:string +@868 = .data:0x8045DE24; // type:object size:0xE scope:local data:string +@869 = .data:0x8045DE34; // type:object size:0x14 scope:local +__vt__41soArrayContractibleTable = .data:0x8045DE48; // type:object size:0x30 scope:weak +@872 = .data:0x8045DE78; // type:object size:0x2D scope:local data:string +@873 = .data:0x8045DEA8; // type:object size:0x24 scope:local +@874 = .data:0x8045DED0; // type:object size:0x28 scope:local data:string +@875 = .data:0x8045DEF8; // type:object size:0x14 scope:local +@876 = .data:0x8045DF0C; // type:object size:0x21 scope:local data:string +@877 = .data:0x8045DF30; // type:object size:0xC scope:local +@878 = .data:0x8045DF3C; // type:object size:0x3C scope:local data:string __vt__13acAnimCmdNull = .data:0x8045DF78; // type:object size:0x34 -lbl_8045DFAC = .data:0x8045DFAC; // type:object size:0x10 -lbl_8045DFBC = .data:0x8045DFBC; // type:object size:0x14 +@859 = .data:0x8045DFAC; // type:object size:0xE scope:local data:string +@860 = .data:0x8045DFBC; // type:object size:0x14 scope:local lbl_8045DFD0 = .data:0x8045DFD0; // type:object size:0xC lbl_8045DFDC = .data:0x8045DFDC; // type:object size:0xC lbl_8045DFE8 = .data:0x8045DFE8; // type:object size:0x18 @@ -27938,7 +27938,7 @@ lbl_8049E588 = .bss:0x8049E588; // type:object size:0xC lbl_8049E594 = .bss:0x8049E594; // type:object size:0xC data:4byte lbl_8049E5A0 = .bss:0x8049E5A0; // type:object size:0x118 lbl_8049E6B8 = .bss:0x8049E6B8; // type:object size:0x358 -lbl_8049EA10 = .bss:0x8049EA10; // type:object size:0x10 +@810 = .bss:0x8049EA10; // type:object size:0xC scope:local lbl_8049EA20 = .bss:0x8049EA20; // type:object size:0x10 lbl_8049EA30 = .bss:0x8049EA30; // type:object size:0x120 lbl_8049EB50 = .bss:0x8049EB50; // type:object size:0x80 @@ -28391,7 +28391,7 @@ TRK_Use_BBA = .bss:0x8059BED8; // type:object size:0x1 scope:global data:byte lbl_8059BEE0 = .bss:0x8059BEE0; // type:object size:0x8 data:byte lbl_8059BEE8 = .bss:0x8059BEE8; // type:object size:0x500 lbl_8059C3E8 = .bss:0x8059C3E8; // type:object size:0x1C -lbl_8059C420 = .sdata:0x8059C420; // type:object size:0x8 data:4byte +DebugLevel = .sdata:0x8059C420; // type:object size:0x4 scope:local data:4byte lbl_8059C428 = .sdata:0x8059C428; // type:object size:0x8 data:4byte lbl_8059C430 = .sdata:0x8059C430; // type:object size:0x8 lbl_8059C438 = .sdata:0x8059C438; // type:object size:0x8 @@ -28400,8 +28400,8 @@ lbl_8059C448 = .sdata:0x8059C448; // type:object size:0x8 lbl_8059C450 = .sdata:0x8059C450; // type:object size:0x8 lbl_8059C458 = .sdata:0x8059C458; // type:object size:0x8 lbl_8059C460 = .sdata:0x8059C460; // type:object size:0x8 -__RTTI__8gfThread = .sdata:0x8059C468; // type:object size:0x8 -__RTTI__10gfRunnable = .sdata:0x8059C470; // type:object size:0x8 +__RTTI__8gfThread = .sdata:0x8059C468; // type:object size:0x8 scope:weak +__RTTI__10gfRunnable = .sdata:0x8059C470; // type:object size:0x8 scope:weak lbl_8059C478 = .sdata:0x8059C478; // type:object size:0x8 lbl_8059C480 = .sdata:0x8059C480; // type:object size:0x8 lbl_8059C488 = .sdata:0x8059C488; // type:object size:0x1 data:byte @@ -28420,7 +28420,7 @@ lbl_8059C4D8 = .sdata:0x8059C4D8; // type:object size:0x8 data:string lbl_8059C4E0 = .sdata:0x8059C4E0; // type:object size:0x8 lbl_8059C4E8 = .sdata:0x8059C4E8; // type:object size:0x8 __RTTI__6gfTask = .sdata:0x8059C4F0; // type:object size:0x8 -__RTTI__18gfCameraController = .sdata:0x8059C4F8; // type:object size:0x8 +__RTTI__18gfCameraController = .sdata:0x8059C4F8; // type:object size:0x8 scope:weak lbl_8059C500 = .sdata:0x8059C500; // type:object size:0x8 lbl_8059C508 = .sdata:0x8059C508; // type:object size:0x8 lbl_8059C510 = .sdata:0x8059C510; // type:object size:0x8 @@ -29582,12 +29582,12 @@ __RTTI__16acCmdInterpreter = .sdata:0x8059E6D0; // type:object size:0x8 __RTTI__9acAnimCmd = .sdata:0x8059E6D8; // type:object size:0x8 __RTTI__10soNullable = .sdata:0x8059E6E0; // type:object size:0x8 __RTTI__19soNullableInterface = .sdata:0x8059E6E8; // type:object size:0x8 -__RTTI__13acAnimCmdImpl = .sdata:0x8059E6F0; // type:object size:0x8 -__RTTI__41soArrayContractibleTable = .sdata:0x8059E6F8; // type:object size:0x8 -__RTTI__36soArrayContractible = .sdata:0x8059E700; // type:object size:0x8 -__RTTI__29soArrayFixed = .sdata:0x8059E708; // type:object size:0x8 -__RTTI__58soConnectable<41soArrayContractibleTable> = .sdata:0x8059E710; // type:object size:0x8 -__RTTI__13acAnimCmdNull = .sdata:0x8059E718; // type:object size:0x8 +__RTTI__13acAnimCmdImpl = .sdata:0x8059E6F0; // type:object size:0x8 scope:weak +__RTTI__41soArrayContractibleTable = .sdata:0x8059E6F8; // type:object size:0x8 scope:weak +__RTTI__36soArrayContractible = .sdata:0x8059E700; // type:object size:0x8 scope:weak +__RTTI__29soArrayFixed = .sdata:0x8059E708; // type:object size:0x8 scope:weak +__RTTI__58soConnectable<41soArrayContractibleTable> = .sdata:0x8059E710; // type:object size:0x8 scope:weak +__RTTI__13acAnimCmdNull = .sdata:0x8059E718; // type:object size:0x8 scope:weak lbl_8059E720 = .sdata:0x8059E720; // type:object size:0x8 lbl_8059E728 = .sdata:0x8059E728; // type:object size:0x4 lbl_8059E72C = .sdata:0x8059E72C; // type:object size:0x8 @@ -30658,7 +30658,7 @@ lbl_805A00A0 = .sbss:0x805A00A0; // type:object size:0x8 data:4byte lbl_805A00A8 = .sbss:0x805A00A8; // type:object size:0x2 data:2byte lbl_805A00AA = .sbss:0x805A00AA; // type:object size:0x6 data:2byte lbl_805A00B0 = .sbss:0x805A00B0; // type:object size:0x8 data:4byte -g_mtRand = .sbss:0x805A00B8; // type:object size:0x8 data:4byte +g_mtRand = .sbss:0x805A00B8; // type:object size:0x8 scope:local data:4byte lbl_805A00C0 = .sbss:0x805A00C0; // type:object size:0x8 data:4byte lbl_805A00C8 = .sbss:0x805A00C8; // type:object size:0x8 data:4byte g_ipSwitch = .sbss:0x805A00D0; // type:object size:0x4 data:4byte @@ -31833,12 +31833,12 @@ lbl_805A1734 = .sdata2:0x805A1734; // type:object size:0x4 align:4 data:float lbl_805A1738 = .sdata2:0x805A1738; // type:object size:0x8 align:4 data:float lbl_805A1740 = .sdata2:0x805A1740; // type:object size:0x4 align:4 data:float lbl_805A1744 = .sdata2:0x805A1744; // type:object size:0x4 align:4 data:float -lbl_805A1748 = .sdata2:0x805A1748; // type:object size:0x8 align:8 data:double -lbl_805A1750 = .sdata2:0x805A1750; // type:object size:0x8 align:8 data:double -lbl_805A1758 = .sdata2:0x805A1758; // type:object size:0x8 align:8 data:double -lbl_805A1760 = .sdata2:0x805A1760; // type:object size:0x4 align:4 data:float -lbl_805A1764 = .sdata2:0x805A1764; // type:object size:0x4 align:4 data:float -lbl_805A1768 = .sdata2:0x805A1768; // type:object size:0x4 align:4 data:float +@105 = .sdata2:0x805A1748; // type:object size:0x8 scope:local align:8 data:double +@108 = .sdata2:0x805A1750; // type:object size:0x8 scope:local align:8 data:double +@111 = .sdata2:0x805A1758; // type:object size:0x8 scope:local align:8 data:double +@117 = .sdata2:0x805A1760; // type:object size:0x4 scope:local align:4 data:float +@124 = .sdata2:0x805A1764; // type:object size:0x4 scope:local align:4 data:float +@125 = .sdata2:0x805A1768; // type:object size:0x4 scope:local align:4 data:float lbl_805A1770 = .sdata2:0x805A1770; // type:object size:0x4 align:4 data:float lbl_805A1774 = .sdata2:0x805A1774; // type:object size:0x4 align:4 data:float lbl_805A1778 = .sdata2:0x805A1778; // type:object size:0x4 align:4 data:float @@ -32433,10 +32433,10 @@ lbl_805A21C0 = .sdata2:0x805A21C0; // type:object size:0x8 align:8 data:double lbl_805A21C8 = .sdata2:0x805A21C8; // type:object size:0x4 align:4 data:float lbl_805A21CC = .sdata2:0x805A21CC; // type:object size:0x4 align:4 data:float lbl_805A21D0 = .sdata2:0x805A21D0; // type:object size:0x8 align:4 data:float -lbl_805A21D8 = .sdata2:0x805A21D8; // type:object size:0x4 align:4 data:float -lbl_805A21DC = .sdata2:0x805A21DC; // type:object size:0x4 align:4 data:float -lbl_805A21E0 = .sdata2:0x805A21E0; // type:object size:0x4 align:4 data:float -lbl_805A21E4 = .sdata2:0x805A21E4; // type:object size:0x4 align:4 data:float +@1675 = .sdata2:0x805A21D8; // type:object size:0x4 scope:local align:4 data:float +@1676 = .sdata2:0x805A21DC; // type:object size:0x4 scope:local align:4 data:float +@1677 = .sdata2:0x805A21E0; // type:object size:0x4 scope:local align:4 data:float +@1678 = .sdata2:0x805A21E4; // type:object size:0x4 scope:local align:4 data:float lbl_805A21E8 = .sdata2:0x805A21E8; // type:object size:0x8 align:4 data:float lbl_805A21F0 = .sdata2:0x805A21F0; // type:object size:0x8 lbl_805A21F8 = .sdata2:0x805A21F8; // type:object size:0x8 align:8 data:double diff --git a/configure.py b/configure.py index e06158f..86829d4 100755 --- a/configure.py +++ b/configure.py @@ -286,6 +286,7 @@ def MatchingFor(*versions): "cflags": cflags_common, "host": False, "objects": [ + Object(Matching, "sora/sr/sr_getappname.cpp"), Object(Matching, "sora/sr/sr_common.cpp"), Object(Matching, "sora/sr/sr_revision.cpp"), Object(Matching, "sora/gf/gf_3d_scene_light_resource.cpp"), @@ -293,7 +294,9 @@ def MatchingFor(*versions): Object(Matching, "sora/gf/gf_camera_controller.cpp"), Object(Matching, "sora/gf/gf_memory_util.cpp"), Object(Matching, "sora/mt/mt_prng.cpp", extra_cflags=["-RTTI off"]), + Object(Matching, "sora/ef/ef_screen_handle.cpp"), Object(Matching, "sora/cm/cm_controller_default.cpp", extra_cflags=["-RTTI off"]), + Object(Matching, "sora/cm/cm_stage_param.cpp"), Object(NonMatching, "sora/ty/ty_fig_listmng.cpp"), Object(NonMatching, "sora/ac/ac_cmd_interpreter.cpp"), Object(Matching, "sora/ac/ac_anim_cmd_impl.cpp"), diff --git a/include/lib/BrawlHeaders b/include/lib/BrawlHeaders index 3f86f5c..1f5e07c 160000 --- a/include/lib/BrawlHeaders +++ b/include/lib/BrawlHeaders @@ -1 +1 @@ -Subproject commit 3f86f5cce28b63dad195a8d871f7a914861961a0 +Subproject commit 1f5e07c8d4dc0dab615de7f53fecaa6fbefad3ef diff --git a/src/mo_enemy/sora_enemy/em_info.cpp b/src/mo_enemy/sora_enemy/em_info.cpp index 7f35a9e..206385c 100644 --- a/src/mo_enemy/sora_enemy/em_info.cpp +++ b/src/mo_enemy/sora_enemy/em_info.cpp @@ -327,7 +327,7 @@ emInfo::emInfo() { } emInfo::~emInfo() { } -u32 emInfo::isInvalidKind(EnemyKind kind) { +bool emInfo::isInvalidKind(int kind) { if (kind <= Enemy_Invalid || kind >= NumEnemies) { return 1; } @@ -344,7 +344,7 @@ u32 emInfo::isPrimKind(EnemyKind kind) { return 0; } -EnemyKind emInfo::getInvalidKind() { +int emInfo::getInvalidKind() { return Enemy_Invalid; } @@ -355,14 +355,14 @@ u32 emInfo::getNodeNum(EnemyKind kind) { return NodeNumTable[kind]; } -u32 emInfo::getMotionNum(EnemyKind kind) { +u32 emInfo::getMotionNum(int kind) { if (isInvalidKind(kind) == 1) { return 0; } return MotionNumTable[kind]; } -u32 emInfo::getStatusNum(EnemyKind kind) { +u32 emInfo::getStatusNum(int kind) { if (isInvalidKind(kind) == 1) { return 0; } @@ -453,6 +453,6 @@ u32 emInfo::StandByStatusKind(EnemyKind kind) { return StandByStatusKindTable[kind]; } -const char* emInfo::getNamePtr() { +const char* emInfo::getNamePtr(int kind) { return 0; } diff --git a/src/sora/cm/cm_stage_param.cpp b/src/sora/cm/cm_stage_param.cpp new file mode 100644 index 0000000..c8f756d --- /dev/null +++ b/src/sora/cm/cm_stage_param.cpp @@ -0,0 +1,4 @@ +#include + +cmStageParamPausedOffsetRange::cmStageParamPausedOffsetRange() : + m_0(-70.0f), m_4(70.0f), m_8(30.0f), m_12(1.0f) { } diff --git a/src/sora/ef/ef_screen_handle.cpp b/src/sora/ef/ef_screen_handle.cpp new file mode 100644 index 0000000..73deb6a --- /dev/null +++ b/src/sora/ef/ef_screen_handle.cpp @@ -0,0 +1,5 @@ +#include + +bool efScreenHandle::isValid() const { + return (unk0 >= 0 && unk0 < 10); +} diff --git a/src/sora/sr/sr_getappname.cpp b/src/sora/sr/sr_getappname.cpp new file mode 100644 index 0000000..75236f5 --- /dev/null +++ b/src/sora/sr/sr_getappname.cpp @@ -0,0 +1,36 @@ +#ifndef MATCHING +#include +#endif +#include +#include +#include + +const char* srGetAppGamename() { + return OSGetAppGamename(); +} + +// Note: The matching code assumes big-endian +u32 srGetAppInitialCode() { +#ifdef MATCHING + return *reinterpret_cast(OSGetAppGamename()); +#else + u32 code; + memcpy(&code, OSGetAppGamename(), sizeof(u32)); + return ntohl(code); +#endif +} + +u32 srGetAppInitialCodeLocaleNum() { + return 3; +} + +// Note: The matching code assumes big-endian +u32 srGetAppInitialCodeLocale(u32 i) { +#ifdef MATCHING + return *reinterpret_cast(&"RSBJRSBERSBP"[sizeof(u32)*i]); +#else + u32 code; + memcpy(&code, &"RSBJRSBERSBP"[sizeof(u32)*i], sizeof(u32)); + return ntohl(code); +#endif +}