mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-07-30 07:44:34 -04:00
Decompile objectiveGetText
This commit is contained in:
@@ -34,11 +34,11 @@ glabel func0f0109d0
|
||||
/* f010a0c: ac40fffc */ sw $zero,-0x4($v0)
|
||||
.L0f010a10:
|
||||
/* f010a10: 3c018007 */ lui $at,0x8007
|
||||
/* f010a14: 3c02800a */ lui $v0,%hi(var8009d060)
|
||||
/* f010a14: 3c02800a */ lui $v0,%hi(g_Objectives)
|
||||
/* f010a18: 3c03800a */ lui $v1,%hi(var8009d088)
|
||||
/* f010a1c: ac20ae74 */ sw $zero,-0x518c($at)
|
||||
/* f010a20: 2463d088 */ addiu $v1,$v1,%lo(var8009d088)
|
||||
/* f010a24: 2442d060 */ addiu $v0,$v0,%lo(var8009d060)
|
||||
/* f010a24: 2442d060 */ addiu $v0,$v0,%lo(g_Objectives)
|
||||
.L0f010a28:
|
||||
/* f010a28: 24420004 */ addiu $v0,$v0,0x4
|
||||
/* f010a2c: 1443fffe */ bne $v0,$v1,.L0f010a28
|
||||
|
||||
@@ -104,12 +104,12 @@ glabel func0f0150a0
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f0151f0
|
||||
/* f0151f0: 3c04800a */ lui $a0,%hi(var8009d060)
|
||||
/* f0151f0: 3c04800a */ lui $a0,%hi(g_Objectives)
|
||||
/* f0151f4: 3c08800a */ lui $t0,%hi(var8009d088)
|
||||
/* f0151f8: 3c06800a */ lui $a2,%hi(var8009d088)
|
||||
/* f0151fc: 24c6d088 */ addiu $a2,$a2,%lo(var8009d088)
|
||||
/* f015200: 2508d088 */ addiu $t0,$t0,%lo(var8009d088)
|
||||
/* f015204: 2484d060 */ addiu $a0,$a0,%lo(var8009d060)
|
||||
/* f015204: 2484d060 */ addiu $a0,$a0,%lo(g_Objectives)
|
||||
/* f015208: 00001825 */ or $v1,$zero,$zero
|
||||
/* f01520c: 24070001 */ addiu $a3,$zero,0x1
|
||||
/* f015210: 24050002 */ addiu $a1,$zero,0x2
|
||||
|
||||
+8
-25
@@ -54637,31 +54637,14 @@ s32 objectiveGetCount(void)
|
||||
return var8006ae70 + 1;
|
||||
}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f095604
|
||||
/* f095604: 27bdffe8 */ addiu $sp,$sp,-24
|
||||
/* f095608: 2881000a */ slti $at,$a0,0xa
|
||||
/* f09560c: 1020000b */ beqz $at,.L0f09563c
|
||||
/* f095610: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f095614: 00047080 */ sll $t6,$a0,0x2
|
||||
/* f095618: 3c02800a */ lui $v0,0x800a
|
||||
/* f09561c: 004e1021 */ addu $v0,$v0,$t6
|
||||
/* f095620: 8c42d060 */ lw $v0,-0x2fa0($v0)
|
||||
/* f095624: 50400006 */ beqzl $v0,.L0f095640
|
||||
/* f095628: 00001025 */ or $v0,$zero,$zero
|
||||
/* f09562c: 0fc5b9f1 */ jal textGet
|
||||
/* f095630: 8c440008 */ lw $a0,0x8($v0)
|
||||
/* f095634: 10000003 */ beqz $zero,.L0f095644
|
||||
/* f095638: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
.L0f09563c:
|
||||
/* f09563c: 00001025 */ or $v0,$zero,$zero
|
||||
.L0f095640:
|
||||
/* f095640: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
.L0f095644:
|
||||
/* f095644: 27bd0018 */ addiu $sp,$sp,0x18
|
||||
/* f095648: 03e00008 */ jr $ra
|
||||
/* f09564c: 00000000 */ sll $zero,$zero,0x0
|
||||
);
|
||||
char *objectiveGetText(s32 index)
|
||||
{
|
||||
if (index < 10 && g_Objectives[index]) {
|
||||
return textGet(g_Objectives[index]->text);
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel objectiveGetDifficultyBits
|
||||
|
||||
@@ -4265,8 +4265,8 @@ glabel menudialog001063e4
|
||||
/* f106490: 00008025 */ or $s0,$zero,$zero
|
||||
/* f106494: 18400014 */ blez $v0,.L0f1064e8
|
||||
/* f106498: 0010c880 */ sll $t9,$s0,0x2
|
||||
/* f10649c: 3c08800a */ lui $t0,%hi(var8009d060)
|
||||
/* f1064a0: 2508d060 */ addiu $t0,$t0,%lo(var8009d060)
|
||||
/* f10649c: 3c08800a */ lui $t0,%hi(g_Objectives)
|
||||
/* f1064a0: 2508d060 */ addiu $t0,$t0,%lo(g_Objectives)
|
||||
/* f1064a4: 03289021 */ addu $s2,$t9,$t0
|
||||
/* f1064a8: 8e420000 */ lw $v0,0x0($s2)
|
||||
.L0f1064ac:
|
||||
|
||||
+1
-10
@@ -16311,16 +16311,7 @@ u32 var8009d050 = 0;
|
||||
u32 var8009d054 = 0;
|
||||
u32 var8009d058 = 0;
|
||||
u32 var8009d05c = 0;
|
||||
u32 var8009d060 = 0;
|
||||
u32 var8009d064 = 0;
|
||||
u32 var8009d068 = 0;
|
||||
u32 var8009d06c = 0;
|
||||
u32 var8009d070 = 0;
|
||||
u32 var8009d074 = 0;
|
||||
u32 var8009d078 = 0;
|
||||
u32 var8009d07c = 0;
|
||||
u32 var8009d080 = 0;
|
||||
u32 var8009d084 = 0;
|
||||
struct objective *g_Objectives[10] = {0};
|
||||
u32 var8009d088 = 0;
|
||||
u32 var8009d08c = 0;
|
||||
u32 var8009d090 = 0;
|
||||
|
||||
@@ -580,7 +580,7 @@ extern u32 var8009cf10;
|
||||
extern u32 var8009cf88;
|
||||
extern struct stagesetup g_StageSetup;
|
||||
extern u32 var8009d050;
|
||||
extern u32 var8009d060;
|
||||
extern struct objective *g_Objectives[10];
|
||||
extern u32 var8009d088;
|
||||
extern u32 var8009d0b0;
|
||||
extern u32 var8009d0b4;
|
||||
|
||||
@@ -4669,4 +4669,10 @@ struct activemenuthing {
|
||||
/*0x34*/ u32 unk34;
|
||||
};
|
||||
|
||||
struct objective {
|
||||
u32 unk00;
|
||||
u32 unk04;
|
||||
u32 text;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user