diff --git a/asm/non_matchings/code/z_room/func_80095D04.s b/asm/non_matchings/code/z_room/func_80095D04.s deleted file mode 100644 index 612a6240a5..0000000000 --- a/asm/non_matchings/code/z_room/func_80095D04.s +++ /dev/null @@ -1,377 +0,0 @@ -.rdata -glabel D_8013EF48 - .asciz "../z_room.c" - .balign 4 - -glabel D_8013EF54 - .asciz "polygon2->num <= SHAPE_SORT_MAX" - .balign 4 - -glabel D_8013EF74 - .asciz "../z_room.c" - .balign 4 - -glabel D_8013EF80 - .asciz "../z_room.c" - .balign 4 - -.text -glabel func_80095D04 -/* B0CEA4 80095D04 27BDFB40 */ addiu $sp, $sp, -0x4c0 -/* B0CEA8 80095D08 AFBF001C */ sw $ra, 0x1c($sp) -/* B0CEAC 80095D0C AFB10018 */ sw $s1, 0x18($sp) -/* B0CEB0 80095D10 AFB00014 */ sw $s0, 0x14($sp) -/* B0CEB4 80095D14 AFA404C0 */ sw $a0, 0x4c0($sp) -/* B0CEB8 80095D18 AFA504C4 */ sw $a1, 0x4c4($sp) -/* B0CEBC 80095D1C 8C850000 */ lw $a1, ($a0) -/* B0CEC0 80095D20 00C08025 */ move $s0, $a2 -/* B0CEC4 80095D24 3C068014 */ lui $a2, %hi(D_8013EF48) # $a2, 0x8014 -/* B0CEC8 80095D28 24C6EF48 */ addiu $a2, %lo(D_8013EF48) # addiu $a2, $a2, -0x10b8 -/* B0CECC 80095D2C AFA000B0 */ sw $zero, 0xb0($sp) -/* B0CED0 80095D30 AFA000B4 */ sw $zero, 0xb4($sp) -/* B0CED4 80095D34 27A4005C */ addiu $a0, $sp, 0x5c -/* B0CED8 80095D38 2407011F */ li $a3, 287 -/* B0CEDC 80095D3C 0C031AB1 */ jal Graph_OpenDisps -/* B0CEE0 80095D40 AFA5006C */ sw $a1, 0x6c($sp) -/* B0CEE4 80095D44 32110001 */ andi $s1, $s0, 1 -/* B0CEE8 80095D48 8FA9006C */ lw $t1, 0x6c($sp) -/* B0CEEC 80095D4C 8FAA00B4 */ lw $t2, 0xb4($sp) -/* B0CEF0 80095D50 12200025 */ beqz $s1, .L80095DE8 -/* B0CEF4 80095D54 8FAB00B0 */ lw $t3, 0xb0($sp) -/* B0CEF8 80095D58 3C048012 */ lui $a0, %hi(D_801270A0) # $a0, 0x8012 -/* B0CEFC 80095D5C 248470A0 */ addiu $a0, %lo(D_801270A0) # addiu $a0, $a0, 0x70a0 -/* B0CF00 80095D60 8FA504C0 */ lw $a1, 0x4c0($sp) -/* B0CF04 80095D64 AFA9006C */ sw $t1, 0x6c($sp) -/* B0CF08 80095D68 AFAA00B4 */ sw $t2, 0xb4($sp) -/* B0CF0C 80095D6C 0C00D0BB */ jal func_800342EC -/* B0CF10 80095D70 AFAB00B0 */ sw $t3, 0xb0($sp) -/* B0CF14 80095D74 8FA9006C */ lw $t1, 0x6c($sp) -/* B0CF18 80095D78 8FAA00B4 */ lw $t2, 0xb4($sp) -/* B0CF1C 80095D7C 8FAB00B0 */ lw $t3, 0xb0($sp) -/* B0CF20 80095D80 8D2202C0 */ lw $v0, 0x2c0($t1) -/* B0CF24 80095D84 3C18DB06 */ lui $t8, (0xDB06000C >> 16) # lui $t8, 0xdb06 -/* B0CF28 80095D88 3718000C */ ori $t8, (0xDB06000C & 0xFFFF) # ori $t8, $t8, 0xc -/* B0CF2C 80095D8C 244F0008 */ addiu $t7, $v0, 8 -/* B0CF30 80095D90 AD2F02C0 */ sw $t7, 0x2c0($t1) -/* B0CF34 80095D94 AC580000 */ sw $t8, ($v0) -/* B0CF38 80095D98 8FB904C4 */ lw $t9, 0x4c4($sp) -/* B0CF3C 80095D9C 8F2E000C */ lw $t6, 0xc($t9) -/* B0CF40 80095DA0 AC4E0004 */ sw $t6, 4($v0) -/* B0CF44 80095DA4 8FA404C0 */ lw $a0, 0x4c0($sp) -/* B0CF48 80095DA8 AFA9006C */ sw $t1, 0x6c($sp) -/* B0CF4C 80095DAC AFAA00B4 */ sw $t2, 0xb4($sp) -/* B0CF50 80095DB0 0C024F20 */ jal func_80093C80 -/* B0CF54 80095DB4 AFAB00B0 */ sw $t3, 0xb0($sp) -/* B0CF58 80095DB8 8FA9006C */ lw $t1, 0x6c($sp) -/* B0CF5C 80095DBC 8FAA00B4 */ lw $t2, 0xb4($sp) -/* B0CF60 80095DC0 8FAB00B0 */ lw $t3, 0xb0($sp) -/* B0CF64 80095DC4 8D2202C0 */ lw $v0, 0x2c0($t1) -/* B0CF68 80095DC8 3C18DA38 */ lui $t8, (0xDA380003 >> 16) # lui $t8, 0xda38 -/* B0CF6C 80095DCC 3C198013 */ lui $t9, %hi(gMtxClear) # $t9, 0x8013 -/* B0CF70 80095DD0 244F0008 */ addiu $t7, $v0, 8 -/* B0CF74 80095DD4 AD2F02C0 */ sw $t7, 0x2c0($t1) -/* B0CF78 80095DD8 2739DB20 */ addiu $t9, %lo(gMtxClear) # addiu $t9, $t9, -0x24e0 -/* B0CF7C 80095DDC 37180003 */ ori $t8, (0xDA380003 & 0xFFFF) # ori $t8, $t8, 3 -/* B0CF80 80095DE0 AC580000 */ sw $t8, ($v0) -/* B0CF84 80095DE4 AC590004 */ sw $t9, 4($v0) -.L80095DE8: -/* B0CF88 80095DE8 320D0002 */ andi $t5, $s0, 2 -/* B0CF8C 80095DEC 11A00029 */ beqz $t5, .L80095E94 -/* B0CF90 80095DF0 3C048012 */ lui $a0, %hi(D_801270A0) # $a0, 0x8012 -/* B0CF94 80095DF4 3C108013 */ lui $s0, %hi(gMtxClear) # $s0, 0x8013 -/* B0CF98 80095DF8 2610DB20 */ addiu $s0, %lo(gMtxClear) # addiu $s0, $s0, -0x24e0 -/* B0CF9C 80095DFC 248470A0 */ addiu $a0, %lo(D_801270A0) # addiu $a0, $a0, 0x70a0 -/* B0CFA0 80095E00 8FA504C0 */ lw $a1, 0x4c0($sp) -/* B0CFA4 80095E04 AFA9006C */ sw $t1, 0x6c($sp) -/* B0CFA8 80095E08 AFAA00B4 */ sw $t2, 0xb4($sp) -/* B0CFAC 80095E0C AFAB00B0 */ sw $t3, 0xb0($sp) -/* B0CFB0 80095E10 0C00D0D7 */ jal func_8003435C -/* B0CFB4 80095E14 AFAD002C */ sw $t5, 0x2c($sp) -/* B0CFB8 80095E18 8FA9006C */ lw $t1, 0x6c($sp) -/* B0CFBC 80095E1C 8FAA00B4 */ lw $t2, 0xb4($sp) -/* B0CFC0 80095E20 8FAB00B0 */ lw $t3, 0xb0($sp) -/* B0CFC4 80095E24 8D2202D0 */ lw $v0, 0x2d0($t1) -/* B0CFC8 80095E28 8FAD002C */ lw $t5, 0x2c($sp) -/* B0CFCC 80095E2C 3C0FDB06 */ lui $t7, (0xDB06000C >> 16) # lui $t7, 0xdb06 -/* B0CFD0 80095E30 244E0008 */ addiu $t6, $v0, 8 -/* B0CFD4 80095E34 35EF000C */ ori $t7, (0xDB06000C & 0xFFFF) # ori $t7, $t7, 0xc -/* B0CFD8 80095E38 AD2E02D0 */ sw $t6, 0x2d0($t1) -/* B0CFDC 80095E3C AC4F0000 */ sw $t7, ($v0) -/* B0CFE0 80095E40 8FB804C4 */ lw $t8, 0x4c4($sp) -/* B0CFE4 80095E44 8F19000C */ lw $t9, 0xc($t8) -/* B0CFE8 80095E48 AC590004 */ sw $t9, 4($v0) -/* B0CFEC 80095E4C 8FAE04C0 */ lw $t6, 0x4c0($sp) -/* B0CFF0 80095E50 8DC40000 */ lw $a0, ($t6) -/* B0CFF4 80095E54 AFA9006C */ sw $t1, 0x6c($sp) -/* B0CFF8 80095E58 AFAA00B4 */ sw $t2, 0xb4($sp) -/* B0CFFC 80095E5C AFAB00B0 */ sw $t3, 0xb0($sp) -/* B0D000 80095E60 0C024F61 */ jal func_80093D84 -/* B0D004 80095E64 AFAD002C */ sw $t5, 0x2c($sp) -/* B0D008 80095E68 8FA9006C */ lw $t1, 0x6c($sp) -/* B0D00C 80095E6C 8FAA00B4 */ lw $t2, 0xb4($sp) -/* B0D010 80095E70 8FAB00B0 */ lw $t3, 0xb0($sp) -/* B0D014 80095E74 8D2202D0 */ lw $v0, 0x2d0($t1) -/* B0D018 80095E78 8FAD002C */ lw $t5, 0x2c($sp) -/* B0D01C 80095E7C 3C18DA38 */ lui $t8, (0xDA380003 >> 16) # lui $t8, 0xda38 -/* B0D020 80095E80 244F0008 */ addiu $t7, $v0, 8 -/* B0D024 80095E84 AD2F02D0 */ sw $t7, 0x2d0($t1) -/* B0D028 80095E88 37180003 */ ori $t8, (0xDA380003 & 0xFFFF) # ori $t8, $t8, 3 -/* B0D02C 80095E8C AC580000 */ sw $t8, ($v0) -/* B0D030 80095E90 AC500004 */ sw $s0, 4($v0) -.L80095E94: -/* B0D034 80095E94 8FB904C4 */ lw $t9, 0x4c4($sp) -/* B0D038 80095E98 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff -/* B0D03C 80095E9C 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* B0D040 80095EA0 8F2C0008 */ lw $t4, 8($t9) -/* B0D044 80095EA4 3C198016 */ lui $t9, %hi(gSegments) -/* B0D048 80095EA8 3C058014 */ lui $a1, %hi(D_8013EF74) # $a1, 0x8014 -/* B0D04C 80095EAC 8D820004 */ lw $v0, 4($t4) -/* B0D050 80095EB0 91840001 */ lbu $a0, 1($t4) -/* B0D054 80095EB4 27A300B8 */ addiu $v1, $sp, 0xb8 -/* B0D058 80095EB8 00027100 */ sll $t6, $v0, 4 -/* B0D05C 80095EBC 000E7F02 */ srl $t7, $t6, 0x1c -/* B0D060 80095EC0 000FC080 */ sll $t8, $t7, 2 -/* B0D064 80095EC4 0338C821 */ addu $t9, $t9, $t8 -/* B0D068 80095EC8 8F396FA8 */ lw $t9, %lo(gSegments)($t9) -/* B0D06C 80095ECC 00417024 */ and $t6, $v0, $at -/* B0D070 80095ED0 3C018000 */ lui $at, 0x8000 -/* B0D074 80095ED4 032E8021 */ addu $s0, $t9, $t6 -/* B0D078 80095ED8 02018021 */ addu $s0, $s0, $at -/* B0D07C 80095EDC 28810041 */ slti $at, $a0, 0x41 -/* B0D080 80095EE0 14200012 */ bnez $at, .L80095F2C -/* B0D084 80095EE4 24A5EF74 */ addiu $a1, %lo(D_8013EF74) # addiu $a1, $a1, -0x108c -/* B0D088 80095EE8 3C048014 */ lui $a0, %hi(D_8013EF54) # $a0, 0x8014 -/* B0D08C 80095EEC 2484EF54 */ addiu $a0, %lo(D_8013EF54) # addiu $a0, $a0, -0x10ac -/* B0D090 80095EF0 2406013D */ li $a2, 317 -/* B0D094 80095EF4 AFA300A4 */ sw $v1, 0xa4($sp) -/* B0D098 80095EF8 AFA9006C */ sw $t1, 0x6c($sp) -/* B0D09C 80095EFC AFAA00B4 */ sw $t2, 0xb4($sp) -/* B0D0A0 80095F00 AFAB00B0 */ sw $t3, 0xb0($sp) -/* B0D0A4 80095F04 AFAC04BC */ sw $t4, 0x4bc($sp) -/* B0D0A8 80095F08 0C0007FC */ jal __assert -/* B0D0AC 80095F0C AFAD002C */ sw $t5, 0x2c($sp) -/* B0D0B0 80095F10 8FAC04BC */ lw $t4, 0x4bc($sp) -/* B0D0B4 80095F14 8FA300A4 */ lw $v1, 0xa4($sp) -/* B0D0B8 80095F18 8FA9006C */ lw $t1, 0x6c($sp) -/* B0D0BC 80095F1C 8FAA00B4 */ lw $t2, 0xb4($sp) -/* B0D0C0 80095F20 8FAB00B0 */ lw $t3, 0xb0($sp) -/* B0D0C4 80095F24 8FAD002C */ lw $t5, 0x2c($sp) -/* B0D0C8 80095F28 91840001 */ lbu $a0, 1($t4) -.L80095F2C: -/* B0D0CC 80095F2C AFB00078 */ sw $s0, 0x78($sp) -/* B0D0D0 80095F30 18800061 */ blez $a0, .L800960B8 -/* B0D0D4 80095F34 00004025 */ move $t0, $zero -/* B0D0D8 80095F38 8FA404C0 */ lw $a0, 0x4c0($sp) -/* B0D0DC 80095F3C 3C010001 */ lui $at, (0x00011D60 >> 16) # lui $at, 1 -/* B0D0E0 80095F40 34211D60 */ ori $at, (0x00011D60 & 0xFFFF) # ori $at, $at, 0x1d60 -/* B0D0E4 80095F44 00812021 */ addu $a0, $a0, $at -/* B0D0E8 80095F48 AFA40028 */ sw $a0, 0x28($sp) -/* B0D0EC 80095F4C 860F0000 */ lh $t7, ($s0) -.L80095F50: -/* B0D0F0 80095F50 8FA40028 */ lw $a0, 0x28($sp) -/* B0D0F4 80095F54 27A50090 */ addiu $a1, $sp, 0x90 -/* B0D0F8 80095F58 448F2000 */ mtc1 $t7, $f4 -/* B0D0FC 80095F5C 27A60084 */ addiu $a2, $sp, 0x84 -/* B0D100 80095F60 27A70080 */ addiu $a3, $sp, 0x80 -/* B0D104 80095F64 468021A0 */ cvt.s.w $f6, $f4 -/* B0D108 80095F68 E7A60090 */ swc1 $f6, 0x90($sp) -/* B0D10C 80095F6C 86180002 */ lh $t8, 2($s0) -/* B0D110 80095F70 44984000 */ mtc1 $t8, $f8 -/* B0D114 80095F74 00000000 */ nop -/* B0D118 80095F78 468042A0 */ cvt.s.w $f10, $f8 -/* B0D11C 80095F7C E7AA0094 */ swc1 $f10, 0x94($sp) -/* B0D120 80095F80 86190004 */ lh $t9, 4($s0) -/* B0D124 80095F84 AFAD002C */ sw $t5, 0x2c($sp) -/* B0D128 80095F88 AFAC04BC */ sw $t4, 0x4bc($sp) -/* B0D12C 80095F8C 44998000 */ mtc1 $t9, $f16 -/* B0D130 80095F90 AFAB00B0 */ sw $t3, 0xb0($sp) -/* B0D134 80095F94 AFAA00B4 */ sw $t2, 0xb4($sp) -/* B0D138 80095F98 468084A0 */ cvt.s.w $f18, $f16 -/* B0D13C 80095F9C AFA9006C */ sw $t1, 0x6c($sp) -/* B0D140 80095FA0 AFA8009C */ sw $t0, 0x9c($sp) -/* B0D144 80095FA4 AFA300A4 */ sw $v1, 0xa4($sp) -/* B0D148 80095FA8 0C029B84 */ jal SkinMatrix_Vec3fMtxFMultXYZW -/* B0D14C 80095FAC E7B20098 */ swc1 $f18, 0x98($sp) -/* B0D150 80095FB0 860E0006 */ lh $t6, 6($s0) -/* B0D154 80095FB4 C7A8008C */ lwc1 $f8, 0x8c($sp) -/* B0D158 80095FB8 8FA300A4 */ lw $v1, 0xa4($sp) -/* B0D15C 80095FBC 448E2000 */ mtc1 $t6, $f4 -/* B0D160 80095FC0 8FA8009C */ lw $t0, 0x9c($sp) -/* B0D164 80095FC4 8FA9006C */ lw $t1, 0x6c($sp) -/* B0D168 80095FC8 46802020 */ cvt.s.w $f0, $f4 -/* B0D16C 80095FCC 8FAA00B4 */ lw $t2, 0xb4($sp) -/* B0D170 80095FD0 8FAB00B0 */ lw $t3, 0xb0($sp) -/* B0D174 80095FD4 8FAC04BC */ lw $t4, 0x4bc($sp) -/* B0D178 80095FD8 8FAD002C */ lw $t5, 0x2c($sp) -/* B0D17C 80095FDC 8FAF04C0 */ lw $t7, 0x4c0($sp) -/* B0D180 80095FE0 46000187 */ neg.s $f6, $f0 -/* B0D184 80095FE4 4608303C */ c.lt.s $f6, $f8 -/* B0D188 80095FE8 00000000 */ nop -/* B0D18C 80095FEC 4502002D */ bc1fl .L800960A4 -/* B0D190 80095FF0 91840001 */ lbu $a0, 1($t4) -/* B0D194 80095FF4 85F807B4 */ lh $t8, 0x7b4($t7) -/* B0D198 80095FF8 46004081 */ sub.s $f2, $f8, $f0 -/* B0D19C 80095FFC 01401025 */ move $v0, $t2 -/* B0D1A0 80096000 44985000 */ mtc1 $t8, $f10 -/* B0D1A4 80096004 00000000 */ nop -/* B0D1A8 80096008 46805420 */ cvt.s.w $f16, $f10 -/* B0D1AC 8009600C 4610103C */ c.lt.s $f2, $f16 -/* B0D1B0 80096010 00000000 */ nop -/* B0D1B4 80096014 45020023 */ bc1fl .L800960A4 -/* B0D1B8 80096018 91840001 */ lbu $a0, 1($t4) -/* B0D1BC 8009601C AC700000 */ sw $s0, ($v1) -/* B0D1C0 80096020 15400006 */ bnez $t2, .L8009603C -/* B0D1C4 80096024 E4620004 */ swc1 $f2, 4($v1) -/* B0D1C8 80096028 00605825 */ move $t3, $v1 -/* B0D1CC 8009602C 00605025 */ move $t2, $v1 -/* B0D1D0 80096030 AC60000C */ sw $zero, 0xc($v1) -/* B0D1D4 80096034 10000019 */ b .L8009609C -/* B0D1D8 80096038 AC600008 */ sw $zero, 8($v1) -.L8009603C: -/* B0D1DC 8009603C C4600004 */ lwc1 $f0, 4($v1) -/* B0D1E0 80096040 C4520004 */ lwc1 $f18, 4($v0) -.L80096044: -/* B0D1E4 80096044 4612003C */ c.lt.s $f0, $f18 -/* B0D1E8 80096048 00000000 */ nop -/* B0D1EC 8009604C 45010004 */ bc1t .L80096060 -/* B0D1F0 80096050 00000000 */ nop -/* B0D1F4 80096054 8C42000C */ lw $v0, 0xc($v0) -/* B0D1F8 80096058 5440FFFA */ bnezl $v0, .L80096044 -/* B0D1FC 8009605C C4520004 */ lwc1 $f18, 4($v0) -.L80096060: -/* B0D200 80096060 54400007 */ bnezl $v0, .L80096080 -/* B0D204 80096064 8C440008 */ lw $a0, 8($v0) -/* B0D208 80096068 AC6B0008 */ sw $t3, 8($v1) -/* B0D20C 8009606C AC60000C */ sw $zero, 0xc($v1) -/* B0D210 80096070 AD63000C */ sw $v1, 0xc($t3) -/* B0D214 80096074 10000009 */ b .L8009609C -/* B0D218 80096078 00605825 */ move $t3, $v1 -/* B0D21C 8009607C 8C440008 */ lw $a0, 8($v0) -.L80096080: -/* B0D220 80096080 14800003 */ bnez $a0, .L80096090 -/* B0D224 80096084 AC640008 */ sw $a0, 8($v1) -/* B0D228 80096088 10000002 */ b .L80096094 -/* B0D22C 8009608C 00605025 */ move $t2, $v1 -.L80096090: -/* B0D230 80096090 AC83000C */ sw $v1, 0xc($a0) -.L80096094: -/* B0D234 80096094 AC430008 */ sw $v1, 8($v0) -/* B0D238 80096098 AC62000C */ sw $v0, 0xc($v1) -.L8009609C: -/* B0D23C 8009609C 24630010 */ addiu $v1, $v1, 0x10 -/* B0D240 800960A0 91840001 */ lbu $a0, 1($t4) -.L800960A4: -/* B0D244 800960A4 25080001 */ addiu $t0, $t0, 1 -/* B0D248 800960A8 26100010 */ addiu $s0, $s0, 0x10 -/* B0D24C 800960AC 0104082A */ slt $at, $t0, $a0 -/* B0D250 800960B0 5420FFA7 */ bnezl $at, .L80095F50 -/* B0D254 800960B4 860F0000 */ lh $t7, ($s0) -.L800960B8: -/* B0D258 800960B8 3C198016 */ lui $t9, %hi(gGameInfo) # $t9, 0x8016 -/* B0D25C 800960BC 8F39FA90 */ lw $t9, %lo(gGameInfo)($t9) -/* B0D260 800960C0 24080001 */ li $t0, 1 -/* B0D264 800960C4 1140004C */ beqz $t2, .L800961F8 -/* B0D268 800960C8 A7240D82 */ sh $a0, 0xd82($t9) -/* B0D26C 800960CC 241F0002 */ li $ra, 2 -/* B0D270 800960D0 240B0001 */ li $t3, 1 -/* B0D274 800960D4 3C07DE00 */ lui $a3, 0xde00 -.L800960D8: -/* B0D278 800960D8 3C058016 */ lui $a1, %hi(gGameInfo) # $a1, 0x8016 -/* B0D27C 800960DC 8CA5FA90 */ lw $a1, %lo(gGameInfo)($a1) -/* B0D280 800960E0 8D500000 */ lw $s0, ($t2) -/* B0D284 800960E4 84A60D80 */ lh $a2, 0xd80($a1) -/* B0D288 800960E8 10C0002B */ beqz $a2, .L80096198 -/* B0D28C 800960EC 00000000 */ nop -/* B0D290 800960F0 91840001 */ lbu $a0, 1($t4) -/* B0D294 800960F4 8FA20078 */ lw $v0, 0x78($sp) -/* B0D298 800960F8 00001825 */ move $v1, $zero -/* B0D29C 800960FC 18800006 */ blez $a0, .L80096118 -/* B0D2A0 80096100 00000000 */ nop -.L80096104: -/* B0D2A4 80096104 12020004 */ beq $s0, $v0, .L80096118 -/* B0D2A8 80096108 24630001 */ addiu $v1, $v1, 1 -/* B0D2AC 8009610C 0064082A */ slt $at, $v1, $a0 -/* B0D2B0 80096110 1420FFFC */ bnez $at, .L80096104 -/* B0D2B4 80096114 24420010 */ addiu $v0, $v0, 0x10 -.L80096118: -/* B0D2B8 80096118 15660005 */ bne $t3, $a2, .L80096130 -/* B0D2BC 8009611C 00000000 */ nop -/* B0D2C0 80096120 84AE0D86 */ lh $t6, 0xd86($a1) -/* B0D2C4 80096124 01C8082A */ slt $at, $t6, $t0 -/* B0D2C8 80096128 10200006 */ beqz $at, .L80096144 -/* B0D2CC 8009612C 00000000 */ nop -.L80096130: -/* B0D2D0 80096130 57E6002E */ bnel $ra, $a2, .L800961EC -/* B0D2D4 80096134 8D4A000C */ lw $t2, 0xc($t2) -/* B0D2D8 80096138 84AF0D86 */ lh $t7, 0xd86($a1) -/* B0D2DC 8009613C 550F002B */ bnel $t0, $t7, .L800961EC -/* B0D2E0 80096140 8D4A000C */ lw $t2, 0xc($t2) -.L80096144: -/* B0D2E4 80096144 12200009 */ beqz $s1, .L8009616C -/* B0D2E8 80096148 00000000 */ nop -/* B0D2EC 8009614C 8E030008 */ lw $v1, 8($s0) -/* B0D2F0 80096150 10600006 */ beqz $v1, .L8009616C -/* B0D2F4 80096154 00000000 */ nop -/* B0D2F8 80096158 8D2202C0 */ lw $v0, 0x2c0($t1) -/* B0D2FC 8009615C 24580008 */ addiu $t8, $v0, 8 -/* B0D300 80096160 AD3802C0 */ sw $t8, 0x2c0($t1) -/* B0D304 80096164 AC430004 */ sw $v1, 4($v0) -/* B0D308 80096168 AC470000 */ sw $a3, ($v0) -.L8009616C: -/* B0D30C 8009616C 51A0001F */ beql $t5, $zero, .L800961EC -/* B0D310 80096170 8D4A000C */ lw $t2, 0xc($t2) -/* B0D314 80096174 8E03000C */ lw $v1, 0xc($s0) -/* B0D318 80096178 5060001C */ beql $v1, $zero, .L800961EC -/* B0D31C 8009617C 8D4A000C */ lw $t2, 0xc($t2) -/* B0D320 80096180 8D2202D0 */ lw $v0, 0x2d0($t1) -/* B0D324 80096184 24590008 */ addiu $t9, $v0, 8 -/* B0D328 80096188 AD3902D0 */ sw $t9, 0x2d0($t1) -/* B0D32C 8009618C AC430004 */ sw $v1, 4($v0) -/* B0D330 80096190 10000015 */ b .L800961E8 -/* B0D334 80096194 AC470000 */ sw $a3, ($v0) -.L80096198: -/* B0D338 80096198 12200009 */ beqz $s1, .L800961C0 -/* B0D33C 8009619C 00000000 */ nop -/* B0D340 800961A0 8E030008 */ lw $v1, 8($s0) -/* B0D344 800961A4 10600006 */ beqz $v1, .L800961C0 -/* B0D348 800961A8 00000000 */ nop -/* B0D34C 800961AC 8D2202C0 */ lw $v0, 0x2c0($t1) -/* B0D350 800961B0 244E0008 */ addiu $t6, $v0, 8 -/* B0D354 800961B4 AD2E02C0 */ sw $t6, 0x2c0($t1) -/* B0D358 800961B8 AC430004 */ sw $v1, 4($v0) -/* B0D35C 800961BC AC470000 */ sw $a3, ($v0) -.L800961C0: -/* B0D360 800961C0 51A0000A */ beql $t5, $zero, .L800961EC -/* B0D364 800961C4 8D4A000C */ lw $t2, 0xc($t2) -/* B0D368 800961C8 8E03000C */ lw $v1, 0xc($s0) -/* B0D36C 800961CC 50600007 */ beql $v1, $zero, .L800961EC -/* B0D370 800961D0 8D4A000C */ lw $t2, 0xc($t2) -/* B0D374 800961D4 8D2202D0 */ lw $v0, 0x2d0($t1) -/* B0D378 800961D8 244F0008 */ addiu $t7, $v0, 8 -/* B0D37C 800961DC AD2F02D0 */ sw $t7, 0x2d0($t1) -/* B0D380 800961E0 AC430004 */ sw $v1, 4($v0) -/* B0D384 800961E4 AC470000 */ sw $a3, ($v0) -.L800961E8: -/* B0D388 800961E8 8D4A000C */ lw $t2, 0xc($t2) -.L800961EC: -/* B0D38C 800961EC 25080001 */ addiu $t0, $t0, 1 -/* B0D390 800961F0 1540FFB9 */ bnez $t2, .L800960D8 -/* B0D394 800961F4 00000000 */ nop -.L800961F8: -/* B0D398 800961F8 3C198016 */ lui $t9, %hi(gGameInfo) # $t9, 0x8016 -/* B0D39C 800961FC 8F39FA90 */ lw $t9, %lo(gGameInfo)($t9) -/* B0D3A0 80096200 2518FFFF */ addiu $t8, $t0, -1 -/* B0D3A4 80096204 3C068014 */ lui $a2, %hi(D_8013EF80) # $a2, 0x8014 -/* B0D3A8 80096208 A7380D84 */ sh $t8, 0xd84($t9) -/* B0D3AC 8009620C 8FAE04C0 */ lw $t6, 0x4c0($sp) -/* B0D3B0 80096210 24C6EF80 */ addiu $a2, %lo(D_8013EF80) # addiu $a2, $a2, -0x1080 -/* B0D3B4 80096214 27A4005C */ addiu $a0, $sp, 0x5c -/* B0D3B8 80096218 240701AE */ li $a3, 430 -/* B0D3BC 8009621C 0C031AD5 */ jal Graph_CloseDisps -/* B0D3C0 80096220 8DC50000 */ lw $a1, ($t6) -/* B0D3C4 80096224 8FBF001C */ lw $ra, 0x1c($sp) -/* B0D3C8 80096228 8FB00014 */ lw $s0, 0x14($sp) -/* B0D3CC 8009622C 8FB10018 */ lw $s1, 0x18($sp) -/* B0D3D0 80096230 03E00008 */ jr $ra -/* B0D3D4 80096234 27BD04C0 */ addiu $sp, $sp, 0x4c0 - diff --git a/asm/non_matchings/code/z_room/func_80096FE8.s b/asm/non_matchings/code/z_room/func_80096FE8.s deleted file mode 100644 index abb641c89c..0000000000 --- a/asm/non_matchings/code/z_room/func_80096FE8.s +++ /dev/null @@ -1,227 +0,0 @@ -.rdata -glabel D_8013F120 - .asciz "ROOM%d size=%d\n" - .balign 4 - -glabel D_8013F130 - .asciz "../z_room.c" - .balign 4 - -glabel D_8013F13C - .asciz "game_play->room_rom_address.num = %d\n" - .balign 4 - -glabel D_8013F164 - .asciz "DOOR%d=<%d> ROOM1=<%d, %d> ROOM2=<%d, %d>\n" - .balign 4 - -glabel D_8013F190 - .asciz "\x1b[33m" - .balign 4 - -glabel D_8013F198 - .asciz "部屋バッファサイズ=%08x(%5.1fK)\n" - .balign 4 - -glabel D_8013F1BC - .asciz "../z_room.c" - .balign 4 - -glabel D_8013F1C8 - .asciz "部屋バッファ開始ポインタ=%08x\n" - .balign 4 - -glabel D_8013F1E8 - .asciz "部屋バッファ終了ポインタ=%08x\n" - .balign 4 - -glabel D_8013F208 - .asciz "\x1b[m" - .balign 4 - -.text -glabel func_80096FE8 -/* B0E188 80096FE8 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* B0E18C 80096FEC AFB50038 */ sw $s5, 0x38($sp) -/* B0E190 80096FF0 3C010001 */ lui $at, 1 -/* B0E194 80096FF4 AFBF003C */ sw $ra, 0x3c($sp) -/* B0E198 80096FF8 AFB40034 */ sw $s4, 0x34($sp) -/* B0E19C 80096FFC AFB30030 */ sw $s3, 0x30($sp) -/* B0E1A0 80097000 AFB2002C */ sw $s2, 0x2c($sp) -/* B0E1A4 80097004 AFB10028 */ sw $s1, 0x28($sp) -/* B0E1A8 80097008 AFB00024 */ sw $s0, 0x24($sp) -/* B0E1AC 8009700C AFA40040 */ sw $a0, 0x40($sp) -/* B0E1B0 80097010 AFA50044 */ sw $a1, 0x44($sp) -/* B0E1B4 80097014 0081A821 */ addu $s5, $a0, $at -/* B0E1B8 80097018 92AE1DEC */ lbu $t6, 0x1dec($s5) -/* B0E1BC 8009701C 00009825 */ move $s3, $zero -/* B0E1C0 80097020 8EA21DF0 */ lw $v0, 0x1df0($s5) -/* B0E1C4 80097024 19C00014 */ blez $t6, .L80097078 -/* B0E1C8 80097028 00009025 */ move $s2, $zero -/* B0E1CC 8009702C 00408025 */ move $s0, $v0 -/* B0E1D0 80097030 8E0F0004 */ lw $t7, 4($s0) -.L80097034: -/* B0E1D4 80097034 8E180000 */ lw $t8, ($s0) -/* B0E1D8 80097038 3C048014 */ lui $a0, %hi(D_8013F120) # $a0, 0x8014 -/* B0E1DC 8009703C 2484F120 */ addiu $a0, %lo(D_8013F120) # addiu $a0, $a0, -0xee0 -/* B0E1E0 80097040 01F88823 */ subu $s1, $t7, $t8 -/* B0E1E4 80097044 02203025 */ move $a2, $s1 -/* B0E1E8 80097048 0C00084C */ jal osSyncPrintf -/* B0E1EC 8009704C 02402825 */ move $a1, $s2 -/* B0E1F0 80097050 0271082B */ sltu $at, $s3, $s1 -/* B0E1F4 80097054 50200003 */ beql $at, $zero, .L80097064 -/* B0E1F8 80097058 92B91DEC */ lbu $t9, 0x1dec($s5) -/* B0E1FC 8009705C 02209825 */ move $s3, $s1 -/* B0E200 80097060 92B91DEC */ lbu $t9, 0x1dec($s5) -.L80097064: -/* B0E204 80097064 26520001 */ addiu $s2, $s2, 1 -/* B0E208 80097068 26100008 */ addiu $s0, $s0, 8 -/* B0E20C 8009706C 0259082A */ slt $at, $s2, $t9 -/* B0E210 80097070 5420FFF0 */ bnezl $at, .L80097034 -/* B0E214 80097074 8E0F0004 */ lw $t7, 4($s0) -.L80097078: -/* B0E218 80097078 92AA1D34 */ lbu $t2, 0x1d34($s5) -/* B0E21C 8009707C 3C048014 */ lui $a0, %hi(D_8013F130) # $a0, 0x8014 -/* B0E220 80097080 2484F130 */ addiu $a0, %lo(D_8013F130) # addiu $a0, $a0, -0xed0 -/* B0E224 80097084 11400034 */ beqz $t2, .L80097158 -/* B0E228 80097088 24050390 */ li $a1, 912 -/* B0E22C 8009708C 8EB41DF0 */ lw $s4, 0x1df0($s5) -/* B0E230 80097090 0C000B84 */ jal LogUtils_LogThreadId -/* B0E234 80097094 8EB21D38 */ lw $s2, 0x1d38($s5) -/* B0E238 80097098 3C048014 */ lui $a0, %hi(D_8013F13C) # $a0, 0x8014 -/* B0E23C 8009709C 2484F13C */ addiu $a0, %lo(D_8013F13C) # addiu $a0, $a0, -0xec4 -/* B0E240 800970A0 0C00084C */ jal osSyncPrintf -/* B0E244 800970A4 92A51DEC */ lbu $a1, 0x1dec($s5) -/* B0E248 800970A8 92AB1D34 */ lbu $t3, 0x1d34($s5) -/* B0E24C 800970AC 00008825 */ move $s1, $zero -/* B0E250 800970B0 19600029 */ blez $t3, .L80097158 -/* B0E254 800970B4 00000000 */ nop -/* B0E258 800970B8 82470000 */ lb $a3, ($s2) -.L800970BC: -/* B0E25C 800970BC 3C048014 */ lui $a0, %hi(D_8013F164) # $a0, 0x8014 -/* B0E260 800970C0 82490002 */ lb $t1, 2($s2) -/* B0E264 800970C4 04E10003 */ bgez $a3, .L800970D4 -/* B0E268 800970C8 2484F164 */ addiu $a0, %lo(D_8013F164) # addiu $a0, $a0, -0xe9c -/* B0E26C 800970CC 10000006 */ b .L800970E8 -/* B0E270 800970D0 00001825 */ move $v1, $zero -.L800970D4: -/* B0E274 800970D4 000760C0 */ sll $t4, $a3, 3 -/* B0E278 800970D8 028C1021 */ addu $v0, $s4, $t4 -/* B0E27C 800970DC 8C4D0004 */ lw $t5, 4($v0) -/* B0E280 800970E0 8C4E0000 */ lw $t6, ($v0) -/* B0E284 800970E4 01AE1823 */ subu $v1, $t5, $t6 -.L800970E8: -/* B0E288 800970E8 05210003 */ bgez $t1, .L800970F8 -/* B0E28C 800970EC 02202825 */ move $a1, $s1 -/* B0E290 800970F0 10000006 */ b .L8009710C -/* B0E294 800970F4 00004025 */ move $t0, $zero -.L800970F8: -/* B0E298 800970F8 000978C0 */ sll $t7, $t1, 3 -/* B0E29C 800970FC 028F1021 */ addu $v0, $s4, $t7 -/* B0E2A0 80097100 8C580004 */ lw $t8, 4($v0) -/* B0E2A4 80097104 8C590000 */ lw $t9, ($v0) -/* B0E2A8 80097108 03194023 */ subu $t0, $t8, $t9 -.L8009710C: -/* B0E2AC 8009710C 10E90003 */ beq $a3, $t1, .L8009711C -/* B0E2B0 80097110 00608025 */ move $s0, $v1 -/* B0E2B4 80097114 10000001 */ b .L8009711C -/* B0E2B8 80097118 00688021 */ addu $s0, $v1, $t0 -.L8009711C: -/* B0E2BC 8009711C 02003025 */ move $a2, $s0 -/* B0E2C0 80097120 AFA30010 */ sw $v1, 0x10($sp) -/* B0E2C4 80097124 AFA90014 */ sw $t1, 0x14($sp) -/* B0E2C8 80097128 0C00084C */ jal osSyncPrintf -/* B0E2CC 8009712C AFA80018 */ sw $t0, 0x18($sp) -/* B0E2D0 80097130 0270082B */ sltu $at, $s3, $s0 -/* B0E2D4 80097134 50200003 */ beql $at, $zero, .L80097144 -/* B0E2D8 80097138 92AA1D34 */ lbu $t2, 0x1d34($s5) -/* B0E2DC 8009713C 02009825 */ move $s3, $s0 -/* B0E2E0 80097140 92AA1D34 */ lbu $t2, 0x1d34($s5) -.L80097144: -/* B0E2E4 80097144 26310001 */ addiu $s1, $s1, 1 -/* B0E2E8 80097148 26520010 */ addiu $s2, $s2, 0x10 -/* B0E2EC 8009714C 022A082A */ slt $at, $s1, $t2 -/* B0E2F0 80097150 5420FFDA */ bnezl $at, .L800970BC -/* B0E2F4 80097154 82470000 */ lb $a3, ($s2) -.L80097158: -/* B0E2F8 80097158 3C048014 */ lui $a0, %hi(D_8013F190) -/* B0E2FC 8009715C 0C00084C */ jal osSyncPrintf -/* B0E300 80097160 2484F190 */ addiu $a0, %lo(D_8013F190) # addiu $a0, $a0, -0xe70 -/* B0E304 80097164 44932000 */ mtc1 $s3, $f4 -/* B0E308 80097168 3C048014 */ lui $a0, %hi(D_8013F198) # $a0, 0x8014 -/* B0E30C 8009716C 2484F198 */ addiu $a0, %lo(D_8013F198) # addiu $a0, $a0, -0xe68 -/* B0E310 80097170 02602825 */ move $a1, $s3 -/* B0E314 80097174 06610005 */ bgez $s3, .L8009718C -/* B0E318 80097178 468021A0 */ cvt.s.w $f6, $f4 -/* B0E31C 8009717C 3C014F80 */ li $at, 0x4F800000 # 0.000000 -/* B0E320 80097180 44814000 */ mtc1 $at, $f8 -/* B0E324 80097184 00000000 */ nop -/* B0E328 80097188 46083180 */ add.s $f6, $f6, $f8 -.L8009718C: -/* B0E32C 8009718C 3C013A80 */ li $at, 0x3A800000 # 0.000000 -/* B0E330 80097190 44815000 */ mtc1 $at, $f10 -/* B0E334 80097194 00000000 */ nop -/* B0E338 80097198 460A3402 */ mul.s $f16, $f6, $f10 -/* B0E33C 8009719C 460084A1 */ cvt.d.s $f18, $f16 -/* B0E340 800971A0 44079000 */ mfc1 $a3, $f18 -/* B0E344 800971A4 44069800 */ mfc1 $a2, $f19 -/* B0E348 800971A8 0C00084C */ jal osSyncPrintf -/* B0E34C 800971AC 00000000 */ nop -/* B0E350 800971B0 3C068014 */ lui $a2, %hi(D_8013F1BC) # $a2, 0x8014 -/* B0E354 800971B4 24C6F1BC */ addiu $a2, %lo(D_8013F1BC) # addiu $a2, $a2, -0xe44 -/* B0E358 800971B8 8FA40040 */ lw $a0, 0x40($sp) -/* B0E35C 800971BC 02602825 */ move $a1, $s3 -/* B0E360 800971C0 0C031521 */ jal GameState_Alloc -/* B0E364 800971C4 240703B2 */ li $a3, 946 -/* B0E368 800971C8 8FAB0044 */ lw $t3, 0x44($sp) -/* B0E36C 800971CC 3C048014 */ lui $a0, %hi(D_8013F1C8) # $a0, 0x8014 -/* B0E370 800971D0 2484F1C8 */ addiu $a0, %lo(D_8013F1C8) # addiu $a0, $a0, -0xe38 -/* B0E374 800971D4 00402825 */ move $a1, $v0 -/* B0E378 800971D8 0C00084C */ jal osSyncPrintf -/* B0E37C 800971DC AD620028 */ sw $v0, 0x28($t3) -/* B0E380 800971E0 8FAC0044 */ lw $t4, 0x44($sp) -/* B0E384 800971E4 3C048014 */ lui $a0, %hi(D_8013F1E8) # $a0, 0x8014 -/* B0E388 800971E8 2484F1E8 */ addiu $a0, %lo(D_8013F1E8) # addiu $a0, $a0, -0xe18 -/* B0E38C 800971EC 8D8D0028 */ lw $t5, 0x28($t4) -/* B0E390 800971F0 01B32821 */ addu $a1, $t5, $s3 -/* B0E394 800971F4 0C00084C */ jal osSyncPrintf -/* B0E398 800971F8 AD85002C */ sw $a1, 0x2c($t4) -/* B0E39C 800971FC 3C048014 */ lui $a0, %hi(D_8013F208) # $a0, 0x8014 -/* B0E3A0 80097200 0C00084C */ jal osSyncPrintf -/* B0E3A4 80097204 2484F208 */ addiu $a0, %lo(D_8013F208) # addiu $a0, $a0, -0xdf8 -/* B0E3A8 80097208 8FAE0044 */ lw $t6, 0x44($sp) -/* B0E3AC 8009720C 3C038016 */ lui $v1, %hi(gSaveContext) # $v1, 0x8016 -/* B0E3B0 80097210 2463E660 */ addiu $v1, %lo(gSaveContext) # addiu $v1, $v1, -0x19a0 -/* B0E3B4 80097214 A1C00030 */ sb $zero, 0x30($t6) -/* B0E3B8 80097218 8FAF0044 */ lw $t7, 0x44($sp) -/* B0E3BC 8009721C A1E00031 */ sb $zero, 0x31($t7) -/* B0E3C0 80097220 8C621364 */ lw $v0, 0x1364($v1) -/* B0E3C4 80097224 18400006 */ blez $v0, .L80097240 -/* B0E3C8 80097228 0002C0C0 */ sll $t8, $v0, 3 -/* B0E3CC 8009722C 0302C023 */ subu $t8, $t8, $v0 -/* B0E3D0 80097230 0018C080 */ sll $t8, $t8, 2 -/* B0E3D4 80097234 0078C821 */ addu $t9, $v1, $t8 -/* B0E3D8 80097238 10000006 */ b .L80097254 -/* B0E3DC 8009723C 9327135E */ lbu $a3, 0x135e($t9) -.L80097240: -/* B0E3E0 80097240 92AB1DEA */ lbu $t3, 0x1dea($s5) -/* B0E3E4 80097244 8EAA1E00 */ lw $t2, 0x1e00($s5) -/* B0E3E8 80097248 000B6840 */ sll $t5, $t3, 1 -/* B0E3EC 8009724C 014D6021 */ addu $t4, $t2, $t5 -/* B0E3F0 80097250 91870001 */ lbu $a3, 1($t4) -.L80097254: -/* B0E3F4 80097254 8FA40040 */ lw $a0, 0x40($sp) -/* B0E3F8 80097258 8FA50044 */ lw $a1, 0x44($sp) -/* B0E3FC 8009725C 0C025CA3 */ jal func_8009728C -/* B0E400 80097260 00E03025 */ move $a2, $a3 -/* B0E404 80097264 8FBF003C */ lw $ra, 0x3c($sp) -/* B0E408 80097268 02601025 */ move $v0, $s3 -/* B0E40C 8009726C 8FB30030 */ lw $s3, 0x30($sp) -/* B0E410 80097270 8FB00024 */ lw $s0, 0x24($sp) -/* B0E414 80097274 8FB10028 */ lw $s1, 0x28($sp) -/* B0E418 80097278 8FB2002C */ lw $s2, 0x2c($sp) -/* B0E41C 8009727C 8FB40034 */ lw $s4, 0x34($sp) -/* B0E420 80097280 8FB50038 */ lw $s5, 0x38($sp) -/* B0E424 80097284 03E00008 */ jr $ra -/* B0E428 80097288 27BD0040 */ addiu $sp, $sp, 0x40 - diff --git a/src/code/z_room.c b/src/code/z_room.c index 80e724368a..e76e07b34f 100644 --- a/src/code/z_room.c +++ b/src/code/z_room.c @@ -80,8 +80,6 @@ typedef struct struct_80095D04 { } struct_80095D04; // size = 0x10 // Room Draw Polygon Type 2 -#ifdef NON_MATCHING -// Saved register problems and ordering issues, but definitely equivalent. void func_80095D04(GlobalContext* globalCtx, Room* room, u32 flags) { PolygonType2* polygon2; PolygonDlist2* polygonDlist; @@ -89,14 +87,14 @@ void func_80095D04(GlobalContext* globalCtx, Room* room, u32 flags) { struct_80095D04* spB4 = NULL; struct_80095D04* spB0 = NULL; struct_80095D04* phi_v0; - struct_80095D04* phi_a0; + s32 pad; struct_80095D04* spA4; s32 phi_v1; s32 sp9C; Vec3f sp90; Vec3f sp84; f32 sp80; - PolygonDlist2* phi_s0; + s32 pad2; PolygonDlist2* sp78; PolygonDlist2* temp; f32 temp_f2; @@ -109,7 +107,6 @@ void func_80095D04(GlobalContext* globalCtx, Room* room, u32 flags) { gSPMatrix(POLY_OPA_DISP++, &gMtxClear, G_MTX_MODELVIEW | G_MTX_LOAD); } if (1) {} - if (1) {} if (flags & 2) { func_8003435C(&D_801270A0, globalCtx); gSPSegment(POLY_XLU_DISP++, 0x03, room->segment); @@ -167,30 +164,30 @@ void func_80095D04(GlobalContext* globalCtx, Room* room, u32 flags) { } } - iREG(87) = polygon2->num; + iREG(87) = polygon2->num & 0xFFFF & 0xFFFF & 0xFFFF; // if this is real then I might not be for (sp9C = 1; spB4 != NULL; spB4 = spB4->unk_0C, sp9C++) { Gfx* temp2; - phi_s0 = spB4->unk_00; + polygonDlist = spB4->unk_00; if (iREG(86) != 0) { temp = sp78; for (phi_v1 = 0; phi_v1 < polygon2->num; phi_v1++, temp++) { - if (phi_s0 == temp) { + if (polygonDlist == temp) { break; // This loop does nothing? } } if (((iREG(86) == 1) && (iREG(89) >= sp9C)) || ((iREG(86) == 2) && (iREG(89) == sp9C))) { if (flags & 1) { - temp2 = phi_s0->opa; + temp2 = polygonDlist->opa; if (temp2 != NULL) { gSPDisplayList(POLY_OPA_DISP++, temp2); } } if (flags & 2) { - temp2 = phi_s0->xlu; + temp2 = polygonDlist->xlu; if (temp2 != NULL) { gSPDisplayList(POLY_XLU_DISP++, temp2); } @@ -198,14 +195,14 @@ void func_80095D04(GlobalContext* globalCtx, Room* room, u32 flags) { } } else { if (flags & 1) { - temp2 = phi_s0->opa; + temp2 = polygonDlist->opa; if (temp2 != NULL) { gSPDisplayList(POLY_OPA_DISP++, temp2); } } if (flags & 2) { - temp2 = phi_s0->xlu; + temp2 = polygonDlist->xlu; if (temp2 != NULL) { gSPDisplayList(POLY_XLU_DISP++, temp2); } @@ -217,9 +214,6 @@ void func_80095D04(GlobalContext* globalCtx, Room* room, u32 flags) { CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_room.c", 430); } -#else -#pragma GLOBAL_ASM("asm/non_matchings/code/z_room/func_80095D04.s") -#endif #define JPEG_MARKER 0xFFD8FFE0 @@ -485,14 +479,17 @@ void func_80096FD4(GlobalContext* globalCtx, Room* room) { room->segment = NULL; } -#ifdef NON_MATCHING -// regalloc differences near the end u32 func_80096FE8(GlobalContext* globalCtx, RoomContext* roomCtx) { - u8 nextRoomNum; u32 maxRoomSize = 0; RomFile* roomList = globalCtx->roomList; u32 roomSize; s32 i; + s32 j; + s32 frontRoom; + s32 backRoom; + u32 frontRoomSize; + u32 backRoomSize; + u32 cumulRoomSize; for (i = 0; i < globalCtx->numRooms; i++) { roomSize = roomList[i].vromEnd - roomList[i].vromStart; @@ -503,18 +500,17 @@ u32 func_80096FE8(GlobalContext* globalCtx, RoomContext* roomCtx) { } if (globalCtx->transiActorCtx.numActors != 0) { - s32 j; RomFile* roomList = globalCtx->roomList; TransitionActorEntry* transitionActor = &globalCtx->transiActorCtx.list[0]; LOG_NUM("game_play->room_rom_address.num", globalCtx->numRooms, "../z_room.c", 912); for (j = 0; j < globalCtx->transiActorCtx.numActors; j++) { - s8 frontRoom = transitionActor->sides[0].room; - s8 backRoom = transitionActor->sides[1].room; - u32 frontRoomSize = (frontRoom < 0) ? 0 : roomList[frontRoom].vromEnd - roomList[frontRoom].vromStart; - u32 backRoomSize = (backRoom < 0) ? 0 : roomList[backRoom].vromEnd - roomList[backRoom].vromStart; - u32 cumulRoomSize = (frontRoom != backRoom) ? frontRoomSize + backRoomSize : frontRoomSize; + frontRoom = transitionActor->sides[0].room; + backRoom = transitionActor->sides[1].room; + frontRoomSize = (frontRoom < 0) ? 0 : roomList[frontRoom].vromEnd - roomList[frontRoom].vromStart; + backRoomSize = (backRoom < 0) ? 0 : roomList[backRoom].vromEnd - roomList[backRoom].vromStart; + cumulRoomSize = (frontRoom != backRoom) ? frontRoomSize + backRoomSize : frontRoomSize; osSyncPrintf("DOOR%d=<%d> ROOM1=<%d, %d> ROOM2=<%d, %d>\n", j, cumulRoomSize, frontRoom, frontRoomSize, backRoom, backRoomSize); @@ -538,15 +534,12 @@ u32 func_80096FE8(GlobalContext* globalCtx, RoomContext* roomCtx) { roomCtx->unk_30 = 0; roomCtx->status = 0; - nextRoomNum = (gSaveContext.respawnFlag - 1 >= 0) ? gSaveContext.respawn[gSaveContext.respawnFlag - 1].roomIndex - : globalCtx->setupEntranceList[globalCtx->curSpawn].room; - func_8009728C(globalCtx, roomCtx, nextRoomNum); + frontRoom = gSaveContext.respawnFlag > 0 ? ((void)0, gSaveContext.respawn[gSaveContext.respawnFlag - 1].roomIndex) + : globalCtx->setupEntranceList[globalCtx->curSpawn].room; + func_8009728C(globalCtx, roomCtx, frontRoom); return maxRoomSize; } -#else -#pragma GLOBAL_ASM("asm/non_matchings/code/z_room/func_80096FE8.s") -#endif s32 func_8009728C(GlobalContext* globalCtx, RoomContext* roomCtx, s32 roomNum) { u32 size;