From e325e1d6788f6e74ea3a479b33a98fdde3562cf7 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Fri, 11 Feb 2022 23:19:15 +1000 Subject: [PATCH] ntsc-beta: Decompile menuitemRankingRender --- src/game/menuitem.c | 621 ++------------------------------------------ 1 file changed, 17 insertions(+), 604 deletions(-) diff --git a/src/game/menuitem.c b/src/game/menuitem.c index f8a7c8f98..3a3f74681 100644 --- a/src/game/menuitem.c +++ b/src/game/menuitem.c @@ -8347,10 +8347,9 @@ Gfx *menuitem07Render(Gfx *gdl) return gdl; } -#if VERSION >= VERSION_NTSC_1_0 Gfx *menuitemRankingRender(Gfx *gdl, struct menurendercontext *context) { - struct ranking rankings[12]; + struct ranking rankings[MAX_MPCHRS]; s32 numrows; u32 textcolour; s32 x; @@ -8454,6 +8453,7 @@ Gfx *menuitemRankingRender(Gfx *gdl, struct menurendercontext *context) gDPPipeSync(gdl++); +#if VERSION >= VERSION_NTSC_1_0 g_ScissorX1 = context->x * g_ScaleX; g_ScissorX2 = (context->x + context->width) * g_ScaleX; g_ScissorY1 = context->y + 10; @@ -8500,6 +8500,13 @@ Gfx *menuitemRankingRender(Gfx *gdl, struct menurendercontext *context) } gDPSetScissor(gdl++, G_SC_NON_INTERLACE, g_ScissorX1, g_ScissorY1, g_ScissorX2, g_ScissorY2); +#else + gDPSetScissor(gdl++, G_SC_NON_INTERLACE, + context->x * g_ScaleX, + context->y + 10, + (context->x + context->width) * g_ScaleX, + context->y + context->height - 1); +#endif gdl = func0f153628(gdl); @@ -8508,6 +8515,10 @@ Gfx *menuitemRankingRender(Gfx *gdl, struct menurendercontext *context) u32 weight = 0; char valuebuffer[8]; +#if VERSION < VERSION_NTSC_1_0 + u32 stack; +#endif + if (numrows >= 2) { weight = i / (f32)(numrows - 1) * 255; } @@ -8547,608 +8558,6 @@ Gfx *menuitemRankingRender(Gfx *gdl, struct menurendercontext *context) return func0f153780(gdl); } -#else -const char var7f1ac174nb[] = "%d\n"; -const char var7f1ac178nb[] = "%d\n"; -const char var7f1ac17cnb[] = "%d\n"; -const char var7f1ac180nb[] = "%d\n"; -const char var7f1ac184nb[] = "%d\n"; - -GLOBAL_ASM( -glabel menuitemRankingRender -/* f0eab98: 27bdfe50 */ addiu $sp,$sp,-432 -/* f0eab9c: afbf005c */ sw $ra,0x5c($sp) -/* f0eaba0: afbe0058 */ sw $s8,0x58($sp) -/* f0eaba4: afb70054 */ sw $s7,0x54($sp) -/* f0eaba8: afb60050 */ sw $s6,0x50($sp) -/* f0eabac: afb5004c */ sw $s5,0x4c($sp) -/* f0eabb0: afb40048 */ sw $s4,0x48($sp) -/* f0eabb4: afb30044 */ sw $s3,0x44($sp) -/* f0eabb8: afb20040 */ sw $s2,0x40($sp) -/* f0eabbc: afb1003c */ sw $s1,0x3c($sp) -/* f0eabc0: afb00038 */ sw $s0,0x38($sp) -/* f0eabc4: afa401b0 */ sw $a0,0x1b0($sp) -/* f0eabc8: afa000a0 */ sw $zero,0xa0($sp) -/* f0eabcc: 8cae0014 */ lw $t6,0x14($a1) -/* f0eabd0: 24010001 */ addiu $at,$zero,0x1 -/* f0eabd4: 00a0b025 */ or $s6,$a1,$zero -/* f0eabd8: afae0098 */ sw $t6,0x98($sp) -/* f0eabdc: 8caf0008 */ lw $t7,0x8($a1) -/* f0eabe0: 8df80008 */ lw $t8,0x8($t7) -/* f0eabe4: 17010006 */ bne $t8,$at,.NB0f0eac00 -/* f0eabe8: 24190001 */ addiu $t9,$zero,0x1 -/* f0eabec: afb900a0 */ sw $t9,0xa0($sp) -/* f0eabf0: 0fc60b9d */ jal mpGetTeamRankings -/* f0eabf4: 27a400c0 */ addiu $a0,$sp,0xc0 -/* f0eabf8: 10000004 */ beqz $zero,.NB0f0eac0c -/* f0eabfc: afa200bc */ sw $v0,0xbc($sp) -.NB0f0eac00: -/* f0eac00: 0fc60a7a */ jal mpGetPlayerRankings -/* f0eac04: 27a400c0 */ addiu $a0,$sp,0xc0 -/* f0eac08: afa200bc */ sw $v0,0xbc($sp) -.NB0f0eac0c: -/* f0eac0c: 0fc5374a */ jal func0f153628 -/* f0eac10: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eac14: 8fa800bc */ lw $t0,0xbc($sp) -/* f0eac18: afa201b0 */ sw $v0,0x1b0($sp) -/* f0eac1c: 86ca0006 */ lh $t2,0x6($s6) -/* f0eac20: 00084880 */ sll $t1,$t0,0x2 -/* f0eac24: 01284821 */ addu $t1,$t1,$t0 -/* f0eac28: 00094840 */ sll $t1,$t1,0x1 -/* f0eac2c: 012a1823 */ subu $v1,$t1,$t2 -/* f0eac30: 24630012 */ addiu $v1,$v1,0x12 -/* f0eac34: 04610002 */ bgez $v1,.NB0f0eac40 -/* f0eac38: 8fab0098 */ lw $t3,0x98($sp) -/* f0eac3c: 00001825 */ or $v1,$zero,$zero -.NB0f0eac40: -/* f0eac40: 856c0000 */ lh $t4,0x0($t3) -/* f0eac44: 006c082a */ slt $at,$v1,$t4 -/* f0eac48: 50200003 */ beqzl $at,.NB0f0eac58 -/* f0eac4c: 8ed10010 */ lw $s1,0x10($s6) -/* f0eac50: a5630000 */ sh $v1,0x0($t3) -/* f0eac54: 8ed10010 */ lw $s1,0x10($s6) -.NB0f0eac58: -/* f0eac58: 44803000 */ mtc1 $zero,$f6 -/* f0eac5c: c6240040 */ lwc1 $f4,0x40($s1) -/* f0eac60: 4606203c */ c.lt.s $f4,$f6 -/* f0eac64: 00000000 */ sll $zero,$zero,0x0 -/* f0eac68: 4502000b */ bc1fl .NB0f0eac98 -/* f0eac6c: 9238003d */ lbu $t8,0x3d($s1) -/* f0eac70: 922d003c */ lbu $t5,0x3c($s1) -/* f0eac74: 2414003c */ addiu $s4,$zero,0x3c -/* f0eac78: 3c137f1b */ lui $s3,0x7f1b -/* f0eac7c: 01b40019 */ multu $t5,$s4 -/* f0eac80: 2673c2e0 */ addiu $s3,$s3,-15648 -/* f0eac84: 00007012 */ mflo $t6 -/* f0eac88: 026e7821 */ addu $t7,$s3,$t6 -/* f0eac8c: 10000012 */ beqz $zero,.NB0f0eacd8 -/* f0eac90: 8df00018 */ lw $s0,0x18($t7) -/* f0eac94: 9238003d */ lbu $t8,0x3d($s1) -.NB0f0eac98: -/* f0eac98: 2414003c */ addiu $s4,$zero,0x3c -/* f0eac9c: 9229003c */ lbu $t1,0x3c($s1) -/* f0eaca0: 03140019 */ multu $t8,$s4 -/* f0eaca4: 3c137f1b */ lui $s3,0x7f1b -/* f0eaca8: 2673c2e0 */ addiu $s3,$s3,-15648 -/* f0eacac: 8e260044 */ lw $a2,0x44($s1) -/* f0eacb0: 0000c812 */ mflo $t9 -/* f0eacb4: 02794021 */ addu $t0,$s3,$t9 -/* f0eacb8: 8d040018 */ lw $a0,0x18($t0) -/* f0eacbc: 01340019 */ multu $t1,$s4 -/* f0eacc0: 00005012 */ mflo $t2 -/* f0eacc4: 026a6021 */ addu $t4,$s3,$t2 -/* f0eacc8: 0fc01990 */ jal colourBlend -/* f0eaccc: 8d850018 */ lw $a1,0x18($t4) -/* f0eacd0: 00408025 */ or $s0,$v0,$zero -/* f0eacd4: 8ed10010 */ lw $s1,0x10($s6) -.NB0f0eacd8: -/* f0eacd8: 8e2b000c */ lw $t3,0xc($s1) -/* f0eacdc: 11600008 */ beqz $t3,.NB0f0ead00 -/* f0eace0: 02002025 */ or $a0,$s0,$zero -/* f0eace4: 00002825 */ or $a1,$zero,$zero -/* f0eace8: 0fc01990 */ jal colourBlend -/* f0eacec: 2406007f */ addiu $a2,$zero,0x7f -/* f0eacf0: 2415ff00 */ addiu $s5,$zero,-256 -/* f0eacf4: 00556824 */ and $t5,$v0,$s5 -/* f0eacf8: 320e00ff */ andi $t6,$s0,0xff -/* f0eacfc: 01ae8025 */ or $s0,$t5,$t6 -.NB0f0ead00: -/* f0ead00: 8faf00a0 */ lw $t7,0xa0($sp) -/* f0ead04: 2415ff00 */ addiu $s5,$zero,-256 -/* f0ead08: 15e0002a */ bnez $t7,.NB0f0eadb4 -/* f0ead0c: 00000000 */ sll $zero,$zero,0x0 -/* f0ead10: 0fc5a4dd */ jal langGet -/* f0ead14: 24045115 */ addiu $a0,$zero,0x5115 -/* f0ead18: 3c128008 */ lui $s2,0x8008 -/* f0ead1c: 26522364 */ addiu $s2,$s2,0x2364 -/* f0ead20: 8e580000 */ lw $t8,0x0($s2) -/* f0ead24: 3c118008 */ lui $s1,0x8008 -/* f0ead28: 26312368 */ addiu $s1,$s1,0x2368 -/* f0ead2c: 8e270000 */ lw $a3,0x0($s1) -/* f0ead30: 27a400a4 */ addiu $a0,$sp,0xa4 -/* f0ead34: 27a500a8 */ addiu $a1,$sp,0xa8 -/* f0ead38: 00403025 */ or $a2,$v0,$zero -/* f0ead3c: afa00014 */ sw $zero,0x14($sp) -/* f0ead40: 0fc54655 */ jal textMeasure -/* f0ead44: afb80010 */ sw $t8,0x10($sp) -/* f0ead48: 86d90000 */ lh $t9,0x0($s6) -/* f0ead4c: 8fa800a8 */ lw $t0,0xa8($sp) -/* f0ead50: 24045115 */ addiu $a0,$zero,0x5115 -/* f0ead54: 03284823 */ subu $t1,$t9,$t0 -/* f0ead58: 252a005b */ addiu $t2,$t1,0x5b -/* f0ead5c: afaa00b4 */ sw $t2,0xb4($sp) -/* f0ead60: 86cc0002 */ lh $t4,0x2($s6) -/* f0ead64: 258b0001 */ addiu $t3,$t4,0x1 -/* f0ead68: 0fc5a4dd */ jal langGet -/* f0ead6c: afab00b0 */ sw $t3,0xb0($sp) -/* f0ead70: 8e2d0000 */ lw $t5,0x0($s1) -/* f0ead74: 8e4e0000 */ lw $t6,0x0($s2) -/* f0ead78: afb00018 */ sw $s0,0x18($sp) -/* f0ead7c: afad0010 */ sw $t5,0x10($sp) -/* f0ead80: afae0014 */ sw $t6,0x14($sp) -/* f0ead84: 86cf0004 */ lh $t7,0x4($s6) -/* f0ead88: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0ead8c: 27a500b4 */ addiu $a1,$sp,0xb4 -/* f0ead90: afaf001c */ sw $t7,0x1c($sp) -/* f0ead94: 86d80006 */ lh $t8,0x6($s6) -/* f0ead98: afa00028 */ sw $zero,0x28($sp) -/* f0ead9c: afa00024 */ sw $zero,0x24($sp) -/* f0eada0: 27a600b0 */ addiu $a2,$sp,0xb0 -/* f0eada4: 00403825 */ or $a3,$v0,$zero -/* f0eada8: 0fc541a6 */ jal textRenderProjected -/* f0eadac: afb80020 */ sw $t8,0x20($sp) -/* f0eadb0: afa201b0 */ sw $v0,0x1b0($sp) -.NB0f0eadb4: -/* f0eadb4: 3c118008 */ lui $s1,0x8008 -/* f0eadb8: 3c128008 */ lui $s2,0x8008 -/* f0eadbc: 26522364 */ addiu $s2,$s2,0x2364 -/* f0eadc0: 26312368 */ addiu $s1,$s1,0x2368 -/* f0eadc4: 0fc5a4dd */ jal langGet -/* f0eadc8: 24045116 */ addiu $a0,$zero,0x5116 -/* f0eadcc: 8e590000 */ lw $t9,0x0($s2) -/* f0eadd0: 27a400a4 */ addiu $a0,$sp,0xa4 -/* f0eadd4: 27a500a8 */ addiu $a1,$sp,0xa8 -/* f0eadd8: 00403025 */ or $a2,$v0,$zero -/* f0eaddc: 8e270000 */ lw $a3,0x0($s1) -/* f0eade0: afa00014 */ sw $zero,0x14($sp) -/* f0eade4: 0fc54655 */ jal textMeasure -/* f0eade8: afb90010 */ sw $t9,0x10($sp) -/* f0eadec: 86c80000 */ lh $t0,0x0($s6) -/* f0eadf0: 8fa900a8 */ lw $t1,0xa8($sp) -/* f0eadf4: 24045116 */ addiu $a0,$zero,0x5116 -/* f0eadf8: 01095023 */ subu $t2,$t0,$t1 -/* f0eadfc: 254c0078 */ addiu $t4,$t2,0x78 -/* f0eae00: afac00b4 */ sw $t4,0xb4($sp) -/* f0eae04: 86cb0002 */ lh $t3,0x2($s6) -/* f0eae08: 256d0001 */ addiu $t5,$t3,0x1 -/* f0eae0c: 0fc5a4dd */ jal langGet -/* f0eae10: afad00b0 */ sw $t5,0xb0($sp) -/* f0eae14: 8e2e0000 */ lw $t6,0x0($s1) -/* f0eae18: 8e4f0000 */ lw $t7,0x0($s2) -/* f0eae1c: afb00018 */ sw $s0,0x18($sp) -/* f0eae20: afae0010 */ sw $t6,0x10($sp) -/* f0eae24: afaf0014 */ sw $t7,0x14($sp) -/* f0eae28: 86d80004 */ lh $t8,0x4($s6) -/* f0eae2c: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eae30: 27a500b4 */ addiu $a1,$sp,0xb4 -/* f0eae34: afb8001c */ sw $t8,0x1c($sp) -/* f0eae38: 86d90006 */ lh $t9,0x6($s6) -/* f0eae3c: afa00028 */ sw $zero,0x28($sp) -/* f0eae40: afa00024 */ sw $zero,0x24($sp) -/* f0eae44: 27a600b0 */ addiu $a2,$sp,0xb0 -/* f0eae48: 00403825 */ or $a3,$v0,$zero -/* f0eae4c: 0fc541a6 */ jal textRenderProjected -/* f0eae50: afb90020 */ sw $t9,0x20($sp) -/* f0eae54: 0fc537a0 */ jal func0f153780 -/* f0eae58: 00402025 */ or $a0,$v0,$zero -/* f0eae5c: afa201b0 */ sw $v0,0x1b0($sp) -/* f0eae60: 8ed00010 */ lw $s0,0x10($s6) -/* f0eae64: 44805000 */ mtc1 $zero,$f10 -/* f0eae68: c6080040 */ lwc1 $f8,0x40($s0) -/* f0eae6c: 460a403c */ c.lt.s $f8,$f10 -/* f0eae70: 00000000 */ sll $zero,$zero,0x0 -/* f0eae74: 45020008 */ bc1fl .NB0f0eae98 -/* f0eae78: 920c003d */ lbu $t4,0x3d($s0) -/* f0eae7c: 9208003c */ lbu $t0,0x3c($s0) -/* f0eae80: 01140019 */ multu $t0,$s4 -/* f0eae84: 00004812 */ mflo $t1 -/* f0eae88: 02695021 */ addu $t2,$s3,$t1 -/* f0eae8c: 1000000e */ beqz $zero,.NB0f0eaec8 -/* f0eae90: 8d520000 */ lw $s2,0x0($t2) -/* f0eae94: 920c003d */ lbu $t4,0x3d($s0) -.NB0f0eae98: -/* f0eae98: 920e003c */ lbu $t6,0x3c($s0) -/* f0eae9c: 8e060044 */ lw $a2,0x44($s0) -/* f0eaea0: 01940019 */ multu $t4,$s4 -/* f0eaea4: 00005812 */ mflo $t3 -/* f0eaea8: 026b6821 */ addu $t5,$s3,$t3 -/* f0eaeac: 8da40000 */ lw $a0,0x0($t5) -/* f0eaeb0: 01d40019 */ multu $t6,$s4 -/* f0eaeb4: 00007812 */ mflo $t7 -/* f0eaeb8: 026fc021 */ addu $t8,$s3,$t7 -/* f0eaebc: 0fc01990 */ jal colourBlend -/* f0eaec0: 8f050000 */ lw $a1,0x0($t8) -/* f0eaec4: 00409025 */ or $s2,$v0,$zero -.NB0f0eaec8: -/* f0eaec8: 8e19000c */ lw $t9,0xc($s0) -/* f0eaecc: 02402025 */ or $a0,$s2,$zero -/* f0eaed0: 00002825 */ or $a1,$zero,$zero -/* f0eaed4: 53200007 */ beqzl $t9,.NB0f0eaef4 -/* f0eaed8: c6100040 */ lwc1 $f16,0x40($s0) -/* f0eaedc: 0fc01990 */ jal colourBlend -/* f0eaee0: 2406002c */ addiu $a2,$zero,0x2c -/* f0eaee4: 00554024 */ and $t0,$v0,$s5 -/* f0eaee8: 324900ff */ andi $t1,$s2,0xff -/* f0eaeec: 01099025 */ or $s2,$t0,$t1 -/* f0eaef0: c6100040 */ lwc1 $f16,0x40($s0) -.NB0f0eaef4: -/* f0eaef4: 44809000 */ mtc1 $zero,$f18 -/* f0eaef8: 920a003c */ lbu $t2,0x3c($s0) -/* f0eaefc: 4612803c */ c.lt.s $f16,$f18 -/* f0eaf00: 000a6100 */ sll $t4,$t2,0x4 -/* f0eaf04: 018a6023 */ subu $t4,$t4,$t2 -/* f0eaf08: 000c6080 */ sll $t4,$t4,0x2 -/* f0eaf0c: 45000004 */ bc1f .NB0f0eaf20 -/* f0eaf10: 026c1021 */ addu $v0,$s3,$t4 -/* f0eaf14: 8c510008 */ lw $s1,0x8($v0) -/* f0eaf18: 1000000b */ beqz $zero,.NB0f0eaf48 -/* f0eaf1c: 8e03000c */ lw $v1,0xc($s0) -.NB0f0eaf20: -/* f0eaf20: 920b003d */ lbu $t3,0x3d($s0) -/* f0eaf24: 8c450008 */ lw $a1,0x8($v0) -/* f0eaf28: 8e060044 */ lw $a2,0x44($s0) -/* f0eaf2c: 01740019 */ multu $t3,$s4 -/* f0eaf30: 00006812 */ mflo $t5 -/* f0eaf34: 026d7021 */ addu $t6,$s3,$t5 -/* f0eaf38: 0fc01990 */ jal colourBlend -/* f0eaf3c: 8dc40008 */ lw $a0,0x8($t6) -/* f0eaf40: 00408825 */ or $s1,$v0,$zero -/* f0eaf44: 8e03000c */ lw $v1,0xc($s0) -.NB0f0eaf48: -/* f0eaf48: 10600004 */ beqz $v1,.NB0f0eaf5c -/* f0eaf4c: 02202025 */ or $a0,$s1,$zero -/* f0eaf50: 00002825 */ or $a1,$zero,$zero -/* f0eaf54: 0fc01990 */ jal colourBlend -/* f0eaf58: 2406002c */ addiu $a2,$zero,0x2c -.NB0f0eaf5c: -/* f0eaf5c: 86c50002 */ lh $a1,0x2($s6) -/* f0eaf60: 86c40000 */ lh $a0,0x0($s6) -/* f0eaf64: 2406ff7f */ addiu $a2,$zero,-129 -/* f0eaf68: 0fc5393c */ jal func0f153e94 -/* f0eaf6c: 24a50002 */ addiu $a1,$a1,0x2 -/* f0eaf70: 86c90000 */ lh $t1,0x0($s6) -/* f0eaf74: 86ca0004 */ lh $t2,0x4($s6) -/* f0eaf78: 86c50002 */ lh $a1,0x2($s6) -/* f0eaf7c: 305900ff */ andi $t9,$v0,0xff -/* f0eaf80: 02554024 */ and $t0,$s2,$s5 -/* f0eaf84: 03289025 */ or $s2,$t9,$t0 -/* f0eaf88: 2406ff7f */ addiu $a2,$zero,-129 -/* f0eaf8c: 012a2021 */ addu $a0,$t1,$t2 -/* f0eaf90: 0fc5393c */ jal func0f153e94 -/* f0eaf94: 24a50002 */ addiu $a1,$a1,0x2 -/* f0eaf98: 86c30002 */ lh $v1,0x2($s6) -/* f0eaf9c: 86c50000 */ lh $a1,0x0($s6) -/* f0eafa0: 86cc0004 */ lh $t4,0x4($s6) -/* f0eafa4: 246b000a */ addiu $t3,$v1,0xa -/* f0eafa8: afab0010 */ sw $t3,0x10($sp) -/* f0eafac: afb20018 */ sw $s2,0x18($sp) -/* f0eafb0: afb20014 */ sw $s2,0x14($sp) -/* f0eafb4: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eafb8: 24660009 */ addiu $a2,$v1,0x9 -/* f0eafbc: 0fc380fc */ jal menugfxDrawFilledRect -/* f0eafc0: 00ac3821 */ addu $a3,$a1,$t4 -/* f0eafc4: 3c0de700 */ lui $t5,0xe700 -/* f0eafc8: 3c038008 */ lui $v1,0x8008 -/* f0eafcc: ac4d0000 */ sw $t5,0x0($v0) -/* f0eafd0: ac400004 */ sw $zero,0x4($v0) -/* f0eafd4: 24632320 */ addiu $v1,$v1,0x2320 -/* f0eafd8: 8c6f0000 */ lw $t7,0x0($v1) -/* f0eafdc: 86ce0000 */ lh $t6,0x0($s6) -/* f0eafe0: 86cb0002 */ lh $t3,0x2($s6) -/* f0eafe4: 3c014080 */ lui $at,0x4080 -/* f0eafe8: 01cf0019 */ multu $t6,$t7 -/* f0eafec: 256d000a */ addiu $t5,$t3,0xa -/* f0eaff0: 448d8000 */ mtc1 $t5,$f16 -/* f0eaff4: 44810000 */ mtc1 $at,$f0 -/* f0eaff8: 3c01ed00 */ lui $at,0xed00 -/* f0eaffc: 468084a0 */ cvt.s.w $f18,$f16 -/* f0eb000: 24440010 */ addiu $a0,$v0,0x10 -/* f0eb004: 0000c012 */ mflo $t8 -/* f0eb008: 44982000 */ mtc1 $t8,$f4 -/* f0eb00c: 00000000 */ sll $zero,$zero,0x0 -/* f0eb010: 468021a0 */ cvt.s.w $f6,$f4 -/* f0eb014: 46003202 */ mul.s $f8,$f6,$f0 -/* f0eb018: 00000000 */ sll $zero,$zero,0x0 -/* f0eb01c: 46009102 */ mul.s $f4,$f18,$f0 -/* f0eb020: 4600428d */ trunc.w.s $f10,$f8 -/* f0eb024: 4600218d */ trunc.w.s $f6,$f4 -/* f0eb028: 44085000 */ mfc1 $t0,$f10 -/* f0eb02c: 440f3000 */ mfc1 $t7,$f6 -/* f0eb030: 31090fff */ andi $t1,$t0,0xfff -/* f0eb034: 00095300 */ sll $t2,$t1,0xc -/* f0eb038: 01416025 */ or $t4,$t2,$at -/* f0eb03c: 31f80fff */ andi $t8,$t7,0xfff -/* f0eb040: 0198c825 */ or $t9,$t4,$t8 -/* f0eb044: ac590008 */ sw $t9,0x8($v0) -/* f0eb048: 86c90004 */ lh $t1,0x4($s6) -/* f0eb04c: 86c80000 */ lh $t0,0x0($s6) -/* f0eb050: 8c6b0000 */ lw $t3,0x0($v1) -/* f0eb054: 86d90002 */ lh $t9,0x2($s6) -/* f0eb058: 01095021 */ addu $t2,$t0,$t1 -/* f0eb05c: 014b0019 */ multu $t2,$t3 -/* f0eb060: 86c80006 */ lh $t0,0x6($s6) -/* f0eb064: 03284821 */ addu $t1,$t9,$t0 -/* f0eb068: 252affff */ addiu $t2,$t1,-1 -/* f0eb06c: 448a2000 */ mtc1 $t2,$f4 -/* f0eb070: 00000000 */ sll $zero,$zero,0x0 -/* f0eb074: 468021a0 */ cvt.s.w $f6,$f4 -/* f0eb078: 00006812 */ mflo $t5 -/* f0eb07c: 448d4000 */ mtc1 $t5,$f8 -/* f0eb080: 00000000 */ sll $zero,$zero,0x0 -/* f0eb084: 468042a0 */ cvt.s.w $f10,$f8 -/* f0eb088: 46005402 */ mul.s $f16,$f10,$f0 -/* f0eb08c: 00000000 */ sll $zero,$zero,0x0 -/* f0eb090: 46003202 */ mul.s $f8,$f6,$f0 -/* f0eb094: 4600848d */ trunc.w.s $f18,$f16 -/* f0eb098: 4600428d */ trunc.w.s $f10,$f8 -/* f0eb09c: 440f9000 */ mfc1 $t7,$f18 -/* f0eb0a0: 440d5000 */ mfc1 $t5,$f10 -/* f0eb0a4: 31ec0fff */ andi $t4,$t7,0xfff -/* f0eb0a8: 000cc300 */ sll $t8,$t4,0xc -/* f0eb0ac: 31ae0fff */ andi $t6,$t5,0xfff -/* f0eb0b0: 030e7825 */ or $t7,$t8,$t6 -/* f0eb0b4: 0fc5374a */ jal func0f153628 -/* f0eb0b8: ac4f000c */ sw $t7,0xc($v0) -/* f0eb0bc: 8fa300bc */ lw $v1,0xbc($sp) -/* f0eb0c0: afa201b0 */ sw $v0,0x1b0($sp) -/* f0eb0c4: 0000f025 */ or $s8,$zero,$zero -/* f0eb0c8: 186000dd */ blez $v1,.NB0f0eb440 -/* f0eb0cc: 27b100c0 */ addiu $s1,$sp,0xc0 -/* f0eb0d0: 3c148008 */ lui $s4,0x8008 -/* f0eb0d4: 3c138008 */ lui $s3,0x8008 -/* f0eb0d8: 26732370 */ addiu $s3,$s3,0x2370 -/* f0eb0dc: 2694236c */ addiu $s4,$s4,0x236c -/* f0eb0e0: 0000b825 */ or $s7,$zero,$zero -/* f0eb0e4: 27b50074 */ addiu $s5,$sp,0x74 -.NB0f0eb0e8: -/* f0eb0e8: 8fa300bc */ lw $v1,0xbc($sp) -/* f0eb0ec: 3c040088 */ lui $a0,0x88 -/* f0eb0f0: 00009025 */ or $s2,$zero,$zero -/* f0eb0f4: 28610002 */ slti $at,$v1,0x2 -/* f0eb0f8: 1420002d */ bnez $at,.NB0f0eb1b0 -/* f0eb0fc: 348488ff */ ori $a0,$a0,0x88ff -/* f0eb100: 246cffff */ addiu $t4,$v1,-1 -/* f0eb104: 448c2000 */ mtc1 $t4,$f4 -/* f0eb108: 449e8000 */ mtc1 $s8,$f16 -/* f0eb10c: 3c01437f */ lui $at,0x437f -/* f0eb110: 468021a0 */ cvt.s.w $f6,$f4 -/* f0eb114: 44815000 */ mtc1 $at,$f10 -/* f0eb118: 24120001 */ addiu $s2,$zero,0x1 -/* f0eb11c: 3c014f00 */ lui $at,0x4f00 -/* f0eb120: 468084a0 */ cvt.s.w $f18,$f16 -/* f0eb124: 46069203 */ div.s $f8,$f18,$f6 -/* f0eb128: 460a4402 */ mul.s $f16,$f8,$f10 -/* f0eb12c: 4459f800 */ cfc1 $t9,$31 -/* f0eb130: 44d2f800 */ ctc1 $s2,$31 -/* f0eb134: 00000000 */ sll $zero,$zero,0x0 -/* f0eb138: 46008124 */ cvt.w.s $f4,$f16 -/* f0eb13c: 4452f800 */ cfc1 $s2,$31 -/* f0eb140: 00000000 */ sll $zero,$zero,0x0 -/* f0eb144: 32520078 */ andi $s2,$s2,0x78 -/* f0eb148: 52400013 */ beqzl $s2,.NB0f0eb198 -/* f0eb14c: 44122000 */ mfc1 $s2,$f4 -/* f0eb150: 44812000 */ mtc1 $at,$f4 -/* f0eb154: 24120001 */ addiu $s2,$zero,0x1 -/* f0eb158: 46048101 */ sub.s $f4,$f16,$f4 -/* f0eb15c: 44d2f800 */ ctc1 $s2,$31 -/* f0eb160: 00000000 */ sll $zero,$zero,0x0 -/* f0eb164: 46002124 */ cvt.w.s $f4,$f4 -/* f0eb168: 4452f800 */ cfc1 $s2,$31 -/* f0eb16c: 00000000 */ sll $zero,$zero,0x0 -/* f0eb170: 32520078 */ andi $s2,$s2,0x78 -/* f0eb174: 16400005 */ bnez $s2,.NB0f0eb18c -/* f0eb178: 00000000 */ sll $zero,$zero,0x0 -/* f0eb17c: 44122000 */ mfc1 $s2,$f4 -/* f0eb180: 3c018000 */ lui $at,0x8000 -/* f0eb184: 10000007 */ beqz $zero,.NB0f0eb1a4 -/* f0eb188: 02419025 */ or $s2,$s2,$at -.NB0f0eb18c: -/* f0eb18c: 10000005 */ beqz $zero,.NB0f0eb1a4 -/* f0eb190: 2412ffff */ addiu $s2,$zero,-1 -/* f0eb194: 44122000 */ mfc1 $s2,$f4 -.NB0f0eb198: -/* f0eb198: 00000000 */ sll $zero,$zero,0x0 -/* f0eb19c: 0640fffb */ bltz $s2,.NB0f0eb18c -/* f0eb1a0: 00000000 */ sll $zero,$zero,0x0 -.NB0f0eb1a4: -/* f0eb1a4: 44d9f800 */ ctc1 $t9,$31 -/* f0eb1a8: 00000000 */ sll $zero,$zero,0x0 -/* f0eb1ac: 00000000 */ sll $zero,$zero,0x0 -.NB0f0eb1b0: -/* f0eb1b0: 3c0500ff */ lui $a1,0xff -/* f0eb1b4: 34a5ffff */ ori $a1,$a1,0xffff -/* f0eb1b8: 0fc01990 */ jal colourBlend -/* f0eb1bc: 02403025 */ or $a2,$s2,$zero -/* f0eb1c0: 86c80000 */ lh $t0,0x0($s6) -/* f0eb1c4: 8fad0098 */ lw $t5,0x98($sp) -/* f0eb1c8: 8fac00a0 */ lw $t4,0xa0($sp) -/* f0eb1cc: 25090005 */ addiu $t1,$t0,0x5 -/* f0eb1d0: afa900b4 */ sw $t1,0xb4($sp) -/* f0eb1d4: 86ca0002 */ lh $t2,0x2($s6) -/* f0eb1d8: 85b80000 */ lh $t8,0x0($t5) -/* f0eb1dc: 00408025 */ or $s0,$v0,$zero -/* f0eb1e0: 01575821 */ addu $t3,$t2,$s7 -/* f0eb1e4: 01787023 */ subu $t6,$t3,$t8 -/* f0eb1e8: 25cf000e */ addiu $t7,$t6,0xe -/* f0eb1ec: 11800019 */ beqz $t4,.NB0f0eb254 -/* f0eb1f0: afaf00b0 */ sw $t7,0xb0($sp) -/* f0eb1f4: 8e390004 */ lw $t9,0x4($s1) -/* f0eb1f8: 8e6a0000 */ lw $t2,0x0($s3) -/* f0eb1fc: 8e8d0000 */ lw $t5,0x0($s4) -/* f0eb200: afa20018 */ sw $v0,0x18($sp) -/* f0eb204: afaa0010 */ sw $t2,0x10($sp) -/* f0eb208: afad0014 */ sw $t5,0x14($sp) -/* f0eb20c: 86cb0004 */ lh $t3,0x4($s6) -/* f0eb210: 00194080 */ sll $t0,$t9,0x2 -/* f0eb214: 3c09800b */ lui $t1,0x800b -/* f0eb218: afab001c */ sw $t3,0x1c($sp) -/* f0eb21c: 86d80006 */ lh $t8,0x6($s6) -/* f0eb220: 01194023 */ subu $t0,$t0,$t9 -/* f0eb224: 00084080 */ sll $t0,$t0,0x2 -/* f0eb228: 25291460 */ addiu $t1,$t1,0x1460 -/* f0eb22c: 01093821 */ addu $a3,$t0,$t1 -/* f0eb230: afa00028 */ sw $zero,0x28($sp) -/* f0eb234: afa00024 */ sw $zero,0x24($sp) -/* f0eb238: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eb23c: 27a500b4 */ addiu $a1,$sp,0xb4 -/* f0eb240: 27a600b0 */ addiu $a2,$sp,0xb0 -/* f0eb244: 0fc541a6 */ jal textRenderProjected -/* f0eb248: afb80020 */ sw $t8,0x20($sp) -/* f0eb24c: 10000012 */ beqz $zero,.NB0f0eb298 -/* f0eb250: afa201b0 */ sw $v0,0x1b0($sp) -.NB0f0eb254: -/* f0eb254: 8e6e0000 */ lw $t6,0x0($s3) -/* f0eb258: 8e8f0000 */ lw $t7,0x0($s4) -/* f0eb25c: 8e270000 */ lw $a3,0x0($s1) -/* f0eb260: afb00018 */ sw $s0,0x18($sp) -/* f0eb264: afae0010 */ sw $t6,0x10($sp) -/* f0eb268: afaf0014 */ sw $t7,0x14($sp) -/* f0eb26c: 86cc0004 */ lh $t4,0x4($s6) -/* f0eb270: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eb274: 27a500b4 */ addiu $a1,$sp,0xb4 -/* f0eb278: afac001c */ sw $t4,0x1c($sp) -/* f0eb27c: 86d90006 */ lh $t9,0x6($s6) -/* f0eb280: afa00028 */ sw $zero,0x28($sp) -/* f0eb284: afa00024 */ sw $zero,0x24($sp) -/* f0eb288: 27a600b0 */ addiu $a2,$sp,0xb0 -/* f0eb28c: 0fc541a6 */ jal textRenderProjected -/* f0eb290: afb90020 */ sw $t9,0x20($sp) -/* f0eb294: afa201b0 */ sw $v0,0x1b0($sp) -.NB0f0eb298: -/* f0eb298: 8fa800a0 */ lw $t0,0xa0($sp) -/* f0eb29c: 3c04cf00 */ lui $a0,0xcf00 -/* f0eb2a0: 348400ff */ ori $a0,$a0,0xff -/* f0eb2a4: 15000030 */ bnez $t0,.NB0f0eb368 -/* f0eb2a8: 3c05ff40 */ lui $a1,0xff40 -/* f0eb2ac: 34a540ff */ ori $a1,$a1,0x40ff -/* f0eb2b0: 0fc01990 */ jal colourBlend -/* f0eb2b4: 02403025 */ or $a2,$s2,$zero -/* f0eb2b8: 8e290000 */ lw $t1,0x0($s1) -/* f0eb2bc: 3c057f1b */ lui $a1,0x7f1b -/* f0eb2c0: 00408025 */ or $s0,$v0,$zero -/* f0eb2c4: 24a5c174 */ addiu $a1,$a1,-16012 -/* f0eb2c8: 02a02025 */ or $a0,$s5,$zero -/* f0eb2cc: 0c004fc1 */ jal sprintf -/* f0eb2d0: 8526003c */ lh $a2,0x3c($t1) -/* f0eb2d4: 8e8a0000 */ lw $t2,0x0($s4) -/* f0eb2d8: 27a400a4 */ addiu $a0,$sp,0xa4 -/* f0eb2dc: 27a500a8 */ addiu $a1,$sp,0xa8 -/* f0eb2e0: 02a03025 */ or $a2,$s5,$zero -/* f0eb2e4: 8e670000 */ lw $a3,0x0($s3) -/* f0eb2e8: afa00014 */ sw $zero,0x14($sp) -/* f0eb2ec: 0fc54655 */ jal textMeasure -/* f0eb2f0: afaa0010 */ sw $t2,0x10($sp) -/* f0eb2f4: 86cd0000 */ lh $t5,0x0($s6) -/* f0eb2f8: 8fab00a8 */ lw $t3,0xa8($sp) -/* f0eb2fc: 8fb90098 */ lw $t9,0x98($sp) -/* f0eb300: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eb304: 01abc023 */ subu $t8,$t5,$t3 -/* f0eb308: 270e005b */ addiu $t6,$t8,0x5b -/* f0eb30c: afae00b4 */ sw $t6,0xb4($sp) -/* f0eb310: 86cf0002 */ lh $t7,0x2($s6) -/* f0eb314: 87280000 */ lh $t0,0x0($t9) -/* f0eb318: 8e8b0000 */ lw $t3,0x0($s4) -/* f0eb31c: 8e6d0000 */ lw $t5,0x0($s3) -/* f0eb320: 01f76021 */ addu $t4,$t7,$s7 -/* f0eb324: 01884823 */ subu $t1,$t4,$t0 -/* f0eb328: 252a000e */ addiu $t2,$t1,0xe -/* f0eb32c: afaa00b0 */ sw $t2,0xb0($sp) -/* f0eb330: afb00018 */ sw $s0,0x18($sp) -/* f0eb334: afab0014 */ sw $t3,0x14($sp) -/* f0eb338: afad0010 */ sw $t5,0x10($sp) -/* f0eb33c: 86d80004 */ lh $t8,0x4($s6) -/* f0eb340: 27a500b4 */ addiu $a1,$sp,0xb4 -/* f0eb344: 27a600b0 */ addiu $a2,$sp,0xb0 -/* f0eb348: afb8001c */ sw $t8,0x1c($sp) -/* f0eb34c: 86ce0006 */ lh $t6,0x6($s6) -/* f0eb350: afa00028 */ sw $zero,0x28($sp) -/* f0eb354: afa00024 */ sw $zero,0x24($sp) -/* f0eb358: 02a03825 */ or $a3,$s5,$zero -/* f0eb35c: 0fc541a6 */ jal textRenderProjected -/* f0eb360: afae0020 */ sw $t6,0x20($sp) -/* f0eb364: afa201b0 */ sw $v0,0x1b0($sp) -.NB0f0eb368: -/* f0eb368: 3c04009f */ lui $a0,0x9f -/* f0eb36c: 3c0500ff */ lui $a1,0xff -/* f0eb370: 34a500ff */ ori $a1,$a1,0xff -/* f0eb374: 348400ff */ ori $a0,$a0,0xff -/* f0eb378: 0fc01990 */ jal colourBlend -/* f0eb37c: 02403025 */ or $a2,$s2,$zero -/* f0eb380: 3c057f1b */ lui $a1,0x7f1b -/* f0eb384: 00408025 */ or $s0,$v0,$zero -/* f0eb388: 24a5c178 */ addiu $a1,$a1,-16008 -/* f0eb38c: 02a02025 */ or $a0,$s5,$zero -/* f0eb390: 0c004fc1 */ jal sprintf -/* f0eb394: 8e260010 */ lw $a2,0x10($s1) -/* f0eb398: 8e8f0000 */ lw $t7,0x0($s4) -/* f0eb39c: 27a400a4 */ addiu $a0,$sp,0xa4 -/* f0eb3a0: 27a500a8 */ addiu $a1,$sp,0xa8 -/* f0eb3a4: 02a03025 */ or $a2,$s5,$zero -/* f0eb3a8: 8e670000 */ lw $a3,0x0($s3) -/* f0eb3ac: afa00014 */ sw $zero,0x14($sp) -/* f0eb3b0: 0fc54655 */ jal textMeasure -/* f0eb3b4: afaf0010 */ sw $t7,0x10($sp) -/* f0eb3b8: 86d90000 */ lh $t9,0x0($s6) -/* f0eb3bc: 8fac00a8 */ lw $t4,0xa8($sp) -/* f0eb3c0: 8fab0098 */ lw $t3,0x98($sp) -/* f0eb3c4: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eb3c8: 032c4023 */ subu $t0,$t9,$t4 -/* f0eb3cc: 25090078 */ addiu $t1,$t0,0x78 -/* f0eb3d0: afa900b4 */ sw $t1,0xb4($sp) -/* f0eb3d4: 86ca0002 */ lh $t2,0x2($s6) -/* f0eb3d8: 85780000 */ lh $t8,0x0($t3) -/* f0eb3dc: 8e8c0000 */ lw $t4,0x0($s4) -/* f0eb3e0: 8e790000 */ lw $t9,0x0($s3) -/* f0eb3e4: 01576821 */ addu $t5,$t2,$s7 -/* f0eb3e8: 01b87023 */ subu $t6,$t5,$t8 -/* f0eb3ec: 25cf000e */ addiu $t7,$t6,0xe -/* f0eb3f0: afaf00b0 */ sw $t7,0xb0($sp) -/* f0eb3f4: afb00018 */ sw $s0,0x18($sp) -/* f0eb3f8: afac0014 */ sw $t4,0x14($sp) -/* f0eb3fc: afb90010 */ sw $t9,0x10($sp) -/* f0eb400: 86c80004 */ lh $t0,0x4($s6) -/* f0eb404: 27a500b4 */ addiu $a1,$sp,0xb4 -/* f0eb408: 27a600b0 */ addiu $a2,$sp,0xb0 -/* f0eb40c: afa8001c */ sw $t0,0x1c($sp) -/* f0eb410: 86c90006 */ lh $t1,0x6($s6) -/* f0eb414: afa00028 */ sw $zero,0x28($sp) -/* f0eb418: afa00024 */ sw $zero,0x24($sp) -/* f0eb41c: 02a03825 */ or $a3,$s5,$zero -/* f0eb420: 0fc541a6 */ jal textRenderProjected -/* f0eb424: afa90020 */ sw $t1,0x20($sp) -/* f0eb428: 8faa00bc */ lw $t2,0xbc($sp) -/* f0eb42c: 27de0001 */ addiu $s8,$s8,0x1 -/* f0eb430: 26310014 */ addiu $s1,$s1,0x14 -/* f0eb434: 26f7000a */ addiu $s7,$s7,0xa -/* f0eb438: 17caff2b */ bne $s8,$t2,.NB0f0eb0e8 -/* f0eb43c: afa201b0 */ sw $v0,0x1b0($sp) -.NB0f0eb440: -/* f0eb440: 0fc537a0 */ jal func0f153780 -/* f0eb444: 8fa401b0 */ lw $a0,0x1b0($sp) -/* f0eb448: 8fbf005c */ lw $ra,0x5c($sp) -/* f0eb44c: 8fb00038 */ lw $s0,0x38($sp) -/* f0eb450: 8fb1003c */ lw $s1,0x3c($sp) -/* f0eb454: 8fb20040 */ lw $s2,0x40($sp) -/* f0eb458: 8fb30044 */ lw $s3,0x44($sp) -/* f0eb45c: 8fb40048 */ lw $s4,0x48($sp) -/* f0eb460: 8fb5004c */ lw $s5,0x4c($sp) -/* f0eb464: 8fb60050 */ lw $s6,0x50($sp) -/* f0eb468: 8fb70054 */ lw $s7,0x54($sp) -/* f0eb46c: 8fbe0058 */ lw $s8,0x58($sp) -/* f0eb470: 03e00008 */ jr $ra -/* f0eb474: 27bd01b0 */ addiu $sp,$sp,0x1b0 -); -#endif bool menuitemRankingTick(struct menuinputs *inputs, u32 tickflags, union menuitemdata *data) { @@ -9395,6 +8804,10 @@ Gfx *menuitemPlayerStatsRender(Gfx *gdl, struct menurendercontext *context) return func0f153780(gdl); } #else +const char var7f1ac17cnb[] = "%d\n"; +const char var7f1ac180nb[] = "%d\n"; +const char var7f1ac184nb[] = "%d\n"; + GLOBAL_ASM( glabel menuitemPlayerStatsRender /* f0eb54c: 27bdff40 */ addiu $sp,$sp,-192