From bfef7f8d9d3d8fd753c60fe3cad44a6129925a09 Mon Sep 17 00:00:00 2001 From: Random <28494085+Random06457@users.noreply.github.com> Date: Tue, 15 Sep 2020 21:10:19 +0200 Subject: [PATCH] Decompile PreRender.c (#319) * Decompile PreRender.c * use NON_EQUIVALENT and run format.sh * Get rid of some magic values * rename dList/dListp to dListHead/dList * make func_800C213C NON_MATCHING * replace more values with SCREEN_WIDTH/SCREEN_HEIGHT * dList/dListHead with gfxp/gfx --- .../code/PreRender/func_800C0E70.s | 16 - .../code/PreRender/func_800C0EA8.s | 14 - .../code/PreRender/func_800C0ED8.s | 14 - .../code/PreRender/func_800C0F08.s | 10 - .../code/PreRender/func_800C0F28.s | 237 ------- .../code/PreRender/func_800C1258.s | 334 --------- .../code/PreRender/func_800C170C.s | 280 -------- .../code/PreRender/func_800C1AE8.s | 17 - .../code/PreRender/func_800C1B24.s | 255 ------- .../code/PreRender/func_800C1E9C.s | 54 -- .../code/PreRender/func_800C1F20.s | 54 -- .../code/PreRender/func_800C1FA4.s | 70 -- .../code/PreRender/func_800C20B4.s | 38 -- .../code/PreRender/func_800C2118.s | 11 - .../code/PreRender/func_800C24BC.s | 11 - .../code/PreRender/func_800C24E0.s | 10 - .../code/PreRender/func_800C2500.s | 1 - .../code/PreRender/func_800C2FE4.s | 1 - .../code/PreRender/func_800C3770.s | 73 -- asm/non_matchings/code/z_play/Gameplay_Draw.s | 4 +- asm/non_matchings/code/z_play/Gameplay_Init.s | 6 +- .../ovl_kaleido_scope/KaleidoScope_Update.s | 4 +- .../actors/ovl_kaleido_scope/func_8081F1F0.s | 2 +- .../actors/ovl_kaleido_scope/func_8081F2FC.s | 4 +- include/functions.h | 36 +- include/z64.h | 39 +- src/code/PreRender.c | 631 +++++++++++++++++- src/code/fault.c | 2 +- src/code/fault_drawer.c | 4 +- src/code/z_actor.c | 4 +- src/code/z_moji.c | 6 +- src/code/z_play.c | 24 +- src/libultra_boot_O1/osViModePalLan1.c | 2 +- src/libultra_boot_O2/osViModeFpalLan1.c | 2 +- src/libultra_boot_O2/osViModeMpalLan1.c | 2 +- src/libultra_boot_O2/osViModeNtscLan1.c | 2 +- .../ovl_En_Attack_Niw/z_en_attack_niw.c | 2 +- src/overlays/actors/ovl_En_Gs/z_en_gs.c | 2 +- .../ovl_En_Syateki_Niw/z_en_syateki_niw.c | 6 +- 39 files changed, 699 insertions(+), 1585 deletions(-) delete mode 100644 asm/non_matchings/code/PreRender/func_800C0E70.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C0EA8.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C0ED8.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C0F08.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C0F28.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C1258.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C170C.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C1AE8.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C1B24.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C1E9C.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C1F20.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C1FA4.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C20B4.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C2118.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C24BC.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C24E0.s delete mode 100644 asm/non_matchings/code/PreRender/func_800C3770.s diff --git a/asm/non_matchings/code/PreRender/func_800C0E70.s b/asm/non_matchings/code/PreRender/func_800C0E70.s deleted file mode 100644 index 006721ad1d..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C0E70.s +++ /dev/null @@ -1,16 +0,0 @@ -glabel func_800C0E70 -/* B38010 800C0E70 AC850008 */ sw $a1, 8($a0) -/* B38014 800C0E74 AC86000C */ sw $a2, 0xc($a0) -/* B38018 800C0E78 AC870014 */ sw $a3, 0x14($a0) -/* B3801C 800C0E7C 8FAE0014 */ lw $t6, 0x14($sp) -/* B38020 800C0E80 24B8FFFF */ addiu $t8, $a1, -1 -/* B38024 800C0E84 24D9FFFF */ addiu $t9, $a2, -1 -/* B38028 800C0E88 AC8E0018 */ sw $t6, 0x18($a0) -/* B3802C 800C0E8C 8FAF0010 */ lw $t7, 0x10($sp) -/* B38030 800C0E90 AC800024 */ sw $zero, 0x24($a0) -/* B38034 800C0E94 AC800028 */ sw $zero, 0x28($a0) -/* B38038 800C0E98 AC98002C */ sw $t8, 0x2c($a0) -/* B3803C 800C0E9C AC990030 */ sw $t9, 0x30($a0) -/* B38040 800C0EA0 03E00008 */ jr $ra -/* B38044 800C0EA4 AC8F0020 */ sw $t7, 0x20($a0) - diff --git a/asm/non_matchings/code/PreRender/func_800C0EA8.s b/asm/non_matchings/code/PreRender/func_800C0EA8.s deleted file mode 100644 index 92af90c9b3..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C0EA8.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel func_800C0EA8 -/* B38048 800C0EA8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* B3804C 800C0EAC AFBF0014 */ sw $ra, 0x14($sp) -/* B38050 800C0EB0 AFA40018 */ sw $a0, 0x18($sp) -/* B38054 800C0EB4 0C001114 */ jal bzero -/* B38058 800C0EB8 24050050 */ li $a1, 80 -/* B3805C 800C0EBC 8FA40018 */ lw $a0, 0x18($sp) -/* B38060 800C0EC0 0C031B1C */ jal ListAlloc_Init -/* B38064 800C0EC4 24840044 */ addiu $a0, $a0, 0x44 -/* B38068 800C0EC8 8FBF0014 */ lw $ra, 0x14($sp) -/* B3806C 800C0ECC 27BD0018 */ addiu $sp, $sp, 0x18 -/* B38070 800C0ED0 03E00008 */ jr $ra -/* B38074 800C0ED4 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C0ED8.s b/asm/non_matchings/code/PreRender/func_800C0ED8.s deleted file mode 100644 index 21e503ad3d..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C0ED8.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel func_800C0ED8 -/* B38078 800C0ED8 AC850000 */ sw $a1, ($a0) -/* B3807C 800C0EDC AC860004 */ sw $a2, 4($a0) -/* B38080 800C0EE0 AC870010 */ sw $a3, 0x10($a0) -/* B38084 800C0EE4 8FAE0010 */ lw $t6, 0x10($sp) -/* B38088 800C0EE8 24AFFFFF */ addiu $t7, $a1, -1 -/* B3808C 800C0EEC 24D8FFFF */ addiu $t8, $a2, -1 -/* B38090 800C0EF0 AC800034 */ sw $zero, 0x34($a0) -/* B38094 800C0EF4 AC800038 */ sw $zero, 0x38($a0) -/* B38098 800C0EF8 AC8F003C */ sw $t7, 0x3c($a0) -/* B3809C 800C0EFC AC980040 */ sw $t8, 0x40($a0) -/* B380A0 800C0F00 03E00008 */ jr $ra -/* B380A4 800C0F04 AC8E001C */ sw $t6, 0x1c($a0) - diff --git a/asm/non_matchings/code/PreRender/func_800C0F08.s b/asm/non_matchings/code/PreRender/func_800C0F08.s deleted file mode 100644 index 5a068466df..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C0F08.s +++ /dev/null @@ -1,10 +0,0 @@ -glabel func_800C0F08 -/* B380A8 800C0F08 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* B380AC 800C0F0C AFBF0014 */ sw $ra, 0x14($sp) -/* B380B0 800C0F10 0C031B61 */ jal ListAlloc_FreeAll -/* B380B4 800C0F14 24840044 */ addiu $a0, $a0, 0x44 -/* B380B8 800C0F18 8FBF0014 */ lw $ra, 0x14($sp) -/* B380BC 800C0F1C 27BD0018 */ addiu $sp, $sp, 0x18 -/* B380C0 800C0F20 03E00008 */ jr $ra -/* B380C4 800C0F24 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C0F28.s b/asm/non_matchings/code/PreRender/func_800C0F28.s deleted file mode 100644 index ae3389d1a4..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C0F28.s +++ /dev/null @@ -1,237 +0,0 @@ -.rdata -glabel D_80144A20 - .asciz "this" - .balign 4 - -glabel D_80144A28 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144A38 - .asciz "glistpp" - .balign 4 - -glabel D_80144A40 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144A50 - .asciz "glistp" - .balign 4 - -glabel D_80144A58 - .asciz "../PreRender.c" - .balign 4 - -.text -glabel func_800C0F28 -/* B380C8 800C0F28 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* B380CC 800C0F2C AFB00018 */ sw $s0, 0x18($sp) -/* B380D0 800C0F30 00808025 */ move $s0, $a0 -/* B380D4 800C0F34 AFA60030 */ sw $a2, 0x30($sp) -/* B380D8 800C0F38 AFBF001C */ sw $ra, 0x1c($sp) -/* B380DC 800C0F3C AFA5002C */ sw $a1, 0x2c($sp) -/* B380E0 800C0F40 AFA70034 */ sw $a3, 0x34($sp) -/* B380E4 800C0F44 3C068014 */ lui $a2, %hi(D_80144A28) # $a2, 0x8014 -/* B380E8 800C0F48 3C048014 */ lui $a0, %hi(D_80144A20) # $a0, 0x8014 -/* B380EC 800C0F4C 24844A20 */ addiu $a0, %lo(D_80144A20) # addiu $a0, $a0, 0x4a20 -/* B380F0 800C0F50 24C64A28 */ addiu $a2, %lo(D_80144A28) # addiu $a2, $a2, 0x4a28 -/* B380F4 800C0F54 240700D7 */ li $a3, 215 -/* B380F8 800C0F58 0C000B58 */ jal LogUtils_CheckNullPointer -/* B380FC 800C0F5C 02002825 */ move $a1, $s0 -/* B38100 800C0F60 3C048014 */ lui $a0, %hi(D_80144A38) # $a0, 0x8014 -/* B38104 800C0F64 3C068014 */ lui $a2, %hi(D_80144A40) # $a2, 0x8014 -/* B38108 800C0F68 24C64A40 */ addiu $a2, %lo(D_80144A40) # addiu $a2, $a2, 0x4a40 -/* B3810C 800C0F6C 24844A38 */ addiu $a0, %lo(D_80144A38) # addiu $a0, $a0, 0x4a38 -/* B38110 800C0F70 8FA5002C */ lw $a1, 0x2c($sp) -/* B38114 800C0F74 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38118 800C0F78 240700D8 */ li $a3, 216 -/* B3811C 800C0F7C 8FAE002C */ lw $t6, 0x2c($sp) -/* B38120 800C0F80 3C048014 */ lui $a0, %hi(D_80144A50) # $a0, 0x8014 -/* B38124 800C0F84 3C068014 */ lui $a2, %hi(D_80144A58) # $a2, 0x8014 -/* B38128 800C0F88 8DC50000 */ lw $a1, ($t6) -/* B3812C 800C0F8C 24C64A58 */ addiu $a2, %lo(D_80144A58) # addiu $a2, $a2, 0x4a58 -/* B38130 800C0F90 24844A50 */ addiu $a0, %lo(D_80144A50) # addiu $a0, $a0, 0x4a50 -/* B38134 800C0F94 240700DA */ li $a3, 218 -/* B38138 800C0F98 0C000B58 */ jal LogUtils_CheckNullPointer -/* B3813C 800C0F9C AFA50024 */ sw $a1, 0x24($sp) -/* B38140 800C0FA0 8FA50024 */ lw $a1, 0x24($sp) -/* B38144 800C0FA4 3C0FE700 */ lui $t7, 0xe700 -/* B38148 800C0FA8 3C18EF20 */ lui $t8, 0xef20 -/* B3814C 800C0FAC 00A01025 */ move $v0, $a1 -/* B38150 800C0FB0 AC4F0000 */ sw $t7, ($v0) -/* B38154 800C0FB4 AC400004 */ sw $zero, 4($v0) -/* B38158 800C0FB8 24A50008 */ addiu $a1, $a1, 8 -/* B3815C 800C0FBC 00A01025 */ move $v0, $a1 -/* B38160 800C0FC0 AC580000 */ sw $t8, ($v0) -/* B38164 800C0FC4 AC400004 */ sw $zero, 4($v0) -/* B38168 800C0FC8 8E190000 */ lw $t9, ($s0) -/* B3816C 800C0FCC 24A50008 */ addiu $a1, $a1, 8 -/* B38170 800C0FD0 3C01FF10 */ lui $at, 0xff10 -/* B38174 800C0FD4 272EFFFF */ addiu $t6, $t9, -1 -/* B38178 800C0FD8 31CF0FFF */ andi $t7, $t6, 0xfff -/* B3817C 800C0FDC 01E1C025 */ or $t8, $t7, $at -/* B38180 800C0FE0 00A01025 */ move $v0, $a1 -/* B38184 800C0FE4 AC580000 */ sw $t8, ($v0) -/* B38188 800C0FE8 8FB90034 */ lw $t9, 0x34($sp) -/* B3818C 800C0FEC 24A50008 */ addiu $a1, $a1, 8 -/* B38190 800C0FF0 3C0EED00 */ li $t6, 0xED000000 # 0.000000 -/* B38194 800C0FF4 AC590004 */ sw $t9, 4($v0) -/* B38198 800C0FF8 00A01025 */ move $v0, $a1 -/* B3819C 800C0FFC AC4E0000 */ sw $t6, ($v0) -/* B381A0 800C1000 8E0F0000 */ lw $t7, ($s0) -/* B381A4 800C1004 8E180004 */ lw $t8, 4($s0) -/* B381A8 800C1008 3C014080 */ li $at, 0x40800000 # 0.000000 -/* B381AC 800C100C 448F2000 */ mtc1 $t7, $f4 -/* B381B0 800C1010 44988000 */ mtc1 $t8, $f16 -/* B381B4 800C1014 44810000 */ mtc1 $at, $f0 -/* B381B8 800C1018 468021A0 */ cvt.s.w $f6, $f4 -/* B381BC 800C101C 24A50008 */ addiu $a1, $a1, 8 -/* B381C0 800C1020 00004025 */ move $t0, $zero -/* B381C4 800C1024 3C1FFD10 */ lui $ra, 0xfd10 -/* B381C8 800C1028 3C0D0700 */ lui $t5, 0x700 -/* B381CC 800C102C 468084A0 */ cvt.s.w $f18, $f16 -/* B381D0 800C1030 46003202 */ mul.s $f8, $f6, $f0 -/* B381D4 800C1034 4600428D */ trunc.w.s $f10, $f8 -/* B381D8 800C1038 46009102 */ mul.s $f4, $f18, $f0 -/* B381DC 800C103C 44195000 */ mfc1 $t9, $f10 -/* B381E0 800C1040 00000000 */ nop -/* B381E4 800C1044 332E0FFF */ andi $t6, $t9, 0xfff -/* B381E8 800C1048 4600218D */ trunc.w.s $f6, $f4 -/* B381EC 800C104C 000E7B00 */ sll $t7, $t6, 0xc -/* B381F0 800C1050 440E3000 */ mfc1 $t6, $f6 -/* B381F4 800C1054 00000000 */ nop -/* B381F8 800C1058 31D80FFF */ andi $t8, $t6, 0xfff -/* B381FC 800C105C 01F8C825 */ or $t9, $t7, $t8 -/* B38200 800C1060 AC590004 */ sw $t9, 4($v0) -/* B38204 800C1064 8E0E0000 */ lw $t6, ($s0) -/* B38208 800C1068 24181000 */ li $t8, 4096 -/* B3820C 800C106C 8E0A0004 */ lw $t2, 4($s0) -/* B38210 800C1070 000E7840 */ sll $t7, $t6, 1 -/* B38214 800C1074 030F001A */ div $zero, $t8, $t7 -/* B38218 800C1078 00006012 */ mflo $t4 -/* B3821C 800C107C 15E00002 */ bnez $t7, .L800C1088 -/* B38220 800C1080 00000000 */ nop -/* B38224 800C1084 0007000D */ break 7 -.L800C1088: -/* B38228 800C1088 2401FFFF */ li $at, -1 -/* B3822C 800C108C 15E10004 */ bne $t7, $at, .L800C10A0 -/* B38230 800C1090 3C018000 */ lui $at, 0x8000 -/* B38234 800C1094 17010002 */ bne $t8, $at, .L800C10A0 -/* B38238 800C1098 00000000 */ nop -/* B3823C 800C109C 0006000D */ break 6 -.L800C10A0: -/* B38240 800C10A0 59400058 */ blezl $t2, .L800C1204 -/* B38244 800C10A4 00A01025 */ move $v0, $a1 -.L800C10A8: -/* B38248 800C10A8 8E030000 */ lw $v1, ($s0) -/* B3824C 800C10AC 014C082A */ slt $at, $t2, $t4 -/* B38250 800C10B0 00A01025 */ move $v0, $a1 -/* B38254 800C10B4 2463FFFF */ addiu $v1, $v1, -1 -/* B38258 800C10B8 10200002 */ beqz $at, .L800C10C4 -/* B3825C 800C10BC 00604825 */ move $t1, $v1 -/* B38260 800C10C0 01406025 */ move $t4, $t2 -.L800C10C4: -/* B38264 800C10C4 30790FFF */ andi $t9, $v1, 0xfff -/* B38268 800C10C8 033F7025 */ or $t6, $t9, $ra -/* B3826C 800C10CC AC4E0000 */ sw $t6, ($v0) -/* B38270 800C10D0 8FB80030 */ lw $t8, 0x30($sp) -/* B38274 800C10D4 00093840 */ sll $a3, $t1, 1 -/* B38278 800C10D8 24E70009 */ addiu $a3, $a3, 9 -/* B3827C 800C10DC 000738C3 */ sra $a3, $a3, 3 -/* B38280 800C10E0 24A50008 */ addiu $a1, $a1, 8 -/* B38284 800C10E4 AC580004 */ sw $t8, 4($v0) -/* B38288 800C10E8 00A01025 */ move $v0, $a1 -/* B3828C 800C10EC 30E701FF */ andi $a3, $a3, 0x1ff -/* B38290 800C10F0 00073A40 */ sll $a3, $a3, 9 -/* B38294 800C10F4 3C01F510 */ lui $at, 0xf510 -/* B38298 800C10F8 00E13825 */ or $a3, $a3, $at -/* B3829C 800C10FC AC470000 */ sw $a3, ($v0) -/* B382A0 800C1100 AC4D0004 */ sw $t5, 4($v0) -/* B382A4 800C1104 24A50008 */ addiu $a1, $a1, 8 -/* B382A8 800C1108 00A01025 */ move $v0, $a1 -/* B382AC 800C110C 00091880 */ sll $v1, $t1, 2 -/* B382B0 800C1110 3C0FE600 */ lui $t7, 0xe600 -/* B382B4 800C1114 010C5821 */ addu $t3, $t0, $t4 -/* B382B8 800C1118 2564FFFF */ addiu $a0, $t3, -1 -/* B382BC 800C111C AC4F0000 */ sw $t7, ($v0) -/* B382C0 800C1120 30630FFF */ andi $v1, $v1, 0xfff -/* B382C4 800C1124 AC400004 */ sw $zero, 4($v0) -/* B382C8 800C1128 24A50008 */ addiu $a1, $a1, 8 -/* B382CC 800C112C 00A01025 */ move $v0, $a1 -/* B382D0 800C1130 00031B00 */ sll $v1, $v1, 0xc -/* B382D4 800C1134 00042080 */ sll $a0, $a0, 2 -/* B382D8 800C1138 00083080 */ sll $a2, $t0, 2 -/* B382DC 800C113C 30C60FFF */ andi $a2, $a2, 0xfff -/* B382E0 800C1140 30840FFF */ andi $a0, $a0, 0xfff -/* B382E4 800C1144 006D7025 */ or $t6, $v1, $t5 -/* B382E8 800C1148 3C01F400 */ lui $at, 0xf400 -/* B382EC 800C114C 00C1C825 */ or $t9, $a2, $at -/* B382F0 800C1150 01C4C025 */ or $t8, $t6, $a0 -/* B382F4 800C1154 AC580004 */ sw $t8, 4($v0) -/* B382F8 800C1158 AC590000 */ sw $t9, ($v0) -/* B382FC 800C115C 24A50008 */ addiu $a1, $a1, 8 -/* B38300 800C1160 00A01025 */ move $v0, $a1 -/* B38304 800C1164 3C0FE700 */ lui $t7, 0xe700 -/* B38308 800C1168 AC4F0000 */ sw $t7, ($v0) -/* B3830C 800C116C AC400004 */ sw $zero, 4($v0) -/* B38310 800C1170 24A50008 */ addiu $a1, $a1, 8 -/* B38314 800C1174 00A01025 */ move $v0, $a1 -/* B38318 800C1178 AC470000 */ sw $a3, ($v0) -/* B3831C 800C117C AC400004 */ sw $zero, 4($v0) -/* B38320 800C1180 24A50008 */ addiu $a1, $a1, 8 -/* B38324 800C1184 00A01025 */ move $v0, $a1 -/* B38328 800C1188 3C01F200 */ lui $at, 0xf200 -/* B3832C 800C118C 00C1C825 */ or $t9, $a2, $at -/* B38330 800C1190 00647025 */ or $t6, $v1, $a0 -/* B38334 800C1194 AC4E0004 */ sw $t6, 4($v0) -/* B38338 800C1198 AC590000 */ sw $t9, ($v0) -/* B3833C 800C119C 24A50008 */ addiu $a1, $a1, 8 -/* B38340 800C11A0 00A01025 */ move $v0, $a1 -/* B38344 800C11A4 3C01E400 */ lui $at, 0xe400 -/* B38348 800C11A8 0061C025 */ or $t8, $v1, $at -/* B3834C 800C11AC 03047825 */ or $t7, $t8, $a0 -/* B38350 800C11B0 AC4F0000 */ sw $t7, ($v0) -/* B38354 800C11B4 AC460004 */ sw $a2, 4($v0) -/* B38358 800C11B8 24A50008 */ addiu $a1, $a1, 8 -/* B3835C 800C11BC 00A01025 */ move $v0, $a1 -/* B38360 800C11C0 3C19E100 */ lui $t9, 0xe100 -/* B38364 800C11C4 00087140 */ sll $t6, $t0, 5 -/* B38368 800C11C8 31D8FFFF */ andi $t8, $t6, 0xffff -/* B3836C 800C11CC AC590000 */ sw $t9, ($v0) -/* B38370 800C11D0 AC580004 */ sw $t8, 4($v0) -/* B38374 800C11D4 24A50008 */ addiu $a1, $a1, 8 -/* B38378 800C11D8 00A01025 */ move $v0, $a1 -/* B3837C 800C11DC 3C191000 */ lui $t9, (0x10000400 >> 16) # lui $t9, 0x1000 -/* B38380 800C11E0 37390400 */ ori $t9, (0x10000400 & 0xFFFF) # ori $t9, $t9, 0x400 -/* B38384 800C11E4 3C0FF100 */ lui $t7, 0xf100 -/* B38388 800C11E8 014C5023 */ subu $t2, $t2, $t4 -/* B3838C 800C11EC AC4F0000 */ sw $t7, ($v0) -/* B38390 800C11F0 AC590004 */ sw $t9, 4($v0) -/* B38394 800C11F4 24A50008 */ addiu $a1, $a1, 8 -/* B38398 800C11F8 1D40FFAB */ bgtz $t2, .L800C10A8 -/* B3839C 800C11FC 01604025 */ move $t0, $t3 -/* B383A0 800C1200 00A01025 */ move $v0, $a1 -.L800C1204: -/* B383A4 800C1204 3C0EE700 */ lui $t6, 0xe700 -/* B383A8 800C1208 AC4E0000 */ sw $t6, ($v0) -/* B383AC 800C120C AC400004 */ sw $zero, 4($v0) -/* B383B0 800C1210 8E180000 */ lw $t8, ($s0) -/* B383B4 800C1214 24A50008 */ addiu $a1, $a1, 8 -/* B383B8 800C1218 3C01FF10 */ lui $at, 0xff10 -/* B383BC 800C121C 270FFFFF */ addiu $t7, $t8, -1 -/* B383C0 800C1220 31F90FFF */ andi $t9, $t7, 0xfff -/* B383C4 800C1224 03217025 */ or $t6, $t9, $at -/* B383C8 800C1228 00A01025 */ move $v0, $a1 -/* B383CC 800C122C AC4E0000 */ sw $t6, ($v0) -/* B383D0 800C1230 8E180010 */ lw $t8, 0x10($s0) -/* B383D4 800C1234 24A50008 */ addiu $a1, $a1, 8 -/* B383D8 800C1238 AC580004 */ sw $t8, 4($v0) -/* B383DC 800C123C 8FAF002C */ lw $t7, 0x2c($sp) -/* B383E0 800C1240 ADE50000 */ sw $a1, ($t7) -/* B383E4 800C1244 8FBF001C */ lw $ra, 0x1c($sp) -/* B383E8 800C1248 8FB00018 */ lw $s0, 0x18($sp) -/* B383EC 800C124C 27BD0028 */ addiu $sp, $sp, 0x28 -/* B383F0 800C1250 03E00008 */ jr $ra -/* B383F4 800C1254 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C1258.s b/asm/non_matchings/code/PreRender/func_800C1258.s deleted file mode 100644 index 7befc2b641..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C1258.s +++ /dev/null @@ -1,334 +0,0 @@ -.rdata -glabel D_80144A68 - .asciz "this" - .balign 4 - -glabel D_80144A70 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144A80 - .asciz "glistpp" - .balign 4 - -glabel D_80144A88 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144A98 - .asciz "glistp" - .balign 4 - -glabel D_80144AA0 - .asciz "../PreRender.c" - .balign 4 - -.text -glabel func_800C1258 -/* B383F8 800C1258 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* B383FC 800C125C AFB00018 */ sw $s0, 0x18($sp) -/* B38400 800C1260 00808025 */ move $s0, $a0 -/* B38404 800C1264 AFBF001C */ sw $ra, 0x1c($sp) -/* B38408 800C1268 AFA5002C */ sw $a1, 0x2c($sp) -/* B3840C 800C126C 3C048014 */ lui $a0, %hi(D_80144A68) # $a0, 0x8014 -/* B38410 800C1270 3C068014 */ lui $a2, %hi(D_80144A70) # $a2, 0x8014 -/* B38414 800C1274 24C64A70 */ addiu $a2, %lo(D_80144A70) # addiu $a2, $a2, 0x4a70 -/* B38418 800C1278 24844A68 */ addiu $a0, %lo(D_80144A68) # addiu $a0, $a0, 0x4a68 -/* B3841C 800C127C 02002825 */ move $a1, $s0 -/* B38420 800C1280 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38424 800C1284 24070116 */ li $a3, 278 -/* B38428 800C1288 3C048014 */ lui $a0, %hi(D_80144A80) # $a0, 0x8014 -/* B3842C 800C128C 3C068014 */ lui $a2, %hi(D_80144A88) # $a2, 0x8014 -/* B38430 800C1290 24C64A88 */ addiu $a2, %lo(D_80144A88) # addiu $a2, $a2, 0x4a88 -/* B38434 800C1294 24844A80 */ addiu $a0, %lo(D_80144A80) # addiu $a0, $a0, 0x4a80 -/* B38438 800C1298 8FA5002C */ lw $a1, 0x2c($sp) -/* B3843C 800C129C 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38440 800C12A0 24070117 */ li $a3, 279 -/* B38444 800C12A4 8FAE002C */ lw $t6, 0x2c($sp) -/* B38448 800C12A8 3C048014 */ lui $a0, %hi(D_80144A98) # $a0, 0x8014 -/* B3844C 800C12AC 3C068014 */ lui $a2, %hi(D_80144AA0) # $a2, 0x8014 -/* B38450 800C12B0 8DC50000 */ lw $a1, ($t6) -/* B38454 800C12B4 24C64AA0 */ addiu $a2, %lo(D_80144AA0) # addiu $a2, $a2, 0x4aa0 -/* B38458 800C12B8 24844A98 */ addiu $a0, %lo(D_80144A98) # addiu $a0, $a0, 0x4a98 -/* B3845C 800C12BC 24070119 */ li $a3, 281 -/* B38460 800C12C0 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38464 800C12C4 AFA50024 */ sw $a1, 0x24($sp) -/* B38468 800C12C8 8FA50024 */ lw $a1, 0x24($sp) -/* B3846C 800C12CC 3C0FE700 */ lui $t7, 0xe700 -/* B38470 800C12D0 3C18EF20 */ lui $t8, 0xef20 -/* B38474 800C12D4 00A01025 */ move $v0, $a1 -/* B38478 800C12D8 AC4F0000 */ sw $t7, ($v0) -/* B3847C 800C12DC AC400004 */ sw $zero, 4($v0) -/* B38480 800C12E0 24A50008 */ addiu $a1, $a1, 8 -/* B38484 800C12E4 00A01025 */ move $v0, $a1 -/* B38488 800C12E8 AC580000 */ sw $t8, ($v0) -/* B3848C 800C12EC AC400004 */ sw $zero, 4($v0) -/* B38490 800C12F0 8E190000 */ lw $t9, ($s0) -/* B38494 800C12F4 24A50008 */ addiu $a1, $a1, 8 -/* B38498 800C12F8 3C01FF10 */ lui $at, 0xff10 -/* B3849C 800C12FC 272EFFFF */ addiu $t6, $t9, -1 -/* B384A0 800C1300 31CF0FFF */ andi $t7, $t6, 0xfff -/* B384A4 800C1304 01E1C025 */ or $t8, $t7, $at -/* B384A8 800C1308 00A01025 */ move $v0, $a1 -/* B384AC 800C130C AC580000 */ sw $t8, ($v0) -/* B384B0 800C1310 8E190010 */ lw $t9, 0x10($s0) -/* B384B4 800C1314 3C014080 */ li $at, 0x40800000 # 0.000000 -/* B384B8 800C1318 44810000 */ mtc1 $at, $f0 -/* B384BC 800C131C AC590004 */ sw $t9, 4($v0) -/* B384C0 800C1320 8E0E0034 */ lw $t6, 0x34($s0) -/* B384C4 800C1324 3C01ED00 */ li $at, 0xED000000 # 0.000000 -/* B384C8 800C1328 24A50008 */ addiu $a1, $a1, 8 -/* B384CC 800C132C 448E2000 */ mtc1 $t6, $f4 -/* B384D0 800C1330 00A01025 */ move $v0, $a1 -/* B384D4 800C1334 24A50008 */ addiu $a1, $a1, 8 -/* B384D8 800C1338 468021A0 */ cvt.s.w $f6, $f4 -/* B384DC 800C133C 00004825 */ move $t1, $zero -/* B384E0 800C1340 3C1FE600 */ lui $ra, 0xe600 -/* B384E4 800C1344 3C0DFD10 */ lui $t5, 0xfd10 -/* B384E8 800C1348 3C0C0700 */ lui $t4, 0x700 -/* B384EC 800C134C 3C0BF510 */ lui $t3, 0xf510 -/* B384F0 800C1350 46003202 */ mul.s $f8, $f6, $f0 -/* B384F4 800C1354 4600428D */ trunc.w.s $f10, $f8 -/* B384F8 800C1358 44185000 */ mfc1 $t8, $f10 -/* B384FC 800C135C 00000000 */ nop -/* B38500 800C1360 33190FFF */ andi $t9, $t8, 0xfff -/* B38504 800C1364 8E180038 */ lw $t8, 0x38($s0) -/* B38508 800C1368 00197300 */ sll $t6, $t9, 0xc -/* B3850C 800C136C 01C17825 */ or $t7, $t6, $at -/* B38510 800C1370 44988000 */ mtc1 $t8, $f16 -/* B38514 800C1374 00000000 */ nop -/* B38518 800C1378 468084A0 */ cvt.s.w $f18, $f16 -/* B3851C 800C137C 46009102 */ mul.s $f4, $f18, $f0 -/* B38520 800C1380 4600218D */ trunc.w.s $f6, $f4 -/* B38524 800C1384 440E3000 */ mfc1 $t6, $f6 -/* B38528 800C1388 00000000 */ nop -/* B3852C 800C138C 31D80FFF */ andi $t8, $t6, 0xfff -/* B38530 800C1390 01F8C825 */ or $t9, $t7, $t8 -/* B38534 800C1394 AC590000 */ sw $t9, ($v0) -/* B38538 800C1398 8E0E003C */ lw $t6, 0x3c($s0) -/* B3853C 800C139C 8E180040 */ lw $t8, 0x40($s0) -/* B38540 800C13A0 25CF0001 */ addiu $t7, $t6, 1 -/* B38544 800C13A4 448F4000 */ mtc1 $t7, $f8 -/* B38548 800C13A8 00000000 */ nop -/* B3854C 800C13AC 468042A0 */ cvt.s.w $f10, $f8 -/* B38550 800C13B0 46005402 */ mul.s $f16, $f10, $f0 -/* B38554 800C13B4 4600848D */ trunc.w.s $f18, $f16 -/* B38558 800C13B8 44199000 */ mfc1 $t9, $f18 -/* B3855C 800C13BC 00000000 */ nop -/* B38560 800C13C0 332E0FFF */ andi $t6, $t9, 0xfff -/* B38564 800C13C4 27190001 */ addiu $t9, $t8, 1 -/* B38568 800C13C8 44992000 */ mtc1 $t9, $f4 -/* B3856C 800C13CC 000E7B00 */ sll $t7, $t6, 0xc -/* B38570 800C13D0 468021A0 */ cvt.s.w $f6, $f4 -/* B38574 800C13D4 46003202 */ mul.s $f8, $f6, $f0 -/* B38578 800C13D8 4600428D */ trunc.w.s $f10, $f8 -/* B3857C 800C13DC 44185000 */ mfc1 $t8, $f10 -/* B38580 800C13E0 00000000 */ nop -/* B38584 800C13E4 33190FFF */ andi $t9, $t8, 0xfff -/* B38588 800C13E8 01F97025 */ or $t6, $t7, $t9 -/* B3858C 800C13EC AC4E0004 */ sw $t6, 4($v0) -/* B38590 800C13F0 8E0F0024 */ lw $t7, 0x24($s0) -/* B38594 800C13F4 8E18002C */ lw $t8, 0x2c($s0) -/* B38598 800C13F8 030FC823 */ subu $t9, $t8, $t7 -/* B3859C 800C13FC 00197040 */ sll $t6, $t9, 1 -/* B385A0 800C1400 25D80002 */ addiu $t8, $t6, 2 -/* B385A4 800C1404 240F1000 */ li $t7, 4096 -/* B385A8 800C1408 01F8001A */ div $zero, $t7, $t8 -/* B385AC 800C140C 8E0E0028 */ lw $t6, 0x28($s0) -/* B385B0 800C1410 8E190030 */ lw $t9, 0x30($s0) -/* B385B4 800C1414 00003012 */ mflo $a2 -/* B385B8 800C1418 032E4023 */ subu $t0, $t9, $t6 -/* B385BC 800C141C 17000002 */ bnez $t8, .L800C1428 -/* B385C0 800C1420 00000000 */ nop -/* B385C4 800C1424 0007000D */ break 7 -.L800C1428: -/* B385C8 800C1428 2401FFFF */ li $at, -1 -/* B385CC 800C142C 17010004 */ bne $t8, $at, .L800C1440 -/* B385D0 800C1430 3C018000 */ lui $at, 0x8000 -/* B385D4 800C1434 15E10002 */ bne $t7, $at, .L800C1440 -/* B385D8 800C1438 00000000 */ nop -/* B385DC 800C143C 0006000D */ break 6 -.L800C1440: -/* B385E0 800C1440 25080001 */ addiu $t0, $t0, 1 -/* B385E4 800C1444 19000084 */ blez $t0, .L800C1658 -.L800C1448: -/* B385E8 800C1448 0106082A */ slt $at, $t0, $a2 -/* B385EC 800C144C 10200002 */ beqz $at, .L800C1458 -/* B385F0 800C1450 8E020028 */ lw $v0, 0x28($s0) -/* B385F4 800C1454 01003025 */ move $a2, $t0 -.L800C1458: -/* B385F8 800C1458 8E180008 */ lw $t8, 8($s0) -/* B385FC 800C145C 8E0F0038 */ lw $t7, 0x38($s0) -/* B38600 800C1460 00493821 */ addu $a3, $v0, $t1 -/* B38604 800C1464 2719FFFF */ addiu $t9, $t8, -1 -/* B38608 800C1468 332E0FFF */ andi $t6, $t9, 0xfff -/* B3860C 800C146C 01E95021 */ addu $t2, $t7, $t1 -/* B38610 800C1470 01CD7825 */ or $t7, $t6, $t5 -/* B38614 800C1474 00A01025 */ move $v0, $a1 -/* B38618 800C1478 AC4F0000 */ sw $t7, ($v0) -/* B3861C 800C147C 8E180014 */ lw $t8, 0x14($s0) -/* B38620 800C1480 24A50008 */ addiu $a1, $a1, 8 -/* B38624 800C1484 00071880 */ sll $v1, $a3, 2 -/* B38628 800C1488 AC580004 */ sw $t8, 4($v0) -/* B3862C 800C148C 8E0E0024 */ lw $t6, 0x24($s0) -/* B38630 800C1490 8E19002C */ lw $t9, 0x2c($s0) -/* B38634 800C1494 00A01025 */ move $v0, $a1 -/* B38638 800C1498 AC4C0004 */ sw $t4, 4($v0) -/* B3863C 800C149C 032E7823 */ subu $t7, $t9, $t6 -/* B38640 800C14A0 000FC040 */ sll $t8, $t7, 1 -/* B38644 800C14A4 27190009 */ addiu $t9, $t8, 9 -/* B38648 800C14A8 001970C3 */ sra $t6, $t9, 3 -/* B3864C 800C14AC 31CF01FF */ andi $t7, $t6, 0x1ff -/* B38650 800C14B0 000FC240 */ sll $t8, $t7, 9 -/* B38654 800C14B4 030BC825 */ or $t9, $t8, $t3 -/* B38658 800C14B8 AC590000 */ sw $t9, ($v0) -/* B3865C 800C14BC 24A50008 */ addiu $a1, $a1, 8 -/* B38660 800C14C0 00A01025 */ move $v0, $a1 -/* B38664 800C14C4 AC5F0000 */ sw $ra, ($v0) -/* B38668 800C14C8 AC400004 */ sw $zero, 4($v0) -/* B3866C 800C14CC 8E0E0024 */ lw $t6, 0x24($s0) -/* B38670 800C14D0 3C01F400 */ lui $at, 0xf400 -/* B38674 800C14D4 24A50008 */ addiu $a1, $a1, 8 -/* B38678 800C14D8 000E7880 */ sll $t7, $t6, 2 -/* B3867C 800C14DC 31F80FFF */ andi $t8, $t7, 0xfff -/* B38680 800C14E0 0018CB00 */ sll $t9, $t8, 0xc -/* B38684 800C14E4 03217025 */ or $t6, $t9, $at -/* B38688 800C14E8 30630FFF */ andi $v1, $v1, 0xfff -/* B3868C 800C14EC 01C37825 */ or $t7, $t6, $v1 -/* B38690 800C14F0 00A01025 */ move $v0, $a1 -/* B38694 800C14F4 AC4F0000 */ sw $t7, ($v0) -/* B38698 800C14F8 8E18002C */ lw $t8, 0x2c($s0) -/* B3869C 800C14FC 00E62021 */ addu $a0, $a3, $a2 -/* B386A0 800C1500 2484FFFF */ addiu $a0, $a0, -1 -/* B386A4 800C1504 0018C880 */ sll $t9, $t8, 2 -/* B386A8 800C1508 332E0FFF */ andi $t6, $t9, 0xfff -/* B386AC 800C150C 000E7B00 */ sll $t7, $t6, 0xc -/* B386B0 800C1510 00042080 */ sll $a0, $a0, 2 -/* B386B4 800C1514 30840FFF */ andi $a0, $a0, 0xfff -/* B386B8 800C1518 01ECC025 */ or $t8, $t7, $t4 -/* B386BC 800C151C 0304C825 */ or $t9, $t8, $a0 -/* B386C0 800C1520 AC590004 */ sw $t9, 4($v0) -/* B386C4 800C1524 24A50008 */ addiu $a1, $a1, 8 -/* B386C8 800C1528 00A01025 */ move $v0, $a1 -/* B386CC 800C152C 3C0EE700 */ lui $t6, 0xe700 -/* B386D0 800C1530 AC4E0000 */ sw $t6, ($v0) -/* B386D4 800C1534 AC400004 */ sw $zero, 4($v0) -/* B386D8 800C1538 8E180024 */ lw $t8, 0x24($s0) -/* B386DC 800C153C 8E0F002C */ lw $t7, 0x2c($s0) -/* B386E0 800C1540 24A50008 */ addiu $a1, $a1, 8 -/* B386E4 800C1544 00A01025 */ move $v0, $a1 -/* B386E8 800C1548 01F8C823 */ subu $t9, $t7, $t8 -/* B386EC 800C154C 00197040 */ sll $t6, $t9, 1 -/* B386F0 800C1550 25CF0009 */ addiu $t7, $t6, 9 -/* B386F4 800C1554 000FC0C3 */ sra $t8, $t7, 3 -/* B386F8 800C1558 331901FF */ andi $t9, $t8, 0x1ff -/* B386FC 800C155C 00197240 */ sll $t6, $t9, 9 -/* B38700 800C1560 01CB7825 */ or $t7, $t6, $t3 -/* B38704 800C1564 AC4F0000 */ sw $t7, ($v0) -/* B38708 800C1568 AC400004 */ sw $zero, 4($v0) -/* B3870C 800C156C 8E180024 */ lw $t8, 0x24($s0) -/* B38710 800C1570 3C01F200 */ lui $at, 0xf200 -/* B38714 800C1574 24A50008 */ addiu $a1, $a1, 8 -/* B38718 800C1578 0018C880 */ sll $t9, $t8, 2 -/* B3871C 800C157C 332E0FFF */ andi $t6, $t9, 0xfff -/* B38720 800C1580 000E7B00 */ sll $t7, $t6, 0xc -/* B38724 800C1584 01E1C025 */ or $t8, $t7, $at -/* B38728 800C1588 0303C825 */ or $t9, $t8, $v1 -/* B3872C 800C158C 00A01025 */ move $v0, $a1 -/* B38730 800C1590 AC590000 */ sw $t9, ($v0) -/* B38734 800C1594 8E0E002C */ lw $t6, 0x2c($s0) -/* B38738 800C1598 3C01E400 */ lui $at, 0xe400 -/* B3873C 800C159C 24A50008 */ addiu $a1, $a1, 8 -/* B38740 800C15A0 000E7880 */ sll $t7, $t6, 2 -/* B38744 800C15A4 31F80FFF */ andi $t8, $t7, 0xfff -/* B38748 800C15A8 0018CB00 */ sll $t9, $t8, 0xc -/* B3874C 800C15AC 03247025 */ or $t6, $t9, $a0 -/* B38750 800C15B0 AC4E0004 */ sw $t6, 4($v0) -/* B38754 800C15B4 8E0F003C */ lw $t7, 0x3c($s0) -/* B38758 800C15B8 00A01025 */ move $v0, $a1 -/* B3875C 800C15BC 24A50008 */ addiu $a1, $a1, 8 -/* B38760 800C15C0 000FC080 */ sll $t8, $t7, 2 -/* B38764 800C15C4 33190FFF */ andi $t9, $t8, 0xfff -/* B38768 800C15C8 00197300 */ sll $t6, $t9, 0xc -/* B3876C 800C15CC 0146C021 */ addu $t8, $t2, $a2 -/* B38770 800C15D0 2719FFFF */ addiu $t9, $t8, -1 -/* B38774 800C15D4 01C17825 */ or $t7, $t6, $at -/* B38778 800C15D8 00197080 */ sll $t6, $t9, 2 -/* B3877C 800C15DC 31D80FFF */ andi $t8, $t6, 0xfff -/* B38780 800C15E0 01F8C825 */ or $t9, $t7, $t8 -/* B38784 800C15E4 AC590000 */ sw $t9, ($v0) -/* B38788 800C15E8 8E0E0034 */ lw $t6, 0x34($s0) -/* B3878C 800C15EC 01064023 */ subu $t0, $t0, $a2 -/* B38790 800C15F0 01264821 */ addu $t1, $t1, $a2 -/* B38794 800C15F4 000E7880 */ sll $t7, $t6, 2 -/* B38798 800C15F8 31F80FFF */ andi $t8, $t7, 0xfff -/* B3879C 800C15FC 000A7080 */ sll $t6, $t2, 2 -/* B387A0 800C1600 31CF0FFF */ andi $t7, $t6, 0xfff -/* B387A4 800C1604 0018CB00 */ sll $t9, $t8, 0xc -/* B387A8 800C1608 032FC025 */ or $t8, $t9, $t7 -/* B387AC 800C160C AC580004 */ sw $t8, 4($v0) -/* B387B0 800C1610 00A01025 */ move $v0, $a1 -/* B387B4 800C1614 3C0EE100 */ lui $t6, 0xe100 -/* B387B8 800C1618 AC4E0000 */ sw $t6, ($v0) -/* B387BC 800C161C 8E180024 */ lw $t8, 0x24($s0) -/* B387C0 800C1620 0007C940 */ sll $t9, $a3, 5 -/* B387C4 800C1624 332FFFFF */ andi $t7, $t9, 0xffff -/* B387C8 800C1628 00187540 */ sll $t6, $t8, 0x15 -/* B387CC 800C162C 01CFC025 */ or $t8, $t6, $t7 -/* B387D0 800C1630 AC580004 */ sw $t8, 4($v0) -/* B387D4 800C1634 24A50008 */ addiu $a1, $a1, 8 -/* B387D8 800C1638 00A01025 */ move $v0, $a1 -/* B387DC 800C163C 3C0E1000 */ lui $t6, (0x10000400 >> 16) # lui $t6, 0x1000 -/* B387E0 800C1640 35CE0400 */ ori $t6, (0x10000400 & 0xFFFF) # ori $t6, $t6, 0x400 -/* B387E4 800C1644 3C19F100 */ lui $t9, 0xf100 -/* B387E8 800C1648 AC590000 */ sw $t9, ($v0) -/* B387EC 800C164C AC4E0004 */ sw $t6, 4($v0) -/* B387F0 800C1650 1D00FF7D */ bgtz $t0, .L800C1448 -/* B387F4 800C1654 24A50008 */ addiu $a1, $a1, 8 -.L800C1658: -/* B387F8 800C1658 00A01025 */ move $v0, $a1 -/* B387FC 800C165C 3C0FE700 */ lui $t7, 0xe700 -/* B38800 800C1660 AC4F0000 */ sw $t7, ($v0) -/* B38804 800C1664 AC400004 */ sw $zero, 4($v0) -/* B38808 800C1668 8E180000 */ lw $t8, ($s0) -/* B3880C 800C166C 24A50008 */ addiu $a1, $a1, 8 -/* B38810 800C1670 3C01FF10 */ lui $at, 0xff10 -/* B38814 800C1674 2719FFFF */ addiu $t9, $t8, -1 -/* B38818 800C1678 332E0FFF */ andi $t6, $t9, 0xfff -/* B3881C 800C167C 01C17825 */ or $t7, $t6, $at -/* B38820 800C1680 00A01025 */ move $v0, $a1 -/* B38824 800C1684 AC4F0000 */ sw $t7, ($v0) -/* B38828 800C1688 8E180010 */ lw $t8, 0x10($s0) -/* B3882C 800C168C 24A50008 */ addiu $a1, $a1, 8 -/* B38830 800C1690 3C19ED00 */ lui $t9, 0xed00 -/* B38834 800C1694 AC580004 */ sw $t8, 4($v0) -/* B38838 800C1698 00A01025 */ move $v0, $a1 -/* B3883C 800C169C AC590000 */ sw $t9, ($v0) -/* B38840 800C16A0 8E0E0000 */ lw $t6, ($s0) -/* B38844 800C16A4 8E0F0004 */ lw $t7, 4($s0) -/* B38848 800C16A8 24A50008 */ addiu $a1, $a1, 8 -/* B3884C 800C16AC 448E8000 */ mtc1 $t6, $f16 -/* B38850 800C16B0 448F4000 */ mtc1 $t7, $f8 -/* B38854 800C16B4 468084A0 */ cvt.s.w $f18, $f16 -/* B38858 800C16B8 468042A0 */ cvt.s.w $f10, $f8 -/* B3885C 800C16BC 46009102 */ mul.s $f4, $f18, $f0 -/* B38860 800C16C0 4600218D */ trunc.w.s $f6, $f4 -/* B38864 800C16C4 46005402 */ mul.s $f16, $f10, $f0 -/* B38868 800C16C8 44183000 */ mfc1 $t8, $f6 -/* B3886C 800C16CC 00000000 */ nop -/* B38870 800C16D0 33190FFF */ andi $t9, $t8, 0xfff -/* B38874 800C16D4 4600848D */ trunc.w.s $f18, $f16 -/* B38878 800C16D8 00197300 */ sll $t6, $t9, 0xc -/* B3887C 800C16DC 44199000 */ mfc1 $t9, $f18 -/* B38880 800C16E0 00000000 */ nop -/* B38884 800C16E4 332F0FFF */ andi $t7, $t9, 0xfff -/* B38888 800C16E8 01CFC025 */ or $t8, $t6, $t7 -/* B3888C 800C16EC AC580004 */ sw $t8, 4($v0) -/* B38890 800C16F0 8FB9002C */ lw $t9, 0x2c($sp) -/* B38894 800C16F4 AF250000 */ sw $a1, ($t9) -/* B38898 800C16F8 8FBF001C */ lw $ra, 0x1c($sp) -/* B3889C 800C16FC 8FB00018 */ lw $s0, 0x18($sp) -/* B388A0 800C1700 27BD0028 */ addiu $sp, $sp, 0x28 -/* B388A4 800C1704 03E00008 */ jr $ra -/* B388A8 800C1708 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C170C.s b/asm/non_matchings/code/PreRender/func_800C170C.s deleted file mode 100644 index cb4e8089d5..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C170C.s +++ /dev/null @@ -1,280 +0,0 @@ -.rdata -glabel D_80144AB0 - .asciz "this" - .balign 4 - -glabel D_80144AB8 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144AC8 - .asciz "glistpp" - .balign 4 - -glabel D_80144AD0 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144AE0 - .asciz "glistp" - .balign 4 - -glabel D_80144AE8 - .asciz "../PreRender.c" - .balign 4 - -.text -glabel func_800C170C -/* B388AC 800C170C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* B388B0 800C1710 AFB00018 */ sw $s0, 0x18($sp) -/* B388B4 800C1714 00808025 */ move $s0, $a0 -/* B388B8 800C1718 AFA60030 */ sw $a2, 0x30($sp) -/* B388BC 800C171C AFBF001C */ sw $ra, 0x1c($sp) -/* B388C0 800C1720 AFA5002C */ sw $a1, 0x2c($sp) -/* B388C4 800C1724 AFA70034 */ sw $a3, 0x34($sp) -/* B388C8 800C1728 3C068014 */ lui $a2, %hi(D_80144AB8) # $a2, 0x8014 -/* B388CC 800C172C 3C048014 */ lui $a0, %hi(D_80144AB0) # $a0, 0x8014 -/* B388D0 800C1730 24844AB0 */ addiu $a0, %lo(D_80144AB0) # addiu $a0, $a0, 0x4ab0 -/* B388D4 800C1734 24C64AB8 */ addiu $a2, %lo(D_80144AB8) # addiu $a2, $a2, 0x4ab8 -/* B388D8 800C1738 24070157 */ li $a3, 343 -/* B388DC 800C173C 0C000B58 */ jal LogUtils_CheckNullPointer -/* B388E0 800C1740 02002825 */ move $a1, $s0 -/* B388E4 800C1744 3C048014 */ lui $a0, %hi(D_80144AC8) # $a0, 0x8014 -/* B388E8 800C1748 3C068014 */ lui $a2, %hi(D_80144AD0) # $a2, 0x8014 -/* B388EC 800C174C 24C64AD0 */ addiu $a2, %lo(D_80144AD0) # addiu $a2, $a2, 0x4ad0 -/* B388F0 800C1750 24844AC8 */ addiu $a0, %lo(D_80144AC8) # addiu $a0, $a0, 0x4ac8 -/* B388F4 800C1754 8FA5002C */ lw $a1, 0x2c($sp) -/* B388F8 800C1758 0C000B58 */ jal LogUtils_CheckNullPointer -/* B388FC 800C175C 24070158 */ li $a3, 344 -/* B38900 800C1760 8FAE002C */ lw $t6, 0x2c($sp) -/* B38904 800C1764 3C048014 */ lui $a0, %hi(D_80144AE0) # $a0, 0x8014 -/* B38908 800C1768 3C068014 */ lui $a2, %hi(D_80144AE8) # $a2, 0x8014 -/* B3890C 800C176C 8DC50000 */ lw $a1, ($t6) -/* B38910 800C1770 24C64AE8 */ addiu $a2, %lo(D_80144AE8) # addiu $a2, $a2, 0x4ae8 -/* B38914 800C1774 24844AE0 */ addiu $a0, %lo(D_80144AE0) # addiu $a0, $a0, 0x4ae0 -/* B38918 800C1778 2407015A */ li $a3, 346 -/* B3891C 800C177C 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38920 800C1780 AFA50024 */ sw $a1, 0x24($sp) -/* B38924 800C1784 8FA50024 */ lw $a1, 0x24($sp) -/* B38928 800C1788 3C0FE700 */ lui $t7, 0xe700 -/* B3892C 800C178C 3C18EF00 */ lui $t8, (0xEF000CF0 >> 16) # lui $t8, 0xef00 -/* B38930 800C1790 00A01025 */ move $v0, $a1 -/* B38934 800C1794 AC4F0000 */ sw $t7, ($v0) -/* B38938 800C1798 AC400004 */ sw $zero, 4($v0) -/* B3893C 800C179C 24A50008 */ addiu $a1, $a1, 8 -/* B38940 800C17A0 00A01025 */ move $v0, $a1 -/* B38944 800C17A4 3C190F0A */ lui $t9, (0x0F0A4004 >> 16) # lui $t9, 0xf0a -/* B38948 800C17A8 37394004 */ ori $t9, (0x0F0A4004 & 0xFFFF) # ori $t9, $t9, 0x4004 -/* B3894C 800C17AC 37180CF0 */ ori $t8, (0xEF000CF0 & 0xFFFF) # ori $t8, $t8, 0xcf0 -/* B38950 800C17B0 AC580000 */ sw $t8, ($v0) -/* B38954 800C17B4 AC590004 */ sw $t9, 4($v0) -/* B38958 800C17B8 24A50008 */ addiu $a1, $a1, 8 -/* B3895C 800C17BC 00A01025 */ move $v0, $a1 -/* B38960 800C17C0 3C0EFB00 */ lui $t6, 0xfb00 -/* B38964 800C17C4 AC4E0000 */ sw $t6, ($v0) -/* B38968 800C17C8 8FAE003C */ lw $t6, 0x3c($sp) -/* B3896C 800C17CC 8FB80038 */ lw $t8, 0x38($sp) -/* B38970 800C17D0 24A50008 */ addiu $a1, $a1, 8 -/* B38974 800C17D4 31CF00FF */ andi $t7, $t6, 0xff -/* B38978 800C17D8 0018CE00 */ sll $t9, $t8, 0x18 -/* B3897C 800C17DC 000FC400 */ sll $t8, $t7, 0x10 -/* B38980 800C17E0 8FAF0040 */ lw $t7, 0x40($sp) -/* B38984 800C17E4 03387025 */ or $t6, $t9, $t8 -/* B38988 800C17E8 3C01FF10 */ lui $at, 0xff10 -/* B3898C 800C17EC 31F900FF */ andi $t9, $t7, 0xff -/* B38990 800C17F0 0019C200 */ sll $t8, $t9, 8 -/* B38994 800C17F4 8FB90044 */ lw $t9, 0x44($sp) -/* B38998 800C17F8 01D87825 */ or $t7, $t6, $t8 -/* B3899C 800C17FC 00004025 */ move $t0, $zero -/* B389A0 800C1800 332E00FF */ andi $t6, $t9, 0xff -/* B389A4 800C1804 01EEC025 */ or $t8, $t7, $t6 -/* B389A8 800C1808 AC580004 */ sw $t8, 4($v0) -/* B389AC 800C180C 00A01025 */ move $v0, $a1 -/* B389B0 800C1810 3C0FFFFC */ lui $t7, (0xFFFCFC7E >> 16) # lui $t7, 0xfffc -/* B389B4 800C1814 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff -/* B389B8 800C1818 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff -/* B389BC 800C181C 35EFFC7E */ ori $t7, (0xFFFCFC7E & 0xFFFF) # ori $t7, $t7, 0xfc7e -/* B389C0 800C1820 AC4F0004 */ sw $t7, 4($v0) -/* B389C4 800C1824 AC590000 */ sw $t9, ($v0) -/* B389C8 800C1828 24A50008 */ addiu $a1, $a1, 8 -/* B389CC 800C182C 00A01025 */ move $v0, $a1 -/* B389D0 800C1830 3C0EFC12 */ lui $t6, (0xFC12FE25 >> 16) # lui $t6, 0xfc12 -/* B389D4 800C1834 35CEFE25 */ ori $t6, (0xFC12FE25 & 0xFFFF) # ori $t6, $t6, 0xfe25 -/* B389D8 800C1838 2418FDFE */ li $t8, -514 -/* B389DC 800C183C AC580004 */ sw $t8, 4($v0) -/* B389E0 800C1840 AC4E0000 */ sw $t6, ($v0) -/* B389E4 800C1844 8E190000 */ lw $t9, ($s0) -/* B389E8 800C1848 24A50008 */ addiu $a1, $a1, 8 -/* B389EC 800C184C 00A01025 */ move $v0, $a1 -/* B389F0 800C1850 272FFFFF */ addiu $t7, $t9, -1 -/* B389F4 800C1854 31EE0FFF */ andi $t6, $t7, 0xfff -/* B389F8 800C1858 01C1C025 */ or $t8, $t6, $at -/* B389FC 800C185C AC580000 */ sw $t8, ($v0) -/* B38A00 800C1860 8FB90034 */ lw $t9, 0x34($sp) -/* B38A04 800C1864 24A50008 */ addiu $a1, $a1, 8 -/* B38A08 800C1868 3C0FED00 */ li $t7, 0xED000000 # 0.000000 -/* B38A0C 800C186C AC590004 */ sw $t9, 4($v0) -/* B38A10 800C1870 00A01025 */ move $v0, $a1 -/* B38A14 800C1874 AC4F0000 */ sw $t7, ($v0) -/* B38A18 800C1878 8E0E0000 */ lw $t6, ($s0) -/* B38A1C 800C187C 8E180004 */ lw $t8, 4($s0) -/* B38A20 800C1880 3C014080 */ li $at, 0x40800000 # 0.000000 -/* B38A24 800C1884 448E2000 */ mtc1 $t6, $f4 -/* B38A28 800C1888 44988000 */ mtc1 $t8, $f16 -/* B38A2C 800C188C 44810000 */ mtc1 $at, $f0 -/* B38A30 800C1890 468021A0 */ cvt.s.w $f6, $f4 -/* B38A34 800C1894 24A50008 */ addiu $a1, $a1, 8 -/* B38A38 800C1898 3C1F0700 */ lui $ra, 0x700 -/* B38A3C 800C189C 468084A0 */ cvt.s.w $f18, $f16 -/* B38A40 800C18A0 46003202 */ mul.s $f8, $f6, $f0 -/* B38A44 800C18A4 4600428D */ trunc.w.s $f10, $f8 -/* B38A48 800C18A8 46009102 */ mul.s $f4, $f18, $f0 -/* B38A4C 800C18AC 44195000 */ mfc1 $t9, $f10 -/* B38A50 800C18B0 00000000 */ nop -/* B38A54 800C18B4 332F0FFF */ andi $t7, $t9, 0xfff -/* B38A58 800C18B8 4600218D */ trunc.w.s $f6, $f4 -/* B38A5C 800C18BC 000F7300 */ sll $t6, $t7, 0xc -/* B38A60 800C18C0 440F3000 */ mfc1 $t7, $f6 -/* B38A64 800C18C4 00000000 */ nop -/* B38A68 800C18C8 31F80FFF */ andi $t8, $t7, 0xfff -/* B38A6C 800C18CC 01D8C825 */ or $t9, $t6, $t8 -/* B38A70 800C18D0 AC590004 */ sw $t9, 4($v0) -/* B38A74 800C18D4 8E0F0000 */ lw $t7, ($s0) -/* B38A78 800C18D8 24181000 */ li $t8, 4096 -/* B38A7C 800C18DC 8E0B0004 */ lw $t3, 4($s0) -/* B38A80 800C18E0 000F7040 */ sll $t6, $t7, 1 -/* B38A84 800C18E4 030E001A */ div $zero, $t8, $t6 -/* B38A88 800C18E8 00006812 */ mflo $t5 -/* B38A8C 800C18EC 15C00002 */ bnez $t6, .L800C18F8 -/* B38A90 800C18F0 00000000 */ nop -/* B38A94 800C18F4 0007000D */ break 7 -.L800C18F8: -/* B38A98 800C18F8 2401FFFF */ li $at, -1 -/* B38A9C 800C18FC 15C10004 */ bne $t6, $at, .L800C1910 -/* B38AA0 800C1900 3C018000 */ lui $at, 0x8000 -/* B38AA4 800C1904 17010002 */ bne $t8, $at, .L800C1910 -/* B38AA8 800C1908 00000000 */ nop -/* B38AAC 800C190C 0006000D */ break 6 -.L800C1910: -/* B38AB0 800C1910 59600060 */ blezl $t3, .L800C1A94 -/* B38AB4 800C1914 00A01025 */ move $v0, $a1 -.L800C1918: -/* B38AB8 800C1918 8E030000 */ lw $v1, ($s0) -/* B38ABC 800C191C 016D082A */ slt $at, $t3, $t5 -/* B38AC0 800C1920 00A01025 */ move $v0, $a1 -/* B38AC4 800C1924 2463FFFF */ addiu $v1, $v1, -1 -/* B38AC8 800C1928 10200002 */ beqz $at, .L800C1934 -/* B38ACC 800C192C 00605025 */ move $t2, $v1 -/* B38AD0 800C1930 01606825 */ move $t5, $t3 -.L800C1934: -/* B38AD4 800C1934 30790FFF */ andi $t9, $v1, 0xfff -/* B38AD8 800C1938 3C01FD10 */ lui $at, 0xfd10 -/* B38ADC 800C193C 03217825 */ or $t7, $t9, $at -/* B38AE0 800C1940 AC4F0000 */ sw $t7, ($v0) -/* B38AE4 800C1944 8FB80030 */ lw $t8, 0x30($sp) -/* B38AE8 800C1948 000A3840 */ sll $a3, $t2, 1 -/* B38AEC 800C194C 24E70009 */ addiu $a3, $a3, 9 -/* B38AF0 800C1950 000738C3 */ sra $a3, $a3, 3 -/* B38AF4 800C1954 24A50008 */ addiu $a1, $a1, 8 -/* B38AF8 800C1958 AC580004 */ sw $t8, 4($v0) -/* B38AFC 800C195C 00A01025 */ move $v0, $a1 -/* B38B00 800C1960 30E701FF */ andi $a3, $a3, 0x1ff -/* B38B04 800C1964 00073A40 */ sll $a3, $a3, 9 -/* B38B08 800C1968 3C01F510 */ lui $at, 0xf510 -/* B38B0C 800C196C 00E13825 */ or $a3, $a3, $at -/* B38B10 800C1970 AC470000 */ sw $a3, ($v0) -/* B38B14 800C1974 AC5F0004 */ sw $ra, 4($v0) -/* B38B18 800C1978 24A50008 */ addiu $a1, $a1, 8 -/* B38B1C 800C197C 00A01025 */ move $v0, $a1 -/* B38B20 800C1980 000A1880 */ sll $v1, $t2, 2 -/* B38B24 800C1984 3C0EE600 */ lui $t6, 0xe600 -/* B38B28 800C1988 010D6021 */ addu $t4, $t0, $t5 -/* B38B2C 800C198C 2589FFFF */ addiu $t1, $t4, -1 -/* B38B30 800C1990 AC4E0000 */ sw $t6, ($v0) -/* B38B34 800C1994 30630FFF */ andi $v1, $v1, 0xfff -/* B38B38 800C1998 AC400004 */ sw $zero, 4($v0) -/* B38B3C 800C199C 24A50008 */ addiu $a1, $a1, 8 -/* B38B40 800C19A0 00A01025 */ move $v0, $a1 -/* B38B44 800C19A4 00031B00 */ sll $v1, $v1, 0xc -/* B38B48 800C19A8 00093080 */ sll $a2, $t1, 2 -/* B38B4C 800C19AC 00082080 */ sll $a0, $t0, 2 -/* B38B50 800C19B0 30840FFF */ andi $a0, $a0, 0xfff -/* B38B54 800C19B4 30C60FFF */ andi $a2, $a2, 0xfff -/* B38B58 800C19B8 007F7825 */ or $t7, $v1, $ra -/* B38B5C 800C19BC 3C01F400 */ lui $at, 0xf400 -/* B38B60 800C19C0 0081C825 */ or $t9, $a0, $at -/* B38B64 800C19C4 01E6C025 */ or $t8, $t7, $a2 -/* B38B68 800C19C8 AC580004 */ sw $t8, 4($v0) -/* B38B6C 800C19CC AC590000 */ sw $t9, ($v0) -/* B38B70 800C19D0 24A50008 */ addiu $a1, $a1, 8 -/* B38B74 800C19D4 00A01025 */ move $v0, $a1 -/* B38B78 800C19D8 3C0EE700 */ lui $t6, 0xe700 -/* B38B7C 800C19DC AC4E0000 */ sw $t6, ($v0) -/* B38B80 800C19E0 AC400004 */ sw $zero, 4($v0) -/* B38B84 800C19E4 24A50008 */ addiu $a1, $a1, 8 -/* B38B88 800C19E8 00A01025 */ move $v0, $a1 -/* B38B8C 800C19EC AC470000 */ sw $a3, ($v0) -/* B38B90 800C19F0 AC400004 */ sw $zero, 4($v0) -/* B38B94 800C19F4 24A50008 */ addiu $a1, $a1, 8 -/* B38B98 800C19F8 3C01F200 */ lui $at, 0xf200 -/* B38B9C 800C19FC 0081C825 */ or $t9, $a0, $at -/* B38BA0 800C1A00 00A01025 */ move $v0, $a1 -/* B38BA4 800C1A04 25580001 */ addiu $t8, $t2, 1 -/* B38BA8 800C1A08 AC590000 */ sw $t9, ($v0) -/* B38BAC 800C1A0C 00667825 */ or $t7, $v1, $a2 -/* B38BB0 800C1A10 00187080 */ sll $t6, $t8, 2 -/* B38BB4 800C1A14 AC4F0004 */ sw $t7, 4($v0) -/* B38BB8 800C1A18 31D90FFF */ andi $t9, $t6, 0xfff -/* B38BBC 800C1A1C 00197B00 */ sll $t7, $t9, 0xc -/* B38BC0 800C1A20 24A50008 */ addiu $a1, $a1, 8 -/* B38BC4 800C1A24 252E0001 */ addiu $t6, $t1, 1 -/* B38BC8 800C1A28 3C01E400 */ lui $at, 0xe400 -/* B38BCC 800C1A2C 01E1C025 */ or $t8, $t7, $at -/* B38BD0 800C1A30 000EC880 */ sll $t9, $t6, 2 -/* B38BD4 800C1A34 00A01025 */ move $v0, $a1 -/* B38BD8 800C1A38 332F0FFF */ andi $t7, $t9, 0xfff -/* B38BDC 800C1A3C 030F7025 */ or $t6, $t8, $t7 -/* B38BE0 800C1A40 AC4E0000 */ sw $t6, ($v0) -/* B38BE4 800C1A44 AC440004 */ sw $a0, 4($v0) -/* B38BE8 800C1A48 24A50008 */ addiu $a1, $a1, 8 -/* B38BEC 800C1A4C 00A01025 */ move $v0, $a1 -/* B38BF0 800C1A50 0008C140 */ sll $t8, $t0, 5 -/* B38BF4 800C1A54 3C19E100 */ lui $t9, 0xe100 -/* B38BF8 800C1A58 AC590000 */ sw $t9, ($v0) -/* B38BFC 800C1A5C 330FFFFF */ andi $t7, $t8, 0xffff -/* B38C00 800C1A60 AC4F0004 */ sw $t7, 4($v0) -/* B38C04 800C1A64 24A50008 */ addiu $a1, $a1, 8 -/* B38C08 800C1A68 00A01025 */ move $v0, $a1 -/* B38C0C 800C1A6C 3C190400 */ lui $t9, (0x04000400 >> 16) # lui $t9, 0x400 -/* B38C10 800C1A70 37390400 */ ori $t9, (0x04000400 & 0xFFFF) # ori $t9, $t9, 0x400 -/* B38C14 800C1A74 3C0EF100 */ lui $t6, 0xf100 -/* B38C18 800C1A78 016D5823 */ subu $t3, $t3, $t5 -/* B38C1C 800C1A7C AC4E0000 */ sw $t6, ($v0) -/* B38C20 800C1A80 AC590004 */ sw $t9, 4($v0) -/* B38C24 800C1A84 24A50008 */ addiu $a1, $a1, 8 -/* B38C28 800C1A88 1D60FFA3 */ bgtz $t3, .L800C1918 -/* B38C2C 800C1A8C 01804025 */ move $t0, $t4 -/* B38C30 800C1A90 00A01025 */ move $v0, $a1 -.L800C1A94: -/* B38C34 800C1A94 3C18E700 */ lui $t8, 0xe700 -/* B38C38 800C1A98 AC580000 */ sw $t8, ($v0) -/* B38C3C 800C1A9C AC400004 */ sw $zero, 4($v0) -/* B38C40 800C1AA0 8E0F0000 */ lw $t7, ($s0) -/* B38C44 800C1AA4 24A50008 */ addiu $a1, $a1, 8 -/* B38C48 800C1AA8 3C01FF10 */ lui $at, 0xff10 -/* B38C4C 800C1AAC 25EEFFFF */ addiu $t6, $t7, -1 -/* B38C50 800C1AB0 31D90FFF */ andi $t9, $t6, 0xfff -/* B38C54 800C1AB4 0321C025 */ or $t8, $t9, $at -/* B38C58 800C1AB8 00A01025 */ move $v0, $a1 -/* B38C5C 800C1ABC AC580000 */ sw $t8, ($v0) -/* B38C60 800C1AC0 8E0F0010 */ lw $t7, 0x10($s0) -/* B38C64 800C1AC4 24A50008 */ addiu $a1, $a1, 8 -/* B38C68 800C1AC8 AC4F0004 */ sw $t7, 4($v0) -/* B38C6C 800C1ACC 8FAE002C */ lw $t6, 0x2c($sp) -/* B38C70 800C1AD0 ADC50000 */ sw $a1, ($t6) -/* B38C74 800C1AD4 8FBF001C */ lw $ra, 0x1c($sp) -/* B38C78 800C1AD8 8FB00018 */ lw $s0, 0x18($sp) -/* B38C7C 800C1ADC 27BD0028 */ addiu $sp, $sp, 0x28 -/* B38C80 800C1AE0 03E00008 */ jr $ra -/* B38C84 800C1AE4 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C1AE8.s b/asm/non_matchings/code/PreRender/func_800C1AE8.s deleted file mode 100644 index 5f7ac95a27..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C1AE8.s +++ /dev/null @@ -1,17 +0,0 @@ -glabel func_800C1AE8 -/* B38C88 800C1AE8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* B38C8C 800C1AEC AFBF0024 */ sw $ra, 0x24($sp) -/* B38C90 800C1AF0 240E00FF */ li $t6, 255 -/* B38C94 800C1AF4 240F00FF */ li $t7, 255 -/* B38C98 800C1AF8 241800FF */ li $t8, 255 -/* B38C9C 800C1AFC 241900FF */ li $t9, 255 -/* B38CA0 800C1B00 AFB9001C */ sw $t9, 0x1c($sp) -/* B38CA4 800C1B04 AFB80018 */ sw $t8, 0x18($sp) -/* B38CA8 800C1B08 AFAF0014 */ sw $t7, 0x14($sp) -/* B38CAC 800C1B0C 0C0305C3 */ jal func_800C170C -/* B38CB0 800C1B10 AFAE0010 */ sw $t6, 0x10($sp) -/* B38CB4 800C1B14 8FBF0024 */ lw $ra, 0x24($sp) -/* B38CB8 800C1B18 27BD0028 */ addiu $sp, $sp, 0x28 -/* B38CBC 800C1B1C 03E00008 */ jr $ra -/* B38CC0 800C1B20 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C1B24.s b/asm/non_matchings/code/PreRender/func_800C1B24.s deleted file mode 100644 index d7c719575e..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C1B24.s +++ /dev/null @@ -1,255 +0,0 @@ -.rdata -glabel D_80144AF8 - .asciz "this" - .balign 4 - -glabel D_80144B00 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144B10 - .asciz "glistpp" - .balign 4 - -glabel D_80144B18 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144B28 - .asciz "glistp" - .balign 4 - -glabel D_80144B30 - .asciz "../PreRender.c" - .balign 4 - -.text -glabel func_800C1B24 -/* B38CC4 800C1B24 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* B38CC8 800C1B28 AFB00018 */ sw $s0, 0x18($sp) -/* B38CCC 800C1B2C 00808025 */ move $s0, $a0 -/* B38CD0 800C1B30 AFA60030 */ sw $a2, 0x30($sp) -/* B38CD4 800C1B34 AFBF001C */ sw $ra, 0x1c($sp) -/* B38CD8 800C1B38 AFA5002C */ sw $a1, 0x2c($sp) -/* B38CDC 800C1B3C AFA70034 */ sw $a3, 0x34($sp) -/* B38CE0 800C1B40 3C068014 */ lui $a2, %hi(D_80144B00) # $a2, 0x8014 -/* B38CE4 800C1B44 3C048014 */ lui $a0, %hi(D_80144AF8) # $a0, 0x8014 -/* B38CE8 800C1B48 24844AF8 */ addiu $a0, %lo(D_80144AF8) # addiu $a0, $a0, 0x4af8 -/* B38CEC 800C1B4C 24C64B00 */ addiu $a2, %lo(D_80144B00) # addiu $a2, $a2, 0x4b00 -/* B38CF0 800C1B50 240701A6 */ li $a3, 422 -/* B38CF4 800C1B54 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38CF8 800C1B58 02002825 */ move $a1, $s0 -/* B38CFC 800C1B5C 3C048014 */ lui $a0, %hi(D_80144B10) # $a0, 0x8014 -/* B38D00 800C1B60 3C068014 */ lui $a2, %hi(D_80144B18) # $a2, 0x8014 -/* B38D04 800C1B64 24C64B18 */ addiu $a2, %lo(D_80144B18) # addiu $a2, $a2, 0x4b18 -/* B38D08 800C1B68 24844B10 */ addiu $a0, %lo(D_80144B10) # addiu $a0, $a0, 0x4b10 -/* B38D0C 800C1B6C 8FA5002C */ lw $a1, 0x2c($sp) -/* B38D10 800C1B70 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38D14 800C1B74 240701A7 */ li $a3, 423 -/* B38D18 800C1B78 8FAE002C */ lw $t6, 0x2c($sp) -/* B38D1C 800C1B7C 3C048014 */ lui $a0, %hi(D_80144B28) # $a0, 0x8014 -/* B38D20 800C1B80 3C068014 */ lui $a2, %hi(D_80144B30) # $a2, 0x8014 -/* B38D24 800C1B84 8DC50000 */ lw $a1, ($t6) -/* B38D28 800C1B88 24C64B30 */ addiu $a2, %lo(D_80144B30) # addiu $a2, $a2, 0x4b30 -/* B38D2C 800C1B8C 24844B28 */ addiu $a0, %lo(D_80144B28) # addiu $a0, $a0, 0x4b28 -/* B38D30 800C1B90 240701A9 */ li $a3, 425 -/* B38D34 800C1B94 0C000B58 */ jal LogUtils_CheckNullPointer -/* B38D38 800C1B98 AFA50024 */ sw $a1, 0x24($sp) -/* B38D3C 800C1B9C 8FA50024 */ lw $a1, 0x24($sp) -/* B38D40 800C1BA0 3C0FE700 */ lui $t7, 0xe700 -/* B38D44 800C1BA4 3C18EF00 */ lui $t8, (0xEF000CF0 >> 16) # lui $t8, 0xef00 -/* B38D48 800C1BA8 00A01025 */ move $v0, $a1 -/* B38D4C 800C1BAC AC4F0000 */ sw $t7, ($v0) -/* B38D50 800C1BB0 AC400004 */ sw $zero, 4($v0) -/* B38D54 800C1BB4 24A50008 */ addiu $a1, $a1, 8 -/* B38D58 800C1BB8 00A01025 */ move $v0, $a1 -/* B38D5C 800C1BBC 3C190F0A */ lui $t9, (0x0F0A0004 >> 16) # lui $t9, 0xf0a -/* B38D60 800C1BC0 37390004 */ ori $t9, (0x0F0A0004 & 0xFFFF) # ori $t9, $t9, 4 -/* B38D64 800C1BC4 37180CF0 */ ori $t8, (0xEF000CF0 & 0xFFFF) # ori $t8, $t8, 0xcf0 -/* B38D68 800C1BC8 AC580000 */ sw $t8, ($v0) -/* B38D6C 800C1BCC AC590004 */ sw $t9, 4($v0) -/* B38D70 800C1BD0 24A50008 */ addiu $a1, $a1, 8 -/* B38D74 800C1BD4 00A01025 */ move $v0, $a1 -/* B38D78 800C1BD8 3C0FFFFC */ lui $t7, (0xFFFCFE7F >> 16) # lui $t7, 0xfffc -/* B38D7C 800C1BDC 3C0EFCFF */ lui $t6, (0xFCFFFFFF >> 16) # lui $t6, 0xfcff -/* B38D80 800C1BE0 35CEFFFF */ ori $t6, (0xFCFFFFFF & 0xFFFF) # ori $t6, $t6, 0xffff -/* B38D84 800C1BE4 35EFFE7F */ ori $t7, (0xFFFCFE7F & 0xFFFF) # ori $t7, $t7, 0xfe7f -/* B38D88 800C1BE8 AC4F0004 */ sw $t7, 4($v0) -/* B38D8C 800C1BEC AC4E0000 */ sw $t6, ($v0) -/* B38D90 800C1BF0 8E180000 */ lw $t8, ($s0) -/* B38D94 800C1BF4 24A50008 */ addiu $a1, $a1, 8 -/* B38D98 800C1BF8 3C01FF88 */ lui $at, 0xff88 -/* B38D9C 800C1BFC 2719FFFF */ addiu $t9, $t8, -1 -/* B38DA0 800C1C00 332E0FFF */ andi $t6, $t9, 0xfff -/* B38DA4 800C1C04 01C17825 */ or $t7, $t6, $at -/* B38DA8 800C1C08 00A01025 */ move $v0, $a1 -/* B38DAC 800C1C0C AC4F0000 */ sw $t7, ($v0) -/* B38DB0 800C1C10 8FB80034 */ lw $t8, 0x34($sp) -/* B38DB4 800C1C14 24A50008 */ addiu $a1, $a1, 8 -/* B38DB8 800C1C18 3C19ED00 */ li $t9, 0xED000000 # 0.000000 -/* B38DBC 800C1C1C AC580004 */ sw $t8, 4($v0) -/* B38DC0 800C1C20 00A01025 */ move $v0, $a1 -/* B38DC4 800C1C24 AC590000 */ sw $t9, ($v0) -/* B38DC8 800C1C28 8E0E0000 */ lw $t6, ($s0) -/* B38DCC 800C1C2C 8E0F0004 */ lw $t7, 4($s0) -/* B38DD0 800C1C30 3C014080 */ li $at, 0x40800000 # 0.000000 -/* B38DD4 800C1C34 448E2000 */ mtc1 $t6, $f4 -/* B38DD8 800C1C38 448F8000 */ mtc1 $t7, $f16 -/* B38DDC 800C1C3C 44810000 */ mtc1 $at, $f0 -/* B38DE0 800C1C40 468021A0 */ cvt.s.w $f6, $f4 -/* B38DE4 800C1C44 24A50008 */ addiu $a1, $a1, 8 -/* B38DE8 800C1C48 00004025 */ move $t0, $zero -/* B38DEC 800C1C4C 3C1F0700 */ lui $ra, 0x700 -/* B38DF0 800C1C50 468084A0 */ cvt.s.w $f18, $f16 -/* B38DF4 800C1C54 46003202 */ mul.s $f8, $f6, $f0 -/* B38DF8 800C1C58 4600428D */ trunc.w.s $f10, $f8 -/* B38DFC 800C1C5C 46009102 */ mul.s $f4, $f18, $f0 -/* B38E00 800C1C60 44185000 */ mfc1 $t8, $f10 -/* B38E04 800C1C64 00000000 */ nop -/* B38E08 800C1C68 33190FFF */ andi $t9, $t8, 0xfff -/* B38E0C 800C1C6C 4600218D */ trunc.w.s $f6, $f4 -/* B38E10 800C1C70 00197300 */ sll $t6, $t9, 0xc -/* B38E14 800C1C74 44193000 */ mfc1 $t9, $f6 -/* B38E18 800C1C78 00000000 */ nop -/* B38E1C 800C1C7C 332F0FFF */ andi $t7, $t9, 0xfff -/* B38E20 800C1C80 01CFC025 */ or $t8, $t6, $t7 -/* B38E24 800C1C84 AC580004 */ sw $t8, 4($v0) -/* B38E28 800C1C88 8E190000 */ lw $t9, ($s0) -/* B38E2C 800C1C8C 240F1000 */ li $t7, 4096 -/* B38E30 800C1C90 8E0B0004 */ lw $t3, 4($s0) -/* B38E34 800C1C94 00197040 */ sll $t6, $t9, 1 -/* B38E38 800C1C98 01EE001A */ div $zero, $t7, $t6 -/* B38E3C 800C1C9C 00006812 */ mflo $t5 -/* B38E40 800C1CA0 15C00002 */ bnez $t6, .L800C1CAC -/* B38E44 800C1CA4 00000000 */ nop -/* B38E48 800C1CA8 0007000D */ break 7 -.L800C1CAC: -/* B38E4C 800C1CAC 2401FFFF */ li $at, -1 -/* B38E50 800C1CB0 15C10004 */ bne $t6, $at, .L800C1CC4 -/* B38E54 800C1CB4 3C018000 */ lui $at, 0x8000 -/* B38E58 800C1CB8 15E10002 */ bne $t7, $at, .L800C1CC4 -/* B38E5C 800C1CBC 00000000 */ nop -/* B38E60 800C1CC0 0006000D */ break 6 -.L800C1CC4: -/* B38E64 800C1CC4 59600060 */ blezl $t3, .L800C1E48 -/* B38E68 800C1CC8 00A01025 */ move $v0, $a1 -.L800C1CCC: -/* B38E6C 800C1CCC 8E030000 */ lw $v1, ($s0) -/* B38E70 800C1CD0 016D082A */ slt $at, $t3, $t5 -/* B38E74 800C1CD4 00A01025 */ move $v0, $a1 -/* B38E78 800C1CD8 2463FFFF */ addiu $v1, $v1, -1 -/* B38E7C 800C1CDC 10200002 */ beqz $at, .L800C1CE8 -/* B38E80 800C1CE0 00605025 */ move $t2, $v1 -/* B38E84 800C1CE4 01606825 */ move $t5, $t3 -.L800C1CE8: -/* B38E88 800C1CE8 30780FFF */ andi $t8, $v1, 0xfff -/* B38E8C 800C1CEC 3C01FD70 */ lui $at, 0xfd70 -/* B38E90 800C1CF0 0301C825 */ or $t9, $t8, $at -/* B38E94 800C1CF4 AC590000 */ sw $t9, ($v0) -/* B38E98 800C1CF8 8FAF0030 */ lw $t7, 0x30($sp) -/* B38E9C 800C1CFC 000A3840 */ sll $a3, $t2, 1 -/* B38EA0 800C1D00 24E70009 */ addiu $a3, $a3, 9 -/* B38EA4 800C1D04 000738C3 */ sra $a3, $a3, 3 -/* B38EA8 800C1D08 24A50008 */ addiu $a1, $a1, 8 -/* B38EAC 800C1D0C AC4F0004 */ sw $t7, 4($v0) -/* B38EB0 800C1D10 00A01025 */ move $v0, $a1 -/* B38EB4 800C1D14 30E701FF */ andi $a3, $a3, 0x1ff -/* B38EB8 800C1D18 00073A40 */ sll $a3, $a3, 9 -/* B38EBC 800C1D1C 3C01F570 */ lui $at, 0xf570 -/* B38EC0 800C1D20 00E13825 */ or $a3, $a3, $at -/* B38EC4 800C1D24 AC470000 */ sw $a3, ($v0) -/* B38EC8 800C1D28 AC5F0004 */ sw $ra, 4($v0) -/* B38ECC 800C1D2C 24A50008 */ addiu $a1, $a1, 8 -/* B38ED0 800C1D30 00A01025 */ move $v0, $a1 -/* B38ED4 800C1D34 000A1880 */ sll $v1, $t2, 2 -/* B38ED8 800C1D38 3C0EE600 */ lui $t6, 0xe600 -/* B38EDC 800C1D3C 010D6021 */ addu $t4, $t0, $t5 -/* B38EE0 800C1D40 2589FFFF */ addiu $t1, $t4, -1 -/* B38EE4 800C1D44 AC4E0000 */ sw $t6, ($v0) -/* B38EE8 800C1D48 30630FFF */ andi $v1, $v1, 0xfff -/* B38EEC 800C1D4C AC400004 */ sw $zero, 4($v0) -/* B38EF0 800C1D50 24A50008 */ addiu $a1, $a1, 8 -/* B38EF4 800C1D54 00A01025 */ move $v0, $a1 -/* B38EF8 800C1D58 00031B00 */ sll $v1, $v1, 0xc -/* B38EFC 800C1D5C 00093080 */ sll $a2, $t1, 2 -/* B38F00 800C1D60 00082080 */ sll $a0, $t0, 2 -/* B38F04 800C1D64 30840FFF */ andi $a0, $a0, 0xfff -/* B38F08 800C1D68 30C60FFF */ andi $a2, $a2, 0xfff -/* B38F0C 800C1D6C 007FC825 */ or $t9, $v1, $ra -/* B38F10 800C1D70 3C01F400 */ lui $at, 0xf400 -/* B38F14 800C1D74 0081C025 */ or $t8, $a0, $at -/* B38F18 800C1D78 03267825 */ or $t7, $t9, $a2 -/* B38F1C 800C1D7C AC4F0004 */ sw $t7, 4($v0) -/* B38F20 800C1D80 AC580000 */ sw $t8, ($v0) -/* B38F24 800C1D84 24A50008 */ addiu $a1, $a1, 8 -/* B38F28 800C1D88 00A01025 */ move $v0, $a1 -/* B38F2C 800C1D8C 3C0EE700 */ lui $t6, 0xe700 -/* B38F30 800C1D90 AC4E0000 */ sw $t6, ($v0) -/* B38F34 800C1D94 AC400004 */ sw $zero, 4($v0) -/* B38F38 800C1D98 24A50008 */ addiu $a1, $a1, 8 -/* B38F3C 800C1D9C 00A01025 */ move $v0, $a1 -/* B38F40 800C1DA0 AC470000 */ sw $a3, ($v0) -/* B38F44 800C1DA4 AC400004 */ sw $zero, 4($v0) -/* B38F48 800C1DA8 24A50008 */ addiu $a1, $a1, 8 -/* B38F4C 800C1DAC 3C01F200 */ lui $at, 0xf200 -/* B38F50 800C1DB0 0081C025 */ or $t8, $a0, $at -/* B38F54 800C1DB4 00A01025 */ move $v0, $a1 -/* B38F58 800C1DB8 254F0001 */ addiu $t7, $t2, 1 -/* B38F5C 800C1DBC AC580000 */ sw $t8, ($v0) -/* B38F60 800C1DC0 0066C825 */ or $t9, $v1, $a2 -/* B38F64 800C1DC4 000F7080 */ sll $t6, $t7, 2 -/* B38F68 800C1DC8 AC590004 */ sw $t9, 4($v0) -/* B38F6C 800C1DCC 31D80FFF */ andi $t8, $t6, 0xfff -/* B38F70 800C1DD0 0018CB00 */ sll $t9, $t8, 0xc -/* B38F74 800C1DD4 24A50008 */ addiu $a1, $a1, 8 -/* B38F78 800C1DD8 252E0001 */ addiu $t6, $t1, 1 -/* B38F7C 800C1DDC 3C01E400 */ lui $at, 0xe400 -/* B38F80 800C1DE0 03217825 */ or $t7, $t9, $at -/* B38F84 800C1DE4 000EC080 */ sll $t8, $t6, 2 -/* B38F88 800C1DE8 00A01025 */ move $v0, $a1 -/* B38F8C 800C1DEC 33190FFF */ andi $t9, $t8, 0xfff -/* B38F90 800C1DF0 01F97025 */ or $t6, $t7, $t9 -/* B38F94 800C1DF4 AC4E0000 */ sw $t6, ($v0) -/* B38F98 800C1DF8 AC440004 */ sw $a0, 4($v0) -/* B38F9C 800C1DFC 24A50008 */ addiu $a1, $a1, 8 -/* B38FA0 800C1E00 00A01025 */ move $v0, $a1 -/* B38FA4 800C1E04 00087940 */ sll $t7, $t0, 5 -/* B38FA8 800C1E08 3C18E100 */ lui $t8, 0xe100 -/* B38FAC 800C1E0C AC580000 */ sw $t8, ($v0) -/* B38FB0 800C1E10 31F9FFFF */ andi $t9, $t7, 0xffff -/* B38FB4 800C1E14 AC590004 */ sw $t9, 4($v0) -/* B38FB8 800C1E18 24A50008 */ addiu $a1, $a1, 8 -/* B38FBC 800C1E1C 00A01025 */ move $v0, $a1 -/* B38FC0 800C1E20 3C180400 */ lui $t8, (0x04000400 >> 16) # lui $t8, 0x400 -/* B38FC4 800C1E24 37180400 */ ori $t8, (0x04000400 & 0xFFFF) # ori $t8, $t8, 0x400 -/* B38FC8 800C1E28 3C0EF100 */ lui $t6, 0xf100 -/* B38FCC 800C1E2C 016D5823 */ subu $t3, $t3, $t5 -/* B38FD0 800C1E30 AC4E0000 */ sw $t6, ($v0) -/* B38FD4 800C1E34 AC580004 */ sw $t8, 4($v0) -/* B38FD8 800C1E38 24A50008 */ addiu $a1, $a1, 8 -/* B38FDC 800C1E3C 1D60FFA3 */ bgtz $t3, .L800C1CCC -/* B38FE0 800C1E40 01804025 */ move $t0, $t4 -/* B38FE4 800C1E44 00A01025 */ move $v0, $a1 -.L800C1E48: -/* B38FE8 800C1E48 3C0FE700 */ lui $t7, 0xe700 -/* B38FEC 800C1E4C AC4F0000 */ sw $t7, ($v0) -/* B38FF0 800C1E50 AC400004 */ sw $zero, 4($v0) -/* B38FF4 800C1E54 8E190000 */ lw $t9, ($s0) -/* B38FF8 800C1E58 24A50008 */ addiu $a1, $a1, 8 -/* B38FFC 800C1E5C 3C01FF10 */ lui $at, 0xff10 -/* B39000 800C1E60 272EFFFF */ addiu $t6, $t9, -1 -/* B39004 800C1E64 31D80FFF */ andi $t8, $t6, 0xfff -/* B39008 800C1E68 03017825 */ or $t7, $t8, $at -/* B3900C 800C1E6C 00A01025 */ move $v0, $a1 -/* B39010 800C1E70 AC4F0000 */ sw $t7, ($v0) -/* B39014 800C1E74 8E190010 */ lw $t9, 0x10($s0) -/* B39018 800C1E78 24A50008 */ addiu $a1, $a1, 8 -/* B3901C 800C1E7C AC590004 */ sw $t9, 4($v0) -/* B39020 800C1E80 8FAE002C */ lw $t6, 0x2c($sp) -/* B39024 800C1E84 ADC50000 */ sw $a1, ($t6) -/* B39028 800C1E88 8FBF001C */ lw $ra, 0x1c($sp) -/* B3902C 800C1E8C 8FB00018 */ lw $s0, 0x18($sp) -/* B39030 800C1E90 27BD0028 */ addiu $sp, $sp, 0x28 -/* B39034 800C1E94 03E00008 */ jr $ra -/* B39038 800C1E98 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C1E9C.s b/asm/non_matchings/code/PreRender/func_800C1E9C.s deleted file mode 100644 index 392a0ac81b..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C1E9C.s +++ /dev/null @@ -1,54 +0,0 @@ -.rdata -glabel D_80144B40 - .asciz "this->zbuf_save" - .balign 4 - -glabel D_80144B50 - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144B60 - .asciz "this->zbuf" - .balign 4 - -glabel D_80144B6C - .asciz "../PreRender.c" - .balign 4 - -.text -glabel func_800C1E9C -/* B3903C 800C1E9C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* B39040 800C1EA0 AFB00018 */ sw $s0, 0x18($sp) -/* B39044 800C1EA4 00808025 */ move $s0, $a0 -/* B39048 800C1EA8 AFBF001C */ sw $ra, 0x1c($sp) -/* B3904C 800C1EAC AFA50024 */ sw $a1, 0x24($sp) -/* B39050 800C1EB0 3C048014 */ lui $a0, %hi(D_80144B40) # $a0, 0x8014 -/* B39054 800C1EB4 3C068014 */ lui $a2, %hi(D_80144B50) # $a2, 0x8014 -/* B39058 800C1EB8 24C64B50 */ addiu $a2, %lo(D_80144B50) # addiu $a2, $a2, 0x4b50 -/* B3905C 800C1EBC 24844B40 */ addiu $a0, %lo(D_80144B40) # addiu $a0, $a0, 0x4b40 -/* B39060 800C1EC0 8E050020 */ lw $a1, 0x20($s0) -/* B39064 800C1EC4 0C000B58 */ jal LogUtils_CheckNullPointer -/* B39068 800C1EC8 240701E1 */ li $a3, 481 -/* B3906C 800C1ECC 3C048014 */ lui $a0, %hi(D_80144B60) # $a0, 0x8014 -/* B39070 800C1ED0 3C068014 */ lui $a2, %hi(D_80144B6C) # $a2, 0x8014 -/* B39074 800C1ED4 24C64B6C */ addiu $a2, %lo(D_80144B6C) # addiu $a2, $a2, 0x4b6c -/* B39078 800C1ED8 24844B60 */ addiu $a0, %lo(D_80144B60) # addiu $a0, $a0, 0x4b60 -/* B3907C 800C1EDC 8E05001C */ lw $a1, 0x1c($s0) -/* B39080 800C1EE0 0C000B58 */ jal LogUtils_CheckNullPointer -/* B39084 800C1EE4 240701E2 */ li $a3, 482 -/* B39088 800C1EE8 8E070020 */ lw $a3, 0x20($s0) -/* B3908C 800C1EEC 50E00008 */ beql $a3, $zero, .L800C1F10 -/* B39090 800C1EF0 8FBF001C */ lw $ra, 0x1c($sp) -/* B39094 800C1EF4 8E06001C */ lw $a2, 0x1c($s0) -/* B39098 800C1EF8 02002025 */ move $a0, $s0 -/* B3909C 800C1EFC 50C00004 */ beql $a2, $zero, .L800C1F10 -/* B390A0 800C1F00 8FBF001C */ lw $ra, 0x1c($sp) -/* B390A4 800C1F04 0C0303CA */ jal func_800C0F28 -/* B390A8 800C1F08 8FA50024 */ lw $a1, 0x24($sp) -/* B390AC 800C1F0C 8FBF001C */ lw $ra, 0x1c($sp) -.L800C1F10: -/* B390B0 800C1F10 8FB00018 */ lw $s0, 0x18($sp) -/* B390B4 800C1F14 27BD0020 */ addiu $sp, $sp, 0x20 -/* B390B8 800C1F18 03E00008 */ jr $ra -/* B390BC 800C1F1C 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C1F20.s b/asm/non_matchings/code/PreRender/func_800C1F20.s deleted file mode 100644 index 129ad46c7e..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C1F20.s +++ /dev/null @@ -1,54 +0,0 @@ -.rdata -glabel D_80144B7C - .asciz "this->fbuf_save" - .balign 4 - -glabel D_80144B8C - .asciz "../PreRender.c" - .balign 4 - -glabel D_80144B9C - .asciz "this->fbuf" - .balign 4 - -glabel D_80144BA8 - .asciz "../PreRender.c" - .balign 4 - -.text -glabel func_800C1F20 -/* B390C0 800C1F20 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* B390C4 800C1F24 AFB00018 */ sw $s0, 0x18($sp) -/* B390C8 800C1F28 00808025 */ move $s0, $a0 -/* B390CC 800C1F2C AFBF001C */ sw $ra, 0x1c($sp) -/* B390D0 800C1F30 AFA50024 */ sw $a1, 0x24($sp) -/* B390D4 800C1F34 3C048014 */ lui $a0, %hi(D_80144B7C) # $a0, 0x8014 -/* B390D8 800C1F38 3C068014 */ lui $a2, %hi(D_80144B8C) # $a2, 0x8014 -/* B390DC 800C1F3C 24C64B8C */ addiu $a2, %lo(D_80144B8C) # addiu $a2, $a2, 0x4b8c -/* B390E0 800C1F40 24844B7C */ addiu $a0, %lo(D_80144B7C) # addiu $a0, $a0, 0x4b7c -/* B390E4 800C1F44 8E050014 */ lw $a1, 0x14($s0) -/* B390E8 800C1F48 0C000B58 */ jal LogUtils_CheckNullPointer -/* B390EC 800C1F4C 240701EF */ li $a3, 495 -/* B390F0 800C1F50 3C048014 */ lui $a0, %hi(D_80144B9C) # $a0, 0x8014 -/* B390F4 800C1F54 3C068014 */ lui $a2, %hi(D_80144BA8) # $a2, 0x8014 -/* B390F8 800C1F58 24C64BA8 */ addiu $a2, %lo(D_80144BA8) # addiu $a2, $a2, 0x4ba8 -/* B390FC 800C1F5C 24844B9C */ addiu $a0, %lo(D_80144B9C) # addiu $a0, $a0, 0x4b9c -/* B39100 800C1F60 8E050010 */ lw $a1, 0x10($s0) -/* B39104 800C1F64 0C000B58 */ jal LogUtils_CheckNullPointer -/* B39108 800C1F68 240701F0 */ li $a3, 496 -/* B3910C 800C1F6C 8E070014 */ lw $a3, 0x14($s0) -/* B39110 800C1F70 50E00008 */ beql $a3, $zero, .L800C1F94 -/* B39114 800C1F74 8FBF001C */ lw $ra, 0x1c($sp) -/* B39118 800C1F78 8E060010 */ lw $a2, 0x10($s0) -/* B3911C 800C1F7C 02002025 */ move $a0, $s0 -/* B39120 800C1F80 50C00004 */ beql $a2, $zero, .L800C1F94 -/* B39124 800C1F84 8FBF001C */ lw $ra, 0x1c($sp) -/* B39128 800C1F88 0C0306BA */ jal func_800C1AE8 -/* B3912C 800C1F8C 8FA50024 */ lw $a1, 0x24($sp) -/* B39130 800C1F90 8FBF001C */ lw $ra, 0x1c($sp) -.L800C1F94: -/* B39134 800C1F94 8FB00018 */ lw $s0, 0x18($sp) -/* B39138 800C1F98 27BD0020 */ addiu $sp, $sp, 0x20 -/* B3913C 800C1F9C 03E00008 */ jr $ra -/* B39140 800C1FA0 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C1FA4.s b/asm/non_matchings/code/PreRender/func_800C1FA4.s deleted file mode 100644 index 490e0d011e..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C1FA4.s +++ /dev/null @@ -1,70 +0,0 @@ -glabel func_800C1FA4 -/* B39144 800C1FA4 8CA30000 */ lw $v1, ($a1) -/* B39148 800C1FA8 3C06E700 */ lui $a2, 0xe700 -/* B3914C 800C1FAC 3C0EF900 */ lui $t6, 0xf900 -/* B39150 800C1FB0 AC660000 */ sw $a2, ($v1) -/* B39154 800C1FB4 24620008 */ addiu $v0, $v1, 8 -/* B39158 800C1FB8 AC600004 */ sw $zero, 4($v1) -/* B3915C 800C1FBC 00401825 */ move $v1, $v0 -/* B39160 800C1FC0 240FFF08 */ li $t7, -248 -/* B39164 800C1FC4 AC6F0004 */ sw $t7, 4($v1) -/* B39168 800C1FC8 AC6E0000 */ sw $t6, ($v1) -/* B3916C 800C1FCC 24420008 */ addiu $v0, $v0, 8 -/* B39170 800C1FD0 00401825 */ move $v1, $v0 -/* B39174 800C1FD4 3C18EE00 */ lui $t8, 0xee00 -/* B39178 800C1FD8 2419FFFF */ li $t9, -1 -/* B3917C 800C1FDC AC790004 */ sw $t9, 4($v1) -/* B39180 800C1FE0 AC780000 */ sw $t8, ($v1) -/* B39184 800C1FE4 24420008 */ addiu $v0, $v0, 8 -/* B39188 800C1FE8 00401825 */ move $v1, $v0 -/* B3918C 800C1FEC 3C08EF00 */ lui $t0, (0xEF000CF0 >> 16) # lui $t0, 0xef00 -/* B39190 800C1FF0 3C090FA5 */ lui $t1, (0x0FA54044 >> 16) # lui $t1, 0xfa5 -/* B39194 800C1FF4 35294044 */ ori $t1, (0x0FA54044 & 0xFFFF) # ori $t1, $t1, 0x4044 -/* B39198 800C1FF8 35080CF0 */ ori $t0, (0xEF000CF0 & 0xFFFF) # ori $t0, $t0, 0xcf0 -/* B3919C 800C1FFC AC680000 */ sw $t0, ($v1) -/* B391A0 800C2000 AC690004 */ sw $t1, 4($v1) -/* B391A4 800C2004 24420008 */ addiu $v0, $v0, 8 -/* B391A8 800C2008 00401825 */ move $v1, $v0 -/* B391AC 800C200C 3C0AED00 */ li $t2, 0xED000000 # 0.000000 -/* B391B0 800C2010 AC6A0000 */ sw $t2, ($v1) -/* B391B4 800C2014 8C8B0000 */ lw $t3, ($a0) -/* B391B8 800C2018 8C980004 */ lw $t8, 4($a0) -/* B391BC 800C201C 3C014080 */ li $at, 0x40800000 # 0.000000 -/* B391C0 800C2020 448B2000 */ mtc1 $t3, $f4 -/* B391C4 800C2024 44988000 */ mtc1 $t8, $f16 -/* B391C8 800C2028 44810000 */ mtc1 $at, $f0 -/* B391CC 800C202C 468021A0 */ cvt.s.w $f6, $f4 -/* B391D0 800C2030 24420008 */ addiu $v0, $v0, 8 -/* B391D4 800C2034 3C01F600 */ lui $at, 0xf600 -/* B391D8 800C2038 468084A0 */ cvt.s.w $f18, $f16 -/* B391DC 800C203C 46003202 */ mul.s $f8, $f6, $f0 -/* B391E0 800C2040 00000000 */ nop -/* B391E4 800C2044 46009102 */ mul.s $f4, $f18, $f0 -/* B391E8 800C2048 4600428D */ trunc.w.s $f10, $f8 -/* B391EC 800C204C 4600218D */ trunc.w.s $f6, $f4 -/* B391F0 800C2050 440D5000 */ mfc1 $t5, $f10 -/* B391F4 800C2054 44083000 */ mfc1 $t0, $f6 -/* B391F8 800C2058 31AE0FFF */ andi $t6, $t5, 0xfff -/* B391FC 800C205C 000E7B00 */ sll $t7, $t6, 0xc -/* B39200 800C2060 31090FFF */ andi $t1, $t0, 0xfff -/* B39204 800C2064 01E95025 */ or $t2, $t7, $t1 -/* B39208 800C2068 AC6A0004 */ sw $t2, 4($v1) -/* B3920C 800C206C 8C8B0000 */ lw $t3, ($a0) -/* B39210 800C2070 8C980004 */ lw $t8, 4($a0) -/* B39214 800C2074 00401825 */ move $v1, $v0 -/* B39218 800C2078 316C03FF */ andi $t4, $t3, 0x3ff -/* B3921C 800C207C 000C6B80 */ sll $t5, $t4, 0xe -/* B39220 800C2080 331903FF */ andi $t9, $t8, 0x3ff -/* B39224 800C2084 00194080 */ sll $t0, $t9, 2 -/* B39228 800C2088 01A17025 */ or $t6, $t5, $at -/* B3922C 800C208C 01C87825 */ or $t7, $t6, $t0 -/* B39230 800C2090 AC6F0000 */ sw $t7, ($v1) -/* B39234 800C2094 AC600004 */ sw $zero, 4($v1) -/* B39238 800C2098 24420008 */ addiu $v0, $v0, 8 -/* B3923C 800C209C 00401825 */ move $v1, $v0 -/* B39240 800C20A0 AC660000 */ sw $a2, ($v1) -/* B39244 800C20A4 AC600004 */ sw $zero, 4($v1) -/* B39248 800C20A8 24420008 */ addiu $v0, $v0, 8 -/* B3924C 800C20AC 03E00008 */ jr $ra -/* B39250 800C20B0 ACA20000 */ sw $v0, ($a1) - diff --git a/asm/non_matchings/code/PreRender/func_800C20B4.s b/asm/non_matchings/code/PreRender/func_800C20B4.s deleted file mode 100644 index 103b3d9846..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C20B4.s +++ /dev/null @@ -1,38 +0,0 @@ -.rdata -glabel D_80144BB8 - .asciz "this->cvg_save" - .balign 4 - -glabel D_80144BC8 - .asciz "../PreRender.c" - .balign 4 - -.text -glabel func_800C20B4 -/* B39254 800C20B4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* B39258 800C20B8 AFBF001C */ sw $ra, 0x1c($sp) -/* B3925C 800C20BC AFB00018 */ sw $s0, 0x18($sp) -/* B39260 800C20C0 00808025 */ move $s0, $a0 -/* B39264 800C20C4 0C0307E9 */ jal func_800C1FA4 -/* B39268 800C20C8 AFA50024 */ sw $a1, 0x24($sp) -/* B3926C 800C20CC 3C048014 */ lui $a0, %hi(D_80144BB8) # $a0, 0x8014 -/* B39270 800C20D0 3C068014 */ lui $a2, %hi(D_80144BC8) # $a2, 0x8014 -/* B39274 800C20D4 24C64BC8 */ addiu $a2, %lo(D_80144BC8) # addiu $a2, $a2, 0x4bc8 -/* B39278 800C20D8 24844BB8 */ addiu $a0, %lo(D_80144BB8) # addiu $a0, $a0, 0x4bb8 -/* B3927C 800C20DC 8E050018 */ lw $a1, 0x18($s0) -/* B39280 800C20E0 0C000B58 */ jal LogUtils_CheckNullPointer -/* B39284 800C20E4 24070214 */ li $a3, 532 -/* B39288 800C20E8 8E070018 */ lw $a3, 0x18($s0) -/* B3928C 800C20EC 02002025 */ move $a0, $s0 -/* B39290 800C20F0 8FA50024 */ lw $a1, 0x24($sp) -/* B39294 800C20F4 50E00004 */ beql $a3, $zero, .L800C2108 -/* B39298 800C20F8 8FBF001C */ lw $ra, 0x1c($sp) -/* B3929C 800C20FC 0C0306C9 */ jal func_800C1B24 -/* B392A0 800C2100 8E060010 */ lw $a2, 0x10($s0) -/* B392A4 800C2104 8FBF001C */ lw $ra, 0x1c($sp) -.L800C2108: -/* B392A8 800C2108 8FB00018 */ lw $s0, 0x18($sp) -/* B392AC 800C210C 27BD0020 */ addiu $sp, $sp, 0x20 -/* B392B0 800C2110 03E00008 */ jr $ra -/* B392B4 800C2114 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C2118.s b/asm/non_matchings/code/PreRender/func_800C2118.s deleted file mode 100644 index 63acc996d2..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C2118.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel func_800C2118 -/* B392B8 800C2118 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* B392BC 800C211C AFBF0014 */ sw $ra, 0x14($sp) -/* B392C0 800C2120 8C87001C */ lw $a3, 0x1c($a0) -/* B392C4 800C2124 0C0303CA */ jal func_800C0F28 -/* B392C8 800C2128 8C860020 */ lw $a2, 0x20($a0) -/* B392CC 800C212C 8FBF0014 */ lw $ra, 0x14($sp) -/* B392D0 800C2130 27BD0018 */ addiu $sp, $sp, 0x18 -/* B392D4 800C2134 03E00008 */ jr $ra -/* B392D8 800C2138 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C24BC.s b/asm/non_matchings/code/PreRender/func_800C24BC.s deleted file mode 100644 index 2c29eb86e2..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C24BC.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel func_800C24BC -/* B3965C 800C24BC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* B39660 800C24C0 AFBF0014 */ sw $ra, 0x14($sp) -/* B39664 800C24C4 8C870010 */ lw $a3, 0x10($a0) -/* B39668 800C24C8 0C0303CA */ jal func_800C0F28 -/* B3966C 800C24CC 8C860014 */ lw $a2, 0x14($a0) -/* B39670 800C24D0 8FBF0014 */ lw $ra, 0x14($sp) -/* B39674 800C24D4 27BD0018 */ addiu $sp, $sp, 0x18 -/* B39678 800C24D8 03E00008 */ jr $ra -/* B3967C 800C24DC 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C24E0.s b/asm/non_matchings/code/PreRender/func_800C24E0.s deleted file mode 100644 index d137b10816..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C24E0.s +++ /dev/null @@ -1,10 +0,0 @@ -glabel func_800C24E0 -/* B39680 800C24E0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* B39684 800C24E4 AFBF0014 */ sw $ra, 0x14($sp) -/* B39688 800C24E8 0C030496 */ jal func_800C1258 -/* B3968C 800C24EC 00000000 */ nop -/* B39690 800C24F0 8FBF0014 */ lw $ra, 0x14($sp) -/* B39694 800C24F4 27BD0018 */ addiu $sp, $sp, 0x18 -/* B39698 800C24F8 03E00008 */ jr $ra -/* B3969C 800C24FC 00000000 */ nop - diff --git a/asm/non_matchings/code/PreRender/func_800C2500.s b/asm/non_matchings/code/PreRender/func_800C2500.s index a3d539cef0..6e917f5723 100644 --- a/asm/non_matchings/code/PreRender/func_800C2500.s +++ b/asm/non_matchings/code/PreRender/func_800C2500.s @@ -784,4 +784,3 @@ glabel func_800C2500 /* B3A178 800C2FD8 8FB60030 */ lw $s6, 0x30($sp) /* B3A17C 800C2FDC 03E00008 */ jr $ra /* B3A180 800C2FE0 27BD0188 */ addiu $sp, $sp, 0x188 - diff --git a/asm/non_matchings/code/PreRender/func_800C2FE4.s b/asm/non_matchings/code/PreRender/func_800C2FE4.s index 989cbd35e1..5634ee8196 100644 --- a/asm/non_matchings/code/PreRender/func_800C2FE4.s +++ b/asm/non_matchings/code/PreRender/func_800C2FE4.s @@ -569,4 +569,3 @@ glabel func_800C2FE4 /* B3A904 800C3764 8FDE0070 */ lw $fp, 0x70($fp) /* B3A908 800C3768 03E00008 */ jr $ra /* B3A90C 800C376C 27BD00B0 */ addiu $sp, $sp, 0xb0 - diff --git a/asm/non_matchings/code/PreRender/func_800C3770.s b/asm/non_matchings/code/PreRender/func_800C3770.s deleted file mode 100644 index 37e9587e72..0000000000 --- a/asm/non_matchings/code/PreRender/func_800C3770.s +++ /dev/null @@ -1,73 +0,0 @@ -glabel func_800C3770 -/* B3A910 800C3770 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* B3A914 800C3774 AFBF0024 */ sw $ra, 0x24($sp) -/* B3A918 800C3778 AFB30020 */ sw $s3, 0x20($sp) -/* B3A91C 800C377C AFB2001C */ sw $s2, 0x1c($sp) -/* B3A920 800C3780 AFB10018 */ sw $s1, 0x18($sp) -/* B3A924 800C3784 AFB00014 */ sw $s0, 0x14($sp) -/* B3A928 800C3788 8C8E0018 */ lw $t6, 0x18($a0) -/* B3A92C 800C378C 00809025 */ move $s2, $a0 -/* B3A930 800C3790 51C00032 */ beql $t6, $zero, .L800C385C -/* B3A934 800C3794 8FBF0024 */ lw $ra, 0x24($sp) -/* B3A938 800C3798 8C8F0014 */ lw $t7, 0x14($a0) -/* B3A93C 800C379C 51E0002F */ beql $t7, $zero, .L800C385C -/* B3A940 800C37A0 8FBF0024 */ lw $ra, 0x24($sp) -/* B3A944 800C37A4 8C820004 */ lw $v0, 4($a0) -/* B3A948 800C37A8 00008825 */ move $s1, $zero -/* B3A94C 800C37AC 24130008 */ li $s3, 8 -/* B3A950 800C37B0 1840001C */ blez $v0, .L800C3824 -/* B3A954 800C37B4 00000000 */ nop -/* B3A958 800C37B8 8C830000 */ lw $v1, ($a0) -.L800C37BC: -/* B3A95C 800C37BC 18600015 */ blez $v1, .L800C3814 -/* B3A960 800C37C0 00008025 */ move $s0, $zero -.L800C37C4: -/* B3A964 800C37C4 02230019 */ multu $s1, $v1 -/* B3A968 800C37C8 8E580018 */ lw $t8, 0x18($s2) -/* B3A96C 800C37CC 02402025 */ move $a0, $s2 -/* B3A970 800C37D0 02002825 */ move $a1, $s0 -/* B3A974 800C37D4 0310C821 */ addu $t9, $t8, $s0 -/* B3A978 800C37D8 00004012 */ mflo $t0 -/* B3A97C 800C37DC 03284821 */ addu $t1, $t9, $t0 -/* B3A980 800C37E0 91220000 */ lbu $v0, ($t1) -/* B3A984 800C37E4 00021143 */ sra $v0, $v0, 5 -/* B3A988 800C37E8 24420001 */ addiu $v0, $v0, 1 -/* B3A98C 800C37EC 50530005 */ beql $v0, $s3, .L800C3804 -/* B3A990 800C37F0 26100001 */ addiu $s0, $s0, 1 -/* B3A994 800C37F4 0C030940 */ jal func_800C2500 -/* B3A998 800C37F8 02203025 */ move $a2, $s1 -/* B3A99C 800C37FC 8E430000 */ lw $v1, ($s2) -/* B3A9A0 800C3800 26100001 */ addiu $s0, $s0, 1 -.L800C3804: -/* B3A9A4 800C3804 0203082A */ slt $at, $s0, $v1 -/* B3A9A8 800C3808 1420FFEE */ bnez $at, .L800C37C4 -/* B3A9AC 800C380C 00000000 */ nop -/* B3A9B0 800C3810 8E420004 */ lw $v0, 4($s2) -.L800C3814: -/* B3A9B4 800C3814 26310001 */ addiu $s1, $s1, 1 -/* B3A9B8 800C3818 0222082A */ slt $at, $s1, $v0 -/* B3A9BC 800C381C 1420FFE7 */ bnez $at, .L800C37BC -/* B3A9C0 800C3820 00000000 */ nop -.L800C3824: -/* B3A9C4 800C3824 3C028016 */ lui $v0, %hi(gGameInfo) # $v0, 0x8016 -/* B3A9C8 800C3828 8C42FA90 */ lw $v0, %lo(gGameInfo)($v0) -/* B3A9CC 800C382C 2401000F */ li $at, 15 -/* B3A9D0 800C3830 00001825 */ move $v1, $zero -/* B3A9D4 800C3834 844A1074 */ lh $t2, 0x1074($v0) -/* B3A9D8 800C3838 15410003 */ bne $t2, $at, .L800C3848 -/* B3A9DC 800C383C 00000000 */ nop -/* B3A9E0 800C3840 10000001 */ b .L800C3848 -/* B3A9E4 800C3844 84431076 */ lh $v1, 0x1076($v0) -.L800C3848: -/* B3A9E8 800C3848 50600004 */ beql $v1, $zero, .L800C385C -/* B3A9EC 800C384C 8FBF0024 */ lw $ra, 0x24($sp) -/* B3A9F0 800C3850 0C030BF9 */ jal func_800C2FE4 -/* B3A9F4 800C3854 02402025 */ move $a0, $s2 -/* B3A9F8 800C3858 8FBF0024 */ lw $ra, 0x24($sp) -.L800C385C: -/* B3A9FC 800C385C 8FB00014 */ lw $s0, 0x14($sp) -/* B3AA00 800C3860 8FB10018 */ lw $s1, 0x18($sp) -/* B3AA04 800C3864 8FB2001C */ lw $s2, 0x1c($sp) -/* B3AA08 800C3868 8FB30020 */ lw $s3, 0x20($sp) -/* B3AA0C 800C386C 03E00008 */ jr $ra -/* B3AA10 800C3870 27BD0028 */ addiu $sp, $sp, 0x28 \ No newline at end of file diff --git a/asm/non_matchings/code/z_play/Gameplay_Draw.s b/asm/non_matchings/code/z_play/Gameplay_Draw.s index fa2e1d8ae0..a59d4d0522 100644 --- a/asm/non_matchings/code/z_play/Gameplay_Draw.s +++ b/asm/non_matchings/code/z_play/Gameplay_Draw.s @@ -362,7 +362,7 @@ glabel Gameplay_Draw /* B364C4 800BF324 02012021 */ addu $a0, $s0, $at /* B364C8 800BF328 8E2702DC */ lw $a3, 0x2dc($s1) /* B364CC 800BF32C AFA4003C */ sw $a0, 0x3c($sp) -/* B364D0 800BF330 0C0303B6 */ jal func_800C0ED8 +/* B364D0 800BF330 0C0303B6 */ jal PreRender_SetValues /* B364D4 800BF334 AFAA0010 */ sw $t2, 0x10($sp) /* B364D8 800BF338 3C028016 */ lui $v0, %hi(gGameInfo) # $v0, 0x8016 /* B364DC 800BF33C 8C42FA90 */ lw $v0, %lo(gGameInfo)($v0) @@ -372,7 +372,7 @@ glabel Gameplay_Draw /* B364EC 800BF34C 28610004 */ slti $at, $v1, 4 /* B364F0 800BF350 0C01EFC4 */ jal MsgEvent_SendNullTask /* B364F4 800BF354 00000000 */ nop -/* B364F8 800BF358 0C030DDC */ jal func_800C3770 +/* B364F8 800BF358 0C030DDC */ jal PreRender_Calc /* B364FC 800BF35C 8FA4003C */ lw $a0, 0x3c($sp) /* B36500 800BF360 3C0C8016 */ lui $t4, %hi(gGameInfo) # $t4, 0x8016 /* B36504 800BF364 8D8CFA90 */ lw $t4, %lo(gGameInfo)($t4) diff --git a/asm/non_matchings/code/z_play/Gameplay_Init.s b/asm/non_matchings/code/z_play/Gameplay_Init.s index a5e73b6db3..a9c657103e 100644 --- a/asm/non_matchings/code/z_play/Gameplay_Init.s +++ b/asm/non_matchings/code/z_play/Gameplay_Init.s @@ -377,20 +377,20 @@ glabel Gameplay_Init /* B340E8 800BCF48 34212124 */ ori $at, (0x00012124 & 0xFFFF) # ori $at, $at, 0x2124 /* B340EC 800BCF4C 02218021 */ addu $s0, $s1, $at /* B340F0 800BCF50 02002025 */ move $a0, $s0 -/* B340F4 800BCF54 0C0303AA */ jal func_800C0EA8 +/* B340F4 800BCF54 0C0303AA */ jal PreRender_Init /* B340F8 800BCF58 A5600190 */ sh $zero, 0x190($t3) /* B340FC 800BCF5C 02002025 */ move $a0, $s0 /* B34100 800BCF60 24050140 */ li $a1, 320 /* B34104 800BCF64 240600F0 */ li $a2, 240 /* B34108 800BCF68 00003825 */ move $a3, $zero /* B3410C 800BCF6C AFA00010 */ sw $zero, 0x10($sp) -/* B34110 800BCF70 0C03039C */ jal func_800C0E70 +/* B34110 800BCF70 0C03039C */ jal PreRender_SetValuesSave /* B34114 800BCF74 AFA00014 */ sw $zero, 0x14($sp) /* B34118 800BCF78 02002025 */ move $a0, $s0 /* B3411C 800BCF7C 24050140 */ li $a1, 320 /* B34120 800BCF80 240600F0 */ li $a2, 240 /* B34124 800BCF84 00003825 */ move $a3, $zero -/* B34128 800BCF88 0C0303B6 */ jal func_800C0ED8 +/* B34128 800BCF88 0C0303B6 */ jal PreRender_SetValues /* B3412C 800BCF8C AFA00010 */ sw $zero, 0x10($sp) /* B34130 800BCF90 3C018016 */ lui $at, %hi(gTrnsnUnkState) # $at, 0x8016 /* B34134 800BCF94 AC201490 */ sw $zero, %lo(gTrnsnUnkState)($at) diff --git a/asm/non_matchings/overlays/actors/ovl_kaleido_scope/KaleidoScope_Update.s b/asm/non_matchings/overlays/actors/ovl_kaleido_scope/KaleidoScope_Update.s index 049ee80deb..fa05f9d9de 100644 --- a/asm/non_matchings/overlays/actors/ovl_kaleido_scope/KaleidoScope_Update.s +++ b/asm/non_matchings/overlays/actors/ovl_kaleido_scope/KaleidoScope_Update.s @@ -862,7 +862,7 @@ glabel L80827100 /* 13BFC 8082741C 01E1C024 */ and $t8, $t7, $at /* 13C00 80827420 3C018083 */ lui $at, %hi(D_80832200) ## $at = 80830000 /* 13C04 80827424 AC382200 */ sw $t8, %lo(D_80832200)($at) -/* 13C08 80827428 0C0303AA */ jal func_800C0EA8 +/* 13C08 80827428 0C0303AA */ jal PreRender_Init /* 13C0C 8082742C 248421B0 */ addiu $a0, $a0, %lo(D_808321B0) ## $a0 = 808321B0 /* 13C10 80827430 3C198083 */ lui $t9, %hi(D_80832200) ## $t9 = 80830000 /* 13C14 80827434 8F392200 */ lw $t9, %lo(D_80832200)($t9) @@ -872,7 +872,7 @@ glabel L80827100 /* 13C24 80827444 248421B0 */ addiu $a0, $a0, %lo(D_808321B0) ## $a0 = 808321B0 /* 13C28 80827448 24050040 */ addiu $a1, $zero, 0x0040 ## $a1 = 00000040 /* 13C2C 8082744C 24060070 */ addiu $a2, $zero, 0x0070 ## $a2 = 00000070 -/* 13C30 80827450 0C03039C */ jal func_800C0E70 +/* 13C30 80827450 0C03039C */ jal PreRender_SetValuesSave /* 13C34 80827454 AFB90014 */ sw $t9, 0x0014($sp) /* 13C38 80827458 0C206067 */ jal func_8081819C /* 13C3C 8082745C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F1F0.s b/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F1F0.s index da699ce048..82a4e7f4c1 100644 --- a/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F1F0.s +++ b/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F1F0.s @@ -39,7 +39,7 @@ glabel func_8081F1F0 /* 0BA38 8081F258 AC680004 */ sw $t0, 0x0004($v1) ## 00000004 /* 0BA3C 8081F25C AFA00010 */ sw $zero, 0x0010($sp) /* 0BA40 8081F260 8FA7004C */ lw $a3, 0x004C($sp) -/* 0BA44 8081F264 0C0303B6 */ jal func_800C0ED8 +/* 0BA44 8081F264 0C0303B6 */ jal PreRender_SetValues /* 0BA48 8081F268 24060070 */ addiu $a2, $zero, 0x0070 ## $a2 = 00000070 /* 0BA4C 8081F26C 3C048083 */ lui $a0, %hi(D_808321B0) ## $a0 = 80830000 /* 0BA50 8081F270 248421B0 */ addiu $a0, $a0, %lo(D_808321B0) ## $a0 = 808321B0 diff --git a/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F2FC.s b/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F2FC.s index 58b5e5f781..ca9f38be64 100644 --- a/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F2FC.s +++ b/asm/non_matchings/overlays/actors/ovl_kaleido_scope/func_8081F2FC.s @@ -4,10 +4,10 @@ glabel func_8081F2FC /* 0BAE4 8081F304 0C03FD2B */ jal Sleep_Msec /* 0BAE8 8081F308 24040032 */ addiu $a0, $zero, 0x0032 ## $a0 = 00000032 /* 0BAEC 8081F30C 3C048083 */ lui $a0, %hi(D_808321B0) ## $a0 = 80830000 -/* 0BAF0 8081F310 0C030DDC */ jal func_800C3770 +/* 0BAF0 8081F310 0C030DDC */ jal PreRender_Calc /* 0BAF4 8081F314 248421B0 */ addiu $a0, $a0, %lo(D_808321B0) ## $a0 = 808321B0 /* 0BAF8 8081F318 3C048083 */ lui $a0, %hi(D_808321B0) ## $a0 = 80830000 -/* 0BAFC 8081F31C 0C0303C2 */ jal func_800C0F08 +/* 0BAFC 8081F31C 0C0303C2 */ jal PreRender_Destroy /* 0BB00 8081F320 248421B0 */ addiu $a0, $a0, %lo(D_808321B0) ## $a0 = 808321B0 /* 0BB04 8081F324 8FBF0014 */ lw $ra, 0x0014($sp) /* 0BB08 8081F328 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 diff --git a/include/functions.h b/include/functions.h index d4ba56391b..a34951b4a7 100644 --- a/include/functions.h +++ b/include/functions.h @@ -1520,22 +1520,26 @@ void Gameplay_TriggerRespawn(GlobalContext* globalCtx); s32 func_800C0CB8(GlobalContext* globalCtx); s32 func_800C0D28(GlobalContext* globalCtx); s32 func_800C0D34(GlobalContext* globalCtx, Actor* actor, s16* yaw); -// ? func_800C0E70(?); -// ? func_800C0EA8(?); -// ? func_800C0ED8(?); -// ? func_800C0F08(?); -// ? func_800C0F28(?); -// ? func_800C1258(?); -// ? func_800C170C(?); -// ? func_800C1AE8(?); -// ? func_800C1B24(?); -// ? func_800C1F20(?); -// ? func_800C1FA4(?); -// ? func_800C20B4(?); -// ? func_800C24BC(?); -// ? func_800C2500(?); -// ? func_800C2FE4(?); -// ? func_800C3770(?); +void PreRender_SetValuesSave(PreRenderContext* this, u32 width, u32 height, void* fbuf, void* zbuf, void* cvg); +void PreRender_Init(PreRenderContext* this); +void PreRender_SetValues(PreRenderContext* this, u32 width, u32 height, void* fbuf, void* zbuf); +void PreRender_Destroy(PreRenderContext* this); +void func_800C0F28(PreRenderContext* this, Gfx** gfxp, void* buf, void* bufSave); +void func_800C1258(PreRenderContext* this, Gfx** gfxp); +void func_800C170C(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* fbufSave, u32 r, u32 g, u32 b, u32 a); +void func_800C1AE8(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* fbufSave); +void func_800C1B24(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* cvgSave); +void func_800C1E9C(PreRenderContext* this, Gfx** gfxp); +void func_800C1F20(PreRenderContext* this, Gfx** gfxp); +void func_800C1FA4(PreRenderContext* this, Gfx** gfxp); +void func_800C20B4(PreRenderContext* this, Gfx** gfxp); +void func_800C2118(PreRenderContext* this, Gfx** gfxp); +void func_800C213C(PreRenderContext* this, Gfx** gfxp); +void func_800C24BC(PreRenderContext* this, Gfx** gfxp); +void func_800C24E0(PreRenderContext* this, Gfx** gfxp); +void func_800C2500(PreRenderContext *this, s32 x, s32 y); +void func_800C2FE4(PreRenderContext* this); +void PreRender_Calc(PreRenderContext* this); void THGA_Ct(TwoHeadGfxArena* thga, Gfx* start, u32 size); void THGA_Dt(TwoHeadGfxArena* thga); u32 THGA_IsCrash(TwoHeadGfxArena* thga); diff --git a/include/z64.h b/include/z64.h index 9b1ad58064..e5e42d2f59 100644 --- a/include/z64.h +++ b/include/z64.h @@ -1048,14 +1048,32 @@ typedef struct { } CollisionCheckContext; // size = 0x29C SubGlobalContext11E60 +typedef struct ListAlloc { + /* 0x00 */ struct ListAlloc* prev; + /* 0x04 */ struct ListAlloc* next; +} ListAlloc; // size = 0x8 + typedef struct { - /* 0x00 */ char unk_00[0x10]; - /* 0x10 */ u16* unk_10; - /* 0x14 */ u16* unk_14; - /* 0x18 */ u16* unk_18; - /* 0x1C */ char unk_1C[0x87]; - /* 0xA3 */ s8 unk_A3; -} PreRenderContext; // size = 0xA4 + /* 0x00 */ s32 width; + /* 0x04 */ s32 height; + /* 0x08 */ s32 widthSave; + /* 0x0C */ s32 heightSave; + /* 0x10 */ u16* fbuf; + /* 0x14 */ u16* fbufSave; + /* 0x18 */ u8* cvgSave; + /* 0x1C */ u16* zbuf; + /* 0x20 */ u16* zbufSave; + /* 0x24 */ s32 ulxSave; + /* 0x28 */ s32 ulySave; + /* 0x2C */ s32 lrxSave; + /* 0x30 */ s32 lrySave; + /* 0x34 */ s32 ulx; + /* 0x38 */ s32 uly; + /* 0x3C */ s32 lrx; + /* 0x40 */ s32 lry; + /* 0x44 */ ListAlloc alloc; + /* 0x4C */ u32 unk_4C; +} PreRenderContext; // size = 0x50 typedef struct { union { @@ -1269,6 +1287,8 @@ typedef struct GlobalContext { /* 0x11E60 */ CollisionCheckContext colChkCtx; /* 0x120FC */ u16 envFlags[20]; /* 0x12124 */ PreRenderContext preRenderCtx; + /* 0x12174 */ char unk_12174[0x53]; + /* 0x121C7 */ s8 unk_121C7; /* 0x121C8 */ TransitionContext transitionCtx; /* 0x12418 */ char unk_12418[0x3]; /* 0x1241B */ u8 transitionMode; // "fbdemo_wipe_modem" @@ -1743,11 +1763,6 @@ typedef struct { #define KALEIDO_OVL_PLAYER_ACTOR 1 #define KALEIDO_OVL_COUNT 2 -typedef struct ListAlloc { - /* 0x00 */ struct ListAlloc* prev; - /* 0x04 */ struct ListAlloc* next; -} ListAlloc; // size = 0x8 - typedef struct { /* 0x00 */ u32 resetting; /* 0x04 */ u32 resetCount; diff --git a/src/code/PreRender.c b/src/code/PreRender.c index 4e335cd50a..bc577353df 100644 --- a/src/code/PreRender.c +++ b/src/code/PreRender.c @@ -1,42 +1,637 @@ -#include #include -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C0E70.s") +void PreRender_SetValuesSave(PreRenderContext* this, u32 width, u32 height, void* fbuf, void* zbuf, void* cvg) { + this->widthSave = width; + this->heightSave = height; + this->fbufSave = fbuf; + this->cvgSave = cvg; + this->zbufSave = zbuf; + this->ulxSave = 0; + this->ulySave = 0; + this->lrxSave = width - 1; + this->lrySave = height - 1; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C0EA8.s") +void PreRender_Init(PreRenderContext* this) { + bzero(this, sizeof(PreRenderContext)); + ListAlloc_Init(&this->alloc); +} -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C0ED8.s") +void PreRender_SetValues(PreRenderContext* this, u32 width, u32 height, void* fbuf, void* zbuf) { + this->width = width; + this->height = height; + this->fbuf = fbuf; + this->zbuf = zbuf; + this->ulx = 0; + this->uly = 0; + this->lrx = width - 1; + this->lry = height - 1; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C0F08.s") +void PreRender_Destroy(PreRenderContext* this) { + ListAlloc_FreeAll(&this->alloc); +} -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C0F28.s") +void func_800C0F28(PreRenderContext* this, Gfx** gfxp, void* buf, void* bufSave) { + Gfx* gfx; + s32 x; + s32 x2; + s32 add; + s32 uls; + s32 ult; + s32 lrs; + s32 lrt; -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C1258.s") + LogUtils_CheckNullPointer("this", this, "../PreRender.c", 215); + LogUtils_CheckNullPointer("glistpp", gfxp, "../PreRender.c", 216); + gfx = *gfxp; + LogUtils_CheckNullPointer("glistp", gfx, "../PreRender.c", 218); -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C170C.s") + gDPPipeSync(gfx++); + gDPSetOtherMode(gfx++, + G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_CONV | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_COPY | G_PM_NPRIMITIVE, + G_AC_NONE | G_ZS_PIXEL | G_RM_NOOP | G_RM_NOOP2); + gDPSetColorImage(gfx++, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, bufSave); + gDPSetScissor(gfx++, G_SC_NON_INTERLACE, 0, 0, this->width, this->height); -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C1AE8.s") + x = this->height; + add = 0x1000 / (this->width * 2); + uls = 0; + x2 = 0; -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C1B24.s") + while (x > 0) { + lrs = this->width - 1; + if (x < add) { + add = x; + } -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C1E9C.s") + ult = x2; + lrt = (ult + add) - 1; -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C1F20.s") + if (1) {} + gDPLoadTextureTile(gfx++, buf, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, lrt, + 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, + G_TX_NOLOD, G_TX_NOLOD); + gSPTextureRectangle(gfx++, uls << 2, ult << 2, lrs << 2, lrt << 2, G_TX_RENDERTILE, uls << 5, ult << 5, + 4 << 10, 1 << 10); -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C1FA4.s") + x -= add; + x2 += add; + } -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C20B4.s") + gDPPipeSync(gfx++); + gDPSetColorImage(gfx++, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->fbuf); + *gfxp = gfx; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C2118.s") +void func_800C1258(PreRenderContext* this, Gfx** gfxp) { + Gfx* gfx; + s32 y; + s32 y2; + s32 add; + s32 ult; + s32 lrs; + s32 lrt; + s32 uly; + LogUtils_CheckNullPointer("this", this, "../PreRender.c", 278); + LogUtils_CheckNullPointer("glistpp", gfxp, "../PreRender.c", 279); + gfx = *gfxp; + LogUtils_CheckNullPointer("glistp", gfx, "../PreRender.c", 281); + + gDPPipeSync(gfx++); + gDPSetOtherMode(gfx++, + G_AD_PATTERN | G_CD_MAGICSQ | G_CK_NONE | G_TC_CONV | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_COPY | G_PM_NPRIMITIVE, + G_AC_NONE | G_ZS_PIXEL | G_RM_NOOP | G_RM_NOOP2); + gDPSetColorImage(gfx++, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->fbuf); + gDPSetScissor(gfx++, G_SC_NON_INTERLACE, this->ulx, this->uly, this->lrx + 1, this->lry + 1); + + y2 = 0; + add = 0x1000 / ((this->lrxSave - this->ulxSave + 1) * 2); + y = (this->lrySave - this->ulySave) + 1; + + while (y > 0) { + if (y < add) { + add = y; + } + + ult = this->ulySave + y2; + uly = this->uly + y2; + lrt = (ult + add) - 1; + + if (1) {} + gDPLoadTextureTile(gfx++, this->fbufSave, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->widthSave, this->height - 1, + this->ulxSave, ult, this->lrxSave, lrt, 0, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD); + gSPTextureRectangle(gfx++, this->ulx << 2, uly << 2, this->lrx << 2, (uly + add - 1) << 2, + G_TX_RENDERTILE, this->ulxSave << 5, ult << 5, 4 << 10, 1 << 10); + + y -= add; + y2 += add; + } + + gDPPipeSync(gfx++); + gDPSetColorImage(gfx++, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->fbuf); + gDPSetScissor(gfx++, G_SC_NON_INTERLACE, 0, 0, this->width, this->height); + *gfxp = gfx; +} + +void func_800C170C(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* fbufSave, u32 r, u32 g, u32 b, u32 a) { + Gfx* gfx; + s32 x; + s32 x2; + s32 add; + s32 uls; + s32 ult; + s32 lrs; + s32 lrt; + s32 unk; + + LogUtils_CheckNullPointer("this", this, "../PreRender.c", 343); + LogUtils_CheckNullPointer("glistpp", gfxp, "../PreRender.c", 344); + gfx = *gfxp; + LogUtils_CheckNullPointer("glistp", gfx, "../PreRender.c", 346); + + gDPPipeSync(gfx++); + gDPSetOtherMode(gfx++, + G_AD_DISABLE | G_CD_DISABLE | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE, + G_AC_NONE | G_ZS_PRIM | G_RM_OPA_SURF | G_RM_OPA_SURF2); + gDPSetEnvColor(gfx++, r, g, b, a); + gDPSetCombineLERP(gfx++, 0, 0, 0, TEXEL0, 0, 0, 0, 1, 0, 0, 0, TEXEL0, 0, 0, 0, 1); + gDPSetCombineLERP(gfx++, TEXEL0, 0, ENVIRONMENT, 0, 0, 0, 0, 1, TEXEL0, 0, ENVIRONMENT, 0, 0, 0, 0, 1); + gDPSetColorImage(gfx++, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, fbufSave); + gDPSetScissor(gfx++, G_SC_NON_INTERLACE, 0, 0, this->width, this->height); + + x2 = 0; + x = this->height; + add = 0x1000 / (this->width * 2); + + while (x > 0) { + lrs = this->width - 1; + + if (x < add) { + add = x; + } + + uls = 0; + ult = x2; + lrt = (x2 + add - 1); + + gDPLoadTextureTile(gfx++, fbuf, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, + lrt, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, + G_TX_NOLOD, G_TX_NOLOD); + if (1) {} + gSPTextureRectangle(gfx++, uls << 2, ult << 2, (lrs + 1) << 2, (lrt + 1) << 2, G_TX_RENDERTILE, uls << 5, + ult << 5, 1 << 10, 1 << 10); + + x -= add; + x2 += add; + } + + gDPPipeSync(gfx++); + gDPSetColorImage(gfx++, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->fbuf); + *gfxp = gfx; +} + +void func_800C1AE8(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* fbufSave) { + func_800C170C(this, gfxp, fbuf, fbufSave, 255, 255, 255, 255); +} + +void func_800C1B24(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* cvgSave) { + Gfx* gfx; + s32 x; + s32 x2; + s32 add; + s32 uls; + s32 ult; + s32 lrs; + s32 lrt; + + LogUtils_CheckNullPointer("this", this, "../PreRender.c", 422); + LogUtils_CheckNullPointer("glistpp", gfxp, "../PreRender.c", 423); + gfx = *gfxp; + LogUtils_CheckNullPointer("glistp", gfx, "../PreRender.c", 425); + + gDPPipeSync(gfx++); + gDPSetOtherMode(gfx++, + G_AD_DISABLE | G_CD_DISABLE | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE, + G_AC_NONE | G_ZS_PRIM | G_RM_PASS | G_RM_OPA_CI2); + gDPSetCombineLERP(gfx++, 0, 0, 0, TEXEL0, 0, 0, 0, 0, 0, 0, 0, TEXEL0, 0, 0, 0, 0); + gDPSetColorImage(gfx++, G_IM_FMT_I, G_IM_SIZ_8b, this->width, cvgSave); + gDPSetScissor(gfx++, G_SC_NON_INTERLACE, 0, 0, this->width, this->height); + + x = this->height; + x2 = 0; + add = 0x1000 / (this->width * 2); + + while (x > 0) { + lrs = this->width - 1; + if (x < add) { + add = x; + } + uls = 0; + ult = x2; + lrt = (x2 + add) - 1; + + gDPLoadTextureTile(gfx++, fbuf, G_IM_FMT_IA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, lrt, + 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, + G_TX_NOLOD, G_TX_NOLOD); + if (1) {} + gSPTextureRectangle(gfx++, uls << 2, ult << 2, (lrs + 1) << 2, (lrt + 1) << 2, G_TX_RENDERTILE, uls << 5, + ult << 5, 1 << 10, 1 << 10); + + x -= add; + x2 += add; + } + + gDPPipeSync(gfx++); + gDPSetColorImage(gfx++, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->fbuf); + *gfxp = gfx; +} + +void func_800C1E9C(PreRenderContext* this, Gfx** gfxp) { + LogUtils_CheckNullPointer("this->zbuf_save", this->zbufSave, "../PreRender.c", 481); + LogUtils_CheckNullPointer("this->zbuf", this->zbuf, "../PreRender.c", 482); + + if (!this->zbufSave || !this->zbuf) { + return; + } + + func_800C0F28(this, gfxp, this->zbuf, this->zbufSave); +} + +void func_800C1F20(PreRenderContext* this, Gfx** gfxp) { + LogUtils_CheckNullPointer("this->fbuf_save", this->fbufSave, "../PreRender.c", 495); + LogUtils_CheckNullPointer("this->fbuf", this->fbuf, "../PreRender.c", 496); + + if (!this->fbufSave || !this->fbuf) { + return; + } + + func_800C1AE8(this, gfxp, this->fbuf, this->fbufSave); +} + +void func_800C1FA4(PreRenderContext* this, Gfx** gfxp) { + Gfx* gfx; + + gfx = *gfxp; + + gDPPipeSync(gfx++); + gDPSetBlendColor(gfx++, 255, 255, 255, 8); + gDPSetPrimDepth(gfx++, -1, -1); + gDPSetOtherMode(gfx++, + G_AD_DISABLE | G_CD_DISABLE | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_1CYCLE | G_PM_NPRIMITIVE, + G_AC_NONE | G_ZS_PRIM | G_RM_VISCVG | G_RM_VISCVG2); + gDPSetScissor(gfx++, G_SC_NON_INTERLACE, 0, 0, this->width, this->height); + gDPFillRectangle(gfx++, 0, 0, this->width, this->height); + gDPPipeSync(gfx++); + + *gfxp = gfx; +} + +void func_800C20B4(PreRenderContext* this, Gfx** gfxp) { + func_800C1FA4(this, gfxp); + LogUtils_CheckNullPointer("this->cvg_save", this->cvgSave, "../PreRender.c", 532); + if (!this->cvgSave) { + return; + } + + func_800C1B24(this, gfxp, this->fbuf, this->cvgSave); +} + +void func_800C2118(PreRenderContext* this, Gfx** gfxp) { + func_800C0F28(this, gfxp, this->zbufSave, this->zbuf); +} + +#ifdef NON_MATCHING +// regalloc differences in gDPLoadMultiTile +void func_800C213C(PreRenderContext* this, Gfx** gfxp) { + Gfx* gfx; + s32 y; + s32 y2; + s32 add; + s32 uls; + s32 ult; + s32 lrx; + s32 lry; + + if (!this->cvgSave) { + return; + } + + LogUtils_CheckNullPointer("this", this, "../PreRender.c", 563); + LogUtils_CheckNullPointer("glistpp", gfxp, "../PreRender.c", 564); + gfx = *gfxp; + LogUtils_CheckNullPointer("glistp", gfx, "../PreRender.c", 566); + + gDPPipeSync(gfx++); + gDPSetEnvColor(gfx++, 255, 255, 255, 32); + gDPSetOtherMode(gfx++, + G_AD_DISABLE | G_CD_DISABLE | G_CK_NONE | G_TC_FILT | G_TF_POINT | G_TT_NONE | G_TL_TILE | + G_TD_CLAMP | G_TP_NONE | G_CYC_2CYCLE | G_PM_NPRIMITIVE, + G_AC_NONE | G_ZS_PRIM | AA_EN | CVG_DST_CLAMP | ZMODE_OPA | CVG_X_ALPHA | + GBL_c1(G_BL_CLR_IN, G_BL_0, G_BL_CLR_IN, G_BL_1) | + GBL_c2(G_BL_CLR_IN, G_BL_0, G_BL_CLR_IN, G_BL_1)); + gDPSetCombineLERP(gfx++, 0, 0, 0, TEXEL0, 1, 0, TEXEL1, ENVIRONMENT, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED); + + y = this->height; + add = 4; + y2 = 0; + + while (y > 0) { + lrx = this->width - 1; + if (y < add) { + add = y; + } + + uls = 0; + ult = y2; + lry = (y2 + add - 1); + + gDPLoadMultiTile(gfx++, this->fbufSave, 0x0000, G_TX_RENDERTILE, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, + this->height, uls, ult, lrx, lry, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD); + gDPLoadMultiTile(gfx++, this->cvgSave, 0x0160, 1, G_IM_FMT_I, G_IM_SIZ_8b, this->width, this->height, uls, + ult, lrx, lry, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, + G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD); + + gSPTextureRectangle(gfx++, uls << 2, ult << 2, (lrx + 1) << 2, (lry + 1) << 2, G_TX_RENDERTILE, uls << 5, + ult << 5, 1 << 10, 1 << 10); + + if (1) {} + y -= add; + y2 += add; + } + + gDPPipeSync(gfx++); + *gfxp = gfx; +} +#else #pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C213C.s") +#endif -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C24BC.s") +void func_800C24BC(PreRenderContext* this, Gfx** gfxp) { + func_800C0F28(this, gfxp, this->fbufSave, this->fbuf); +} -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C24E0.s") +void func_800C24E0(PreRenderContext* this, Gfx** gfxp) { + func_800C1258(this, gfxp); +} +#ifdef NON_EQUIVALENT +void func_800C2500(PreRenderContext* this, s32 x, s32 y) { + + u32 buffA[3 * 8]; // 0x144 + u32 buffR[3 * 8]; // 0x108 + u32 buffG[3 * 8]; // 0xCC + u32 buffB[3 * 8]; // 0x90 + + u32 pxR, pxG, pxB, pxR2, pxG2, pxB2; + + s32 i; + + s32 x1, y1; + u32 px; + u32 comp; + + u32 unk; + u16 pixel; + + /* + you have to picture this as a 3x5 rectangle where the middle pixel (index 7) correspond to (x; y) + _ _ _ _ _ + | 0 1 2 3 4 | + | 5 6 7 8 9 | + | A B C D E | + ‾ ‾ ‾ ‾ ‾ + */ + for (i = 0; i < 3 * 5; i++) { + x1 = (i % 5) + x - 2; // range (-2) - (2) + y1 = (i / 5) + x - 1; // range (-1) - (1) + + if (x1 < 0) { + x1 = 0; + } else if (this->width - 1 < x1) { + x1 = this->width - 1; + } + if (y1 < 0) { + y1 = 0; + } else if (this->height - 1 < y1) { + y1 = this->height - 1; + } + + px = this->fbufSave[y1 * this->width + x1]; + comp = (px << 0) >> 27; // R + buffR[i] = (comp << 3) | (comp >> 2); + comp = (px << 5) >> 27; // G + buffG[i] = (comp << 3) | (comp >> 2); + comp = (px << 10) >> 27; // B + buffB[i] = (comp << 3) | (comp >> 2); + buffA[i] = this->cvgSave[y1 * this->width + x1] >> 5; // A + } + + // 7 == buffA[7] ? + if (7 == buffA[7]) { + osSyncPrintf("Error, should not be in here \n"); + return; + } + + pxR = buffR[7]; + pxG = buffG[7]; + pxB = buffB[7]; + + for (i = 1; i < 3 * 5; i += 2) { + if (7 == buffA[i]) { + // R + if (pxR < buffR[i]) { + if (i != 1 && buffR[1] >= buffR[i] && 7 == buffA[1]) { + pxR = buffR[i]; + } + if (i != 3 && buffR[3] >= buffR[i] && 7 == buffA[3]) { + pxR = buffR[i]; + } + if (i != 5 && buffR[5] >= buffR[i] && 7 == buffA[5]) { + pxR = buffR[i]; + } + if (i != 7 && buffR[7] >= buffR[i] && 7 == buffA[7]) { + pxR = buffR[i]; + } + if (i != 9 && buffR[9] >= buffR[i] && 7 == buffA[9]) { + pxR = buffR[i]; + } + if (i != 11 && buffR[11] >= buffR[i] && 7 == buffA[11]) { + pxR = buffR[i]; + } + if (i != 13 && buffR[13] >= buffR[i] && 7 == buffA[13]) { + pxR = buffR[i]; + } + } + // G + if (pxG < buffG[i]) { + if (i != 1 && buffG[1] >= buffG[i] && 7 == buffA[1]) { + pxG = buffG[i]; + } + if (i != 3 && buffG[3] >= buffG[i] && 7 == buffA[3]) { + pxG = buffG[i]; + } + if (i != 5 && buffG[5] >= buffG[i] && 7 == buffA[5]) { + pxG = buffG[i]; + } + if (i != 7 && buffG[7] >= buffG[i] && 7 == buffA[7]) { + pxG = buffG[i]; + } + if (i != 9 && buffG[9] >= buffG[i] && 7 == buffA[9]) { + pxG = buffG[i]; + } + if (i != 11 && buffG[11] >= buffG[i] && 7 == buffA[11]) { + pxG = buffG[i]; + } + if (i != 13 && buffG[13] >= buffG[i] && 7 == buffA[13]) { + pxG = buffG[i]; + } + } + // B + if (pxB < buffB[i]) { + if (i != 1 && buffB[1] >= buffB[i] && 7 == buffA[1]) { + pxB = buffB[i]; + } + if (i != 3 && buffB[3] >= buffB[i] && 7 == buffA[3]) { + pxB = buffB[i]; + } + if (i != 5 && buffB[5] >= buffB[i] && 7 == buffA[5]) { + pxB = buffB[i]; + } + if (i != 7 && buffB[7] >= buffB[i] && 7 == buffA[7]) { + pxB = buffB[i]; + } + if (i != 9 && buffB[9] >= buffB[i] && 7 == buffA[9]) { + pxB = buffB[i]; + } + if (i != 11 && buffB[11] >= buffB[i] && 7 == buffA[11]) { + pxB = buffB[i]; + } + if (i != 13 && buffB[13] >= buffB[i] && 7 == buffA[13]) { + pxB = buffB[i]; + } + } + + // R + if (pxR2 < buffR[i + 1]) { + if (i + 1 != 1 && buffR[1] >= buffR[i + 1] && 7 == buffA[1]) { + pxR2 = buffR[i + 1]; + } + if (i + 1 != 3 && buffR[3] >= buffR[i + 1] && 7 == buffA[3]) { + pxR2 = buffR[i + 1]; + } + if (i + 1 != 5 && buffR[5] >= buffR[i + 1] && 7 == buffA[5]) { + pxR2 = buffR[i + 1]; + } + if (i + 1 != 7 && buffR[7] >= buffR[i + 1] && 7 == buffA[7]) { + pxR2 = buffR[i + 1]; + } + if (i + 1 != 9 && buffR[9] >= buffR[i + 1] && 7 == buffA[9]) { + pxR2 = buffR[i + 1]; + } + if (i + 1 != 11 && buffR[11] >= buffR[i + 1] && 7 == buffA[11]) { + pxR2 = buffR[i + 1]; + } + if (i + 1 != 13 && buffR[13] >= buffR[i + 1] && 7 == buffA[13]) { + pxR2 = buffR[i + 1]; + } + } + // G + if (pxG2 < buffG[i + 1]) { + if (i + 1 != 1 && buffG[1] >= buffG[i + 1] && 7 == buffA[1]) { + pxG2 = buffG[i + 1]; + } + if (i + 1 != 3 && buffG[3] >= buffG[i + 1] && 7 == buffA[3]) { + pxG2 = buffG[i + 1]; + } + if (i + 1 != 5 && buffG[5] >= buffG[i + 1] && 7 == buffA[5]) { + pxG2 = buffG[i + 1]; + } + if (i + 1 != 7 && buffG[7] >= buffG[i + 1] && 7 == buffA[7]) { + pxG2 = buffG[i + 1]; + } + if (i + 1 != 9 && buffG[9] >= buffG[i + 1] && 7 == buffA[9]) { + pxG2 = buffG[i + 1]; + } + if (i + 1 != 11 && buffG[11] >= buffG[i + 1] && 7 == buffA[11]) { + pxG2 = buffG[i + 1]; + } + if (i + 1 != 13 && buffG[13] >= buffG[i + 1] && 7 == buffA[13]) { + pxG2 = buffG[i + 1]; + } + } + // B + if (pxB2 < buffB[i + 1]) { + if (i + 1 != 1 && buffB[1] >= buffB[i + 1] && 7 == buffA[1]) { + pxB2 = buffB[i + 1]; + } + if (i + 1 != 3 && buffB[3] >= buffB[i + 1] && 7 == buffA[3]) { + pxB2 = buffB[i + 1]; + } + if (i + 1 != 5 && buffB[5] >= buffB[i + 1] && 7 == buffA[5]) { + pxB2 = buffB[i + 1]; + } + if (i + 1 != 7 && buffB[7] >= buffB[i + 1] && 7 == buffA[7]) { + pxB2 = buffB[i + 1]; + } + if (i + 1 != 9 && buffB[9] >= buffB[i + 1] && 7 == buffA[9]) { + pxB2 = buffB[i + 1]; + } + if (i + 1 != 11 && buffB[11] >= buffB[i + 1] && 7 == buffA[11]) { + pxB2 = buffB[i + 1]; + } + if (i + 1 != 13 && buffB[13] >= buffB[i + 1] && 7 == buffA[13]) { + pxB2 = buffB[i + 1]; + } + } + } + } + + unk = 7 - buffA[7]; + + pixel = + (((((((pxR + pxR2) - (buffR[7] << 1)) * unk + 4) >> 3) + buffR[7]) >> 3) << 3) | (pixel & 0xFF07); // RG + 7? + pixel = ((((((((pxG + pxG2) - (buffG[7] << 1)) * unk + 4) >> 3) + buffG[7]) >> 3) << 6) & 0x07C0) | + (pixel & 0xF83F); // R-BA + pixel = ((((((((pxB + pxB2) - (buffB[7] << 1)) * unk + 4) >> 3) + buffB[7]) >> 3) << 1) & 0x003E) | + (pixel & 0xFFC1); // RG-A + pixel |= 1; + this->fbufSave[y * this->width + x] = pixel; +} +#else #pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C2500.s") +#endif #pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C2FE4.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/PreRender/func_800C3770.s") +void PreRender_Calc(PreRenderContext* this) { + s32 x; + s32 y; + + if (!this->cvgSave || !this->fbufSave) { + return; + } + + for (y = 0; y < this->height; y++) { + for (x = 0; x < this->width; x++) { + s32 a = this->cvgSave[x + y * this->width]; + a >>= 5; + a++; + if (a != 8) { + func_800C2500(this, x, y); + } + } + } + + if (HREG(80) == 0xF ? HREG(81) : 0) { + func_800C2FE4(this); + } +} diff --git a/src/code/fault.c b/src/code/fault.c index 38d61ef0fb..7520165f4b 100644 --- a/src/code/fault.c +++ b/src/code/fault.c @@ -907,7 +907,7 @@ void Fault_CommitFB() { } osViSwapBuffer(fb); - FaultDrawer_SetDrawerFB(fb, 0x140, 0xf0); + FaultDrawer_SetDrawerFB(fb, SCREEN_WIDTH, SCREEN_HEIGHT); } void Fault_ProcessClients(void) { diff --git a/src/code/fault_drawer.c b/src/code/fault_drawer.c index 593696173e..9a4a81be1b 100644 --- a/src/code/fault_drawer.c +++ b/src/code/fault_drawer.c @@ -38,8 +38,8 @@ const u32 sFaultDrawerFont[] = { // data FaultDrawer sFaultDrawerDefault = { (u16*)0x803DA800, // fb - 320, // w - 240, // h + SCREEN_WIDTH, // w + SCREEN_HEIGHT, // h 16, // yStart 223, // yEnd 22, // xStart diff --git a/src/code/z_actor.c b/src/code/z_actor.c index 019c3c239f..8835072be7 100644 --- a/src/code/z_actor.c +++ b/src/code/z_actor.c @@ -3594,7 +3594,7 @@ s32 func_800343CC(GlobalContext* globalCtx, Actor* actor, s16* arg2, f32 arg3, c func_8002F374(globalCtx, actor, &sp26, &sp24); - if ((sp26 < 0) || (sp26 > 0x140) || (sp24 < 0) || (sp24 > 0xF0)) { + if ((sp26 < 0) || (sp26 > SCREEN_WIDTH) || (sp24 < 0) || (sp24 > SCREEN_HEIGHT)) { return 0; } @@ -5398,7 +5398,7 @@ s32 func_80037D98(GlobalContext* globalCtx, Actor* actor, s16 arg2, s32* arg3) { if (0) {} // Necessary to match - if ((sp2C < 0) || (sp2C > 320) || (sp2A < 0) || (sp2A > 240)) { + if ((sp2C < 0) || (sp2C > SCREEN_WIDTH) || (sp2A < 0) || (sp2A > SCREEN_HEIGHT)) { return 0; } diff --git a/src/code/z_moji.c b/src/code/z_moji.c index 16649a22dc..17886ba8b0 100644 --- a/src/code/z_moji.c +++ b/src/code/z_moji.c @@ -85,10 +85,10 @@ void func_8007BBA8(GraphicsContext* gfxCtx, u8* arg1) { switch (arg1[i]) { case 9: D_80120120 = (((D_80120120 / 8) / 8) + 1) * 8 * 8; - if (D_80120120 >= 320) { + if (D_80120120 >= SCREEN_WIDTH) { D_80120120 = 0; D_80120124 += 8; - if (D_80120124 >= 240) { + if (D_80120124 >= SCREEN_HEIGHT) { D_80120124 = 0; } } @@ -97,7 +97,7 @@ void func_8007BBA8(GraphicsContext* gfxCtx, u8* arg1) { case 13: D_80120120 = 0; D_80120124 += 8; - if (D_80120124 >= 240) { + if (D_80120124 >= SCREEN_HEIGHT) { D_80120124 = 0; } break; diff --git a/src/code/z_play.c b/src/code/z_play.c index a3ab3930fa..5422448e45 100644 --- a/src/code/z_play.c +++ b/src/code/z_play.c @@ -156,7 +156,7 @@ void Gameplay_Destroy(GlobalContext* globalCtx) { SREG(91) = 0; R_PAUSE_MENU_MODE = 0; - func_800C0F08(&globalCtx->preRenderCtx); + PreRender_Destroy(&globalCtx->preRenderCtx); Effect_DeleteAll(globalCtx); EffectSs_ClearAll(globalCtx); CollisionCheck_DestroyContext(globalCtx, &globalCtx->colChkCtx); @@ -333,9 +333,9 @@ void Gameplay_Init(GlobalContext* globalCtx) { SREG(91) = -1; R_PAUSE_MENU_MODE = 0; - func_800C0EA8(&globalCtx->preRenderCtx); - func_800C0E70(&globalCtx->preRenderCtx, 0x140, 0xF0, 0, 0, 0); - func_800C0ED8(&globalCtx->preRenderCtx, 0x140, 0xF0, 0, 0); + PreRender_Init(&globalCtx->preRenderCtx); + PreRender_SetValuesSave(&globalCtx->preRenderCtx, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0, 0); + PreRender_SetValues(&globalCtx->preRenderCtx, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0); gTrnsnUnkState = 0; globalCtx->transitionMode = 0; func_8008E6A0(&globalCtx->sub_7B8); @@ -1158,11 +1158,11 @@ void Gameplay_Draw(GlobalContext* globalCtx) { oGfxCtx->polyOpa.p = sp88; goto Gameplay_Draw_DrawOverlayElements; } else { - func_800C0ED8(&globalCtx->preRenderCtx, 0x140, 0xF0, gfxCtx->curFrameBuffer, gZBuffer); + PreRender_SetValues(&globalCtx->preRenderCtx, SCREEN_WIDTH, SCREEN_HEIGHT, gfxCtx->curFrameBuffer, gZBuffer); if (R_PAUSE_MENU_MODE == 2) { MsgEvent_SendNullTask(); - func_800C3770(&globalCtx->preRenderCtx); + PreRender_Calc(&globalCtx->preRenderCtx); R_PAUSE_MENU_MODE = 3; } else if (R_PAUSE_MENU_MODE >= 4) { R_PAUSE_MENU_MODE = 0; @@ -1286,19 +1286,19 @@ void Gameplay_Draw(GlobalContext* globalCtx) { } if ((R_PAUSE_MENU_MODE == 1) || (gTrnsnUnkState == 1)) { - Gfx* sp70 = oGfxCtx->overlay.p; - globalCtx->preRenderCtx.unk_10 = gfxCtx->curFrameBuffer; - globalCtx->preRenderCtx.unk_14 = gZBuffer; + Gfx* sp70 = gfxCtx->overlay.p; + globalCtx->preRenderCtx.fbuf = gfxCtx->curFrameBuffer; + globalCtx->preRenderCtx.fbufSave = gZBuffer; func_800C1F20(&globalCtx->preRenderCtx, &sp70); if (R_PAUSE_MENU_MODE == 1) { - globalCtx->preRenderCtx.unk_18 = gfxCtx->curFrameBuffer; + globalCtx->preRenderCtx.cvgSave = gfxCtx->curFrameBuffer; func_800C20B4(&globalCtx->preRenderCtx, &sp70); R_PAUSE_MENU_MODE = 2; } else { gTrnsnUnkState = 2; } - oGfxCtx->overlay.p = sp70; - globalCtx->preRenderCtx.unk_A3 = 2; + gfxCtx->overlay.p = sp70; + globalCtx->unk_121C7 = 2; SREG(33) |= 1; } else { Gameplay_Draw_DrawOverlayElements: diff --git a/src/libultra_boot_O1/osViModePalLan1.c b/src/libultra_boot_O1/osViModePalLan1.c index 47c6c915eb..770f2ca9b4 100644 --- a/src/libultra_boot_O1/osViModePalLan1.c +++ b/src/libultra_boot_O1/osViModePalLan1.c @@ -5,7 +5,7 @@ OSViMode osViModePalLan1 = { { // comRegs 0x311E, // ctrl - 0x140, // width + SCREEN_WIDTH, // width 0x4541E3A, // burst 0x271, // vSync 0x170C69, // hSync diff --git a/src/libultra_boot_O2/osViModeFpalLan1.c b/src/libultra_boot_O2/osViModeFpalLan1.c index 47b36d7ad9..d7f97d8f0c 100644 --- a/src/libultra_boot_O2/osViModeFpalLan1.c +++ b/src/libultra_boot_O2/osViModeFpalLan1.c @@ -5,7 +5,7 @@ OSViMode osViModeFpalLan1 = { { // comRegs 0x311E, // ctrl - 0x140, // width + SCREEN_WIDTH, // width 0x4541E3A, // burst 0x271, // vSync 0x170C69, // hSync diff --git a/src/libultra_boot_O2/osViModeMpalLan1.c b/src/libultra_boot_O2/osViModeMpalLan1.c index 7557468f82..09b482c1c8 100644 --- a/src/libultra_boot_O2/osViModeMpalLan1.c +++ b/src/libultra_boot_O2/osViModeMpalLan1.c @@ -5,7 +5,7 @@ OSViMode osViModeMpalLan1 = { { // comRegs 0x311E, // ctrl - 0x140, // width + SCREEN_WIDTH, // width 0x4651E39, // burst 0x20D, // vSync 0x40C11, // hSync diff --git a/src/libultra_boot_O2/osViModeNtscLan1.c b/src/libultra_boot_O2/osViModeNtscLan1.c index 1026faae8f..f0ed3c6cd7 100644 --- a/src/libultra_boot_O2/osViModeNtscLan1.c +++ b/src/libultra_boot_O2/osViModeNtscLan1.c @@ -5,7 +5,7 @@ OSViMode osViModeNtscLan1 = { { // comRegs 0x311E, // ctrl - 0x140, // width + SCREEN_WIDTH, // width 0x3E52239, // burst 0x20D, // vSync 0xC15, // hSync diff --git a/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c b/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c index 3bc61b9aae..f508434bba 100644 --- a/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c +++ b/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c @@ -174,7 +174,7 @@ s32 func_809B55EC(EnAttackNiw* this, GlobalContext* globalCtx) { Actor_SetHeight(&this->actor, this->unk_2E4); func_8002F374(globalCtx, &this->actor, &sp1E, &sp1C); - if ((this->actor.projectedPos.z < -20.0f) || (sp1E < 0) || (sp1E >= 0x141) || (sp1C < 0) || (sp1C >= 0xF1)) { + if ((this->actor.projectedPos.z < -20.0f) || (sp1E < 0) || (sp1E > SCREEN_WIDTH) || (sp1C < 0) || (sp1C > SCREEN_HEIGHT)) { return 0; } else { return 1; diff --git a/src/overlays/actors/ovl_En_Gs/z_en_gs.c b/src/overlays/actors/ovl_En_Gs/z_en_gs.c index 08c73c387e..a1ad9dda7b 100644 --- a/src/overlays/actors/ovl_En_Gs/z_en_gs.c +++ b/src/overlays/actors/ovl_En_Gs/z_en_gs.c @@ -143,7 +143,7 @@ void func_80A4E648(EnGs* this, GlobalContext* globalCtx) { this->unk_19C = 2; } else { func_8002F374(globalCtx, &this->actor, &sp26, &sp24); - if ((sp26 >= 0) && (sp26 < 0x141) && (sp24 >= 0) && (sp24 < 0xF1) && (this->unk_19C != 3)) { + if ((sp26 >= 0) && (sp26 <= SCREEN_WIDTH) && (sp24 >= 0) && (sp24 <= SCREEN_HEIGHT) && (this->unk_19C != 3)) { if (func_8002F2CC(&this->actor, globalCtx, 40.0f) == 1) { if (func_8008F080(globalCtx) == 8) { this->actor.textId = 0x2054; diff --git a/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c b/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c index b52254e32e..45efeac4a5 100644 --- a/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c +++ b/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c @@ -495,7 +495,7 @@ void func_80B128F8(EnSyatekiNiw* this, GlobalContext* globalCtx) { Actor_SetHeight(&this->actor, this->unk_2D4); func_8002F374(globalCtx, &this->actor, &sp26, &sp24); if ((this->actor.projectedPos.z > 200.0f) && (this->actor.projectedPos.z < 800.0f) && (sp26 > 0) && - (sp26 < 0x140) && (sp24 > 0) && (sp24 < 0xF0)) { + (sp26 < SCREEN_WIDTH) && (sp24 > 0) && (sp24 < SCREEN_HEIGHT)) { this->actor.speedXZ = 5.0f; this->unk_298 = Math_Rand_ZeroFloat(1.99f); this->unk_2D8 = Math_Rand_CenteredFloat(8000.0f) + -10000.0f; @@ -514,8 +514,8 @@ void func_80B129EC(EnSyatekiNiw* this, GlobalContext* globalCtx) { Actor_SetHeight(&this->actor, this->unk_2D4); func_8002F374(globalCtx, &this->actor, &sp2E, &sp2C); - if ((this->unk_25E == 0) || (this->actor.projectedPos.z < -70.0f) || (sp2E < 0) || (sp2E >= 0x141) || (sp2C < 0) || - (sp2C >= 0xF1)) { + if ((this->unk_25E == 0) || (this->actor.projectedPos.z < -70.0f) || (sp2E < 0) || (sp2E > SCREEN_WIDTH) || (sp2C < 0) || + (sp2C > SCREEN_HEIGHT)) { Actor_Kill(&this->actor); return; }