From ac17d943be70c15667f285eaff1cea6aa8422674 Mon Sep 17 00:00:00 2001 From: Joshua Peisach Date: Thu, 19 Oct 2023 13:31:23 -0400 Subject: [PATCH] hud_renderer stuff (#468) * hud_renderer func_800534A4 * hud_renderer func_8004ED40 --- .../hud_renderer/func_8004ED40.s | 70 ------------------- .../hud_renderer/func_800534A4.s | 18 ----- src/hud_renderer.c | 28 ++------ 3 files changed, 6 insertions(+), 110 deletions(-) delete mode 100644 asm/non_matchings/hud_renderer/func_8004ED40.s delete mode 100644 asm/non_matchings/hud_renderer/func_800534A4.s diff --git a/asm/non_matchings/hud_renderer/func_8004ED40.s b/asm/non_matchings/hud_renderer/func_8004ED40.s deleted file mode 100644 index 83a36e840..000000000 --- a/asm/non_matchings/hud_renderer/func_8004ED40.s +++ /dev/null @@ -1,70 +0,0 @@ -glabel func_8004ED40 -/* 04F940 8004ED40 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 04F944 8004ED44 00047940 */ sll $t7, $a0, 5 -/* 04F948 8004ED48 01E47821 */ addu $t7, $t7, $a0 -/* 04F94C 8004ED4C 3C188019 */ lui $t8, %hi(D_8018CA70) # $t8, 0x8019 -/* 04F950 8004ED50 2718CA70 */ addiu $t8, %lo(D_8018CA70) # addiu $t8, $t8, -0x3590 -/* 04F954 8004ED54 000F7880 */ sll $t7, $t7, 2 -/* 04F958 8004ED58 01F81021 */ addu $v0, $t7, $t8 -/* 04F95C 8004ED5C 3C198019 */ lui $t9, %hi(D_8018D300) # $t9, 0x8019 -/* 04F960 8004ED60 3C088019 */ lui $t0, %hi(D_8018D308) # $t0, 0x8019 -/* 04F964 8004ED64 3C098019 */ lui $t1, %hi(D_8018D310) # $t1, 0x8019 -/* 04F968 8004ED68 9529D310 */ lhu $t1, %lo(D_8018D310)($t1) -/* 04F96C 8004ED6C 9508D308 */ lhu $t0, %lo(D_8018D308)($t0) -/* 04F970 8004ED70 9739D300 */ lhu $t9, %lo(D_8018D300)($t9) -/* 04F974 8004ED74 3C0B0D01 */ lui $t3, %hi(D_0D009958) # $t3, 0xd01 -/* 04F978 8004ED78 3C0C0D00 */ lui $t4, %hi(D_0D0064B0) # $t4, 0xd00 -/* 04F97C 8004ED7C AFBF003C */ sw $ra, 0x3c($sp) -/* 04F980 8004ED80 AFA40040 */ sw $a0, 0x40($sp) -/* 04F984 8004ED84 258C64B0 */ addiu $t4, %lo(D_0D0064B0) # addiu $t4, $t4, 0x64b0 -/* 04F988 8004ED88 256B9958 */ addiu $t3, %lo(D_0D009958) # addiu $t3, $t3, -0x66a8 -/* 04F98C 8004ED8C 24180030 */ li $t8, 48 -/* 04F990 8004ED90 240F0040 */ li $t7, 64 -/* 04F994 8004ED94 240A00FF */ li $t2, 255 -/* 04F998 8004ED98 240D0040 */ li $t5, 64 -/* 04F99C 8004ED9C 240E0060 */ li $t6, 96 -/* 04F9A0 8004EDA0 AFAE002C */ sw $t6, 0x2c($sp) -/* 04F9A4 8004EDA4 AFAD0028 */ sw $t5, 0x28($sp) -/* 04F9A8 8004EDA8 AFAA001C */ sw $t2, 0x1c($sp) -/* 04F9AC 8004EDAC AFAF0030 */ sw $t7, 0x30($sp) -/* 04F9B0 8004EDB0 AFB80034 */ sw $t8, 0x34($sp) -/* 04F9B4 8004EDB4 AFAB0020 */ sw $t3, 0x20($sp) -/* 04F9B8 8004EDB8 AFAC0024 */ sw $t4, 0x24($sp) -/* 04F9BC 8004EDBC 8444003E */ lh $a0, 0x3e($v0) -/* 04F9C0 8004EDC0 84450040 */ lh $a1, 0x40($v0) -/* 04F9C4 8004EDC4 00003025 */ move $a2, $zero -/* 04F9C8 8004EDC8 3C073F80 */ lui $a3, 0x3f80 -/* 04F9CC 8004EDCC AFA90018 */ sw $t1, 0x18($sp) -/* 04F9D0 8004EDD0 AFA80014 */ sw $t0, 0x14($sp) -/* 04F9D4 8004EDD4 0C0128BD */ jal func_8004A2F4 -/* 04F9D8 8004EDD8 AFB90010 */ sw $t9, 0x10($sp) -/* 04F9DC 8004EDDC 3C018019 */ lui $at, %hi(D_8018CFEC) # $at, 0x8019 -/* 04F9E0 8004EDE0 C424CFEC */ lwc1 $f4, %lo(D_8018CFEC)($at) -/* 04F9E4 8004EDE4 3C018019 */ lui $at, %hi(D_8018CFF4) # $at, 0x8019 -/* 04F9E8 8004EDE8 C428CFF4 */ lwc1 $f8, %lo(D_8018CFF4)($at) -/* 04F9EC 8004EDEC 4600218D */ trunc.w.s $f6, $f4 -/* 04F9F0 8004EDF0 3C090D01 */ lui $t1, %hi(D_0D00A558) # $t1, 0xd01 -/* 04F9F4 8004EDF4 3C0A0D00 */ lui $t2, %hi(D_0D005FF0) # $t2, 0xd00 -/* 04F9F8 8004EDF8 4600428D */ trunc.w.s $f10, $f8 -/* 04F9FC 8004EDFC 254A5FF0 */ addiu $t2, %lo(D_0D005FF0) # addiu $t2, $t2, 0x5ff0 -/* 04FA00 8004EE00 2529A558 */ addiu $t1, %lo(D_0D00A558) # addiu $t1, $t1, -0x5aa8 -/* 04FA04 8004EE04 44043000 */ mfc1 $a0, $f6 -/* 04FA08 8004EE08 44055000 */ mfc1 $a1, $f10 -/* 04FA0C 8004EE0C 3C068016 */ lui $a2, %hi(D_8016579E) # $a2, 0x8016 -/* 04FA10 8004EE10 240B0040 */ li $t3, 64 -/* 04FA14 8004EE14 240C0020 */ li $t4, 32 -/* 04FA18 8004EE18 240D0040 */ li $t5, 64 -/* 04FA1C 8004EE1C 240E0020 */ li $t6, 32 -/* 04FA20 8004EE20 AFAE0024 */ sw $t6, 0x24($sp) -/* 04FA24 8004EE24 AFAD0020 */ sw $t5, 0x20($sp) -/* 04FA28 8004EE28 AFAC001C */ sw $t4, 0x1c($sp) -/* 04FA2C 8004EE2C AFAB0018 */ sw $t3, 0x18($sp) -/* 04FA30 8004EE30 94C6579E */ lhu $a2, %lo(D_8016579E)($a2) -/* 04FA34 8004EE34 AFA90010 */ sw $t1, 0x10($sp) -/* 04FA38 8004EE38 AFAA0014 */ sw $t2, 0x14($sp) -/* 04FA3C 8004EE3C 0C012896 */ jal func_8004A258 -/* 04FA40 8004EE40 3C073F80 */ lui $a3, 0x3f80 -/* 04FA44 8004EE44 8FBF003C */ lw $ra, 0x3c($sp) -/* 04FA48 8004EE48 27BD0040 */ addiu $sp, $sp, 0x40 -/* 04FA4C 8004EE4C 03E00008 */ jr $ra -/* 04FA50 8004EE50 00000000 */ nop diff --git a/asm/non_matchings/hud_renderer/func_800534A4.s b/asm/non_matchings/hud_renderer/func_800534A4.s deleted file mode 100644 index e860d9a6d..000000000 --- a/asm/non_matchings/hud_renderer/func_800534A4.s +++ /dev/null @@ -1,18 +0,0 @@ -glabel func_800534A4 -/* 0540A4 800534A4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0540A8 800534A8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0540AC 800534AC 0C01067E */ jal func_800419F8 -/* 0540B0 800534B0 AFA40018 */ sw $a0, 0x18($sp) -/* 0540B4 800534B4 3C038016 */ lui $v1, %hi(D_80165840) # $v1, 0x8016 -/* 0540B8 800534B8 24635840 */ addiu $v1, %lo(D_80165840) # addiu $v1, $v1, 0x5840 -/* 0540BC 800534BC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0540C0 800534C0 3C02800E */ lui $v0, %hi(D_800E4638) # $v0, 0x800e -/* 0540C4 800534C4 806E0000 */ lb $t6, ($v1) -/* 0540C8 800534C8 806F0001 */ lb $t7, 1($v1) -/* 0540CC 800534CC 80780002 */ lb $t8, 2($v1) -/* 0540D0 800534D0 24424638 */ addiu $v0, %lo(D_800E4638) # addiu $v0, $v0, 0x4638 -/* 0540D4 800534D4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0540D8 800534D8 A04E0010 */ sb $t6, 0x10($v0) -/* 0540DC 800534DC A04F0011 */ sb $t7, 0x11($v0) -/* 0540E0 800534E0 03E00008 */ jr $ra -/* 0540E4 800534E4 A0580012 */ sb $t8, 0x12($v0) diff --git a/src/hud_renderer.c b/src/hud_renderer.c index cb76b6bfd..632f1e57f 100644 --- a/src/hud_renderer.c +++ b/src/hud_renderer.c @@ -2648,8 +2648,6 @@ void func_8004EB38(s32 playerId) { } } -#ifdef MIPS_TO_C -//generated by m2c commit b7eac665cffd02361f73cec283ef16d0a35a0e5b extern u16 D_8016579E; extern f32 D_8018CFEC; extern f32 D_8018CFF4; @@ -2657,16 +2655,10 @@ extern u16 D_8018D300; extern u16 D_8018D308; extern u16 D_8018D310; -void func_8004ED40(s32 playerId) { - struct_8018CA70_entry *temp_v0; - - temp_v0 = &D_8018CA70[playerId]; - func_8004A2F4((s32) temp_v0->speedometerX, (s32) temp_v0->speedometerY, 0U, 1.0f, (s32) D_8018D300, (s32) D_8018D308, (s32) D_8018D310, 0x000000FF, (s32) D_0D009958, D_0D0064B0, 0x00000040, 0x00000060, 0x00000040, 0x00000030); - func_8004A258((s32) D_8018CFEC, (s32) D_8018CFF4, D_8016579E, 1.0f, (s32) D_0D00A558, D_0D005FF0, 0x00000040, 0x00000020, 0x00000040, 0x00000020); +void func_8004ED40(s32 arg0) { + func_8004A2F4(D_8018CA70[arg0].speedometerX, D_8018CA70[arg0].speedometerY, 0U, 1.0f, D_8018D300, D_8018D308, D_8018D310, 0xFF, (u8* ) D_0D009958, D_0D0064B0, 0x40, 0x60, 0x40, 0x30); + func_8004A258(D_8018CFEC, D_8018CFF4, D_8016579E, 1.0f, (u8* ) D_0D00A558, &D_0D005FF0, 0x40, 0x20, 0x40, 0x20); } -#else -GLOBAL_ASM("asm/non_matchings/hud_renderer/func_8004ED40.s") -#endif #ifdef MIPS_TO_C //generated by m2c commit b7eac665cffd02361f73cec283ef16d0a35a0e5b @@ -4368,20 +4360,12 @@ void func_800532A4(s32 cameraId) { } } -#ifdef MIPS_TO_C -//generated by m2c commit b7eac665cffd02361f73cec283ef16d0a35a0e5b -extern ? D_80165840; -static ? D_800E4638; /* unable to generate initializer */ - void func_800534A4(s32 arg0) { func_800419F8(); - D_800E4638.unk10 = (s8) D_80165840.unk0; - D_800E4638.unk11 = (s8) D_80165840.unk1; - D_800E4638.unk12 = (s8) D_80165840.unk2; + D_800E4638.l[0].l.dir[0] = D_80165840[0]; + D_800E4638.l[0].l.dir[1] = D_80165840[1]; + D_800E4638.l[0].l.dir[2] = D_80165840[2]; } -#else -GLOBAL_ASM("asm/non_matchings/hud_renderer/func_800534A4.s") -#endif void func_800534E8(s32 objectIndex) { // Why these don't just use `gSPSetLights1` calls...