Decompile argSetString

This commit is contained in:
Ryan Dwyer 2021-01-30 19:00:49 +10:00
parent 9f6cb5f4e9
commit 753e1ab228
5 changed files with 18 additions and 58 deletions

View File

@ -11847,36 +11847,7 @@ u32 var80099870 = 0;
u32 var80099874 = 0;
u32 var80099878 = 0;
u32 var8009987c = 0;
u32 var80099880 = 0;
u32 var80099884 = 0;
u32 var80099888 = 0;
u32 var8009988c = 0;
u32 var80099890 = 0;
u32 var80099894 = 0;
u32 var80099898 = 0;
u32 var8009989c = 0;
u32 var800998a0 = 0;
u32 var800998a4 = 0;
u32 var800998a8 = 0;
u32 var800998ac = 0;
u32 var800998b0 = 0;
u32 var800998b4 = 0;
u32 var800998b8 = 0;
u32 var800998bc = 0;
u32 var800998c0 = 0;
u32 var800998c4 = 0;
u32 var800998c8 = 0;
u32 var800998cc = 0;
u32 var800998d0 = 0;
u32 var800998d4 = 0;
u32 var800998d8 = 0;
u32 var800998dc = 0;
u32 var800998e0 = 0;
u32 var800998e4 = 0;
u32 var800998e8 = 0;
u32 var800998ec = 0;
u32 var800998f0 = 0;
u32 var800998f4 = 0;
char g_ArgString[120] = {0};
u32 var800998f8 = 0;
u32 var800998fc = 0;
u32 var80099900 = 0;

View File

@ -417,7 +417,7 @@ extern u32 var80099474;
extern u32 var80099478;
extern u32 var80099484;
extern u32 var8009985c;
extern u32 var80099880;
extern char g_ArgString[120];
extern u32 var800998f8;
extern u32 var80099900;
extern u32 var80099a00;

View File

@ -6,7 +6,7 @@
void rngSetSeed(u32 amount);
u32 func00012e1c(u64 *value);
char *argParseString(char *str);
void func00012efc(char *string);
void argSetString(char *string);
s32 func00012f30(void);
char *argFindByPrefix(s32 occurrence, char *string);
void argGetLevel(s32 *stagenum);

View File

@ -123,22 +123,11 @@ char *argParseString(char *str)
return str;
}
GLOBAL_ASM(
glabel func00012efc
/* 12efc: 27bdffe8 */ addiu $sp,$sp,-24
/* 12f00: 00802825 */ or $a1,$a0,$zero
/* 12f04: afbf0014 */ sw $ra,0x14($sp)
/* 12f08: 3c04800a */ lui $a0,%hi(var80099880)
/* 12f0c: 0c004c4c */ jal strcpy
/* 12f10: 24849880 */ addiu $a0,$a0,%lo(var80099880)
/* 12f14: 3c04800a */ lui $a0,%hi(var80099880)
/* 12f18: 0c004b98 */ jal argParseString
/* 12f1c: 24849880 */ addiu $a0,$a0,%lo(var80099880)
/* 12f20: 8fbf0014 */ lw $ra,0x14($sp)
/* 12f24: 27bd0018 */ addiu $sp,$sp,0x18
/* 12f28: 03e00008 */ jr $ra
/* 12f2c: 00000000 */ nop
);
void argSetString(char *string)
{
strcpy(g_ArgString, string);
argParseString(g_ArgString);
}
const char var70053ff4[] = "-d";
const char var70053ff8[] = "-s";
@ -156,14 +145,14 @@ glabel func00012f30
/* 12f4c: 0c00be82 */ jal func0002fa08
/* 12f50: 3631ff00 */ ori $s1,$s1,0xff00
/* 12f54: 10400004 */ beqz $v0,.L00012f68
/* 12f58: 3c10800a */ lui $s0,%hi(var80099880)
/* 12f5c: 3c01800a */ lui $at,%hi(var80099880)
/* 12f58: 3c10800a */ lui $s0,%hi(g_ArgString)
/* 12f5c: 3c01800a */ lui $at,%hi(g_ArgString)
/* 12f60: 1000000a */ b .L00012f8c
/* 12f64: ac209880 */ sw $zero,%lo(var80099880)($at)
/* 12f64: ac209880 */ sw $zero,%lo(g_ArgString)($at)
.L00012f68:
/* 12f68: 3c12800a */ lui $s2,%hi(var800998f8)
/* 12f6c: 265298f8 */ addiu $s2,$s2,%lo(var800998f8)
/* 12f70: 26109880 */ addiu $s0,$s0,%lo(var80099880)
/* 12f70: 26109880 */ addiu $s0,$s0,%lo(g_ArgString)
.L00012f74:
/* 12f74: 02202025 */ or $a0,$s1,$zero
/* 12f78: 0c013994 */ jal osPiReadIo
@ -172,9 +161,9 @@ glabel func00012f30
/* 12f84: 1612fffb */ bne $s0,$s2,.L00012f74
/* 12f88: 26310004 */ addiu $s1,$s1,0x4
.L00012f8c:
/* 12f8c: 3c04800a */ lui $a0,%hi(var80099880)
/* 12f8c: 3c04800a */ lui $a0,%hi(g_ArgString)
/* 12f90: 0c004b98 */ jal argParseString
/* 12f94: 24849880 */ addiu $a0,$a0,%lo(var80099880)
/* 12f94: 24849880 */ addiu $a0,$a0,%lo(g_ArgString)
/* 12f98: 3c057005 */ lui $a1,%hi(var70053ff4)
/* 12f9c: 24a53ff4 */ addiu $a1,$a1,%lo(var70053ff4)
/* 12fa0: 0c004c04 */ jal argFindByPrefix

View File

@ -495,7 +495,7 @@ glabel mainInit
/* d970: 8d8cd9b0 */ lw $t4,%lo(var8005d9b0)($t4)
/* d974: 11800003 */ beqz $t4,.L0000d984
/* d978: 3c047005 */ lui $a0,%hi(var70053aa0)
/* d97c: 0c004bbf */ jal func00012efc
/* d97c: 0c004bbf */ jal argSetString
/* d980: 24843aa0 */ addiu $a0,$a0,%lo(var70053aa0)
.L0000d984:
/* d984: 3c04800b */ lui $a0,%hi(_gvarsSegmentEnd)
@ -753,7 +753,7 @@ const char var70053aa0[] = " -ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma400";
// func0f175f90();
//
// if (var8005d9b0) {
// func00012efc(" -ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma400");
// argSetString(" -ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma400");
// }
//
// uVar2 = osVirtualToPhysical(&_gvarsSegmentEnd) | 0x80000000;
@ -919,7 +919,7 @@ void mainLoop(void)
}
}
func00012efc(g_StageAllocations4Mb[index].string);
argSetString(g_StageAllocations4Mb[index].string);
} else {
// 8MB
if (g_StageNum < STAGE_TITLE && getNumPlayers() >= 2) {
@ -950,7 +950,7 @@ void mainLoop(void)
}
}
func00012efc(g_StageAllocations8Mb[index].string);
argSetString(g_StageAllocations8Mb[index].string);
}
}