From 154337afacb07f45ba4a76b2f3c8289ba841b856 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Tue, 23 Mar 2021 21:32:18 +1000 Subject: [PATCH] ntsc-beta: Get lib .rodata matching --- src/lib/controller.c | 9 ++ src/lib/dma.c | 2 + src/lib/init.c | 2 + src/lib/lib_06550.c | 2 + src/lib/lib_070d0.c | 2 + src/lib/lib_0c000.c | 35 ++++++++ src/lib/lib_0e9d0.c | 13 ++- src/lib/lib_11420.c | 12 --- src/lib/lib_16110.c | 8 ++ src/lib/lib_317f0.c | 32 +++---- src/lib/lib_34240.c | 193 ++++++++++++++++++++++++++++++++++++++++++- src/lib/lib_37b00.c | 4 + src/lib/lib_3e8c0.c | 20 ++++- src/lib/main.c | 114 +++++++++++++++++++++++++ src/lib/memory.c | 17 ++++ 15 files changed, 434 insertions(+), 31 deletions(-) diff --git a/src/lib/controller.c b/src/lib/controller.c index 558e51f3b..64045ed3f 100644 --- a/src/lib/controller.c +++ b/src/lib/controller.c @@ -572,7 +572,11 @@ u32 var8005ef08 = 0; void contDebugJoy(void) { +#if VERSION >= VERSION_NTSC_1_0 func0000db30("debugjoy", &var8005ef08); +#else + func0000db30("joyforce", &var8005ef08); +#endif #if VERSION >= VERSION_NTSC_1_0 if (g_Vars.paksconnected) { @@ -624,6 +628,11 @@ const char var70054168[] = "osContStartReadData -> Failed - CONT_OVERRUN_ERROR\n const char var7005419c[] = "joyTickRetrace:joy%derrno%d->%d\n"; const char var700541c0[] = "joyTickRetrace:joy%derrno%d->%d\n"; +#if VERSION < VERSION_NTSC_1_0 +const char var70055958nb[] = "joy.c"; +const char var70055960nb[] = "joy.c"; +#endif + s32 contStartReadData(OSMesgQueue *mq) { return osContStartReadData(mq); diff --git a/src/lib/dma.c b/src/lib/dma.c index 930fcf19f..36428ff9b 100644 --- a/src/lib/dma.c +++ b/src/lib/dma.c @@ -99,6 +99,8 @@ void dmaStart(void *memaddr, u32 romaddr, u32 len, bool priority) } } #else +const char var700542d0nb[] = "DMA : Off the end of the rom"; + GLOBAL_ASM( glabel dmaStart /* d728: 27bdffa8 */ addiu $sp,$sp,-88 diff --git a/src/lib/init.c b/src/lib/init.c index 1abe1c4cc..de894125a 100644 --- a/src/lib/init.c +++ b/src/lib/init.c @@ -823,6 +823,8 @@ glabel func00001b70nb #endif #if VERSION < VERSION_NTSC_1_0 +const char var700539b0nb[] = "Stack overflow thread %d"; + GLOBAL_ASM( glabel func00001bf4nb /* 1bf4: 27bdff28 */ addiu $sp,$sp,-216 diff --git a/src/lib/lib_06550.c b/src/lib/lib_06550.c index 056ba4c55..d243d2610 100644 --- a/src/lib/lib_06550.c +++ b/src/lib/lib_06550.c @@ -757,6 +757,8 @@ glabel func00006d60 /* 6f94: 00000000 */ nop ); #else +const char var70053ad0nb[] = "pfsinitpak.c -> ret = %d\n"; + GLOBAL_ASM( glabel func00006d60 /* 6ea0: 27bdff90 */ addiu $sp,$sp,-112 diff --git a/src/lib/lib_070d0.c b/src/lib/lib_070d0.c index ae0ae7b66..7119f0263 100644 --- a/src/lib/lib_070d0.c +++ b/src/lib/lib_070d0.c @@ -303,6 +303,8 @@ glabel func000070d0 /* 74e0: 27bd14a8 */ addiu $sp,$sp,0x14a8 ); #else +const char var70053af0nb[] = "DMA-Crash %s %d Ram: %02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x"; +const char var70053b48nb[] = "vm_m.c"; GLOBAL_ASM( glabel func000070d0 /* 71b0: 27bdea98 */ addiu $sp,$sp,-5480 diff --git a/src/lib/lib_0c000.c b/src/lib/lib_0c000.c index d5321eabb..6615b5f53 100644 --- a/src/lib/lib_0c000.c +++ b/src/lib/lib_0c000.c @@ -447,6 +447,9 @@ glabel func0000c660nb #endif #if VERSION < VERSION_NTSC_1_0 +const char var70053fd0nb[] = "%.49s"; +const char var70053fd8nb[] = "???"; + GLOBAL_ASM( glabel func0000c694nb /* c694: 3c078009 */ lui $a3,0x8009 @@ -489,6 +492,9 @@ glabel func0000c694nb #endif #if VERSION < VERSION_NTSC_1_0 +const char var70053fdcnb[] = "%.41s"; +const char var70053fe4nb[] = "???"; + GLOBAL_ASM( glabel func0000c714nb /* c714: 3c078009 */ lui $a3,0x8009 @@ -531,6 +537,8 @@ glabel func0000c714nb #endif #if VERSION < VERSION_NTSC_1_0 +const char var70053fe8nb[] = "%08x"; + GLOBAL_ASM( glabel func0000c794nb /* c794: 27bdffe8 */ addiu $sp,$sp,-24 @@ -758,6 +766,33 @@ u32 crashRender(OSThread *thread, u32 *callstack, s32 *tracelen) return 0; } #else +const char crashrodata00[] = "\n\nFAULT-\n"; +const char crashrodata01[] = "DodgyStackTrace: %08llx "; +const char crashrodata02[] = "%08x "; +const char crashrodata03[] = ".\n"; +const char crashrodata04[] = "\nPerfect Crash (tm)\n\n"; +const char crashrodata05[] = "at 0x%016llx v0 0x%016llx v1 0x%016llx\n"; +const char crashrodata06[] = "a0 0x%016llx a1 0x%016llx a2 0x%016llx\n"; +const char crashrodata07[] = "a3 0x%016llx t0 0x%016llx t1 0x%016llx\n"; +const char crashrodata08[] = "t2 0x%016llx t3 0x%016llx t4 0x%016llx\n"; +const char crashrodata09[] = "t5 0x%016llx t6 0x%016llx t7 0x%016llx\n"; +const char crashrodata10[] = "s0 0x%016llx s1 0x%016llx s2 0x%016llx\n"; +const char crashrodata11[] = "s3 0x%016llx s4 0x%016llx s5 0x%016llx\n"; +const char crashrodata12[] = "s6 0x%016llx s7 0x%016llx t8 0x%016llx\n"; +const char crashrodata13[] = "t9 0x%016llx gp 0x%016llx sp 0x%016llx\n"; +const char crashrodata14[] = "s8 0x%016llx ra 0x%016llx\n"; +const char crashrodata15[] = "TID %d epc %08x cause %08x fp %08x badv %08x sr %08x\n"; +const char crashrodata16[] = "dshex -a %08x %08x %08x %08x %08x\n"; +const char crashrodata17[] = "cause"; +const char crashrodata18[] = " : "; +const char crashrodata19[] = "fpcsr"; +const char crashrodata20[] = "\n"; +const char crashrodata21[] = "nearl: "; +const char crashrodata22[] = " %08x "; +const char crashrodata23[] = "\n "; +const char crashrodata24[] = "\n"; +const char crashrodata25[] = "\n"; + GLOBAL_ASM( glabel crashRender /* ca5c: 27bdff08 */ addiu $sp,$sp,-248 diff --git a/src/lib/lib_0e9d0.c b/src/lib/lib_0e9d0.c index 324c07abf..7e2b05352 100644 --- a/src/lib/lib_0e9d0.c +++ b/src/lib/lib_0e9d0.c @@ -49,7 +49,19 @@ const char var70053b60[] = "RWI : Initialising the new and improved MP3 player\n const char var70053b94[] = "RWI : MP3 player Initialising Done\n"; const char var70053bb8[] = "gsSndpNew\n"; const char var70053bc4[] = "Set the sample callbacks\n"; + +#if VERSION < VERSION_NTSC_1_0 +const char var70055250nb[] = "DMA-Crash %s %d Ram: %02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x"; +const char var700552a8nb[] = "snd.c"; +const char var700552b0nb[] = "Snd Heap Check FAILED"; +#endif + const char var70053be0[] = "Snd_Play_Universal : Overriding -> Link = %d\n"; + +#if VERSION < VERSION_NTSC_1_0 +const char var700552f0nb[] = "Snd_Play_Mpeg : sndId=%d, vol=%d, pan=%d\n"; +#endif + const char var70053c10[] = "Snd_Play_Mpeg : SYSTEM IS DISABLED\n"; const char var70053c34[] = "Snd_Play_Mpeg : Lib called -> Adr=%x\n"; const char var70053c5c[] = "Snd_Play_Mpeg : Chunk size -> Adr=%x\n"; @@ -60,7 +72,6 @@ const u32 var70053c8c[] = {0x3e99999a}; const u32 var70053c90[] = {0x3f333333}; const u32 var70053c94[] = {0x3eb33333}; const u32 var70053c98[] = {0x3f4ccccd}; -const u32 var70053c9c[] = {0x00000000}; bool g_Silent = false; u32 var8005dda4 = 0x00000000; diff --git a/src/lib/lib_11420.c b/src/lib/lib_11420.c index 4cad5074f..76bee4910 100644 --- a/src/lib/lib_11420.c +++ b/src/lib/lib_11420.c @@ -757,18 +757,6 @@ glabel var70053fec #else GLOBAL_ASM( glabel func0001190c -.late_rodata -glabel var70053fdc -.word func0001190c+0x324 -glabel var70053fe0 -.word func0001190c+0x338 -glabel var70053fe4 -.word func0001190c+0x34c -glabel var70053fe8 -.word func0001190c+0x360 -glabel var70053fec -.word func0001190c+0x370 -.text /* 11cb4: 27bdffa8 */ addiu $sp,$sp,-88 /* 11cb8: 3c0e8006 */ lui $t6,0x8006 /* 11cbc: 8dcef6c0 */ lw $t6,-0x940($t6) diff --git a/src/lib/lib_16110.c b/src/lib/lib_16110.c index 68cb1ca0f..656737810 100644 --- a/src/lib/lib_16110.c +++ b/src/lib/lib_16110.c @@ -9,6 +9,14 @@ #include "data.h" #include "types.h" +#if VERSION < VERSION_NTSC_1_0 +const char var70055980nb[] = "("; +const char var70055984nb[] = "%s%s %9f"; +const char var70055990nb[] = ""; +const char var70055994nb[] = ""; +const char var70055998nb[] = " )\n"; +#endif + const u32 var70054200[] = {0x42652ee0}; GLOBAL_ASM( diff --git a/src/lib/lib_317f0.c b/src/lib/lib_317f0.c index a2be6bf58..11794a1db 100644 --- a/src/lib/lib_317f0.c +++ b/src/lib/lib_317f0.c @@ -2108,37 +2108,37 @@ GLOBAL_ASM( glabel func00031b34 .late_rodata glabel var70054740 -.word func00031b34+0x01ac +.word func00031b34+0x1ac glabel var70054744 -.word func00031b34+0x0a78 +.word func00031b34+0x940 glabel var70054748 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var7005474c -.word func00031b34+0x0bfc +.word func00031b34+0xa9c glabel var70054750 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var70054754 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var70054758 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var7005475c -.word func00031b34+0x0f08 +.word func00031b34+0xda8 glabel var70054760 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var70054764 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var70054768 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var7005476c -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var70054770 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var70054774 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var70054778 -.word func00031b34+0x14dc +.word func00031b34+0x132c glabel var7005477c -.word func00031b34+0x0ca0 +.word func00031b34+0xb40 .text /* 33274: 27bdff48 */ addiu $sp,$sp,-184 /* 33278: afbf0034 */ sw $ra,0x34($sp) diff --git a/src/lib/lib_34240.c b/src/lib/lib_34240.c index 7069fa33f..e66c1280c 100644 --- a/src/lib/lib_34240.c +++ b/src/lib/lib_34240.c @@ -497,7 +497,7 @@ const u32 var70054a68[] = {0x7003681c}; const u32 var70054a6c[] = {0x70036840}; const u32 var70054a70[] = {0x70036840}; const u32 var70054a74[] = {0x700367f8}; -#else +#elif VERSION >= VERSION_NTSC_1_0 const u32 var70054780[] = {0x70034500}; const u32 var70054784[] = {0x70034d84}; const u32 var70054788[] = {0x70034910}; @@ -692,6 +692,197 @@ const u32 var70054a68[] = {0x70036f1c}; const u32 var70054a6c[] = {0x70036f40}; const u32 var70054a70[] = {0x70036f40}; const u32 var70054a74[] = {0x70036ef8}; +#else +const u32 var70054780[] = {0x700358c0}; +const u32 var70054784[] = {0x70036144}; +const u32 var70054788[] = {0x70035cd0}; +const u32 var7005478c[] = {0x70036144}; +const u32 var70054790[] = {0x70036144}; +const u32 var70054794[] = {0x700358f8}; +const u32 var70054798[] = {0x70035950}; +const u32 var7005479c[] = {0x70035ce8}; +const u32 var700547a0[] = {0x7003614c}; +const u32 var700547a4[] = {0x700358d0}; +const u32 var700547a8[] = {0x70035d00}; +const u32 var700547ac[] = {0x7003614c}; +const u32 var700547b0[] = {0x700360a0}; +const u32 var700547b4[] = {0x700360e0}; +const u32 var700547b8[] = {0x70036120}; +const u32 var700547bc[] = {0x70035e64}; +const u32 var700547c0[] = {0x70035e94}; +const u32 var700547c4[] = {0x70035f1c}; +const u32 var700547c8[] = {0x7003614c}; +const u32 var700547cc[] = {0x7003614c}; +const u32 var700547d0[] = {0x7003614c}; +const u32 var700547d4[] = {0x70035cd0}; +const u32 var700547d8[] = {0x700359e4}; +const u32 var700547dc[] = {0x70035b24}; +const u32 var700547e0[] = {0x70035d70}; +const u32 var700547e4[] = {0x70035dd0}; +const u32 var700547e8[] = {0x7003621c}; +const u32 var700547ec[] = {0x700362ac}; +const u32 var700547f0[] = {0x70036238}; +const u32 var700547f4[] = {0x70036254}; +const u32 var700547f8[] = {0x700362ac}; +const u32 var700547fc[] = {0x700362ac}; +const u32 var70054800[] = {0x700362ac}; +const u32 var70054804[] = {0x700362ac}; +const u32 var70054808[] = {0x700362ac}; +const u32 var7005480c[] = {0x700362ac}; +const u32 var70054810[] = {0x700362ac}; +const u32 var70054814[] = {0x700362ac}; +const u32 var70054818[] = {0x700362ac}; +const u32 var7005481c[] = {0x700362ac}; +const u32 var70054820[] = {0x700362ac}; +const u32 var70054824[] = {0x700362ac}; +const u32 var70054828[] = {0x700362ac}; +const u32 var7005482c[] = {0x7003629c}; +const u32 var70054830[] = {0x7003629c}; +const u32 var70054834[] = {0x7003629c}; +const u32 var70054838[] = {0x70036e04}; +const u32 var7005483c[] = {0x700385b8}; +const u32 var70054840[] = {0x700385b8}; +const u32 var70054844[] = {0x700385b8}; +const u32 var70054848[] = {0x700385b8}; +const u32 var7005484c[] = {0x700385b8}; +const u32 var70054850[] = {0x700385b8}; +const u32 var70054854[] = {0x700385b8}; +const u32 var70054858[] = {0x700385b8}; +const u32 var7005485c[] = {0x700385b8}; +const u32 var70054860[] = {0x700385b8}; +const u32 var70054864[] = {0x700385b8}; +const u32 var70054868[] = {0x700385b8}; +const u32 var7005486c[] = {0x700385b8}; +const u32 var70054870[] = {0x700385b8}; +const u32 var70054874[] = {0x700385b8}; +const u32 var70054878[] = {0x70036564}; +const u32 var7005487c[] = {0x700385b8}; +const u32 var70054880[] = {0x700385b8}; +const u32 var70054884[] = {0x700385b8}; +const u32 var70054888[] = {0x700385b8}; +const u32 var7005488c[] = {0x700385b8}; +const u32 var70054890[] = {0x700385b8}; +const u32 var70054894[] = {0x700385b8}; +const u32 var70054898[] = {0x700385b8}; +const u32 var7005489c[] = {0x700385b8}; +const u32 var700548a0[] = {0x700385b8}; +const u32 var700548a4[] = {0x700385b8}; +const u32 var700548a8[] = {0x700385b8}; +const u32 var700548ac[] = {0x700385b8}; +const u32 var700548b0[] = {0x700385b8}; +const u32 var700548b4[] = {0x700385b8}; +const u32 var700548b8[] = {0x70036f28}; +const u32 var700548bc[] = {0x700385b8}; +const u32 var700548c0[] = {0x700385b8}; +const u32 var700548c4[] = {0x700385b8}; +const u32 var700548c8[] = {0x700385b8}; +const u32 var700548cc[] = {0x700385b8}; +const u32 var700548d0[] = {0x700385b8}; +const u32 var700548d4[] = {0x700385b8}; +const u32 var700548d8[] = {0x700385b8}; +const u32 var700548dc[] = {0x700385b8}; +const u32 var700548e0[] = {0x700385b8}; +const u32 var700548e4[] = {0x700385b8}; +const u32 var700548e8[] = {0x700385b8}; +const u32 var700548ec[] = {0x700385b8}; +const u32 var700548f0[] = {0x700385b8}; +const u32 var700548f4[] = {0x700385b8}; +const u32 var700548f8[] = {0x70037024}; +const u32 var700548fc[] = {0x700385b8}; +const u32 var70054900[] = {0x700385b8}; +const u32 var70054904[] = {0x700385b8}; +const u32 var70054908[] = {0x700385b8}; +const u32 var7005490c[] = {0x700385b8}; +const u32 var70054910[] = {0x700385b8}; +const u32 var70054914[] = {0x700385b8}; +const u32 var70054918[] = {0x700385b8}; +const u32 var7005491c[] = {0x700385b8}; +const u32 var70054920[] = {0x700385b8}; +const u32 var70054924[] = {0x700385b8}; +const u32 var70054928[] = {0x700385b8}; +const u32 var7005492c[] = {0x700385b8}; +const u32 var70054930[] = {0x700385b8}; +const u32 var70054934[] = {0x700385b8}; +const u32 var70054938[] = {0x70038374}; +const u32 var7005493c[] = {0x700385b8}; +const u32 var70054940[] = {0x700385b8}; +const u32 var70054944[] = {0x700385b8}; +const u32 var70054948[] = {0x700385b8}; +const u32 var7005494c[] = {0x700385b8}; +const u32 var70054950[] = {0x700385b8}; +const u32 var70054954[] = {0x700385b8}; +const u32 var70054958[] = {0x700385b8}; +const u32 var7005495c[] = {0x700385b8}; +const u32 var70054960[] = {0x700385b8}; +const u32 var70054964[] = {0x700385b8}; +const u32 var70054968[] = {0x700385b8}; +const u32 var7005496c[] = {0x700385b8}; +const u32 var70054970[] = {0x700385b8}; +const u32 var70054974[] = {0x700385b8}; +const u32 var70054978[] = {0x70036fa0}; +const u32 var7005497c[] = {0x700385b8}; +const u32 var70054980[] = {0x700385b8}; +const u32 var70054984[] = {0x700385b8}; +const u32 var70054988[] = {0x700385b8}; +const u32 var7005498c[] = {0x700385b8}; +const u32 var70054990[] = {0x700385b8}; +const u32 var70054994[] = {0x700385b8}; +const u32 var70054998[] = {0x700385b8}; +const u32 var7005499c[] = {0x700385b8}; +const u32 var700549a0[] = {0x700385b8}; +const u32 var700549a4[] = {0x700385b8}; +const u32 var700549a8[] = {0x700385b8}; +const u32 var700549ac[] = {0x700385b8}; +const u32 var700549b0[] = {0x700385b8}; +const u32 var700549b4[] = {0x700385b8}; +const u32 var700549b8[] = {0x70038404}; +const u32 var700549bc[] = {0x7003820c}; +const u32 var700549c0[] = {0x70037d48}; +const u32 var700549c4[] = {0x70037dac}; +const u32 var700549c8[] = {0x70037e64}; +const u32 var700549cc[] = {0x70038364}; +const u32 var700549d0[] = {0x70038364}; +const u32 var700549d4[] = {0x700376e8}; +const u32 var700549d8[] = {0x70038364}; +const u32 var700549dc[] = {0x70038364}; +const u32 var700549e0[] = {0x70037100}; +const u32 var700549e4[] = {0x70037ef0}; +const u32 var700549e8[] = {0x70037f68}; +const u32 var700549ec[] = {0x70037fc8}; +const u32 var700549f0[] = {0x7003802c}; +const u32 var700549f4[] = {0x7003808c}; +const u32 var700549f8[] = {0x70037798}; +const u32 var700549fc[] = {0x700380ec}; +const u32 var70054a00[] = {0x7003814c}; +const u32 var70054a04[] = {0x700381ac}; +const u32 var70054a08[] = {0x70037b38}; +const u32 var70054a0c[] = {0x70037ba8}; +const u32 var70054a10[] = {0x70037c08}; +const u32 var70054a14[] = {0x70037c78}; +const u32 var70054a18[] = {0x70037cd8}; +const u32 var70054a1c[] = {0x70038330}; +const u32 var70054a20[] = {0x70037af4}; +const u32 var70054a24[] = {0x70038364}; +const u32 var70054a28[] = {0x70038364}; +const u32 var70054a2c[] = {0x70038364}; +const u32 var70054a30[] = {0x700376a0}; +const u32 var70054a34[] = {0x70038364}; +const u32 var70054a38[] = {0x70037b04}; +const u32 var70054a3c[] = {0x700375a8}; +const u32 var70054a40[] = {0x700375e8}; +const u32 var70054a44[] = {0x70037628}; +const u32 var70054a48[] = {0x7003828c}; +const u32 var70054a4c[] = {0x700382a0}; +const u32 var70054a50[] = {0x700382a0}; +const u32 var70054a54[] = {0x700382a0}; +const u32 var70054a58[] = {0x70038300}; +const u32 var70054a5c[] = {0x700382b8}; +const u32 var70054a60[] = {0x70038300}; +const u32 var70054a64[] = {0x700382b8}; +const u32 var70054a68[] = {0x700382dc}; +const u32 var70054a6c[] = {0x70038300}; +const u32 var70054a70[] = {0x70038300}; +const u32 var70054a74[] = {0x700382b8}; #endif #if VERSION >= VERSION_PAL_FINAL diff --git a/src/lib/lib_37b00.c b/src/lib/lib_37b00.c index ec9849e50..af8347f04 100644 --- a/src/lib/lib_37b00.c +++ b/src/lib/lib_37b00.c @@ -10,6 +10,10 @@ #include "data.h" #include "types.h" +#if VERSION < VERSION_NTSC_1_0 +const char var700561b0nb[] = "MPEG : RWI -> Allocating %d bytes for ASISTREAM from audio heap\n"; +#endif + u32 var8009c390; u32 var8009c394; u32 var8009c398; diff --git a/src/lib/lib_3e8c0.c b/src/lib/lib_3e8c0.c index 241cae750..070239793 100644 --- a/src/lib/lib_3e8c0.c +++ b/src/lib/lib_3e8c0.c @@ -319,7 +319,7 @@ const u32 var70054b24[] = {0x7003e2b8}; const u32 var70054b28[] = {0x7003e870}; const u32 var70054b2c[] = {0x7003e8c0}; const u32 var70054b30[] = {0x7003e52c}; -#else +#elif VERSION >= VERSION_NTSC_1_0 const u32 var70054af0[] = {0x7003eff8}; const u32 var70054af4[] = {0x7003f0d0}; const u32 var70054af8[] = {0x7003f0d0}; @@ -337,6 +337,24 @@ const u32 var70054b24[] = {0x7003e9b8}; const u32 var70054b28[] = {0x7003ef70}; const u32 var70054b2c[] = {0x7003efc0}; const u32 var70054b30[] = {0x7003ec2c}; +#else +const u32 var70054af0[] = {0x700403c8}; +const u32 var70054af4[] = {0x700404a0}; +const u32 var70054af8[] = {0x700404a0}; +const u32 var70054afc[] = {0x700404a0}; +const u32 var70054b00[] = {0x700404a0}; +const u32 var70054b04[] = {0x70040460}; +const u32 var70054b08[] = {0x700404a0}; +const u32 var70054b0c[] = {0x700403f4}; +const u32 var70054b10[] = {0x7004042c}; +const u32 var70054b14[] = {0x700404a0}; +const u32 var70054b18[] = {0x700404a0}; +const u32 var70054b1c[] = {0x7003fffc}; +const u32 var70054b20[] = {0x7003fffc}; +const u32 var70054b24[] = {0x7003fd88}; +const u32 var70054b28[] = {0x70040340}; +const u32 var70054b2c[] = {0x70040390}; +const u32 var70054b30[] = {0x7003fffc}; #endif const u32 var70054b34[] = {0x477fff00}; diff --git a/src/lib/main.c b/src/lib/main.c index eff61928f..6a4dceba5 100644 --- a/src/lib/main.c +++ b/src/lib/main.c @@ -73,6 +73,7 @@ s32 var8005d9d0 = 0; s32 g_DoBootPakMenu = 0; struct stageallocation g_StageAllocations8Mb[] = { +#if VERSION >= VERSION_NTSC_1_0 { STAGE_CITRAINING, "-ml0 -me0 -mgfx120 -mvtx98 -ma400" }, { STAGE_DEFECTION, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma700" }, { STAGE_INVESTIGATION, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma700" }, @@ -136,9 +137,76 @@ struct stageallocation g_StageAllocations8Mb[] = { { STAGE_TEST_LEN, "-ml0 -me0 -mgfx120 -mvtx98 -ma300" }, { STAGE_TITLE, "-ml0 -me0 -mgfx80 -mvtx20 -ma001" }, { 0, "-ml0 -me0 -mgfx120 -mvtx98 -ma300" }, +#else + // ntsc-beta + { STAGE_CITRAINING, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_DEFECTION, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma700" }, + { STAGE_INVESTIGATION, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma700" }, + { STAGE_EXTRACTION, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma700" }, + { STAGE_CHICAGO, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma500" }, + { STAGE_G5BUILDING, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma500" }, + { STAGE_VILLA, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma600" }, + { STAGE_INFILTRATION, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_RESCUE, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_ESCAPE, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_AIRBASE, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_AIRFORCEONE, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_CRASHSITE, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_PELAGIC, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_DEEPSEA, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_DEFENSE, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_ATTACKSHIP, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_SKEDARRUINS, "-ml0 -me0 -mgfx110 -mgfxtra80 -mvtx100 -ma400" }, + { STAGE_MP_SKEDAR, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_RAVINE, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_PIPES, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_G5BUILDING, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_SEWERS, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_WAREHOUSE, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_BASE, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_COMPLEX, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_TEMPLE, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_FELICITY, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_AREA52, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_GRID, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_CARPARK, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_RUINS, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_FORTRESS, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_MP_VILLA, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_RUN, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP2, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP6, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP7, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP8, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP14, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP16, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP17, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP18, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP19, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_MP20, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_ASH, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_28, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_MBR, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_TEST_SILO, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_24, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_MAIANSOS, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_RETAKING, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_TEST_DEST, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_2B, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_WAR, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_TEST_UFF, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_TEST_OLD, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_DUEL, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_TEST_LAM, "-ml0 -me0 -mgfx120 -mvtx100 -ma400" }, + { STAGE_TEST_ARCH, "-ml0 -me0 -mgfx200 -mvtx200 -ma400" }, + { STAGE_TEST_LEN, "-ml0 -me0 -mgfx120 -mvtx100 -ma300" }, + { STAGE_TITLE, "-ml0 -me0 -mgfx80 -mvtx20 -ma001" }, + { 0, "-ml0 -me0 -mgfx120 -mvtx100 -ma300" }, +#endif }; struct stageallocation g_StageAllocations4Mb[] = { +#if VERSION >= VERSION_NTSC_1_0 { STAGE_MP_SKEDAR, "-ml0 -me0 -mgfx96 -mvtx96 -ma140" }, { STAGE_MP_PIPES, "-ml0 -me0 -mgfx96 -mvtx96 -ma140" }, { STAGE_MP_AREA52, "-ml0 -me0 -mgfx96 -mvtx96 -ma140" }, @@ -170,6 +238,40 @@ struct stageallocation g_StageAllocations4Mb[] = { { STAGE_4MBMENU, "-mgfx100 -mvtx50 -ma50" }, { STAGE_TITLE, "-ml0 -me0 -mgfx80 -mvtx20 -ma001" }, { 0, "-ml0 -me0 -mgfx100 -mvtx96 -ma300" }, +#else + // ntsc-beta + { STAGE_MP_SKEDAR, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_PIPES, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_AREA52, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_RAVINE, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_G5BUILDING, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_SEWERS, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_WAREHOUSE, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_BASE, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_COMPLEX, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_TEMPLE, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_FELICITY, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_GRID, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_RUN, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_CARPARK, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_RUINS, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_FORTRESS, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_MP_VILLA, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP2, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP6, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP7, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP8, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP14, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP16, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP17, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP18, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP19, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_MP20, "-ml0 -me0 -mgfx100 -mvtx100 -ma105" }, + { STAGE_TEST_LEN, "-ml0 -me0 -mgfx100 -mvtx100 -ma120" }, + { STAGE_4MBMENU, "-mgfx100 -mvtx50 -ma50" }, + { STAGE_TITLE, "-ml0 -me0 -mgfx80 -mvtx20 -ma001" }, + { 0, "-ml0 -me0 -mgfx100 -mvtx100 -ma300" }, +#endif }; Gfx var8005dcc8[] = { @@ -1880,6 +1982,18 @@ void mainLoop(void) func0f175fc8(); } #else +const char mainrodata00[] = "-hard"; +const char mainrodata01[] = "-hard"; +const char mainrodata02[] = "-ma"; +const char mainrodata03[] = "-ma"; +const char mainrodata04[] = "-play"; +const char mainrodata05[] = "-play"; +const char mainrodata06[] = "-coop"; +const char mainrodata07[] = "-anti"; +const char mainrodata08[] = "-mpbots"; +const char mainrodata09[] = "-play"; +const char mainrodata10[] = "boss.c default: %08x type %d\n"; + GLOBAL_ASM( glabel mainLoop /* e07c: 27bdff18 */ addiu $sp,$sp,-232 diff --git a/src/lib/memory.c b/src/lib/memory.c index 01f26d109..2b0c0917b 100644 --- a/src/lib/memory.c +++ b/src/lib/memory.c @@ -10,6 +10,23 @@ u32 var800993b4; struct memorypool g_ExpansionMemoryPools[9]; u32 var8009946c; +#if VERSION < VERSION_NTSC_1_0 +const char memrodata00[] = "Out of mem - LEV: %d f %d s %d"; +const char memrodata01[] = "Out of mem - ETR: %d f %d s %d"; +const char memrodata02[] = "Mem Info"; +const char memrodata03[] = "memp: MP_LF_LEV"; +const char memrodata04[] = "F: %d %d"; +const char memrodata05[] = "S: %d %d"; +const char memrodata06[] = "Over: %d"; +const char memrodata07[] = "Free: %d"; +const char memrodata08[] = "memp: MP_LF_ETER"; +const char memrodata09[] = "F: %d %d"; +const char memrodata10[] = "S: %d %d"; +const char memrodata11[] = "mema:"; +const char memrodata12[] = "LF: %d"; +const char memrodata13[] = "Audio Free: %d"; +#endif + void func000121e0(void) { // empty