diff --git a/include/PR/gbi.h b/include/PR/gbi.h index 79401166e..f23090da5 100644 --- a/include/PR/gbi.h +++ b/include/PR/gbi.h @@ -988,8 +988,13 @@ typedef struct { }; /*0x06*/ u8 flags; /*0x07*/ u8 colour; - /*0x08*/ s16 s; - /*0x0a*/ s16 t; + union { + struct { + /*0x08*/ s16 s; + /*0x0a*/ s16 t; + }; + s16 tc[2]; + }; } Vtx; typedef union { diff --git a/src/game/bondgun.c b/src/game/bondgun.c index d6e34cb9a..db105e397 100644 --- a/src/game/bondgun.c +++ b/src/game/bondgun.c @@ -8177,2557 +8177,21 @@ s32 bgun_allocate_fireslot(void) return index; } -u32 var8007029c = 0x00000000; -u32 var800702a0 = 0x00000001; -u32 var800702a4 = 0x00000003; -u32 var800702a8 = 0x00000000; -u32 var800702ac = 0x00000000; -u32 var800702b0 = 0x00000000; -u32 var800702b4 = 0x00000000; -u32 var800702b8 = 0x00000000; -u32 var800702bc = 0x00000000; -u32 var800702c0 = 0x00000000; -u32 var800702c4 = 0x00000000; -u32 var800702c8 = 0x00000000; -u32 var800702cc = 0x00000000; -u32 var800702d0 = 0x00000000; -u32 var800702d4 = 0x00000000; -u32 var800702d8 = 0x00000000; -u32 var800702dc = 0x00000001; - -#if MATCHING -#if PAL -GLOBAL_ASM( -glabel bgun_render -.late_rodata -glabel var7f1aca8c -.word 0x3faaaaab -glabel var7f1aca90 -.word 0x3f3ebebf -.text -/* f0a7138: 27bdfeb0 */ addiu $sp,$sp,-336 -/* f0a713c: afbf0034 */ sw $ra,0x34($sp) -/* f0a7140: afb50030 */ sw $s5,0x30($sp) -/* f0a7144: afb4002c */ sw $s4,0x2c($sp) -/* f0a7148: afb30028 */ sw $s3,0x28($sp) -/* f0a714c: afb20024 */ sw $s2,0x24($sp) -/* f0a7150: afb10020 */ sw $s1,0x20($sp) -/* f0a7154: afb0001c */ sw $s0,0x1c($sp) -/* f0a7158: afa40150 */ sw $a0,0x150($sp) -/* f0a715c: 8c8f0000 */ lw $t7,0x0($a0) -/* f0a7160: 3c198007 */ lui $t9,%hi(var8007029c) -/* f0a7164: 3c11800a */ lui $s1,%hi(g_Vars) -/* f0a7168: 2739029c */ addiu $t9,$t9,%lo(var8007029c) -/* f0a716c: 26319fc0 */ addiu $s1,$s1,%lo(g_Vars) -/* f0a7170: 272a003c */ addiu $t2,$t9,0x3c -/* f0a7174: 27b8010c */ addiu $t8,$sp,0x10c -/* f0a7178: afaf014c */ sw $t7,0x14c($sp) -.L0f0a717c: -/* f0a717c: 8f210000 */ lw $at,0x0($t9) -/* f0a7180: 2739000c */ addiu $t9,$t9,0xc -/* f0a7184: 2718000c */ addiu $t8,$t8,0xc -/* f0a7188: af01fff4 */ sw $at,-0xc($t8) -/* f0a718c: 8f21fff8 */ lw $at,-0x8($t9) -/* f0a7190: af01fff8 */ sw $at,-0x8($t8) -/* f0a7194: 8f21fffc */ lw $at,-0x4($t9) -/* f0a7198: 172afff8 */ bne $t9,$t2,.L0f0a717c -/* f0a719c: af01fffc */ sw $at,-0x4($t8) -/* f0a71a0: 8f210000 */ lw $at,0x0($t9) -/* f0a71a4: af010000 */ sw $at,0x0($t8) -/* f0a71a8: 8e330284 */ lw $s3,0x284($s1) -/* f0a71ac: 24010001 */ addiu $at,$zero,0x1 -/* f0a71b0: 966b0010 */ lhu $t3,0x10($s3) -/* f0a71b4: 1561000d */ bne $t3,$at,.L0f0a71ec -/* f0a71b8: 00001025 */ or $v0,$zero,$zero -/* f0a71bc: 24040f48 */ addiu $a0,$zero,0xf48 -/* f0a71c0: 8e2c0284 */ lw $t4,0x284($s1) -.L0f0a71c4: -/* f0a71c4: 01821821 */ addu $v1,$t4,$v0 -/* f0a71c8: 8c6d0854 */ lw $t5,0x854($v1) -/* f0a71cc: 244207a4 */ addiu $v0,$v0,0x7a4 -/* f0a71d0: 11a00002 */ beqz $t5,.L0f0a71dc -/* f0a71d4: 00000000 */ nop -/* f0a71d8: ac600850 */ sw $zero,0x850($v1) -.L0f0a71dc: -/* f0a71dc: 5444fff9 */ bnel $v0,$a0,.L0f0a71c4 -/* f0a71e0: 8e2c0284 */ lw $t4,0x284($s1) -/* f0a71e4: 100002d5 */ b .L0f0a7d3c -/* f0a71e8: 8fbf0034 */ lw $ra,0x34($sp) -.L0f0a71ec: -/* f0a71ec: 0fc5d9ad */ jal zbuf_draw_artifacts_offscreen -/* f0a71f0: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a71f4: afa2014c */ sw $v0,0x14c($sp) -/* f0a71f8: 0c002ca0 */ jal vi_prepare_zbuf -/* f0a71fc: 00402025 */ or $a0,$v0,$zero -/* f0a7200: afa2014c */ sw $v0,0x14c($sp) -/* f0a7204: 0c002c74 */ jal vi0000b1d0 -/* f0a7208: 00402025 */ or $a0,$v0,$zero -/* f0a720c: 244e0008 */ addiu $t6,$v0,0x8 -/* f0a7210: afae014c */ sw $t6,0x14c($sp) -/* f0a7214: 0c002f40 */ jal vi_get_view_left -/* f0a7218: 0040a825 */ or $s5,$v0,$zero -/* f0a721c: 00028400 */ sll $s0,$v0,0x10 -/* f0a7220: 00107c03 */ sra $t7,$s0,0x10 -/* f0a7224: 0c002f44 */ jal vi_get_view_top -/* f0a7228: 01e08025 */ or $s0,$t7,$zero -/* f0a722c: 44822000 */ mtc1 $v0,$f4 -/* f0a7230: 44908000 */ mtc1 $s0,$f16 -/* f0a7234: 3c014080 */ lui $at,0x4080 -/* f0a7238: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a723c: 44810000 */ mtc1 $at,$f0 -/* f0a7240: 3c01ed00 */ lui $at,0xed00 -/* f0a7244: 468084a0 */ cvt.s.w $f18,$f16 -/* f0a7248: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a724c: 00000000 */ nop -/* f0a7250: 46009102 */ mul.s $f4,$f18,$f0 -/* f0a7254: 4600428d */ trunc.w.s $f10,$f8 -/* f0a7258: 4600218d */ trunc.w.s $f6,$f4 -/* f0a725c: 44085000 */ mfc1 $t0,$f10 -/* f0a7260: 440b3000 */ mfc1 $t3,$f6 -/* f0a7264: 310a0fff */ andi $t2,$t0,0xfff -/* f0a7268: 0141c825 */ or $t9,$t2,$at -/* f0a726c: 316c0fff */ andi $t4,$t3,0xfff -/* f0a7270: 000c6b00 */ sll $t5,$t4,0xc -/* f0a7274: 032d7025 */ or $t6,$t9,$t5 -/* f0a7278: 0c002f22 */ jal vi_get_view_width -/* f0a727c: aeae0000 */ sw $t6,0x0($s5) -/* f0a7280: 00029400 */ sll $s2,$v0,0x10 -/* f0a7284: 00127c03 */ sra $t7,$s2,0x10 -/* f0a7288: 0c002f40 */ jal vi_get_view_left -/* f0a728c: 01e09025 */ or $s2,$t7,$zero -/* f0a7290: 0002a400 */ sll $s4,$v0,0x10 -/* f0a7294: 00144c03 */ sra $t1,$s4,0x10 -/* f0a7298: 0c002f44 */ jal vi_get_view_top -/* f0a729c: 0120a025 */ or $s4,$t1,$zero -/* f0a72a0: 00028400 */ sll $s0,$v0,0x10 -/* f0a72a4: 00104403 */ sra $t0,$s0,0x10 -/* f0a72a8: 0c002f26 */ jal vi_get_view_height -/* f0a72ac: 01008025 */ or $s0,$t0,$zero -/* f0a72b0: 00505021 */ addu $t2,$v0,$s0 -/* f0a72b4: 448a4000 */ mtc1 $t2,$f8 -/* f0a72b8: 0292c821 */ addu $t9,$s4,$s2 -/* f0a72bc: 44992000 */ mtc1 $t9,$f4 -/* f0a72c0: 468042a0 */ cvt.s.w $f10,$f8 -/* f0a72c4: 3c014080 */ lui $at,0x4080 -/* f0a72c8: 44810000 */ mtc1 $at,$f0 -/* f0a72cc: 3c053fc0 */ lui $a1,0x3fc0 -/* f0a72d0: 3c06447a */ lui $a2,0x447a -/* f0a72d4: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a72d8: 46005402 */ mul.s $f16,$f10,$f0 -/* f0a72dc: 00000000 */ nop -/* f0a72e0: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a72e4: 4600848d */ trunc.w.s $f18,$f16 -/* f0a72e8: 4600428d */ trunc.w.s $f10,$f8 -/* f0a72ec: 440b9000 */ mfc1 $t3,$f18 -/* f0a72f0: 440e5000 */ mfc1 $t6,$f10 -/* f0a72f4: 316c0fff */ andi $t4,$t3,0xfff -/* f0a72f8: 31cf0fff */ andi $t7,$t6,0xfff -/* f0a72fc: 000f4b00 */ sll $t1,$t7,0xc -/* f0a7300: 01894025 */ or $t0,$t4,$t1 -/* f0a7304: aea80004 */ sw $t0,0x4($s5) -/* f0a7308: 0c002b29 */ jal vi0000aca4 -/* f0a730c: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7310: 8e2a0284 */ lw $t2,0x284($s1) -/* f0a7314: afa2014c */ sw $v0,0x14c($sp) -/* f0a7318: 91581bfc */ lbu $t8,0x1bfc($t2) -/* f0a731c: 53000016 */ beqzl $t8,.L0f0a7378 -/* f0a7320: 8e2b006c */ lw $t3,0x6c($s1) -/* f0a7324: 0fc54bc7 */ jal options_get_screen_ratio -/* f0a7328: 00000000 */ nop -/* f0a732c: 24010001 */ addiu $at,$zero,0x1 -/* f0a7330: 14410008 */ bne $v0,$at,.L0f0a7354 -/* f0a7334: 00000000 */ nop -/* f0a7338: 0fc2f4d6 */ jal player_get_aspect_ratio -/* f0a733c: 00000000 */ nop -/* f0a7340: 3c017f1b */ lui $at,%hi(var7f1aca8c) -/* f0a7344: c430ca8c */ lwc1 $f16,%lo(var7f1aca8c)($at) -/* f0a7348: 46100082 */ mul.s $f2,$f0,$f16 -/* f0a734c: 10000005 */ b .L0f0a7364 -/* f0a7350: 44061000 */ mfc1 $a2,$f2 -.L0f0a7354: -/* f0a7354: 0fc2f4d6 */ jal player_get_aspect_ratio -/* f0a7358: 00000000 */ nop -/* f0a735c: 46000086 */ mov.s $f2,$f0 -/* f0a7360: 44061000 */ mfc1 $a2,$f2 -.L0f0a7364: -/* f0a7364: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7368: 0c002c3a */ jal vi0000b0e8 -/* f0a736c: 3c054270 */ lui $a1,0x4270 -/* f0a7370: afa2014c */ sw $v0,0x14c($sp) -/* f0a7374: 8e2b006c */ lw $t3,0x6c($s1) -.L0f0a7378: -/* f0a7378: 24010001 */ addiu $at,$zero,0x1 -/* f0a737c: 51600004 */ beqzl $t3,.L0f0a7390 -/* f0a7380: 00002825 */ or $a1,$zero,$zero -/* f0a7384: 10000002 */ b .L0f0a7390 -/* f0a7388: 24050001 */ addiu $a1,$zero,0x1 -/* f0a738c: 00002825 */ or $a1,$zero,$zero -.L0f0a7390: -/* f0a7390: 8e390068 */ lw $t9,0x68($s1) -/* f0a7394: 53200004 */ beqzl $t9,.L0f0a73a8 -/* f0a7398: 00002025 */ or $a0,$zero,$zero -/* f0a739c: 10000002 */ b .L0f0a73a8 -/* f0a73a0: 24040001 */ addiu $a0,$zero,0x1 -/* f0a73a4: 00002025 */ or $a0,$zero,$zero -.L0f0a73a8: -/* f0a73a8: 8e2d0064 */ lw $t5,0x64($s1) -/* f0a73ac: 51a00004 */ beqzl $t5,.L0f0a73c0 -/* f0a73b0: 00001025 */ or $v0,$zero,$zero -/* f0a73b4: 10000002 */ b .L0f0a73c0 -/* f0a73b8: 24020001 */ addiu $v0,$zero,0x1 -/* f0a73bc: 00001025 */ or $v0,$zero,$zero -.L0f0a73c0: -/* f0a73c0: 8e2e0070 */ lw $t6,0x70($s1) -/* f0a73c4: 51c00004 */ beqzl $t6,.L0f0a73d8 -/* f0a73c8: 00001825 */ or $v1,$zero,$zero -/* f0a73cc: 10000002 */ b .L0f0a73d8 -/* f0a73d0: 24030001 */ addiu $v1,$zero,0x1 -/* f0a73d4: 00001825 */ or $v1,$zero,$zero -.L0f0a73d8: -/* f0a73d8: 00627821 */ addu $t7,$v1,$v0 -/* f0a73dc: 01e46021 */ addu $t4,$t7,$a0 -/* f0a73e0: 01854821 */ addu $t1,$t4,$a1 -/* f0a73e4: 15210008 */ bne $t1,$at,.L0f0a7408 -/* f0a73e8: 3c088009 */ lui $t0,%hi(g_Is4Mb) -/* f0a73ec: 91080af0 */ lbu $t0,%lo(g_Is4Mb)($t0) -/* f0a73f0: 24010001 */ addiu $at,$zero,0x1 -/* f0a73f4: 51010005 */ beql $t0,$at,.L0f0a740c -/* f0a73f8: 0000a025 */ or $s4,$zero,$zero -/* f0a73fc: 0fc2be93 */ jal lasersight_render_beam -/* f0a7400: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7404: afa2014c */ sw $v0,0x14c($sp) -.L0f0a7408: -/* f0a7408: 0000a025 */ or $s4,$zero,$zero -.L0f0a740c: -/* f0a740c: 26700638 */ addiu $s0,$s3,0x638 -/* f0a7410: 8fb500e4 */ lw $s5,0xe4($sp) -/* f0a7414: 24120019 */ addiu $s2,$zero,0x1e -.L0f0a7418: -/* f0a7418: 0fc2867c */ jal bgun_get_weapon_num2 -/* f0a741c: 02802025 */ or $a0,$s4,$zero -/* f0a7420: afa200ec */ sw $v0,0xec($sp) -/* f0a7424: 820a0007 */ lb $t2,0x7($s0) -/* f0a7428: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a742c: 260501dc */ addiu $a1,$s0,0x1dc -/* f0a7430: 114001f2 */ beqz $t2,.L0f0a7bfc -/* f0a7434: 00003025 */ or $a2,$zero,$zero -/* f0a7438: 26180384 */ addiu $t8,$s0,0x384 -/* f0a743c: afb8003c */ sw $t8,0x3c($sp) -/* f0a7440: 0fc2b2e4 */ jal beam_render -/* f0a7444: 00003825 */ or $a3,$zero,$zero -/* f0a7448: afa2014c */ sw $v0,0x14c($sp) -/* f0a744c: 92040000 */ lbu $a0,0x0($s0) -/* f0a7450: 0fc2c5f0 */ jal weapon_has_flag -/* f0a7454: 34058000 */ dli $a1,0x8000 -/* f0a7458: 10400030 */ beqz $v0,.L0f0a751c -/* f0a745c: 8fab014c */ lw $t3,0x14c($sp) -/* f0a7460: 25790008 */ addiu $t9,$t3,0x8 -/* f0a7464: afb9014c */ sw $t9,0x14c($sp) -/* f0a7468: 3c0dbc00 */ lui $t5,0xbc00 -/* f0a746c: 3c0e8000 */ lui $t6,0x8000 -/* f0a7470: 35ce0040 */ ori $t6,$t6,0x40 -/* f0a7474: 35ad0002 */ ori $t5,$t5,0x2 -/* f0a7478: ad6d0000 */ sw $t5,0x0($t3) -/* f0a747c: ad6e0004 */ sw $t6,0x4($t3) -/* f0a7480: 8faf014c */ lw $t7,0x14c($sp) -/* f0a7484: 3c090386 */ lui $t1,0x386 -/* f0a7488: 3c088007 */ lui $t0,%hi(var80070090+0x08) -/* f0a748c: 25ec0008 */ addiu $t4,$t7,0x8 -/* f0a7490: afac014c */ sw $t4,0x14c($sp) -/* f0a7494: 25080098 */ addiu $t0,$t0,%lo(var80070090+0x08) -/* f0a7498: 35290010 */ ori $t1,$t1,0x10 -/* f0a749c: ade90000 */ sw $t1,0x0($t7) -/* f0a74a0: ade80004 */ sw $t0,0x4($t7) -/* f0a74a4: 8faa014c */ lw $t2,0x14c($sp) -/* f0a74a8: 3c0b0388 */ lui $t3,0x388 -/* f0a74ac: 3c198007 */ lui $t9,%hi(var80070090) -/* f0a74b0: 25580008 */ addiu $t8,$t2,0x8 -/* f0a74b4: afb8014c */ sw $t8,0x14c($sp) -/* f0a74b8: 27390090 */ addiu $t9,$t9,%lo(var80070090) -/* f0a74bc: 356b0010 */ ori $t3,$t3,0x10 -/* f0a74c0: ad4b0000 */ sw $t3,0x0($t2) -/* f0a74c4: ad590004 */ sw $t9,0x4($t2) -/* f0a74c8: 8fad014c */ lw $t5,0x14c($sp) -/* f0a74cc: 3c0f0384 */ lui $t7,0x384 -/* f0a74d0: 35ef0010 */ ori $t7,$t7,0x10 -/* f0a74d4: 25ae0008 */ addiu $t6,$t5,0x8 -/* f0a74d8: afae014c */ sw $t6,0x14c($sp) -/* f0a74dc: adaf0000 */ sw $t7,0x0($t5) -/* f0a74e0: 0fc2d5ea */ jal cam_get_look_at -/* f0a74e4: afad00d4 */ sw $t5,0xd4($sp) -/* f0a74e8: 8fa500d4 */ lw $a1,0xd4($sp) -/* f0a74ec: 3c080382 */ lui $t0,0x382 -/* f0a74f0: 35080010 */ ori $t0,$t0,0x10 -/* f0a74f4: aca20004 */ sw $v0,0x4($a1) -/* f0a74f8: 8fac014c */ lw $t4,0x14c($sp) -/* f0a74fc: 25890008 */ addiu $t1,$t4,0x8 -/* f0a7500: afa9014c */ sw $t1,0x14c($sp) -/* f0a7504: ad880000 */ sw $t0,0x0($t4) -/* f0a7508: 0fc2d5ea */ jal cam_get_look_at -/* f0a750c: afac00d0 */ sw $t4,0xd0($sp) -/* f0a7510: 8fa300d0 */ lw $v1,0xd0($sp) -/* f0a7514: 244a0010 */ addiu $t2,$v0,0x10 -/* f0a7518: ac6a0004 */ sw $t2,0x4($v1) -.L0f0a751c: -/* f0a751c: 8fb8014c */ lw $t8,0x14c($sp) -/* f0a7520: 3c19bc00 */ lui $t9,0xbc00 -/* f0a7524: 3739000e */ ori $t9,$t9,0xe -/* f0a7528: 270b0008 */ addiu $t3,$t8,0x8 -/* f0a752c: afab014c */ sw $t3,0x14c($sp) -/* f0a7530: 3c014396 */ lui $at,0x4396 -/* f0a7534: 44817000 */ mtc1 $at,$f14 -/* f0a7538: 44806000 */ mtc1 $zero,$f12 -/* f0a753c: af190000 */ sw $t9,0x0($t8) -/* f0a7540: 0c005b73 */ jal mtx00016dcc -/* f0a7544: afb800cc */ sw $t8,0xcc($sp) -/* f0a7548: 8fa300cc */ lw $v1,0xcc($sp) -/* f0a754c: 24050010 */ addiu $a1,$zero,0x10 -/* f0a7550: ac620004 */ sw $v0,0x4($v1) -/* f0a7554: 0c006a47 */ jal model_get_part -/* f0a7558: 8e04038c */ lw $a0,0x38c($s0) -/* f0a755c: 10400014 */ beqz $v0,.L0f0a75b0 -/* f0a7560: afa200e8 */ sw $v0,0xe8($sp) -/* f0a7564: 8e04038c */ lw $a0,0x38c($s0) -/* f0a7568: 0c006a47 */ jal model_get_part -/* f0a756c: 24050011 */ addiu $a1,$zero,0x11 -/* f0a7570: 8fa4003c */ lw $a0,0x3c($sp) -/* f0a7574: 0c006a87 */ jal model_get_node_rw_data -/* f0a7578: 00402825 */ or $a1,$v0,$zero -/* f0a757c: 10400003 */ beqz $v0,.L0f0a758c -/* f0a7580: 3c06800a */ lui $a2,%hi(var8009cf88) -/* f0a7584: 240d0001 */ addiu $t5,$zero,0x1 -/* f0a7588: ac4d0000 */ sw $t5,0x0($v0) -.L0f0a758c: -/* f0a758c: 240e0001 */ addiu $t6,$zero,0x1 -/* f0a7590: afae0014 */ sw $t6,0x14($sp) -/* f0a7594: 8fa4003c */ lw $a0,0x3c($sp) -/* f0a7598: 8fa500e8 */ lw $a1,0xe8($sp) -/* f0a759c: 24c6cf88 */ addiu $a2,$a2,%lo(var8009cf88) -/* f0a75a0: 8fa7014c */ lw $a3,0x14c($sp) -/* f0a75a4: 0fc1fefe */ jal tvscreen_render -/* f0a75a8: afa00010 */ sw $zero,0x10($sp) -/* f0a75ac: afa2014c */ sw $v0,0x14c($sp) -.L0f0a75b0: -/* f0a75b0: 8faf014c */ lw $t7,0x14c($sp) -/* f0a75b4: 8e250284 */ lw $a1,0x284($s1) -/* f0a75b8: 240c0004 */ addiu $t4,$zero,0x4 -/* f0a75bc: afac013c */ sw $t4,0x13c($sp) -/* f0a75c0: afaf0118 */ sw $t7,0x118($sp) -/* f0a75c4: 8ca300d8 */ lw $v1,0xd8($a1) -/* f0a75c8: 3c078007 */ lui $a3,%hi(g_InCutscene) -/* f0a75cc: 14600013 */ bnez $v1,.L0f0a761c -/* f0a75d0: 00000000 */ nop -/* f0a75d4: 8ce70764 */ lw $a3,%lo(g_InCutscene)($a3) -/* f0a75d8: 14e00010 */ bnez $a3,.L0f0a761c -/* f0a75dc: 00000000 */ nop -/* f0a75e0: 8ca20480 */ lw $v0,0x480($a1) -/* f0a75e4: 50400007 */ beqzl $v0,.L0f0a7604 -/* f0a75e8: 8caa1c54 */ lw $t2,0x1c54($a1) -/* f0a75ec: 1040000b */ beqz $v0,.L0f0a761c -/* f0a75f0: 00000000 */ nop -/* f0a75f4: 80490037 */ lb $t1,0x37($v0) -/* f0a75f8: 15200008 */ bnez $t1,.L0f0a761c -/* f0a75fc: 00000000 */ nop -/* f0a7600: 8caa1c54 */ lw $t2,0x1c54($a1) -.L0f0a7604: -/* f0a7604: 8ca800c4 */ lw $t0,0xc4($a1) -/* f0a7608: 0140c027 */ nor $t8,$t2,$zero -/* f0a760c: 01185824 */ and $t3,$t0,$t8 -/* f0a7610: 31790001 */ andi $t9,$t3,0x1 -/* f0a7614: 57200016 */ bnezl $t9,.L0f0a7670 -/* f0a7618: 92681615 */ lbu $t0,0x1615($s3) -.L0f0a761c: -/* f0a761c: 14600078 */ bnez $v1,.L0f0a7800 -/* f0a7620: 3c078007 */ lui $a3,%hi(g_InCutscene) -/* f0a7624: 8ce70764 */ lw $a3,%lo(g_InCutscene)($a3) -/* f0a7628: 54e00076 */ bnezl $a3,.L0f0a7804 -/* f0a762c: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a7630: 8ca20480 */ lw $v0,0x480($a1) -/* f0a7634: 50400007 */ beqzl $v0,.L0f0a7654 -/* f0a7638: 8caf1c54 */ lw $t7,0x1c54($a1) -/* f0a763c: 50400071 */ beqzl $v0,.L0f0a7804 -/* f0a7640: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a7644: 804d0037 */ lb $t5,0x37($v0) -/* f0a7648: 55a0006e */ bnezl $t5,.L0f0a7804 -/* f0a764c: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a7650: 8caf1c54 */ lw $t7,0x1c54($a1) -.L0f0a7654: -/* f0a7654: 8cae00c4 */ lw $t6,0xc4($a1) -/* f0a7658: 01e06027 */ nor $t4,$t7,$zero -/* f0a765c: 01cc4824 */ and $t1,$t6,$t4 -/* f0a7660: 312a0008 */ andi $t2,$t1,0x8 -/* f0a7664: 51400067 */ beqzl $t2,.L0f0a7804 -/* f0a7668: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a766c: 92681615 */ lbu $t0,0x1615($s3) -.L0f0a7670: -/* f0a7670: 92781614 */ lbu $t8,0x1614($s3) -/* f0a7674: 26641614 */ addiu $a0,$s3,0x1614 -/* f0a7678: 0118082a */ slt $at,$t0,$t8 -/* f0a767c: 50200009 */ beqzl $at,.L0f0a76a4 -/* f0a7680: 90820002 */ lbu $v0,0x2($a0) -/* f0a7684: 90830000 */ lbu $v1,0x0($a0) -/* f0a7688: 908b0002 */ lbu $t3,0x2($a0) -/* f0a768c: 0163082a */ slt $at,$t3,$v1 -/* f0a7690: 50200004 */ beqzl $at,.L0f0a76a4 -/* f0a7694: 90820002 */ lbu $v0,0x2($a0) -/* f0a7698: 1000000a */ b .L0f0a76c4 -/* f0a769c: 00601025 */ or $v0,$v1,$zero -/* f0a76a0: 90820002 */ lbu $v0,0x2($a0) -.L0f0a76a4: -/* f0a76a4: 90860001 */ lbu $a2,0x1($a0) -/* f0a76a8: 00401825 */ or $v1,$v0,$zero -/* f0a76ac: 0046082a */ slt $at,$v0,$a2 -/* f0a76b0: 10200003 */ beqz $at,.L0f0a76c0 -/* f0a76b4: 00000000 */ nop -/* f0a76b8: 10000001 */ b .L0f0a76c0 -/* f0a76bc: 00c01825 */ or $v1,$a2,$zero -.L0f0a76c0: -/* f0a76c0: 00601025 */ or $v0,$v1,$zero -.L0f0a76c4: -/* f0a76c4: 90890003 */ lbu $t1,0x3($a0) -/* f0a76c8: 0002ce00 */ sll $t9,$v0,0x18 -/* f0a76cc: 00026c00 */ sll $t5,$v0,0x10 -/* f0a76d0: 032d7825 */ or $t7,$t9,$t5 -/* f0a76d4: 00027200 */ sll $t6,$v0,0x8 -/* f0a76d8: 01ee6025 */ or $t4,$t7,$t6 -/* f0a76dc: 012c5021 */ addu $t2,$t1,$t4 -/* f0a76e0: afaa0140 */ sw $t2,0x140($sp) -/* f0a76e4: 8ca300d8 */ lw $v1,0xd8($a1) -/* f0a76e8: 14600021 */ bnez $v1,.L0f0a7770 -/* f0a76ec: 00000000 */ nop -/* f0a76f0: 14e0001f */ bnez $a3,.L0f0a7770 -/* f0a76f4: 00000000 */ nop -/* f0a76f8: 8ca20480 */ lw $v0,0x480($a1) -/* f0a76fc: 50400007 */ beqzl $v0,.L0f0a771c -/* f0a7700: 8cab1c54 */ lw $t3,0x1c54($a1) -/* f0a7704: 1040001a */ beqz $v0,.L0f0a7770 -/* f0a7708: 00000000 */ nop -/* f0a770c: 80480037 */ lb $t0,0x37($v0) -/* f0a7710: 15000017 */ bnez $t0,.L0f0a7770 -/* f0a7714: 00000000 */ nop -/* f0a7718: 8cab1c54 */ lw $t3,0x1c54($a1) -.L0f0a771c: -/* f0a771c: 8cb800c4 */ lw $t8,0xc4($a1) -/* f0a7720: 3c02800a */ lui $v0,%hi(var8009caec+0x3) -/* f0a7724: 0160c827 */ nor $t9,$t3,$zero -/* f0a7728: 03196824 */ and $t5,$t8,$t9 -/* f0a772c: 31af0001 */ andi $t7,$t5,0x1 -/* f0a7730: 11e0000f */ beqz $t7,.L0f0a7770 -/* f0a7734: 00000000 */ nop -/* f0a7738: 9042caef */ lbu $v0,%lo(var8009caec+0x3)($v0) -/* f0a773c: 3c06800a */ lui $a2,%hi(var8009caf0) -/* f0a7740: 90c6caf0 */ lbu $a2,%lo(var8009caf0)($a2) -/* f0a7744: 00027600 */ sll $t6,$v0,0x18 -/* f0a7748: 00024c00 */ sll $t1,$v0,0x10 -/* f0a774c: 01c96025 */ or $t4,$t6,$t1 -/* f0a7750: 00025200 */ sll $t2,$v0,0x8 -/* f0a7754: 018a4025 */ or $t0,$t4,$t2 -/* f0a7758: afa200b0 */ sw $v0,0xb0($sp) -/* f0a775c: afa200b4 */ sw $v0,0xb4($sp) -/* f0a7760: afa200b8 */ sw $v0,0xb8($sp) -/* f0a7764: 00c8a821 */ addu $s5,$a2,$t0 -/* f0a7768: 1000001f */ b .L0f0a77e8 -/* f0a776c: afa600bc */ sw $a2,0xbc($sp) -.L0f0a7770: -/* f0a7770: 5460001e */ bnezl $v1,.L0f0a77ec -/* f0a7774: 8fb900ec */ lw $t9,0xec($sp) -/* f0a7778: 54e0001c */ bnezl $a3,.L0f0a77ec -/* f0a777c: 8fb900ec */ lw $t9,0xec($sp) -/* f0a7780: 8ca20480 */ lw $v0,0x480($a1) -/* f0a7784: 50400007 */ beqzl $v0,.L0f0a77a4 -/* f0a7788: 8cb91c54 */ lw $t9,0x1c54($a1) -/* f0a778c: 50400017 */ beqzl $v0,.L0f0a77ec -/* f0a7790: 8fb900ec */ lw $t9,0xec($sp) -/* f0a7794: 804b0037 */ lb $t3,0x37($v0) -/* f0a7798: 55600014 */ bnezl $t3,.L0f0a77ec -/* f0a779c: 8fb900ec */ lw $t9,0xec($sp) -/* f0a77a0: 8cb91c54 */ lw $t9,0x1c54($a1) -.L0f0a77a4: -/* f0a77a4: 8cb800c4 */ lw $t8,0xc4($a1) -/* f0a77a8: 240200ff */ addiu $v0,$zero,0xff -/* f0a77ac: 03206827 */ nor $t5,$t9,$zero -/* f0a77b0: 030d7824 */ and $t7,$t8,$t5 -/* f0a77b4: 31ee0008 */ andi $t6,$t7,0x8 -/* f0a77b8: 11c0000b */ beqz $t6,.L0f0a77e8 -/* f0a77bc: 24050080 */ addiu $a1,$zero,0x80 -/* f0a77c0: 00024e00 */ sll $t1,$v0,0x18 -/* f0a77c4: 00006400 */ sll $t4,$zero,0x10 -/* f0a77c8: 012c5025 */ or $t2,$t1,$t4 -/* f0a77cc: 00004200 */ sll $t0,$zero,0x8 -/* f0a77d0: 01485825 */ or $t3,$t2,$t0 -/* f0a77d4: 00aba821 */ addu $s5,$a1,$t3 -/* f0a77d8: afa200a0 */ sw $v0,0xa0($sp) -/* f0a77dc: afa000a4 */ sw $zero,0xa4($sp) -/* f0a77e0: afa000a8 */ sw $zero,0xa8($sp) -/* f0a77e4: afa500ac */ sw $a1,0xac($sp) -.L0f0a77e8: -/* f0a77e8: 8fb900ec */ lw $t9,0xec($sp) -.L0f0a77ec: -/* f0a77ec: 24010001 */ addiu $at,$zero,0x1 -/* f0a77f0: 5721003d */ bnel $t9,$at,.L0f0a78e8 -/* f0a77f4: 8e6f00bc */ lw $t7,0xbc($s3) -/* f0a77f8: 1000003a */ b .L0f0a78e4 -/* f0a77fc: afb50140 */ sw $s5,0x140($sp) -.L0f0a7800: -/* f0a7800: 926d1614 */ lbu $t5,0x1614($s3) -.L0f0a7804: -/* f0a7804: 92781617 */ lbu $t8,0x1617($s3) -/* f0a7808: 92691615 */ lbu $t1,0x1615($s3) -/* f0a780c: 92681616 */ lbu $t0,0x1616($s3) -/* f0a7810: 000d7e00 */ sll $t7,$t5,0x18 -/* f0a7814: 030f7025 */ or $t6,$t8,$t7 -/* f0a7818: 00096400 */ sll $t4,$t1,0x10 -/* f0a781c: 01cc5025 */ or $t2,$t6,$t4 -/* f0a7820: 00085a00 */ sll $t3,$t0,0x8 -/* f0a7824: 014bc825 */ or $t9,$t2,$t3 -/* f0a7828: afb90140 */ sw $t9,0x140($sp) -/* f0a782c: 920d0000 */ lbu $t5,0x0($s0) -/* f0a7830: 24010006 */ addiu $at,$zero,0x6 -/* f0a7834: 0320a825 */ or $s5,$t9,$zero -/* f0a7838: 15a1002a */ bne $t5,$at,.L0f0a78e4 -/* f0a783c: 3c04ff00 */ lui $a0,0xff00 -/* f0a7840: 3c014248 */ lui $at,0x4248 -/* f0a7844: 44812000 */ mtc1 $at,$f4 -/* f0a7848: c612023c */ lwc1 $f18,0x23c($s0) -/* f0a784c: 24060001 */ addiu $a2,$zero,0x1 -/* f0a7850: 3c014f00 */ lui $at,0x4f00 -/* f0a7854: 46049182 */ mul.s $f6,$f18,$f4 -/* f0a7858: 3484007f */ ori $a0,$a0,0x7f -/* f0a785c: 4458f800 */ cfc1 $t8,$31 -/* f0a7860: 44c6f800 */ ctc1 $a2,$31 -/* f0a7864: 00000000 */ nop -/* f0a7868: 46003224 */ cvt.w.s $f8,$f6 -/* f0a786c: 4446f800 */ cfc1 $a2,$31 -/* f0a7870: 00000000 */ nop -/* f0a7874: 30c60078 */ andi $a2,$a2,0x78 -/* f0a7878: 50c00013 */ beqzl $a2,.L0f0a78c8 -/* f0a787c: 44064000 */ mfc1 $a2,$f8 -/* f0a7880: 44814000 */ mtc1 $at,$f8 -/* f0a7884: 24060001 */ addiu $a2,$zero,0x1 -/* f0a7888: 46083201 */ sub.s $f8,$f6,$f8 -/* f0a788c: 44c6f800 */ ctc1 $a2,$31 -/* f0a7890: 00000000 */ nop -/* f0a7894: 46004224 */ cvt.w.s $f8,$f8 -/* f0a7898: 4446f800 */ cfc1 $a2,$31 -/* f0a789c: 00000000 */ nop -/* f0a78a0: 30c60078 */ andi $a2,$a2,0x78 -/* f0a78a4: 14c00005 */ bnez $a2,.L0f0a78bc -/* f0a78a8: 00000000 */ nop -/* f0a78ac: 44064000 */ mfc1 $a2,$f8 -/* f0a78b0: 3c018000 */ lui $at,0x8000 -/* f0a78b4: 10000007 */ b .L0f0a78d4 -/* f0a78b8: 00c13025 */ or $a2,$a2,$at -.L0f0a78bc: -/* f0a78bc: 10000005 */ b .L0f0a78d4 -/* f0a78c0: 2406ffff */ addiu $a2,$zero,-1 -/* f0a78c4: 44064000 */ mfc1 $a2,$f8 -.L0f0a78c8: -/* f0a78c8: 00000000 */ nop -/* f0a78cc: 04c0fffb */ bltz $a2,.L0f0a78bc -/* f0a78d0: 00000000 */ nop -.L0f0a78d4: -/* f0a78d4: 44d8f800 */ ctc1 $t8,$31 -/* f0a78d8: 0fc01a40 */ jal colour_blend -/* f0a78dc: 03202825 */ or $a1,$t9,$zero -/* f0a78e0: afa20140 */ sw $v0,0x140($sp) -.L0f0a78e4: -/* f0a78e4: 8e6f00bc */ lw $t7,0xbc($s3) -.L0f0a78e8: -/* f0a78e8: 0fc08af9 */ jal chr_get_cloak_alpha -/* f0a78ec: 8de40004 */ lw $a0,0x4($t7) -/* f0a78f0: 284100ff */ slti $at,$v0,0xff -/* f0a78f4: 1020000f */ beqz $at,.L0f0a7934 -/* f0a78f8: 240c0001 */ addiu $t4,$zero,0x1 -/* f0a78fc: 44825000 */ mtc1 $v0,$f10 -/* f0a7900: 3c017f1b */ lui $at,%hi(var7f1aca90) -/* f0a7904: c432ca90 */ lwc1 $f18,%lo(var7f1aca90)($at) -/* f0a7908: 46805420 */ cvt.s.w $f16,$f10 -/* f0a790c: 8fa40140 */ lw $a0,0x140($sp) -/* f0a7910: 240e0005 */ addiu $t6,$zero,0x5 -/* f0a7914: afae013c */ sw $t6,0x13c($sp) -/* f0a7918: afa40144 */ sw $a0,0x144($sp) -/* f0a791c: 46128102 */ mul.s $f4,$f16,$f18 -/* f0a7920: 4600218d */ trunc.w.s $f6,$f4 -/* f0a7924: 44033000 */ mfc1 $v1,$f6 -/* f0a7928: 00000000 */ nop -/* f0a792c: 24750041 */ addiu $s5,$v1,0x41 -/* f0a7930: afb50140 */ sw $s5,0x140($sp) -.L0f0a7934: -/* f0a7934: 0c0059d8 */ jal mtx00016760 -/* f0a7938: afac0110 */ sw $t4,0x110($sp) -/* f0a793c: 8e020218 */ lw $v0,0x218($s0) -/* f0a7940: 50400017 */ beqzl $v0,.L0f0a79a0 -/* f0a7944: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7948: 8c460018 */ lw $a2,0x18($v0) -/* f0a794c: afa00094 */ sw $zero,0x94($sp) -/* f0a7950: 50c00013 */ beqzl $a2,.L0f0a79a0 -/* f0a7954: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7958: 8cc80008 */ lw $t0,0x8($a2) -/* f0a795c: 240a0001 */ addiu $t2,$zero,0x1 -/* f0a7960: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7964: 1100000d */ beqz $t0,.L0f0a799c -/* f0a7968: 00c02825 */ or $a1,$a2,$zero -/* f0a796c: afaa0094 */ sw $t2,0x94($sp) -/* f0a7970: 0c0087bd */ jal model_render -/* f0a7974: afa60098 */ sw $a2,0x98($sp) -/* f0a7978: 8fa60098 */ lw $a2,0x98($sp) -/* f0a797c: 8ccb0008 */ lw $t3,0x8($a2) -/* f0a7980: 8cc4000c */ lw $a0,0xc($a2) -/* f0a7984: 0fc30cfc */ jal mtx_f2l_bulk -/* f0a7988: 8565000e */ lh $a1,0xe($t3) -/* f0a798c: 8e0d021c */ lw $t5,0x21c($s0) -/* f0a7990: 51a00003 */ beqzl $t5,.L0f0a79a0 -/* f0a7994: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7998: ae000218 */ sw $zero,0x218($s0) -.L0f0a799c: -/* f0a799c: 8fa400ec */ lw $a0,0xec($sp) -.L0f0a79a0: -/* f0a79a0: 0fc2c5f0 */ jal weapon_has_flag -/* f0a79a4: 24050020 */ addiu $a1,$zero,0x20 -/* f0a79a8: 1040000e */ beqz $v0,.L0f0a79e4 -/* f0a79ac: 24010001 */ addiu $at,$zero,0x1 -/* f0a79b0: 8fb80118 */ lw $t8,0x118($sp) -/* f0a79b4: 3c0fb600 */ lui $t7,0xb600 -/* f0a79b8: 24093000 */ addiu $t1,$zero,0x3000 -/* f0a79bc: 27190008 */ addiu $t9,$t8,0x8 -/* f0a79c0: afb90118 */ sw $t9,0x118($sp) -/* f0a79c4: af090004 */ sw $t1,0x4($t8) -/* f0a79c8: 16800004 */ bnez $s4,.L0f0a79dc -/* f0a79cc: af0f0000 */ sw $t7,0x0($t8) -/* f0a79d0: 240e0003 */ addiu $t6,$zero,0x3 -/* f0a79d4: 10000003 */ b .L0f0a79e4 -/* f0a79d8: afae0148 */ sw $t6,0x148($sp) -.L0f0a79dc: -/* f0a79dc: 240c0002 */ addiu $t4,$zero,0x2 -/* f0a79e0: afac0148 */ sw $t4,0x148($sp) -.L0f0a79e4: -/* f0a79e4: 8e28006c */ lw $t0,0x6c($s1) -/* f0a79e8: 00002825 */ or $a1,$zero,$zero -/* f0a79ec: 00002025 */ or $a0,$zero,$zero -/* f0a79f0: 11000003 */ beqz $t0,.L0f0a7a00 -/* f0a79f4: 00001025 */ or $v0,$zero,$zero -/* f0a79f8: 10000001 */ b .L0f0a7a00 -/* f0a79fc: 24050001 */ addiu $a1,$zero,0x1 -.L0f0a7a00: -/* f0a7a00: 8e2a0068 */ lw $t2,0x68($s1) -/* f0a7a04: 00001825 */ or $v1,$zero,$zero -/* f0a7a08: 11400003 */ beqz $t2,.L0f0a7a18 -/* f0a7a0c: 00000000 */ nop -/* f0a7a10: 10000001 */ b .L0f0a7a18 -/* f0a7a14: 24040001 */ addiu $a0,$zero,0x1 -.L0f0a7a18: -/* f0a7a18: 8e2b0064 */ lw $t3,0x64($s1) -/* f0a7a1c: 11600003 */ beqz $t3,.L0f0a7a2c -/* f0a7a20: 00000000 */ nop -/* f0a7a24: 10000001 */ b .L0f0a7a2c -/* f0a7a28: 24020001 */ addiu $v0,$zero,0x1 -.L0f0a7a2c: -/* f0a7a2c: 8e2d0070 */ lw $t5,0x70($s1) -/* f0a7a30: 11a00003 */ beqz $t5,.L0f0a7a40 -/* f0a7a34: 00000000 */ nop -/* f0a7a38: 10000001 */ b .L0f0a7a40 -/* f0a7a3c: 24030001 */ addiu $v1,$zero,0x1 -.L0f0a7a40: -/* f0a7a40: 0062c021 */ addu $t8,$v1,$v0 -/* f0a7a44: 0304c821 */ addu $t9,$t8,$a0 -/* f0a7a48: 03257821 */ addu $t7,$t9,$a1 -/* f0a7a4c: 15e10036 */ bne $t7,$at,.L0f0a7b28 -/* f0a7a50: 24050041 */ addiu $a1,$zero,0x41 -/* f0a7a54: 0c006a47 */ jal model_get_part -/* f0a7a58: 8e04038c */ lw $a0,0x38c($s0) -/* f0a7a5c: 50400033 */ beqzl $v0,.L0f0a7b2c -/* f0a7a60: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7a64: 8c440004 */ lw $a0,0x4($v0) -/* f0a7a68: 00002825 */ or $a1,$zero,$zero -/* f0a7a6c: 84890010 */ lh $t1,0x10($a0) -/* f0a7a70: 5920002e */ blezl $t1,.L0f0a7b2c -/* f0a7a74: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7a78: 8e2a0034 */ lw $t2,0x34($s1) -.L0f0a7a7c: -/* f0a7a7c: 8c8e000c */ lw $t6,0xc($a0) -/* f0a7a80: 00056080 */ sll $t4,$a1,0x2 -/* f0a7a84: 01520019 */ multu $t2,$s2 -/* f0a7a88: 01856023 */ subu $t4,$t4,$a1 -/* f0a7a8c: 000c6080 */ sll $t4,$t4,0x2 -/* f0a7a90: 01cc1021 */ addu $v0,$t6,$t4 -/* f0a7a94: 8448000a */ lh $t0,0xa($v0) -/* f0a7a98: 0005c880 */ sll $t9,$a1,0x2 -/* f0a7a9c: 0325c823 */ subu $t9,$t9,$a1 -/* f0a7aa0: 0019c880 */ sll $t9,$t9,0x2 -/* f0a7aa4: 24420002 */ addiu $v0,$v0,0x2 -/* f0a7aa8: 00005812 */ mflo $t3 -/* f0a7aac: 010b6823 */ subu $t5,$t0,$t3 -/* f0a7ab0: a44d0008 */ sh $t5,0x8($v0) -/* f0a7ab4: 8c98000c */ lw $t8,0xc($a0) -/* f0a7ab8: 03197821 */ addu $t7,$t8,$t9 -/* f0a7abc: 85e9000a */ lh $t1,0xa($t7) -/* f0a7ac0: 2921a000 */ slti $at,$t1,-24576 -/* f0a7ac4: 50200014 */ beqzl $at,.L0f0a7b18 -/* f0a7ac8: 84980010 */ lh $t8,0x10($a0) -/* f0a7acc: 848e0010 */ lh $t6,0x10($a0) -/* f0a7ad0: 00001825 */ or $v1,$zero,$zero -/* f0a7ad4: 59c00010 */ blezl $t6,.L0f0a7b18 -/* f0a7ad8: 84980010 */ lh $t8,0x10($a0) -/* f0a7adc: 8c8c000c */ lw $t4,0xc($a0) -.L0f0a7ae0: -/* f0a7ae0: 00035080 */ sll $t2,$v1,0x2 -/* f0a7ae4: 01435023 */ subu $t2,$t2,$v1 -/* f0a7ae8: 000a5080 */ sll $t2,$t2,0x2 -/* f0a7aec: 018a1021 */ addu $v0,$t4,$t2 -/* f0a7af0: 8448000a */ lh $t0,0xa($v0) -/* f0a7af4: 24630001 */ addiu $v1,$v1,0x1 -/* f0a7af8: 24420002 */ addiu $v0,$v0,0x2 -/* f0a7afc: 250b2000 */ addiu $t3,$t0,0x2000 -/* f0a7b00: a44b0008 */ sh $t3,0x8($v0) -/* f0a7b04: 848d0010 */ lh $t5,0x10($a0) -/* f0a7b08: 006d082a */ slt $at,$v1,$t5 -/* f0a7b0c: 5420fff4 */ bnezl $at,.L0f0a7ae0 -/* f0a7b10: 8c8c000c */ lw $t4,0xc($a0) -/* f0a7b14: 84980010 */ lh $t8,0x10($a0) -.L0f0a7b18: -/* f0a7b18: 24a50001 */ addiu $a1,$a1,0x1 -/* f0a7b1c: 00b8082a */ slt $at,$a1,$t8 -/* f0a7b20: 5420ffd6 */ bnezl $at,.L0f0a7a7c -/* f0a7b24: 8e2a0034 */ lw $t2,0x34($s1) -.L0f0a7b28: -/* f0a7b28: 27a4010c */ addiu $a0,$sp,0x10c -.L0f0a7b2c: -/* f0a7b2c: 0c0087bd */ jal model_render -/* f0a7b30: 8fa5003c */ lw $a1,0x3c($sp) -/* f0a7b34: 8e791594 */ lw $t9,0x1594($s3) -/* f0a7b38: 3c0f8007 */ lui $t7,%hi(var800702dc) -/* f0a7b3c: 53200013 */ beqzl $t9,.L0f0a7b8c -/* f0a7b40: 8fac0118 */ lw $t4,0x118($sp) -/* f0a7b44: 8def02dc */ lw $t7,%lo(var800702dc)($t7) -/* f0a7b48: 8fa90140 */ lw $t1,0x140($sp) -/* f0a7b4c: 51e0000f */ beqzl $t7,.L0f0a7b8c -/* f0a7b50: 8fac0118 */ lw $t4,0x118($sp) -/* f0a7b54: afa9007c */ sw $t1,0x7c($sp) -/* f0a7b58: 8e0e0390 */ lw $t6,0x390($s0) -/* f0a7b5c: 26050534 */ addiu $a1,$s0,0x534 -/* f0a7b60: 00a02025 */ or $a0,$a1,$zero -/* f0a7b64: ae0e0540 */ sw $t6,0x540($s0) -/* f0a7b68: 0c007308 */ jal model_update_relations -/* f0a7b6c: afa50054 */ sw $a1,0x54($sp) -/* f0a7b70: 8fa50054 */ lw $a1,0x54($sp) -/* f0a7b74: afb50140 */ sw $s5,0x140($sp) -/* f0a7b78: 0c0087bd */ jal model_render -/* f0a7b7c: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7b80: 8fa4007c */ lw $a0,0x7c($sp) -/* f0a7b84: afa40140 */ sw $a0,0x140($sp) -/* f0a7b88: 8fac0118 */ lw $t4,0x118($sp) -.L0f0a7b8c: -/* f0a7b8c: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7b90: 24050020 */ addiu $a1,$zero,0x20 -/* f0a7b94: 0fc2c5f0 */ jal weapon_has_flag -/* f0a7b98: afac014c */ sw $t4,0x14c($sp) -/* f0a7b9c: 10400007 */ beqz $v0,.L0f0a7bbc -/* f0a7ba0: 8faa014c */ lw $t2,0x14c($sp) -/* f0a7ba4: 25480008 */ addiu $t0,$t2,0x8 -/* f0a7ba8: afa8014c */ sw $t0,0x14c($sp) -/* f0a7bac: 3c0bb600 */ lui $t3,0xb600 -/* f0a7bb0: 240d3000 */ addiu $t5,$zero,0x3000 -/* f0a7bb4: ad4d0004 */ sw $t5,0x4($t2) -/* f0a7bb8: ad4b0000 */ sw $t3,0x0($t2) -.L0f0a7bbc: -/* f0a7bbc: 8e18038c */ lw $t8,0x38c($s0) -/* f0a7bc0: 8e040390 */ lw $a0,0x390($s0) -/* f0a7bc4: 0fc30cfc */ jal mtx_f2l_bulk -/* f0a7bc8: 8705000e */ lh $a1,0xe($t8) -/* f0a7bcc: 0c0059e1 */ jal mtx00016784 -/* f0a7bd0: 00000000 */ nop -/* f0a7bd4: 8fb9014c */ lw $t9,0x14c($sp) -/* f0a7bd8: 3c09bc00 */ lui $t1,0xbc00 -/* f0a7bdc: 3529000e */ ori $t1,$t1,0xe -/* f0a7be0: 272f0008 */ addiu $t7,$t9,0x8 -/* f0a7be4: afaf014c */ sw $t7,0x14c($sp) -/* f0a7be8: af290000 */ sw $t1,0x0($t9) -/* f0a7bec: 0c002adb */ jal vi_get_persp_scale -/* f0a7bf0: afb90074 */ sw $t9,0x74($sp) -/* f0a7bf4: 8fa30074 */ lw $v1,0x74($sp) -/* f0a7bf8: ac620004 */ sw $v0,0x4($v1) -.L0f0a7bfc: -/* f0a7bfc: 26940001 */ addiu $s4,$s4,0x1 -/* f0a7c00: 24010002 */ addiu $at,$zero,0x2 -/* f0a7c04: 1681fe04 */ bne $s4,$at,.L0f0a7418 -/* f0a7c08: 261007a4 */ addiu $s0,$s0,0x7a4 -/* f0a7c0c: afb500e4 */ sw $s5,0xe4($sp) -/* f0a7c10: 0fc2baf8 */ jal casings_render -/* f0a7c14: 27a4014c */ addiu $a0,$sp,0x14c -/* f0a7c18: 0fc5d8a6 */ jal zbuf_swap -/* f0a7c1c: 00000000 */ nop -/* f0a7c20: 0fc5d8ab */ jal zbuf_configure_rdp -/* f0a7c24: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7c28: afa2014c */ sw $v0,0x14c($sp) -/* f0a7c2c: 0c002c74 */ jal vi0000b1d0 -/* f0a7c30: 00402025 */ or $a0,$v0,$zero -/* f0a7c34: 244e0008 */ addiu $t6,$v0,0x8 -/* f0a7c38: afae014c */ sw $t6,0x14c($sp) -/* f0a7c3c: 0c002f40 */ jal vi_get_view_left -/* f0a7c40: 00408825 */ or $s1,$v0,$zero -/* f0a7c44: 00028400 */ sll $s0,$v0,0x10 -/* f0a7c48: 00106403 */ sra $t4,$s0,0x10 -/* f0a7c4c: 0c002f44 */ jal vi_get_view_top -/* f0a7c50: 01808025 */ or $s0,$t4,$zero -/* f0a7c54: 44824000 */ mtc1 $v0,$f8 -/* f0a7c58: 44902000 */ mtc1 $s0,$f4 -/* f0a7c5c: 3c014080 */ lui $at,0x4080 -/* f0a7c60: 468042a0 */ cvt.s.w $f10,$f8 -/* f0a7c64: 44810000 */ mtc1 $at,$f0 -/* f0a7c68: 3c01ed00 */ lui $at,0xed00 -/* f0a7c6c: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a7c70: 46005402 */ mul.s $f16,$f10,$f0 -/* f0a7c74: 00000000 */ nop -/* f0a7c78: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a7c7c: 4600848d */ trunc.w.s $f18,$f16 -/* f0a7c80: 4600428d */ trunc.w.s $f10,$f8 -/* f0a7c84: 44089000 */ mfc1 $t0,$f18 -/* f0a7c88: 44195000 */ mfc1 $t9,$f10 -/* f0a7c8c: 310b0fff */ andi $t3,$t0,0xfff -/* f0a7c90: 01616825 */ or $t5,$t3,$at -/* f0a7c94: 332f0fff */ andi $t7,$t9,0xfff -/* f0a7c98: 000f4b00 */ sll $t1,$t7,0xc -/* f0a7c9c: 01a97025 */ or $t6,$t5,$t1 -/* f0a7ca0: 0c002f22 */ jal vi_get_view_width -/* f0a7ca4: ae2e0000 */ sw $t6,0x0($s1) -/* f0a7ca8: 00029400 */ sll $s2,$v0,0x10 -/* f0a7cac: 00126403 */ sra $t4,$s2,0x10 -/* f0a7cb0: 0c002f40 */ jal vi_get_view_left -/* f0a7cb4: 01809025 */ or $s2,$t4,$zero -/* f0a7cb8: 0002a400 */ sll $s4,$v0,0x10 -/* f0a7cbc: 00145403 */ sra $t2,$s4,0x10 -/* f0a7cc0: 0c002f44 */ jal vi_get_view_top -/* f0a7cc4: 0140a025 */ or $s4,$t2,$zero -/* f0a7cc8: 00028400 */ sll $s0,$v0,0x10 -/* f0a7ccc: 00104403 */ sra $t0,$s0,0x10 -/* f0a7cd0: 0c002f26 */ jal vi_get_view_height -/* f0a7cd4: 01008025 */ or $s0,$t0,$zero -/* f0a7cd8: 00505821 */ addu $t3,$v0,$s0 -/* f0a7cdc: 448b8000 */ mtc1 $t3,$f16 -/* f0a7ce0: 02926821 */ addu $t5,$s4,$s2 -/* f0a7ce4: 448d5000 */ mtc1 $t5,$f10 -/* f0a7ce8: 468084a0 */ cvt.s.w $f18,$f16 -/* f0a7cec: 3c014080 */ lui $at,0x4080 -/* f0a7cf0: 44812000 */ mtc1 $at,$f4 -/* f0a7cf4: 46805420 */ cvt.s.w $f16,$f10 -/* f0a7cf8: 46049182 */ mul.s $f6,$f18,$f4 -/* f0a7cfc: 44819000 */ mtc1 $at,$f18 -/* f0a7d00: 00000000 */ nop -/* f0a7d04: 46128102 */ mul.s $f4,$f16,$f18 -/* f0a7d08: 4600320d */ trunc.w.s $f8,$f6 -/* f0a7d0c: 4600218d */ trunc.w.s $f6,$f4 -/* f0a7d10: 44194000 */ mfc1 $t9,$f8 -/* f0a7d14: 440e3000 */ mfc1 $t6,$f6 -/* f0a7d18: 332f0fff */ andi $t7,$t9,0xfff -/* f0a7d1c: 31cc0fff */ andi $t4,$t6,0xfff -/* f0a7d20: 000c5300 */ sll $t2,$t4,0xc -/* f0a7d24: 01ea4025 */ or $t0,$t7,$t2 -/* f0a7d28: ae280004 */ sw $t0,0x4($s1) -/* f0a7d2c: 8fb80150 */ lw $t8,0x150($sp) -/* f0a7d30: 8fab014c */ lw $t3,0x14c($sp) -/* f0a7d34: af0b0000 */ sw $t3,0x0($t8) -/* f0a7d38: 8fbf0034 */ lw $ra,0x34($sp) -.L0f0a7d3c: -/* f0a7d3c: 8fb0001c */ lw $s0,0x1c($sp) -/* f0a7d40: 8fb10020 */ lw $s1,0x20($sp) -/* f0a7d44: 8fb20024 */ lw $s2,0x24($sp) -/* f0a7d48: 8fb30028 */ lw $s3,0x28($sp) -/* f0a7d4c: 8fb4002c */ lw $s4,0x2c($sp) -/* f0a7d50: 8fb50030 */ lw $s5,0x30($sp) -/* f0a7d54: 03e00008 */ jr $ra -/* f0a7d58: 27bd0150 */ addiu $sp,$sp,0x150 -); -#elif VERSION >= VERSION_NTSC_1_0 -GLOBAL_ASM( -glabel bgun_render -.late_rodata -glabel var7f1aca8c -.word 0x3faaaaab -glabel var7f1aca90 -.word 0x3f3ebebf -.text -/* f0a7138: 27bdfeb0 */ addiu $sp,$sp,-336 -/* f0a713c: afbf0034 */ sw $ra,0x34($sp) -/* f0a7140: afb50030 */ sw $s5,0x30($sp) -/* f0a7144: afb4002c */ sw $s4,0x2c($sp) -/* f0a7148: afb30028 */ sw $s3,0x28($sp) -/* f0a714c: afb20024 */ sw $s2,0x24($sp) -/* f0a7150: afb10020 */ sw $s1,0x20($sp) -/* f0a7154: afb0001c */ sw $s0,0x1c($sp) -/* f0a7158: afa40150 */ sw $a0,0x150($sp) -/* f0a715c: 8c8f0000 */ lw $t7,0x0($a0) -/* f0a7160: 3c198007 */ lui $t9,%hi(var8007029c) -/* f0a7164: 3c11800a */ lui $s1,%hi(g_Vars) -/* f0a7168: 2739029c */ addiu $t9,$t9,%lo(var8007029c) -/* f0a716c: 26319fc0 */ addiu $s1,$s1,%lo(g_Vars) -/* f0a7170: 272a003c */ addiu $t2,$t9,0x3c -/* f0a7174: 27b8010c */ addiu $t8,$sp,0x10c -/* f0a7178: afaf014c */ sw $t7,0x14c($sp) -.L0f0a717c: -/* f0a717c: 8f210000 */ lw $at,0x0($t9) -/* f0a7180: 2739000c */ addiu $t9,$t9,0xc -/* f0a7184: 2718000c */ addiu $t8,$t8,0xc -/* f0a7188: af01fff4 */ sw $at,-0xc($t8) -/* f0a718c: 8f21fff8 */ lw $at,-0x8($t9) -/* f0a7190: af01fff8 */ sw $at,-0x8($t8) -/* f0a7194: 8f21fffc */ lw $at,-0x4($t9) -/* f0a7198: 172afff8 */ bne $t9,$t2,.L0f0a717c -/* f0a719c: af01fffc */ sw $at,-0x4($t8) -/* f0a71a0: 8f210000 */ lw $at,0x0($t9) -/* f0a71a4: af010000 */ sw $at,0x0($t8) -/* f0a71a8: 8e330284 */ lw $s3,0x284($s1) -/* f0a71ac: 24010001 */ addiu $at,$zero,0x1 -/* f0a71b0: 966b0010 */ lhu $t3,0x10($s3) -/* f0a71b4: 1561000d */ bne $t3,$at,.L0f0a71ec -/* f0a71b8: 00001025 */ or $v0,$zero,$zero -/* f0a71bc: 24040f48 */ addiu $a0,$zero,0xf48 -/* f0a71c0: 8e2c0284 */ lw $t4,0x284($s1) -.L0f0a71c4: -/* f0a71c4: 01821821 */ addu $v1,$t4,$v0 -/* f0a71c8: 8c6d0854 */ lw $t5,0x854($v1) -/* f0a71cc: 244207a4 */ addiu $v0,$v0,0x7a4 -/* f0a71d0: 11a00002 */ beqz $t5,.L0f0a71dc -/* f0a71d4: 00000000 */ nop -/* f0a71d8: ac600850 */ sw $zero,0x850($v1) -.L0f0a71dc: -/* f0a71dc: 5444fff9 */ bnel $v0,$a0,.L0f0a71c4 -/* f0a71e0: 8e2c0284 */ lw $t4,0x284($s1) -/* f0a71e4: 100002d5 */ b .L0f0a7d3c -/* f0a71e8: 8fbf0034 */ lw $ra,0x34($sp) -.L0f0a71ec: -/* f0a71ec: 0fc5d9ad */ jal zbuf_draw_artifacts_offscreen -/* f0a71f0: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a71f4: afa2014c */ sw $v0,0x14c($sp) -/* f0a71f8: 0c002ca0 */ jal vi_prepare_zbuf -/* f0a71fc: 00402025 */ or $a0,$v0,$zero -/* f0a7200: afa2014c */ sw $v0,0x14c($sp) -/* f0a7204: 0c002c74 */ jal vi0000b1d0 -/* f0a7208: 00402025 */ or $a0,$v0,$zero -/* f0a720c: 244e0008 */ addiu $t6,$v0,0x8 -/* f0a7210: afae014c */ sw $t6,0x14c($sp) -/* f0a7214: 0c002f40 */ jal vi_get_view_left -/* f0a7218: 0040a825 */ or $s5,$v0,$zero -/* f0a721c: 00028400 */ sll $s0,$v0,0x10 -/* f0a7220: 00107c03 */ sra $t7,$s0,0x10 -/* f0a7224: 0c002f44 */ jal vi_get_view_top -/* f0a7228: 01e08025 */ or $s0,$t7,$zero -/* f0a722c: 44822000 */ mtc1 $v0,$f4 -/* f0a7230: 44908000 */ mtc1 $s0,$f16 -/* f0a7234: 3c014080 */ lui $at,0x4080 -/* f0a7238: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a723c: 44810000 */ mtc1 $at,$f0 -/* f0a7240: 3c01ed00 */ lui $at,0xed00 -/* f0a7244: 468084a0 */ cvt.s.w $f18,$f16 -/* f0a7248: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a724c: 00000000 */ nop -/* f0a7250: 46009102 */ mul.s $f4,$f18,$f0 -/* f0a7254: 4600428d */ trunc.w.s $f10,$f8 -/* f0a7258: 4600218d */ trunc.w.s $f6,$f4 -/* f0a725c: 44085000 */ mfc1 $t0,$f10 -/* f0a7260: 440b3000 */ mfc1 $t3,$f6 -/* f0a7264: 310a0fff */ andi $t2,$t0,0xfff -/* f0a7268: 0141c825 */ or $t9,$t2,$at -/* f0a726c: 316c0fff */ andi $t4,$t3,0xfff -/* f0a7270: 000c6b00 */ sll $t5,$t4,0xc -/* f0a7274: 032d7025 */ or $t6,$t9,$t5 -/* f0a7278: 0c002f22 */ jal vi_get_view_width -/* f0a727c: aeae0000 */ sw $t6,0x0($s5) -/* f0a7280: 00029400 */ sll $s2,$v0,0x10 -/* f0a7284: 00127c03 */ sra $t7,$s2,0x10 -/* f0a7288: 0c002f40 */ jal vi_get_view_left -/* f0a728c: 01e09025 */ or $s2,$t7,$zero -/* f0a7290: 0002a400 */ sll $s4,$v0,0x10 -/* f0a7294: 00144c03 */ sra $t1,$s4,0x10 -/* f0a7298: 0c002f44 */ jal vi_get_view_top -/* f0a729c: 0120a025 */ or $s4,$t1,$zero -/* f0a72a0: 00028400 */ sll $s0,$v0,0x10 -/* f0a72a4: 00104403 */ sra $t0,$s0,0x10 -/* f0a72a8: 0c002f26 */ jal vi_get_view_height -/* f0a72ac: 01008025 */ or $s0,$t0,$zero -/* f0a72b0: 00505021 */ addu $t2,$v0,$s0 -/* f0a72b4: 448a4000 */ mtc1 $t2,$f8 -/* f0a72b8: 0292c821 */ addu $t9,$s4,$s2 -/* f0a72bc: 44992000 */ mtc1 $t9,$f4 -/* f0a72c0: 468042a0 */ cvt.s.w $f10,$f8 -/* f0a72c4: 3c014080 */ lui $at,0x4080 -/* f0a72c8: 44810000 */ mtc1 $at,$f0 -/* f0a72cc: 3c053fc0 */ lui $a1,0x3fc0 -/* f0a72d0: 3c06447a */ lui $a2,0x447a -/* f0a72d4: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a72d8: 46005402 */ mul.s $f16,$f10,$f0 -/* f0a72dc: 00000000 */ nop -/* f0a72e0: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a72e4: 4600848d */ trunc.w.s $f18,$f16 -/* f0a72e8: 4600428d */ trunc.w.s $f10,$f8 -/* f0a72ec: 440b9000 */ mfc1 $t3,$f18 -/* f0a72f0: 440e5000 */ mfc1 $t6,$f10 -/* f0a72f4: 316c0fff */ andi $t4,$t3,0xfff -/* f0a72f8: 31cf0fff */ andi $t7,$t6,0xfff -/* f0a72fc: 000f4b00 */ sll $t1,$t7,0xc -/* f0a7300: 01894025 */ or $t0,$t4,$t1 -/* f0a7304: aea80004 */ sw $t0,0x4($s5) -/* f0a7308: 0c002b29 */ jal vi0000aca4 -/* f0a730c: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7310: 8e2a0284 */ lw $t2,0x284($s1) -/* f0a7314: afa2014c */ sw $v0,0x14c($sp) -/* f0a7318: 91581bfc */ lbu $t8,0x1bfc($t2) -/* f0a731c: 53000016 */ beqzl $t8,.L0f0a7378 -/* f0a7320: 8e2b006c */ lw $t3,0x6c($s1) -/* f0a7324: 0fc54bc7 */ jal options_get_screen_ratio -/* f0a7328: 00000000 */ nop -/* f0a732c: 24010001 */ addiu $at,$zero,0x1 -/* f0a7330: 14410008 */ bne $v0,$at,.L0f0a7354 -/* f0a7334: 00000000 */ nop -/* f0a7338: 0fc2f4d6 */ jal player_get_aspect_ratio -/* f0a733c: 00000000 */ nop -/* f0a7340: 3c017f1b */ lui $at,%hi(var7f1aca8c) -/* f0a7344: c430ca8c */ lwc1 $f16,%lo(var7f1aca8c)($at) -/* f0a7348: 46100082 */ mul.s $f2,$f0,$f16 -/* f0a734c: 10000005 */ b .L0f0a7364 -/* f0a7350: 44061000 */ mfc1 $a2,$f2 -.L0f0a7354: -/* f0a7354: 0fc2f4d6 */ jal player_get_aspect_ratio -/* f0a7358: 00000000 */ nop -/* f0a735c: 46000086 */ mov.s $f2,$f0 -/* f0a7360: 44061000 */ mfc1 $a2,$f2 -.L0f0a7364: -/* f0a7364: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7368: 0c002c3a */ jal vi0000b0e8 -/* f0a736c: 3c054270 */ lui $a1,0x4270 -/* f0a7370: afa2014c */ sw $v0,0x14c($sp) -/* f0a7374: 8e2b006c */ lw $t3,0x6c($s1) -.L0f0a7378: -/* f0a7378: 24010001 */ addiu $at,$zero,0x1 -/* f0a737c: 51600004 */ beqzl $t3,.L0f0a7390 -/* f0a7380: 00002825 */ or $a1,$zero,$zero -/* f0a7384: 10000002 */ b .L0f0a7390 -/* f0a7388: 24050001 */ addiu $a1,$zero,0x1 -/* f0a738c: 00002825 */ or $a1,$zero,$zero -.L0f0a7390: -/* f0a7390: 8e390068 */ lw $t9,0x68($s1) -/* f0a7394: 53200004 */ beqzl $t9,.L0f0a73a8 -/* f0a7398: 00002025 */ or $a0,$zero,$zero -/* f0a739c: 10000002 */ b .L0f0a73a8 -/* f0a73a0: 24040001 */ addiu $a0,$zero,0x1 -/* f0a73a4: 00002025 */ or $a0,$zero,$zero -.L0f0a73a8: -/* f0a73a8: 8e2d0064 */ lw $t5,0x64($s1) -/* f0a73ac: 51a00004 */ beqzl $t5,.L0f0a73c0 -/* f0a73b0: 00001025 */ or $v0,$zero,$zero -/* f0a73b4: 10000002 */ b .L0f0a73c0 -/* f0a73b8: 24020001 */ addiu $v0,$zero,0x1 -/* f0a73bc: 00001025 */ or $v0,$zero,$zero -.L0f0a73c0: -/* f0a73c0: 8e2e0070 */ lw $t6,0x70($s1) -/* f0a73c4: 51c00004 */ beqzl $t6,.L0f0a73d8 -/* f0a73c8: 00001825 */ or $v1,$zero,$zero -/* f0a73cc: 10000002 */ b .L0f0a73d8 -/* f0a73d0: 24030001 */ addiu $v1,$zero,0x1 -/* f0a73d4: 00001825 */ or $v1,$zero,$zero -.L0f0a73d8: -/* f0a73d8: 00627821 */ addu $t7,$v1,$v0 -/* f0a73dc: 01e46021 */ addu $t4,$t7,$a0 -/* f0a73e0: 01854821 */ addu $t1,$t4,$a1 -/* f0a73e4: 15210008 */ bne $t1,$at,.L0f0a7408 -/* f0a73e8: 3c088009 */ lui $t0,%hi(g_Is4Mb) -/* f0a73ec: 91080af0 */ lbu $t0,%lo(g_Is4Mb)($t0) -/* f0a73f0: 24010001 */ addiu $at,$zero,0x1 -/* f0a73f4: 51010005 */ beql $t0,$at,.L0f0a740c -/* f0a73f8: 0000a025 */ or $s4,$zero,$zero -/* f0a73fc: 0fc2be93 */ jal lasersight_render_beam -/* f0a7400: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7404: afa2014c */ sw $v0,0x14c($sp) -.L0f0a7408: -/* f0a7408: 0000a025 */ or $s4,$zero,$zero -.L0f0a740c: -/* f0a740c: 26700638 */ addiu $s0,$s3,0x638 -/* f0a7410: 8fb500e4 */ lw $s5,0xe4($sp) -/* f0a7414: 24120019 */ addiu $s2,$zero,0x19 -.L0f0a7418: -/* f0a7418: 0fc2867c */ jal bgun_get_weapon_num2 -/* f0a741c: 02802025 */ or $a0,$s4,$zero -/* f0a7420: afa200ec */ sw $v0,0xec($sp) -/* f0a7424: 820a0007 */ lb $t2,0x7($s0) -/* f0a7428: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a742c: 260501dc */ addiu $a1,$s0,0x1dc -/* f0a7430: 114001f2 */ beqz $t2,.L0f0a7bfc -/* f0a7434: 00003025 */ or $a2,$zero,$zero -/* f0a7438: 26180384 */ addiu $t8,$s0,0x384 -/* f0a743c: afb8003c */ sw $t8,0x3c($sp) -/* f0a7440: 0fc2b2e4 */ jal beam_render -/* f0a7444: 00003825 */ or $a3,$zero,$zero -/* f0a7448: afa2014c */ sw $v0,0x14c($sp) -/* f0a744c: 92040000 */ lbu $a0,0x0($s0) -/* f0a7450: 0fc2c5f0 */ jal weapon_has_flag -/* f0a7454: 34058000 */ dli $a1,0x8000 -/* f0a7458: 10400030 */ beqz $v0,.L0f0a751c -/* f0a745c: 8fab014c */ lw $t3,0x14c($sp) -/* f0a7460: 25790008 */ addiu $t9,$t3,0x8 -/* f0a7464: afb9014c */ sw $t9,0x14c($sp) -/* f0a7468: 3c0dbc00 */ lui $t5,0xbc00 -/* f0a746c: 3c0e8000 */ lui $t6,0x8000 -/* f0a7470: 35ce0040 */ ori $t6,$t6,0x40 -/* f0a7474: 35ad0002 */ ori $t5,$t5,0x2 -/* f0a7478: ad6d0000 */ sw $t5,0x0($t3) -/* f0a747c: ad6e0004 */ sw $t6,0x4($t3) -/* f0a7480: 8faf014c */ lw $t7,0x14c($sp) -/* f0a7484: 3c090386 */ lui $t1,0x386 -/* f0a7488: 3c088007 */ lui $t0,%hi(var80070090+0x08) -/* f0a748c: 25ec0008 */ addiu $t4,$t7,0x8 -/* f0a7490: afac014c */ sw $t4,0x14c($sp) -/* f0a7494: 25080098 */ addiu $t0,$t0,%lo(var80070090+0x08) -/* f0a7498: 35290010 */ ori $t1,$t1,0x10 -/* f0a749c: ade90000 */ sw $t1,0x0($t7) -/* f0a74a0: ade80004 */ sw $t0,0x4($t7) -/* f0a74a4: 8faa014c */ lw $t2,0x14c($sp) -/* f0a74a8: 3c0b0388 */ lui $t3,0x388 -/* f0a74ac: 3c198007 */ lui $t9,%hi(var80070090) -/* f0a74b0: 25580008 */ addiu $t8,$t2,0x8 -/* f0a74b4: afb8014c */ sw $t8,0x14c($sp) -/* f0a74b8: 27390090 */ addiu $t9,$t9,%lo(var80070090) -/* f0a74bc: 356b0010 */ ori $t3,$t3,0x10 -/* f0a74c0: ad4b0000 */ sw $t3,0x0($t2) -/* f0a74c4: ad590004 */ sw $t9,0x4($t2) -/* f0a74c8: 8fad014c */ lw $t5,0x14c($sp) -/* f0a74cc: 3c0f0384 */ lui $t7,0x384 -/* f0a74d0: 35ef0010 */ ori $t7,$t7,0x10 -/* f0a74d4: 25ae0008 */ addiu $t6,$t5,0x8 -/* f0a74d8: afae014c */ sw $t6,0x14c($sp) -/* f0a74dc: adaf0000 */ sw $t7,0x0($t5) -/* f0a74e0: 0fc2d5ea */ jal cam_get_look_at -/* f0a74e4: afad00d4 */ sw $t5,0xd4($sp) -/* f0a74e8: 8fa500d4 */ lw $a1,0xd4($sp) -/* f0a74ec: 3c080382 */ lui $t0,0x382 -/* f0a74f0: 35080010 */ ori $t0,$t0,0x10 -/* f0a74f4: aca20004 */ sw $v0,0x4($a1) -/* f0a74f8: 8fac014c */ lw $t4,0x14c($sp) -/* f0a74fc: 25890008 */ addiu $t1,$t4,0x8 -/* f0a7500: afa9014c */ sw $t1,0x14c($sp) -/* f0a7504: ad880000 */ sw $t0,0x0($t4) -/* f0a7508: 0fc2d5ea */ jal cam_get_look_at -/* f0a750c: afac00d0 */ sw $t4,0xd0($sp) -/* f0a7510: 8fa300d0 */ lw $v1,0xd0($sp) -/* f0a7514: 244a0010 */ addiu $t2,$v0,0x10 -/* f0a7518: ac6a0004 */ sw $t2,0x4($v1) -.L0f0a751c: -/* f0a751c: 8fb8014c */ lw $t8,0x14c($sp) -/* f0a7520: 3c19bc00 */ lui $t9,0xbc00 -/* f0a7524: 3739000e */ ori $t9,$t9,0xe -/* f0a7528: 270b0008 */ addiu $t3,$t8,0x8 -/* f0a752c: afab014c */ sw $t3,0x14c($sp) -/* f0a7530: 3c014396 */ lui $at,0x4396 -/* f0a7534: 44817000 */ mtc1 $at,$f14 -/* f0a7538: 44806000 */ mtc1 $zero,$f12 -/* f0a753c: af190000 */ sw $t9,0x0($t8) -/* f0a7540: 0c005b73 */ jal mtx00016dcc -/* f0a7544: afb800cc */ sw $t8,0xcc($sp) -/* f0a7548: 8fa300cc */ lw $v1,0xcc($sp) -/* f0a754c: 24050010 */ addiu $a1,$zero,0x10 -/* f0a7550: ac620004 */ sw $v0,0x4($v1) -/* f0a7554: 0c006a47 */ jal model_get_part -/* f0a7558: 8e04038c */ lw $a0,0x38c($s0) -/* f0a755c: 10400014 */ beqz $v0,.L0f0a75b0 -/* f0a7560: afa200e8 */ sw $v0,0xe8($sp) -/* f0a7564: 8e04038c */ lw $a0,0x38c($s0) -/* f0a7568: 0c006a47 */ jal model_get_part -/* f0a756c: 24050011 */ addiu $a1,$zero,0x11 -/* f0a7570: 8fa4003c */ lw $a0,0x3c($sp) -/* f0a7574: 0c006a87 */ jal model_get_node_rw_data -/* f0a7578: 00402825 */ or $a1,$v0,$zero -/* f0a757c: 10400003 */ beqz $v0,.L0f0a758c -/* f0a7580: 3c06800a */ lui $a2,%hi(var8009cf88) -/* f0a7584: 240d0001 */ addiu $t5,$zero,0x1 -/* f0a7588: ac4d0000 */ sw $t5,0x0($v0) -.L0f0a758c: -/* f0a758c: 240e0001 */ addiu $t6,$zero,0x1 -/* f0a7590: afae0014 */ sw $t6,0x14($sp) -/* f0a7594: 8fa4003c */ lw $a0,0x3c($sp) -/* f0a7598: 8fa500e8 */ lw $a1,0xe8($sp) -/* f0a759c: 24c6cf88 */ addiu $a2,$a2,%lo(var8009cf88) -/* f0a75a0: 8fa7014c */ lw $a3,0x14c($sp) -/* f0a75a4: 0fc1fefe */ jal tvscreen_render -/* f0a75a8: afa00010 */ sw $zero,0x10($sp) -/* f0a75ac: afa2014c */ sw $v0,0x14c($sp) -.L0f0a75b0: -/* f0a75b0: 8faf014c */ lw $t7,0x14c($sp) -/* f0a75b4: 8e250284 */ lw $a1,0x284($s1) -/* f0a75b8: 240c0004 */ addiu $t4,$zero,0x4 -/* f0a75bc: afac013c */ sw $t4,0x13c($sp) -/* f0a75c0: afaf0118 */ sw $t7,0x118($sp) -/* f0a75c4: 8ca300d8 */ lw $v1,0xd8($a1) -/* f0a75c8: 3c078007 */ lui $a3,%hi(g_InCutscene) -/* f0a75cc: 14600013 */ bnez $v1,.L0f0a761c -/* f0a75d0: 00000000 */ nop -/* f0a75d4: 8ce70764 */ lw $a3,%lo(g_InCutscene)($a3) -/* f0a75d8: 14e00010 */ bnez $a3,.L0f0a761c -/* f0a75dc: 00000000 */ nop -/* f0a75e0: 8ca20480 */ lw $v0,0x480($a1) -/* f0a75e4: 50400007 */ beqzl $v0,.L0f0a7604 -/* f0a75e8: 8caa1c54 */ lw $t2,0x1c54($a1) -/* f0a75ec: 1040000b */ beqz $v0,.L0f0a761c -/* f0a75f0: 00000000 */ nop -/* f0a75f4: 80490037 */ lb $t1,0x37($v0) -/* f0a75f8: 15200008 */ bnez $t1,.L0f0a761c -/* f0a75fc: 00000000 */ nop -/* f0a7600: 8caa1c54 */ lw $t2,0x1c54($a1) -.L0f0a7604: -/* f0a7604: 8ca800c4 */ lw $t0,0xc4($a1) -/* f0a7608: 0140c027 */ nor $t8,$t2,$zero -/* f0a760c: 01185824 */ and $t3,$t0,$t8 -/* f0a7610: 31790001 */ andi $t9,$t3,0x1 -/* f0a7614: 57200016 */ bnezl $t9,.L0f0a7670 -/* f0a7618: 92681615 */ lbu $t0,0x1615($s3) -.L0f0a761c: -/* f0a761c: 14600078 */ bnez $v1,.L0f0a7800 -/* f0a7620: 3c078007 */ lui $a3,%hi(g_InCutscene) -/* f0a7624: 8ce70764 */ lw $a3,%lo(g_InCutscene)($a3) -/* f0a7628: 54e00076 */ bnezl $a3,.L0f0a7804 -/* f0a762c: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a7630: 8ca20480 */ lw $v0,0x480($a1) -/* f0a7634: 50400007 */ beqzl $v0,.L0f0a7654 -/* f0a7638: 8caf1c54 */ lw $t7,0x1c54($a1) -/* f0a763c: 50400071 */ beqzl $v0,.L0f0a7804 -/* f0a7640: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a7644: 804d0037 */ lb $t5,0x37($v0) -/* f0a7648: 55a0006e */ bnezl $t5,.L0f0a7804 -/* f0a764c: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a7650: 8caf1c54 */ lw $t7,0x1c54($a1) -.L0f0a7654: -/* f0a7654: 8cae00c4 */ lw $t6,0xc4($a1) -/* f0a7658: 01e06027 */ nor $t4,$t7,$zero -/* f0a765c: 01cc4824 */ and $t1,$t6,$t4 -/* f0a7660: 312a0008 */ andi $t2,$t1,0x8 -/* f0a7664: 51400067 */ beqzl $t2,.L0f0a7804 -/* f0a7668: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a766c: 92681615 */ lbu $t0,0x1615($s3) -.L0f0a7670: -/* f0a7670: 92781614 */ lbu $t8,0x1614($s3) -/* f0a7674: 26641614 */ addiu $a0,$s3,0x1614 -/* f0a7678: 0118082a */ slt $at,$t0,$t8 -/* f0a767c: 50200009 */ beqzl $at,.L0f0a76a4 -/* f0a7680: 90820002 */ lbu $v0,0x2($a0) -/* f0a7684: 90830000 */ lbu $v1,0x0($a0) -/* f0a7688: 908b0002 */ lbu $t3,0x2($a0) -/* f0a768c: 0163082a */ slt $at,$t3,$v1 -/* f0a7690: 50200004 */ beqzl $at,.L0f0a76a4 -/* f0a7694: 90820002 */ lbu $v0,0x2($a0) -/* f0a7698: 1000000a */ b .L0f0a76c4 -/* f0a769c: 00601025 */ or $v0,$v1,$zero -/* f0a76a0: 90820002 */ lbu $v0,0x2($a0) -.L0f0a76a4: -/* f0a76a4: 90860001 */ lbu $a2,0x1($a0) -/* f0a76a8: 00401825 */ or $v1,$v0,$zero -/* f0a76ac: 0046082a */ slt $at,$v0,$a2 -/* f0a76b0: 10200003 */ beqz $at,.L0f0a76c0 -/* f0a76b4: 00000000 */ nop -/* f0a76b8: 10000001 */ b .L0f0a76c0 -/* f0a76bc: 00c01825 */ or $v1,$a2,$zero -.L0f0a76c0: -/* f0a76c0: 00601025 */ or $v0,$v1,$zero -.L0f0a76c4: -/* f0a76c4: 90890003 */ lbu $t1,0x3($a0) -/* f0a76c8: 0002ce00 */ sll $t9,$v0,0x18 -/* f0a76cc: 00026c00 */ sll $t5,$v0,0x10 -/* f0a76d0: 032d7825 */ or $t7,$t9,$t5 -/* f0a76d4: 00027200 */ sll $t6,$v0,0x8 -/* f0a76d8: 01ee6025 */ or $t4,$t7,$t6 -/* f0a76dc: 012c5021 */ addu $t2,$t1,$t4 -/* f0a76e0: afaa0140 */ sw $t2,0x140($sp) -/* f0a76e4: 8ca300d8 */ lw $v1,0xd8($a1) -/* f0a76e8: 14600021 */ bnez $v1,.L0f0a7770 -/* f0a76ec: 00000000 */ nop -/* f0a76f0: 14e0001f */ bnez $a3,.L0f0a7770 -/* f0a76f4: 00000000 */ nop -/* f0a76f8: 8ca20480 */ lw $v0,0x480($a1) -/* f0a76fc: 50400007 */ beqzl $v0,.L0f0a771c -/* f0a7700: 8cab1c54 */ lw $t3,0x1c54($a1) -/* f0a7704: 1040001a */ beqz $v0,.L0f0a7770 -/* f0a7708: 00000000 */ nop -/* f0a770c: 80480037 */ lb $t0,0x37($v0) -/* f0a7710: 15000017 */ bnez $t0,.L0f0a7770 -/* f0a7714: 00000000 */ nop -/* f0a7718: 8cab1c54 */ lw $t3,0x1c54($a1) -.L0f0a771c: -/* f0a771c: 8cb800c4 */ lw $t8,0xc4($a1) -/* f0a7720: 3c02800a */ lui $v0,%hi(var8009caec+0x3) -/* f0a7724: 0160c827 */ nor $t9,$t3,$zero -/* f0a7728: 03196824 */ and $t5,$t8,$t9 -/* f0a772c: 31af0001 */ andi $t7,$t5,0x1 -/* f0a7730: 11e0000f */ beqz $t7,.L0f0a7770 -/* f0a7734: 00000000 */ nop -/* f0a7738: 9042caef */ lbu $v0,%lo(var8009caec+0x3)($v0) -/* f0a773c: 3c06800a */ lui $a2,%hi(var8009caf0) -/* f0a7740: 90c6caf0 */ lbu $a2,%lo(var8009caf0)($a2) -/* f0a7744: 00027600 */ sll $t6,$v0,0x18 -/* f0a7748: 00024c00 */ sll $t1,$v0,0x10 -/* f0a774c: 01c96025 */ or $t4,$t6,$t1 -/* f0a7750: 00025200 */ sll $t2,$v0,0x8 -/* f0a7754: 018a4025 */ or $t0,$t4,$t2 -/* f0a7758: afa200b0 */ sw $v0,0xb0($sp) -/* f0a775c: afa200b4 */ sw $v0,0xb4($sp) -/* f0a7760: afa200b8 */ sw $v0,0xb8($sp) -/* f0a7764: 00c8a821 */ addu $s5,$a2,$t0 -/* f0a7768: 1000001f */ b .L0f0a77e8 -/* f0a776c: afa600bc */ sw $a2,0xbc($sp) -.L0f0a7770: -/* f0a7770: 5460001e */ bnezl $v1,.L0f0a77ec -/* f0a7774: 8fb900ec */ lw $t9,0xec($sp) -/* f0a7778: 54e0001c */ bnezl $a3,.L0f0a77ec -/* f0a777c: 8fb900ec */ lw $t9,0xec($sp) -/* f0a7780: 8ca20480 */ lw $v0,0x480($a1) -/* f0a7784: 50400007 */ beqzl $v0,.L0f0a77a4 -/* f0a7788: 8cb91c54 */ lw $t9,0x1c54($a1) -/* f0a778c: 50400017 */ beqzl $v0,.L0f0a77ec -/* f0a7790: 8fb900ec */ lw $t9,0xec($sp) -/* f0a7794: 804b0037 */ lb $t3,0x37($v0) -/* f0a7798: 55600014 */ bnezl $t3,.L0f0a77ec -/* f0a779c: 8fb900ec */ lw $t9,0xec($sp) -/* f0a77a0: 8cb91c54 */ lw $t9,0x1c54($a1) -.L0f0a77a4: -/* f0a77a4: 8cb800c4 */ lw $t8,0xc4($a1) -/* f0a77a8: 240200ff */ addiu $v0,$zero,0xff -/* f0a77ac: 03206827 */ nor $t5,$t9,$zero -/* f0a77b0: 030d7824 */ and $t7,$t8,$t5 -/* f0a77b4: 31ee0008 */ andi $t6,$t7,0x8 -/* f0a77b8: 11c0000b */ beqz $t6,.L0f0a77e8 -/* f0a77bc: 24050080 */ addiu $a1,$zero,0x80 -/* f0a77c0: 00024e00 */ sll $t1,$v0,0x18 -/* f0a77c4: 00006400 */ sll $t4,$zero,0x10 -/* f0a77c8: 012c5025 */ or $t2,$t1,$t4 -/* f0a77cc: 00004200 */ sll $t0,$zero,0x8 -/* f0a77d0: 01485825 */ or $t3,$t2,$t0 -/* f0a77d4: 00aba821 */ addu $s5,$a1,$t3 -/* f0a77d8: afa200a0 */ sw $v0,0xa0($sp) -/* f0a77dc: afa000a4 */ sw $zero,0xa4($sp) -/* f0a77e0: afa000a8 */ sw $zero,0xa8($sp) -/* f0a77e4: afa500ac */ sw $a1,0xac($sp) -.L0f0a77e8: -/* f0a77e8: 8fb900ec */ lw $t9,0xec($sp) -.L0f0a77ec: -/* f0a77ec: 24010001 */ addiu $at,$zero,0x1 -/* f0a77f0: 5721003d */ bnel $t9,$at,.L0f0a78e8 -/* f0a77f4: 8e6f00bc */ lw $t7,0xbc($s3) -/* f0a77f8: 1000003a */ b .L0f0a78e4 -/* f0a77fc: afb50140 */ sw $s5,0x140($sp) -.L0f0a7800: -/* f0a7800: 926d1614 */ lbu $t5,0x1614($s3) -.L0f0a7804: -/* f0a7804: 92781617 */ lbu $t8,0x1617($s3) -/* f0a7808: 92691615 */ lbu $t1,0x1615($s3) -/* f0a780c: 92681616 */ lbu $t0,0x1616($s3) -/* f0a7810: 000d7e00 */ sll $t7,$t5,0x18 -/* f0a7814: 030f7025 */ or $t6,$t8,$t7 -/* f0a7818: 00096400 */ sll $t4,$t1,0x10 -/* f0a781c: 01cc5025 */ or $t2,$t6,$t4 -/* f0a7820: 00085a00 */ sll $t3,$t0,0x8 -/* f0a7824: 014bc825 */ or $t9,$t2,$t3 -/* f0a7828: afb90140 */ sw $t9,0x140($sp) -/* f0a782c: 920d0000 */ lbu $t5,0x0($s0) -/* f0a7830: 24010006 */ addiu $at,$zero,0x6 -/* f0a7834: 0320a825 */ or $s5,$t9,$zero -/* f0a7838: 15a1002a */ bne $t5,$at,.L0f0a78e4 -/* f0a783c: 3c04ff00 */ lui $a0,0xff00 -/* f0a7840: 3c014248 */ lui $at,0x4248 -/* f0a7844: 44812000 */ mtc1 $at,$f4 -/* f0a7848: c612023c */ lwc1 $f18,0x23c($s0) -/* f0a784c: 24060001 */ addiu $a2,$zero,0x1 -/* f0a7850: 3c014f00 */ lui $at,0x4f00 -/* f0a7854: 46049182 */ mul.s $f6,$f18,$f4 -/* f0a7858: 3484007f */ ori $a0,$a0,0x7f -/* f0a785c: 4458f800 */ cfc1 $t8,$31 -/* f0a7860: 44c6f800 */ ctc1 $a2,$31 -/* f0a7864: 00000000 */ nop -/* f0a7868: 46003224 */ cvt.w.s $f8,$f6 -/* f0a786c: 4446f800 */ cfc1 $a2,$31 -/* f0a7870: 00000000 */ nop -/* f0a7874: 30c60078 */ andi $a2,$a2,0x78 -/* f0a7878: 50c00013 */ beqzl $a2,.L0f0a78c8 -/* f0a787c: 44064000 */ mfc1 $a2,$f8 -/* f0a7880: 44814000 */ mtc1 $at,$f8 -/* f0a7884: 24060001 */ addiu $a2,$zero,0x1 -/* f0a7888: 46083201 */ sub.s $f8,$f6,$f8 -/* f0a788c: 44c6f800 */ ctc1 $a2,$31 -/* f0a7890: 00000000 */ nop -/* f0a7894: 46004224 */ cvt.w.s $f8,$f8 -/* f0a7898: 4446f800 */ cfc1 $a2,$31 -/* f0a789c: 00000000 */ nop -/* f0a78a0: 30c60078 */ andi $a2,$a2,0x78 -/* f0a78a4: 14c00005 */ bnez $a2,.L0f0a78bc -/* f0a78a8: 00000000 */ nop -/* f0a78ac: 44064000 */ mfc1 $a2,$f8 -/* f0a78b0: 3c018000 */ lui $at,0x8000 -/* f0a78b4: 10000007 */ b .L0f0a78d4 -/* f0a78b8: 00c13025 */ or $a2,$a2,$at -.L0f0a78bc: -/* f0a78bc: 10000005 */ b .L0f0a78d4 -/* f0a78c0: 2406ffff */ addiu $a2,$zero,-1 -/* f0a78c4: 44064000 */ mfc1 $a2,$f8 -.L0f0a78c8: -/* f0a78c8: 00000000 */ nop -/* f0a78cc: 04c0fffb */ bltz $a2,.L0f0a78bc -/* f0a78d0: 00000000 */ nop -.L0f0a78d4: -/* f0a78d4: 44d8f800 */ ctc1 $t8,$31 -/* f0a78d8: 0fc01a40 */ jal colour_blend -/* f0a78dc: 03202825 */ or $a1,$t9,$zero -/* f0a78e0: afa20140 */ sw $v0,0x140($sp) -.L0f0a78e4: -/* f0a78e4: 8e6f00bc */ lw $t7,0xbc($s3) -.L0f0a78e8: -/* f0a78e8: 0fc08af9 */ jal chr_get_cloak_alpha -/* f0a78ec: 8de40004 */ lw $a0,0x4($t7) -/* f0a78f0: 284100ff */ slti $at,$v0,0xff -/* f0a78f4: 1020000f */ beqz $at,.L0f0a7934 -/* f0a78f8: 240c0001 */ addiu $t4,$zero,0x1 -/* f0a78fc: 44825000 */ mtc1 $v0,$f10 -/* f0a7900: 3c017f1b */ lui $at,%hi(var7f1aca90) -/* f0a7904: c432ca90 */ lwc1 $f18,%lo(var7f1aca90)($at) -/* f0a7908: 46805420 */ cvt.s.w $f16,$f10 -/* f0a790c: 8fa40140 */ lw $a0,0x140($sp) -/* f0a7910: 240e0005 */ addiu $t6,$zero,0x5 -/* f0a7914: afae013c */ sw $t6,0x13c($sp) -/* f0a7918: afa40144 */ sw $a0,0x144($sp) -/* f0a791c: 46128102 */ mul.s $f4,$f16,$f18 -/* f0a7920: 4600218d */ trunc.w.s $f6,$f4 -/* f0a7924: 44033000 */ mfc1 $v1,$f6 -/* f0a7928: 00000000 */ nop -/* f0a792c: 24750041 */ addiu $s5,$v1,0x41 -/* f0a7930: afb50140 */ sw $s5,0x140($sp) -.L0f0a7934: -/* f0a7934: 0c0059d8 */ jal mtx00016760 -/* f0a7938: afac0110 */ sw $t4,0x110($sp) -/* f0a793c: 8e020218 */ lw $v0,0x218($s0) -/* f0a7940: 50400017 */ beqzl $v0,.L0f0a79a0 -/* f0a7944: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7948: 8c460018 */ lw $a2,0x18($v0) -/* f0a794c: afa00094 */ sw $zero,0x94($sp) -/* f0a7950: 50c00013 */ beqzl $a2,.L0f0a79a0 -/* f0a7954: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7958: 8cc80008 */ lw $t0,0x8($a2) -/* f0a795c: 240a0001 */ addiu $t2,$zero,0x1 -/* f0a7960: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7964: 1100000d */ beqz $t0,.L0f0a799c -/* f0a7968: 00c02825 */ or $a1,$a2,$zero -/* f0a796c: afaa0094 */ sw $t2,0x94($sp) -/* f0a7970: 0c0087bd */ jal model_render -/* f0a7974: afa60098 */ sw $a2,0x98($sp) -/* f0a7978: 8fa60098 */ lw $a2,0x98($sp) -/* f0a797c: 8ccb0008 */ lw $t3,0x8($a2) -/* f0a7980: 8cc4000c */ lw $a0,0xc($a2) -/* f0a7984: 0fc30cfc */ jal mtx_f2l_bulk -/* f0a7988: 8565000e */ lh $a1,0xe($t3) -/* f0a798c: 8e0d021c */ lw $t5,0x21c($s0) -/* f0a7990: 51a00003 */ beqzl $t5,.L0f0a79a0 -/* f0a7994: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7998: ae000218 */ sw $zero,0x218($s0) -.L0f0a799c: -/* f0a799c: 8fa400ec */ lw $a0,0xec($sp) -.L0f0a79a0: -/* f0a79a0: 0fc2c5f0 */ jal weapon_has_flag -/* f0a79a4: 24050020 */ addiu $a1,$zero,0x20 -/* f0a79a8: 1040000e */ beqz $v0,.L0f0a79e4 -/* f0a79ac: 24010001 */ addiu $at,$zero,0x1 -/* f0a79b0: 8fb80118 */ lw $t8,0x118($sp) -/* f0a79b4: 3c0fb600 */ lui $t7,0xb600 -/* f0a79b8: 24093000 */ addiu $t1,$zero,0x3000 -/* f0a79bc: 27190008 */ addiu $t9,$t8,0x8 -/* f0a79c0: afb90118 */ sw $t9,0x118($sp) -/* f0a79c4: af090004 */ sw $t1,0x4($t8) -/* f0a79c8: 16800004 */ bnez $s4,.L0f0a79dc -/* f0a79cc: af0f0000 */ sw $t7,0x0($t8) -/* f0a79d0: 240e0003 */ addiu $t6,$zero,0x3 -/* f0a79d4: 10000003 */ b .L0f0a79e4 -/* f0a79d8: afae0148 */ sw $t6,0x148($sp) -.L0f0a79dc: -/* f0a79dc: 240c0002 */ addiu $t4,$zero,0x2 -/* f0a79e0: afac0148 */ sw $t4,0x148($sp) -.L0f0a79e4: -/* f0a79e4: 8e28006c */ lw $t0,0x6c($s1) -/* f0a79e8: 00002825 */ or $a1,$zero,$zero -/* f0a79ec: 00002025 */ or $a0,$zero,$zero -/* f0a79f0: 11000003 */ beqz $t0,.L0f0a7a00 -/* f0a79f4: 00001025 */ or $v0,$zero,$zero -/* f0a79f8: 10000001 */ b .L0f0a7a00 -/* f0a79fc: 24050001 */ addiu $a1,$zero,0x1 -.L0f0a7a00: -/* f0a7a00: 8e2a0068 */ lw $t2,0x68($s1) -/* f0a7a04: 00001825 */ or $v1,$zero,$zero -/* f0a7a08: 11400003 */ beqz $t2,.L0f0a7a18 -/* f0a7a0c: 00000000 */ nop -/* f0a7a10: 10000001 */ b .L0f0a7a18 -/* f0a7a14: 24040001 */ addiu $a0,$zero,0x1 -.L0f0a7a18: -/* f0a7a18: 8e2b0064 */ lw $t3,0x64($s1) -/* f0a7a1c: 11600003 */ beqz $t3,.L0f0a7a2c -/* f0a7a20: 00000000 */ nop -/* f0a7a24: 10000001 */ b .L0f0a7a2c -/* f0a7a28: 24020001 */ addiu $v0,$zero,0x1 -.L0f0a7a2c: -/* f0a7a2c: 8e2d0070 */ lw $t5,0x70($s1) -/* f0a7a30: 11a00003 */ beqz $t5,.L0f0a7a40 -/* f0a7a34: 00000000 */ nop -/* f0a7a38: 10000001 */ b .L0f0a7a40 -/* f0a7a3c: 24030001 */ addiu $v1,$zero,0x1 -.L0f0a7a40: -/* f0a7a40: 0062c021 */ addu $t8,$v1,$v0 -/* f0a7a44: 0304c821 */ addu $t9,$t8,$a0 -/* f0a7a48: 03257821 */ addu $t7,$t9,$a1 -/* f0a7a4c: 15e10036 */ bne $t7,$at,.L0f0a7b28 -/* f0a7a50: 24050041 */ addiu $a1,$zero,0x41 -/* f0a7a54: 0c006a47 */ jal model_get_part -/* f0a7a58: 8e04038c */ lw $a0,0x38c($s0) -/* f0a7a5c: 50400033 */ beqzl $v0,.L0f0a7b2c -/* f0a7a60: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7a64: 8c440004 */ lw $a0,0x4($v0) -/* f0a7a68: 00002825 */ or $a1,$zero,$zero -/* f0a7a6c: 84890010 */ lh $t1,0x10($a0) -/* f0a7a70: 5920002e */ blezl $t1,.L0f0a7b2c -/* f0a7a74: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7a78: 8e2a0034 */ lw $t2,0x34($s1) -.L0f0a7a7c: -/* f0a7a7c: 8c8e000c */ lw $t6,0xc($a0) -/* f0a7a80: 00056080 */ sll $t4,$a1,0x2 -/* f0a7a84: 01520019 */ multu $t2,$s2 -/* f0a7a88: 01856023 */ subu $t4,$t4,$a1 -/* f0a7a8c: 000c6080 */ sll $t4,$t4,0x2 -/* f0a7a90: 01cc1021 */ addu $v0,$t6,$t4 -/* f0a7a94: 8448000a */ lh $t0,0xa($v0) -/* f0a7a98: 0005c880 */ sll $t9,$a1,0x2 -/* f0a7a9c: 0325c823 */ subu $t9,$t9,$a1 -/* f0a7aa0: 0019c880 */ sll $t9,$t9,0x2 -/* f0a7aa4: 24420002 */ addiu $v0,$v0,0x2 -/* f0a7aa8: 00005812 */ mflo $t3 -/* f0a7aac: 010b6823 */ subu $t5,$t0,$t3 -/* f0a7ab0: a44d0008 */ sh $t5,0x8($v0) -/* f0a7ab4: 8c98000c */ lw $t8,0xc($a0) -/* f0a7ab8: 03197821 */ addu $t7,$t8,$t9 -/* f0a7abc: 85e9000a */ lh $t1,0xa($t7) -/* f0a7ac0: 2921a000 */ slti $at,$t1,-24576 -/* f0a7ac4: 50200014 */ beqzl $at,.L0f0a7b18 -/* f0a7ac8: 84980010 */ lh $t8,0x10($a0) -/* f0a7acc: 848e0010 */ lh $t6,0x10($a0) -/* f0a7ad0: 00001825 */ or $v1,$zero,$zero -/* f0a7ad4: 59c00010 */ blezl $t6,.L0f0a7b18 -/* f0a7ad8: 84980010 */ lh $t8,0x10($a0) -/* f0a7adc: 8c8c000c */ lw $t4,0xc($a0) -.L0f0a7ae0: -/* f0a7ae0: 00035080 */ sll $t2,$v1,0x2 -/* f0a7ae4: 01435023 */ subu $t2,$t2,$v1 -/* f0a7ae8: 000a5080 */ sll $t2,$t2,0x2 -/* f0a7aec: 018a1021 */ addu $v0,$t4,$t2 -/* f0a7af0: 8448000a */ lh $t0,0xa($v0) -/* f0a7af4: 24630001 */ addiu $v1,$v1,0x1 -/* f0a7af8: 24420002 */ addiu $v0,$v0,0x2 -/* f0a7afc: 250b2000 */ addiu $t3,$t0,0x2000 -/* f0a7b00: a44b0008 */ sh $t3,0x8($v0) -/* f0a7b04: 848d0010 */ lh $t5,0x10($a0) -/* f0a7b08: 006d082a */ slt $at,$v1,$t5 -/* f0a7b0c: 5420fff4 */ bnezl $at,.L0f0a7ae0 -/* f0a7b10: 8c8c000c */ lw $t4,0xc($a0) -/* f0a7b14: 84980010 */ lh $t8,0x10($a0) -.L0f0a7b18: -/* f0a7b18: 24a50001 */ addiu $a1,$a1,0x1 -/* f0a7b1c: 00b8082a */ slt $at,$a1,$t8 -/* f0a7b20: 5420ffd6 */ bnezl $at,.L0f0a7a7c -/* f0a7b24: 8e2a0034 */ lw $t2,0x34($s1) -.L0f0a7b28: -/* f0a7b28: 27a4010c */ addiu $a0,$sp,0x10c -.L0f0a7b2c: -/* f0a7b2c: 0c0087bd */ jal model_render -/* f0a7b30: 8fa5003c */ lw $a1,0x3c($sp) -/* f0a7b34: 8e791594 */ lw $t9,0x1594($s3) -/* f0a7b38: 3c0f8007 */ lui $t7,%hi(var800702dc) -/* f0a7b3c: 53200013 */ beqzl $t9,.L0f0a7b8c -/* f0a7b40: 8fac0118 */ lw $t4,0x118($sp) -/* f0a7b44: 8def02dc */ lw $t7,%lo(var800702dc)($t7) -/* f0a7b48: 8fa90140 */ lw $t1,0x140($sp) -/* f0a7b4c: 51e0000f */ beqzl $t7,.L0f0a7b8c -/* f0a7b50: 8fac0118 */ lw $t4,0x118($sp) -/* f0a7b54: afa9007c */ sw $t1,0x7c($sp) -/* f0a7b58: 8e0e0390 */ lw $t6,0x390($s0) -/* f0a7b5c: 26050534 */ addiu $a1,$s0,0x534 -/* f0a7b60: 00a02025 */ or $a0,$a1,$zero -/* f0a7b64: ae0e0540 */ sw $t6,0x540($s0) -/* f0a7b68: 0c007308 */ jal model_update_relations -/* f0a7b6c: afa50054 */ sw $a1,0x54($sp) -/* f0a7b70: 8fa50054 */ lw $a1,0x54($sp) -/* f0a7b74: afb50140 */ sw $s5,0x140($sp) -/* f0a7b78: 0c0087bd */ jal model_render -/* f0a7b7c: 27a4010c */ addiu $a0,$sp,0x10c -/* f0a7b80: 8fa4007c */ lw $a0,0x7c($sp) -/* f0a7b84: afa40140 */ sw $a0,0x140($sp) -/* f0a7b88: 8fac0118 */ lw $t4,0x118($sp) -.L0f0a7b8c: -/* f0a7b8c: 8fa400ec */ lw $a0,0xec($sp) -/* f0a7b90: 24050020 */ addiu $a1,$zero,0x20 -/* f0a7b94: 0fc2c5f0 */ jal weapon_has_flag -/* f0a7b98: afac014c */ sw $t4,0x14c($sp) -/* f0a7b9c: 10400007 */ beqz $v0,.L0f0a7bbc -/* f0a7ba0: 8faa014c */ lw $t2,0x14c($sp) -/* f0a7ba4: 25480008 */ addiu $t0,$t2,0x8 -/* f0a7ba8: afa8014c */ sw $t0,0x14c($sp) -/* f0a7bac: 3c0bb600 */ lui $t3,0xb600 -/* f0a7bb0: 240d3000 */ addiu $t5,$zero,0x3000 -/* f0a7bb4: ad4d0004 */ sw $t5,0x4($t2) -/* f0a7bb8: ad4b0000 */ sw $t3,0x0($t2) -.L0f0a7bbc: -/* f0a7bbc: 8e18038c */ lw $t8,0x38c($s0) -/* f0a7bc0: 8e040390 */ lw $a0,0x390($s0) -/* f0a7bc4: 0fc30cfc */ jal mtx_f2l_bulk -/* f0a7bc8: 8705000e */ lh $a1,0xe($t8) -/* f0a7bcc: 0c0059e1 */ jal mtx00016784 -/* f0a7bd0: 00000000 */ nop -/* f0a7bd4: 8fb9014c */ lw $t9,0x14c($sp) -/* f0a7bd8: 3c09bc00 */ lui $t1,0xbc00 -/* f0a7bdc: 3529000e */ ori $t1,$t1,0xe -/* f0a7be0: 272f0008 */ addiu $t7,$t9,0x8 -/* f0a7be4: afaf014c */ sw $t7,0x14c($sp) -/* f0a7be8: af290000 */ sw $t1,0x0($t9) -/* f0a7bec: 0c002adb */ jal vi_get_persp_scale -/* f0a7bf0: afb90074 */ sw $t9,0x74($sp) -/* f0a7bf4: 8fa30074 */ lw $v1,0x74($sp) -/* f0a7bf8: ac620004 */ sw $v0,0x4($v1) -.L0f0a7bfc: -/* f0a7bfc: 26940001 */ addiu $s4,$s4,0x1 -/* f0a7c00: 24010002 */ addiu $at,$zero,0x2 -/* f0a7c04: 1681fe04 */ bne $s4,$at,.L0f0a7418 -/* f0a7c08: 261007a4 */ addiu $s0,$s0,0x7a4 -/* f0a7c0c: afb500e4 */ sw $s5,0xe4($sp) -/* f0a7c10: 0fc2baf8 */ jal casings_render -/* f0a7c14: 27a4014c */ addiu $a0,$sp,0x14c -/* f0a7c18: 0fc5d8a6 */ jal zbuf_swap -/* f0a7c1c: 00000000 */ nop -/* f0a7c20: 0fc5d8ab */ jal zbuf_configure_rdp -/* f0a7c24: 8fa4014c */ lw $a0,0x14c($sp) -/* f0a7c28: afa2014c */ sw $v0,0x14c($sp) -/* f0a7c2c: 0c002c74 */ jal vi0000b1d0 -/* f0a7c30: 00402025 */ or $a0,$v0,$zero -/* f0a7c34: 244e0008 */ addiu $t6,$v0,0x8 -/* f0a7c38: afae014c */ sw $t6,0x14c($sp) -/* f0a7c3c: 0c002f40 */ jal vi_get_view_left -/* f0a7c40: 00408825 */ or $s1,$v0,$zero -/* f0a7c44: 00028400 */ sll $s0,$v0,0x10 -/* f0a7c48: 00106403 */ sra $t4,$s0,0x10 -/* f0a7c4c: 0c002f44 */ jal vi_get_view_top -/* f0a7c50: 01808025 */ or $s0,$t4,$zero -/* f0a7c54: 44824000 */ mtc1 $v0,$f8 -/* f0a7c58: 44902000 */ mtc1 $s0,$f4 -/* f0a7c5c: 3c014080 */ lui $at,0x4080 -/* f0a7c60: 468042a0 */ cvt.s.w $f10,$f8 -/* f0a7c64: 44810000 */ mtc1 $at,$f0 -/* f0a7c68: 3c01ed00 */ lui $at,0xed00 -/* f0a7c6c: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a7c70: 46005402 */ mul.s $f16,$f10,$f0 -/* f0a7c74: 00000000 */ nop -/* f0a7c78: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a7c7c: 4600848d */ trunc.w.s $f18,$f16 -/* f0a7c80: 4600428d */ trunc.w.s $f10,$f8 -/* f0a7c84: 44089000 */ mfc1 $t0,$f18 -/* f0a7c88: 44195000 */ mfc1 $t9,$f10 -/* f0a7c8c: 310b0fff */ andi $t3,$t0,0xfff -/* f0a7c90: 01616825 */ or $t5,$t3,$at -/* f0a7c94: 332f0fff */ andi $t7,$t9,0xfff -/* f0a7c98: 000f4b00 */ sll $t1,$t7,0xc -/* f0a7c9c: 01a97025 */ or $t6,$t5,$t1 -/* f0a7ca0: 0c002f22 */ jal vi_get_view_width -/* f0a7ca4: ae2e0000 */ sw $t6,0x0($s1) -/* f0a7ca8: 00029400 */ sll $s2,$v0,0x10 -/* f0a7cac: 00126403 */ sra $t4,$s2,0x10 -/* f0a7cb0: 0c002f40 */ jal vi_get_view_left -/* f0a7cb4: 01809025 */ or $s2,$t4,$zero -/* f0a7cb8: 0002a400 */ sll $s4,$v0,0x10 -/* f0a7cbc: 00145403 */ sra $t2,$s4,0x10 -/* f0a7cc0: 0c002f44 */ jal vi_get_view_top -/* f0a7cc4: 0140a025 */ or $s4,$t2,$zero -/* f0a7cc8: 00028400 */ sll $s0,$v0,0x10 -/* f0a7ccc: 00104403 */ sra $t0,$s0,0x10 -/* f0a7cd0: 0c002f26 */ jal vi_get_view_height -/* f0a7cd4: 01008025 */ or $s0,$t0,$zero -/* f0a7cd8: 00505821 */ addu $t3,$v0,$s0 -/* f0a7cdc: 448b8000 */ mtc1 $t3,$f16 -/* f0a7ce0: 02926821 */ addu $t5,$s4,$s2 -/* f0a7ce4: 448d5000 */ mtc1 $t5,$f10 -/* f0a7ce8: 468084a0 */ cvt.s.w $f18,$f16 -/* f0a7cec: 3c014080 */ lui $at,0x4080 -/* f0a7cf0: 44812000 */ mtc1 $at,$f4 -/* f0a7cf4: 46805420 */ cvt.s.w $f16,$f10 -/* f0a7cf8: 46049182 */ mul.s $f6,$f18,$f4 -/* f0a7cfc: 44819000 */ mtc1 $at,$f18 -/* f0a7d00: 00000000 */ nop -/* f0a7d04: 46128102 */ mul.s $f4,$f16,$f18 -/* f0a7d08: 4600320d */ trunc.w.s $f8,$f6 -/* f0a7d0c: 4600218d */ trunc.w.s $f6,$f4 -/* f0a7d10: 44194000 */ mfc1 $t9,$f8 -/* f0a7d14: 440e3000 */ mfc1 $t6,$f6 -/* f0a7d18: 332f0fff */ andi $t7,$t9,0xfff -/* f0a7d1c: 31cc0fff */ andi $t4,$t6,0xfff -/* f0a7d20: 000c5300 */ sll $t2,$t4,0xc -/* f0a7d24: 01ea4025 */ or $t0,$t7,$t2 -/* f0a7d28: ae280004 */ sw $t0,0x4($s1) -/* f0a7d2c: 8fb80150 */ lw $t8,0x150($sp) -/* f0a7d30: 8fab014c */ lw $t3,0x14c($sp) -/* f0a7d34: af0b0000 */ sw $t3,0x0($t8) -/* f0a7d38: 8fbf0034 */ lw $ra,0x34($sp) -.L0f0a7d3c: -/* f0a7d3c: 8fb0001c */ lw $s0,0x1c($sp) -/* f0a7d40: 8fb10020 */ lw $s1,0x20($sp) -/* f0a7d44: 8fb20024 */ lw $s2,0x24($sp) -/* f0a7d48: 8fb30028 */ lw $s3,0x28($sp) -/* f0a7d4c: 8fb4002c */ lw $s4,0x2c($sp) -/* f0a7d50: 8fb50030 */ lw $s5,0x30($sp) -/* f0a7d54: 03e00008 */ jr $ra -/* f0a7d58: 27bd0150 */ addiu $sp,$sp,0x150 -); -#else -GLOBAL_ASM( -glabel bgun_render -.late_rodata -glabel var7f1aca8c -.word 0x3faaaaab -glabel var7f1aca90 -.word 0x3f3ebebf -.text -/* f0a4e84: 27bdfeb8 */ addiu $sp,$sp,-328 -/* f0a4e88: afbf0034 */ sw $ra,0x34($sp) -/* f0a4e8c: afb50030 */ sw $s5,0x30($sp) -/* f0a4e90: afb4002c */ sw $s4,0x2c($sp) -/* f0a4e94: afb30028 */ sw $s3,0x28($sp) -/* f0a4e98: afb20024 */ sw $s2,0x24($sp) -/* f0a4e9c: afb10020 */ sw $s1,0x20($sp) -/* f0a4ea0: afb0001c */ sw $s0,0x1c($sp) -/* f0a4ea4: afa40148 */ sw $a0,0x148($sp) -/* f0a4ea8: 8c8f0000 */ lw $t7,0x0($a0) -/* f0a4eac: 3c198007 */ lui $t9,%hi(var8007029c) -/* f0a4eb0: 3c11800a */ lui $s1,%hi(g_Vars) -/* f0a4eb4: 2739295c */ addiu $t9,$t9,%lo(var8007029c) -/* f0a4eb8: 2631e6c0 */ addiu $s1,$s1,%lo(g_Vars) -/* f0a4ebc: 272a003c */ addiu $t2,$t9,0x3c -/* f0a4ec0: 27b80104 */ addiu $t8,$sp,0x104 -/* f0a4ec4: afaf0144 */ sw $t7,0x144($sp) -.NB0f0a4ec8: -/* f0a4ec8: 8f210000 */ lw $at,0x0($t9) -/* f0a4ecc: 2739000c */ addiu $t9,$t9,0xc -/* f0a4ed0: 2718000c */ addiu $t8,$t8,0xc -/* f0a4ed4: af01fff4 */ sw $at,-0xc($t8) -/* f0a4ed8: 8f21fff8 */ lw $at,-0x8($t9) -/* f0a4edc: af01fff8 */ sw $at,-0x8($t8) -/* f0a4ee0: 8f21fffc */ lw $at,-0x4($t9) -/* f0a4ee4: 172afff8 */ bne $t9,$t2,.NB0f0a4ec8 -/* f0a4ee8: af01fffc */ sw $at,-0x4($t8) -/* f0a4eec: 8f210000 */ lw $at,0x0($t9) -/* f0a4ef0: af010000 */ sw $at,0x0($t8) -/* f0a4ef4: 8e330284 */ lw $s3,0x284($s1) -/* f0a4ef8: 24010001 */ addiu $at,$zero,0x1 -/* f0a4efc: 966b0010 */ lhu $t3,0x10($s3) -/* f0a4f00: 1561000d */ bne $t3,$at,.NB0f0a4f38 -/* f0a4f04: 00001025 */ or $v0,$zero,$zero -/* f0a4f08: 24040f48 */ addiu $a0,$zero,0xf48 -/* f0a4f0c: 8e2c0284 */ lw $t4,0x284($s1) -.NB0f0a4f10: -/* f0a4f10: 01821821 */ addu $v1,$t4,$v0 -/* f0a4f14: 8c6d0854 */ lw $t5,0x854($v1) -/* f0a4f18: 244207a4 */ addiu $v0,$v0,0x7a4 -/* f0a4f1c: 11a00002 */ beqz $t5,.NB0f0a4f28 -/* f0a4f20: 00000000 */ sll $zero,$zero,0x0 -/* f0a4f24: ac600850 */ sw $zero,0x850($v1) -.NB0f0a4f28: -/* f0a4f28: 5444fff9 */ bnel $v0,$a0,.NB0f0a4f10 -/* f0a4f2c: 8e2c0284 */ lw $t4,0x284($s1) -/* f0a4f30: 100002cd */ beqz $zero,.NB0f0a5a68 -/* f0a4f34: 8fbf0034 */ lw $ra,0x34($sp) -.NB0f0a4f38: -/* f0a4f38: 0fc5c4d5 */ jal zbuf_draw_artifacts_offscreen -/* f0a4f3c: 8fa40144 */ lw $a0,0x144($sp) -/* f0a4f40: afa20144 */ sw $v0,0x144($sp) -/* f0a4f44: 0c002d00 */ jal vi_prepare_zbuf -/* f0a4f48: 00402025 */ or $a0,$v0,$zero -/* f0a4f4c: afa20144 */ sw $v0,0x144($sp) -/* f0a4f50: 0c002cd4 */ jal vi0000b1d0 -/* f0a4f54: 00402025 */ or $a0,$v0,$zero -/* f0a4f58: 244e0008 */ addiu $t6,$v0,0x8 -/* f0a4f5c: afae0144 */ sw $t6,0x144($sp) -/* f0a4f60: 0c002fb5 */ jal vi_get_view_left -/* f0a4f64: 0040a825 */ or $s5,$v0,$zero -/* f0a4f68: 00028400 */ sll $s0,$v0,0x10 -/* f0a4f6c: 00107c03 */ sra $t7,$s0,0x10 -/* f0a4f70: 0c002fb9 */ jal vi_get_view_top -/* f0a4f74: 01e08025 */ or $s0,$t7,$zero -/* f0a4f78: 44822000 */ mtc1 $v0,$f4 -/* f0a4f7c: 44908000 */ mtc1 $s0,$f16 -/* f0a4f80: 3c014080 */ lui $at,0x4080 -/* f0a4f84: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a4f88: 44810000 */ mtc1 $at,$f0 -/* f0a4f8c: 3c01ed00 */ lui $at,0xed00 -/* f0a4f90: 468084a0 */ cvt.s.w $f18,$f16 -/* f0a4f94: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a4f98: 00000000 */ sll $zero,$zero,0x0 -/* f0a4f9c: 46009102 */ mul.s $f4,$f18,$f0 -/* f0a4fa0: 4600428d */ trunc.w.s $f10,$f8 -/* f0a4fa4: 4600218d */ trunc.w.s $f6,$f4 -/* f0a4fa8: 44085000 */ mfc1 $t0,$f10 -/* f0a4fac: 440b3000 */ mfc1 $t3,$f6 -/* f0a4fb0: 310a0fff */ andi $t2,$t0,0xfff -/* f0a4fb4: 0141c825 */ or $t9,$t2,$at -/* f0a4fb8: 316c0fff */ andi $t4,$t3,0xfff -/* f0a4fbc: 000c6b00 */ sll $t5,$t4,0xc -/* f0a4fc0: 032d7025 */ or $t6,$t9,$t5 -/* f0a4fc4: 0c002f97 */ jal vi_get_view_width -/* f0a4fc8: aeae0000 */ sw $t6,0x0($s5) -/* f0a4fcc: 00029400 */ sll $s2,$v0,0x10 -/* f0a4fd0: 00127c03 */ sra $t7,$s2,0x10 -/* f0a4fd4: 0c002fb5 */ jal vi_get_view_left -/* f0a4fd8: 01e09025 */ or $s2,$t7,$zero -/* f0a4fdc: 0002a400 */ sll $s4,$v0,0x10 -/* f0a4fe0: 00144c03 */ sra $t1,$s4,0x10 -/* f0a4fe4: 0c002fb9 */ jal vi_get_view_top -/* f0a4fe8: 0120a025 */ or $s4,$t1,$zero -/* f0a4fec: 00028400 */ sll $s0,$v0,0x10 -/* f0a4ff0: 00104403 */ sra $t0,$s0,0x10 -/* f0a4ff4: 0c002f9b */ jal vi_get_view_height -/* f0a4ff8: 01008025 */ or $s0,$t0,$zero -/* f0a4ffc: 00505021 */ addu $t2,$v0,$s0 -/* f0a5000: 448a4000 */ mtc1 $t2,$f8 -/* f0a5004: 0292c821 */ addu $t9,$s4,$s2 -/* f0a5008: 44992000 */ mtc1 $t9,$f4 -/* f0a500c: 468042a0 */ cvt.s.w $f10,$f8 -/* f0a5010: 3c014080 */ lui $at,0x4080 -/* f0a5014: 44810000 */ mtc1 $at,$f0 -/* f0a5018: 3c053fc0 */ lui $a1,0x3fc0 -/* f0a501c: 3c06447a */ lui $a2,0x447a -/* f0a5020: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a5024: 46005402 */ mul.s $f16,$f10,$f0 -/* f0a5028: 00000000 */ sll $zero,$zero,0x0 -/* f0a502c: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a5030: 4600848d */ trunc.w.s $f18,$f16 -/* f0a5034: 4600428d */ trunc.w.s $f10,$f8 -/* f0a5038: 440b9000 */ mfc1 $t3,$f18 -/* f0a503c: 440e5000 */ mfc1 $t6,$f10 -/* f0a5040: 316c0fff */ andi $t4,$t3,0xfff -/* f0a5044: 31cf0fff */ andi $t7,$t6,0xfff -/* f0a5048: 000f4b00 */ sll $t1,$t7,0xc -/* f0a504c: 01894025 */ or $t0,$t4,$t1 -/* f0a5050: aea80004 */ sw $t0,0x4($s5) -/* f0a5054: 0c002b89 */ jal vi0000aca4 -/* f0a5058: 8fa40144 */ lw $a0,0x144($sp) -/* f0a505c: 8e2a0284 */ lw $t2,0x284($s1) -/* f0a5060: afa20144 */ sw $v0,0x144($sp) -/* f0a5064: 91581bfc */ lbu $t8,0x1bfc($t2) -/* f0a5068: 53000016 */ beqzl $t8,.NB0f0a50c4 -/* f0a506c: 8e2b006c */ lw $t3,0x6c($s1) -/* f0a5070: 0fc53582 */ jal options_get_screen_ratio -/* f0a5074: 00000000 */ sll $zero,$zero,0x0 -/* f0a5078: 24010001 */ addiu $at,$zero,0x1 -/* f0a507c: 14410008 */ bne $v0,$at,.NB0f0a50a0 -/* f0a5080: 00000000 */ sll $zero,$zero,0x0 -/* f0a5084: 0fc2ebf0 */ jal player_get_aspect_ratio -/* f0a5088: 00000000 */ sll $zero,$zero,0x0 -/* f0a508c: 3c017f1a */ lui $at,%hi(var7f1aca8c) -/* f0a5090: c4306dd4 */ lwc1 $f16,%lo(var7f1aca8c)($at) -/* f0a5094: 46100082 */ mul.s $f2,$f0,$f16 -/* f0a5098: 10000005 */ beqz $zero,.NB0f0a50b0 -/* f0a509c: 44061000 */ mfc1 $a2,$f2 -.NB0f0a50a0: -/* f0a50a0: 0fc2ebf0 */ jal player_get_aspect_ratio -/* f0a50a4: 00000000 */ sll $zero,$zero,0x0 -/* f0a50a8: 46000086 */ mov.s $f2,$f0 -/* f0a50ac: 44061000 */ mfc1 $a2,$f2 -.NB0f0a50b0: -/* f0a50b0: 8fa40144 */ lw $a0,0x144($sp) -/* f0a50b4: 0c002c9a */ jal vi0000b0e8 -/* f0a50b8: 3c054270 */ lui $a1,0x4270 -/* f0a50bc: afa20144 */ sw $v0,0x144($sp) -/* f0a50c0: 8e2b006c */ lw $t3,0x6c($s1) -.NB0f0a50c4: -/* f0a50c4: 24010001 */ addiu $at,$zero,0x1 -/* f0a50c8: 51600004 */ beqzl $t3,.NB0f0a50dc -/* f0a50cc: 00002825 */ or $a1,$zero,$zero -/* f0a50d0: 10000002 */ beqz $zero,.NB0f0a50dc -/* f0a50d4: 24050001 */ addiu $a1,$zero,0x1 -/* f0a50d8: 00002825 */ or $a1,$zero,$zero -.NB0f0a50dc: -/* f0a50dc: 8e390068 */ lw $t9,0x68($s1) -/* f0a50e0: 53200004 */ beqzl $t9,.NB0f0a50f4 -/* f0a50e4: 00002025 */ or $a0,$zero,$zero -/* f0a50e8: 10000002 */ beqz $zero,.NB0f0a50f4 -/* f0a50ec: 24040001 */ addiu $a0,$zero,0x1 -/* f0a50f0: 00002025 */ or $a0,$zero,$zero -.NB0f0a50f4: -/* f0a50f4: 8e2d0064 */ lw $t5,0x64($s1) -/* f0a50f8: 51a00004 */ beqzl $t5,.NB0f0a510c -/* f0a50fc: 00001025 */ or $v0,$zero,$zero -/* f0a5100: 10000002 */ beqz $zero,.NB0f0a510c -/* f0a5104: 24020001 */ addiu $v0,$zero,0x1 -/* f0a5108: 00001025 */ or $v0,$zero,$zero -.NB0f0a510c: -/* f0a510c: 8e2e0070 */ lw $t6,0x70($s1) -/* f0a5110: 51c00004 */ beqzl $t6,.NB0f0a5124 -/* f0a5114: 00001825 */ or $v1,$zero,$zero -/* f0a5118: 10000002 */ beqz $zero,.NB0f0a5124 -/* f0a511c: 24030001 */ addiu $v1,$zero,0x1 -/* f0a5120: 00001825 */ or $v1,$zero,$zero -.NB0f0a5124: -/* f0a5124: 00627821 */ addu $t7,$v1,$v0 -/* f0a5128: 01e46021 */ addu $t4,$t7,$a0 -/* f0a512c: 01854821 */ addu $t1,$t4,$a1 -/* f0a5130: 15210008 */ bne $t1,$at,.NB0f0a5154 -/* f0a5134: 3c088009 */ lui $t0,%hi(g_Is4Mb) -/* f0a5138: 910830e0 */ lbu $t0,%lo(g_Is4Mb)($t0) -/* f0a513c: 24010001 */ addiu $at,$zero,0x1 -/* f0a5140: 51010005 */ beql $t0,$at,.NB0f0a5158 -/* f0a5144: 0000a025 */ or $s4,$zero,$zero -/* f0a5148: 0fc2b5eb */ jal lasersight_render_beam -/* f0a514c: 8fa40144 */ lw $a0,0x144($sp) -/* f0a5150: afa20144 */ sw $v0,0x144($sp) -.NB0f0a5154: -/* f0a5154: 0000a025 */ or $s4,$zero,$zero -.NB0f0a5158: -/* f0a5158: 26700638 */ addiu $s0,$s3,0x638 -/* f0a515c: 8fb500dc */ lw $s5,0xdc($sp) -/* f0a5160: 24120019 */ addiu $s2,$zero,0x19 -.NB0f0a5164: -/* f0a5164: 0fc27de9 */ jal bgun_get_weapon_num2 -/* f0a5168: 02802025 */ or $a0,$s4,$zero -/* f0a516c: afa200e4 */ sw $v0,0xe4($sp) -/* f0a5170: 820a0007 */ lb $t2,0x7($s0) -/* f0a5174: 8fa40144 */ lw $a0,0x144($sp) -/* f0a5178: 260501dc */ addiu $a1,$s0,0x1dc -/* f0a517c: 114001ea */ beqz $t2,.NB0f0a5928 -/* f0a5180: 00003025 */ or $a2,$zero,$zero -/* f0a5184: 26180384 */ addiu $t8,$s0,0x384 -/* f0a5188: afb80038 */ sw $t8,0x38($sp) -/* f0a518c: 0fc2aa3c */ jal beam_render -/* f0a5190: 00003825 */ or $a3,$zero,$zero -/* f0a5194: afa20144 */ sw $v0,0x144($sp) -/* f0a5198: 92040000 */ lbu $a0,0x0($s0) -/* f0a519c: 0fc2bd48 */ jal weapon_has_flag -/* f0a51a0: 34058000 */ dli $a1,0x8000 -/* f0a51a4: 10400030 */ beqz $v0,.NB0f0a5268 -/* f0a51a8: 8fab0144 */ lw $t3,0x144($sp) -/* f0a51ac: 25790008 */ addiu $t9,$t3,0x8 -/* f0a51b0: afb90144 */ sw $t9,0x144($sp) -/* f0a51b4: 3c0dbc00 */ lui $t5,0xbc00 -/* f0a51b8: 3c0e8000 */ lui $t6,0x8000 -/* f0a51bc: 35ce0040 */ ori $t6,$t6,0x40 -/* f0a51c0: 35ad0002 */ ori $t5,$t5,0x2 -/* f0a51c4: ad6d0000 */ sw $t5,0x0($t3) -/* f0a51c8: ad6e0004 */ sw $t6,0x4($t3) -/* f0a51cc: 8faf0144 */ lw $t7,0x144($sp) -/* f0a51d0: 3c090386 */ lui $t1,0x386 -/* f0a51d4: 3c088007 */ lui $t0,%hi(var80070090+0x8) -/* f0a51d8: 25ec0008 */ addiu $t4,$t7,0x8 -/* f0a51dc: afac0144 */ sw $t4,0x144($sp) -/* f0a51e0: 25082758 */ addiu $t0,$t0,%lo(var80070090+0x8) -/* f0a51e4: 35290010 */ ori $t1,$t1,0x10 -/* f0a51e8: ade90000 */ sw $t1,0x0($t7) -/* f0a51ec: ade80004 */ sw $t0,0x4($t7) -/* f0a51f0: 8faa0144 */ lw $t2,0x144($sp) -/* f0a51f4: 3c0b0388 */ lui $t3,0x388 -/* f0a51f8: 3c198007 */ lui $t9,%hi(var80070090) -/* f0a51fc: 25580008 */ addiu $t8,$t2,0x8 -/* f0a5200: afb80144 */ sw $t8,0x144($sp) -/* f0a5204: 27392750 */ addiu $t9,$t9,%lo(var80070090) -/* f0a5208: 356b0010 */ ori $t3,$t3,0x10 -/* f0a520c: ad4b0000 */ sw $t3,0x0($t2) -/* f0a5210: ad590004 */ sw $t9,0x4($t2) -/* f0a5214: 8fad0144 */ lw $t5,0x144($sp) -/* f0a5218: 3c0f0384 */ lui $t7,0x384 -/* f0a521c: 35ef0010 */ ori $t7,$t7,0x10 -/* f0a5220: 25ae0008 */ addiu $t6,$t5,0x8 -/* f0a5224: afae0144 */ sw $t6,0x144($sp) -/* f0a5228: adaf0000 */ sw $t7,0x0($t5) -/* f0a522c: 0fc2cd42 */ jal cam_get_look_at -/* f0a5230: afad00cc */ sw $t5,0xcc($sp) -/* f0a5234: 8fa500cc */ lw $a1,0xcc($sp) -/* f0a5238: 3c080382 */ lui $t0,0x382 -/* f0a523c: 35080010 */ ori $t0,$t0,0x10 -/* f0a5240: aca20004 */ sw $v0,0x4($a1) -/* f0a5244: 8fac0144 */ lw $t4,0x144($sp) -/* f0a5248: 25890008 */ addiu $t1,$t4,0x8 -/* f0a524c: afa90144 */ sw $t1,0x144($sp) -/* f0a5250: ad880000 */ sw $t0,0x0($t4) -/* f0a5254: 0fc2cd42 */ jal cam_get_look_at -/* f0a5258: afac00c8 */ sw $t4,0xc8($sp) -/* f0a525c: 8fa300c8 */ lw $v1,0xc8($sp) -/* f0a5260: 244a0010 */ addiu $t2,$v0,0x10 -/* f0a5264: ac6a0004 */ sw $t2,0x4($v1) -.NB0f0a5268: -/* f0a5268: 8fb80144 */ lw $t8,0x144($sp) -/* f0a526c: 3c19bc00 */ lui $t9,0xbc00 -/* f0a5270: 3739000e */ ori $t9,$t9,0xe -/* f0a5274: 270b0008 */ addiu $t3,$t8,0x8 -/* f0a5278: afab0144 */ sw $t3,0x144($sp) -/* f0a527c: 3c014396 */ lui $at,0x4396 -/* f0a5280: 44817000 */ mtc1 $at,$f14 -/* f0a5284: 44806000 */ mtc1 $zero,$f12 -/* f0a5288: af190000 */ sw $t9,0x0($t8) -/* f0a528c: 0c005f57 */ jal mtx00016dcc -/* f0a5290: afb800c4 */ sw $t8,0xc4($sp) -/* f0a5294: 8fa300c4 */ lw $v1,0xc4($sp) -/* f0a5298: 24050010 */ addiu $a1,$zero,0x10 -/* f0a529c: ac620004 */ sw $v0,0x4($v1) -/* f0a52a0: 0c006ea3 */ jal model_get_part -/* f0a52a4: 8e04038c */ lw $a0,0x38c($s0) -/* f0a52a8: 10400014 */ beqz $v0,.NB0f0a52fc -/* f0a52ac: afa200e0 */ sw $v0,0xe0($sp) -/* f0a52b0: 8e04038c */ lw $a0,0x38c($s0) -/* f0a52b4: 0c006ea3 */ jal model_get_part -/* f0a52b8: 24050011 */ addiu $a1,$zero,0x11 -/* f0a52bc: 8fa40038 */ lw $a0,0x38($sp) -/* f0a52c0: 0c006bab */ jal model_get_node_rw_data -/* f0a52c4: 00402825 */ or $a1,$v0,$zero -/* f0a52c8: 10400003 */ beqz $v0,.NB0f0a52d8 -/* f0a52cc: 3c06800a */ lui $a2,%hi(var8009cf88) -/* f0a52d0: 240d0001 */ addiu $t5,$zero,0x1 -/* f0a52d4: ac4d0000 */ sw $t5,0x0($v0) -.NB0f0a52d8: -/* f0a52d8: 240e0001 */ addiu $t6,$zero,0x1 -/* f0a52dc: afae0014 */ sw $t6,0x14($sp) -/* f0a52e0: 8fa40038 */ lw $a0,0x38($sp) -/* f0a52e4: 8fa500e0 */ lw $a1,0xe0($sp) -/* f0a52e8: 24c616b8 */ addiu $a2,$a2,%lo(var8009cf88) -/* f0a52ec: 8fa70144 */ lw $a3,0x144($sp) -/* f0a52f0: 0fc1f99c */ jal tvscreen_render -/* f0a52f4: afa00010 */ sw $zero,0x10($sp) -/* f0a52f8: afa20144 */ sw $v0,0x144($sp) -.NB0f0a52fc: -/* f0a52fc: 8faf0144 */ lw $t7,0x144($sp) -/* f0a5300: 8e250284 */ lw $a1,0x284($s1) -/* f0a5304: 240c0004 */ addiu $t4,$zero,0x4 -/* f0a5308: afac0134 */ sw $t4,0x134($sp) -/* f0a530c: afaf0110 */ sw $t7,0x110($sp) -/* f0a5310: 8ca300d8 */ lw $v1,0xd8($a1) -/* f0a5314: 3c078007 */ lui $a3,%hi(g_InCutscene) -/* f0a5318: 14600013 */ bnez $v1,.NB0f0a5368 -/* f0a531c: 00000000 */ sll $zero,$zero,0x0 -/* f0a5320: 8ce72e24 */ lw $a3,%lo(g_InCutscene)($a3) -/* f0a5324: 14e00010 */ bnez $a3,.NB0f0a5368 -/* f0a5328: 00000000 */ sll $zero,$zero,0x0 -/* f0a532c: 8ca20480 */ lw $v0,0x480($a1) -/* f0a5330: 50400007 */ beqzl $v0,.NB0f0a5350 -/* f0a5334: 8caa1c54 */ lw $t2,0x1c54($a1) -/* f0a5338: 1040000b */ beqz $v0,.NB0f0a5368 -/* f0a533c: 00000000 */ sll $zero,$zero,0x0 -/* f0a5340: 80490037 */ lb $t1,0x37($v0) -/* f0a5344: 15200008 */ bnez $t1,.NB0f0a5368 -/* f0a5348: 00000000 */ sll $zero,$zero,0x0 -/* f0a534c: 8caa1c54 */ lw $t2,0x1c54($a1) -.NB0f0a5350: -/* f0a5350: 8ca800c4 */ lw $t0,0xc4($a1) -/* f0a5354: 0140c027 */ nor $t8,$t2,$zero -/* f0a5358: 01185824 */ and $t3,$t0,$t8 -/* f0a535c: 31790001 */ andi $t9,$t3,0x1 -/* f0a5360: 57200016 */ bnezl $t9,.NB0f0a53bc -/* f0a5364: 92681615 */ lbu $t0,0x1615($s3) -.NB0f0a5368: -/* f0a5368: 14600078 */ bnez $v1,.NB0f0a554c -/* f0a536c: 3c078007 */ lui $a3,%hi(g_InCutscene) -/* f0a5370: 8ce72e24 */ lw $a3,%lo(g_InCutscene)($a3) -/* f0a5374: 54e00076 */ bnezl $a3,.NB0f0a5550 -/* f0a5378: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a537c: 8ca20480 */ lw $v0,0x480($a1) -/* f0a5380: 50400007 */ beqzl $v0,.NB0f0a53a0 -/* f0a5384: 8caf1c54 */ lw $t7,0x1c54($a1) -/* f0a5388: 50400071 */ beqzl $v0,.NB0f0a5550 -/* f0a538c: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a5390: 804d0037 */ lb $t5,0x37($v0) -/* f0a5394: 55a0006e */ bnezl $t5,.NB0f0a5550 -/* f0a5398: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a539c: 8caf1c54 */ lw $t7,0x1c54($a1) -.NB0f0a53a0: -/* f0a53a0: 8cae00c4 */ lw $t6,0xc4($a1) -/* f0a53a4: 01e06027 */ nor $t4,$t7,$zero -/* f0a53a8: 01cc4824 */ and $t1,$t6,$t4 -/* f0a53ac: 312a0008 */ andi $t2,$t1,0x8 -/* f0a53b0: 51400067 */ beqzl $t2,.NB0f0a5550 -/* f0a53b4: 926d1614 */ lbu $t5,0x1614($s3) -/* f0a53b8: 92681615 */ lbu $t0,0x1615($s3) -.NB0f0a53bc: -/* f0a53bc: 92781614 */ lbu $t8,0x1614($s3) -/* f0a53c0: 26641614 */ addiu $a0,$s3,0x1614 -/* f0a53c4: 0118082a */ slt $at,$t0,$t8 -/* f0a53c8: 50200009 */ beqzl $at,.NB0f0a53f0 -/* f0a53cc: 90820002 */ lbu $v0,0x2($a0) -/* f0a53d0: 90830000 */ lbu $v1,0x0($a0) -/* f0a53d4: 908b0002 */ lbu $t3,0x2($a0) -/* f0a53d8: 0163082a */ slt $at,$t3,$v1 -/* f0a53dc: 50200004 */ beqzl $at,.NB0f0a53f0 -/* f0a53e0: 90820002 */ lbu $v0,0x2($a0) -/* f0a53e4: 1000000a */ beqz $zero,.NB0f0a5410 -/* f0a53e8: 00601025 */ or $v0,$v1,$zero -/* f0a53ec: 90820002 */ lbu $v0,0x2($a0) -.NB0f0a53f0: -/* f0a53f0: 90860001 */ lbu $a2,0x1($a0) -/* f0a53f4: 00401825 */ or $v1,$v0,$zero -/* f0a53f8: 0046082a */ slt $at,$v0,$a2 -/* f0a53fc: 10200003 */ beqz $at,.NB0f0a540c -/* f0a5400: 00000000 */ sll $zero,$zero,0x0 -/* f0a5404: 10000001 */ beqz $zero,.NB0f0a540c -/* f0a5408: 00c01825 */ or $v1,$a2,$zero -.NB0f0a540c: -/* f0a540c: 00601025 */ or $v0,$v1,$zero -.NB0f0a5410: -/* f0a5410: 90890003 */ lbu $t1,0x3($a0) -/* f0a5414: 0002ce00 */ sll $t9,$v0,0x18 -/* f0a5418: 00026c00 */ sll $t5,$v0,0x10 -/* f0a541c: 032d7825 */ or $t7,$t9,$t5 -/* f0a5420: 00027200 */ sll $t6,$v0,0x8 -/* f0a5424: 01ee6025 */ or $t4,$t7,$t6 -/* f0a5428: 012c5021 */ addu $t2,$t1,$t4 -/* f0a542c: afaa0138 */ sw $t2,0x138($sp) -/* f0a5430: 8ca300d8 */ lw $v1,0xd8($a1) -/* f0a5434: 14600021 */ bnez $v1,.NB0f0a54bc -/* f0a5438: 00000000 */ sll $zero,$zero,0x0 -/* f0a543c: 14e0001f */ bnez $a3,.NB0f0a54bc -/* f0a5440: 00000000 */ sll $zero,$zero,0x0 -/* f0a5444: 8ca20480 */ lw $v0,0x480($a1) -/* f0a5448: 50400007 */ beqzl $v0,.NB0f0a5468 -/* f0a544c: 8cab1c54 */ lw $t3,0x1c54($a1) -/* f0a5450: 1040001a */ beqz $v0,.NB0f0a54bc -/* f0a5454: 00000000 */ sll $zero,$zero,0x0 -/* f0a5458: 80480037 */ lb $t0,0x37($v0) -/* f0a545c: 15000017 */ bnez $t0,.NB0f0a54bc -/* f0a5460: 00000000 */ sll $zero,$zero,0x0 -/* f0a5464: 8cab1c54 */ lw $t3,0x1c54($a1) -.NB0f0a5468: -/* f0a5468: 8cb800c4 */ lw $t8,0xc4($a1) -/* f0a546c: 3c02800a */ lui $v0,%hi(var8009caef) -/* f0a5470: 0160c827 */ nor $t9,$t3,$zero -/* f0a5474: 03196824 */ and $t5,$t8,$t9 -/* f0a5478: 31af0001 */ andi $t7,$t5,0x1 -/* f0a547c: 11e0000f */ beqz $t7,.NB0f0a54bc -/* f0a5480: 00000000 */ sll $zero,$zero,0x0 -/* f0a5484: 9042122f */ lbu $v0,%lo(var8009caef)($v0) -/* f0a5488: 3c06800a */ lui $a2,%hi(var8009caf0) -/* f0a548c: 90c61230 */ lbu $a2,%lo(var8009caf0)($a2) -/* f0a5490: 00027600 */ sll $t6,$v0,0x18 -/* f0a5494: 00024c00 */ sll $t1,$v0,0x10 -/* f0a5498: 01c96025 */ or $t4,$t6,$t1 -/* f0a549c: 00025200 */ sll $t2,$v0,0x8 -/* f0a54a0: 018a4025 */ or $t0,$t4,$t2 -/* f0a54a4: afa200a8 */ sw $v0,0xa8($sp) -/* f0a54a8: afa200ac */ sw $v0,0xac($sp) -/* f0a54ac: afa200b0 */ sw $v0,0xb0($sp) -/* f0a54b0: 00c8a821 */ addu $s5,$a2,$t0 -/* f0a54b4: 1000001f */ beqz $zero,.NB0f0a5534 -/* f0a54b8: afa600b4 */ sw $a2,0xb4($sp) -.NB0f0a54bc: -/* f0a54bc: 5460001e */ bnezl $v1,.NB0f0a5538 -/* f0a54c0: 8fb900e4 */ lw $t9,0xe4($sp) -/* f0a54c4: 54e0001c */ bnezl $a3,.NB0f0a5538 -/* f0a54c8: 8fb900e4 */ lw $t9,0xe4($sp) -/* f0a54cc: 8ca20480 */ lw $v0,0x480($a1) -/* f0a54d0: 50400007 */ beqzl $v0,.NB0f0a54f0 -/* f0a54d4: 8cb91c54 */ lw $t9,0x1c54($a1) -/* f0a54d8: 50400017 */ beqzl $v0,.NB0f0a5538 -/* f0a54dc: 8fb900e4 */ lw $t9,0xe4($sp) -/* f0a54e0: 804b0037 */ lb $t3,0x37($v0) -/* f0a54e4: 55600014 */ bnezl $t3,.NB0f0a5538 -/* f0a54e8: 8fb900e4 */ lw $t9,0xe4($sp) -/* f0a54ec: 8cb91c54 */ lw $t9,0x1c54($a1) -.NB0f0a54f0: -/* f0a54f0: 8cb800c4 */ lw $t8,0xc4($a1) -/* f0a54f4: 240200ff */ addiu $v0,$zero,0xff -/* f0a54f8: 03206827 */ nor $t5,$t9,$zero -/* f0a54fc: 030d7824 */ and $t7,$t8,$t5 -/* f0a5500: 31ee0008 */ andi $t6,$t7,0x8 -/* f0a5504: 11c0000b */ beqz $t6,.NB0f0a5534 -/* f0a5508: 24050080 */ addiu $a1,$zero,0x80 -/* f0a550c: 00024e00 */ sll $t1,$v0,0x18 -/* f0a5510: 00006400 */ sll $t4,$zero,0x10 -/* f0a5514: 012c5025 */ or $t2,$t1,$t4 -/* f0a5518: 00004200 */ sll $t0,$zero,0x8 -/* f0a551c: 01485825 */ or $t3,$t2,$t0 -/* f0a5520: 00aba821 */ addu $s5,$a1,$t3 -/* f0a5524: afa20098 */ sw $v0,0x98($sp) -/* f0a5528: afa0009c */ sw $zero,0x9c($sp) -/* f0a552c: afa000a0 */ sw $zero,0xa0($sp) -/* f0a5530: afa500a4 */ sw $a1,0xa4($sp) -.NB0f0a5534: -/* f0a5534: 8fb900e4 */ lw $t9,0xe4($sp) -.NB0f0a5538: -/* f0a5538: 24010001 */ addiu $at,$zero,0x1 -/* f0a553c: 5721003d */ bnel $t9,$at,.NB0f0a5634 -/* f0a5540: 8e6f00bc */ lw $t7,0xbc($s3) -/* f0a5544: 1000003a */ beqz $zero,.NB0f0a5630 -/* f0a5548: afb50138 */ sw $s5,0x138($sp) -.NB0f0a554c: -/* f0a554c: 926d1614 */ lbu $t5,0x1614($s3) -.NB0f0a5550: -/* f0a5550: 92781617 */ lbu $t8,0x1617($s3) -/* f0a5554: 92691615 */ lbu $t1,0x1615($s3) -/* f0a5558: 92681616 */ lbu $t0,0x1616($s3) -/* f0a555c: 000d7e00 */ sll $t7,$t5,0x18 -/* f0a5560: 030f7025 */ or $t6,$t8,$t7 -/* f0a5564: 00096400 */ sll $t4,$t1,0x10 -/* f0a5568: 01cc5025 */ or $t2,$t6,$t4 -/* f0a556c: 00085a00 */ sll $t3,$t0,0x8 -/* f0a5570: 014bc825 */ or $t9,$t2,$t3 -/* f0a5574: afb90138 */ sw $t9,0x138($sp) -/* f0a5578: 920d0000 */ lbu $t5,0x0($s0) -/* f0a557c: 24010006 */ addiu $at,$zero,0x6 -/* f0a5580: 0320a825 */ or $s5,$t9,$zero -/* f0a5584: 15a1002a */ bne $t5,$at,.NB0f0a5630 -/* f0a5588: 3c04ff00 */ lui $a0,0xff00 -/* f0a558c: 3c014248 */ lui $at,0x4248 -/* f0a5590: 44812000 */ mtc1 $at,$f4 -/* f0a5594: c612023c */ lwc1 $f18,0x23c($s0) -/* f0a5598: 24060001 */ addiu $a2,$zero,0x1 -/* f0a559c: 3c014f00 */ lui $at,0x4f00 -/* f0a55a0: 46049182 */ mul.s $f6,$f18,$f4 -/* f0a55a4: 3484007f */ ori $a0,$a0,0x7f -/* f0a55a8: 4458f800 */ cfc1 $t8,$31 -/* f0a55ac: 44c6f800 */ ctc1 $a2,$31 -/* f0a55b0: 00000000 */ sll $zero,$zero,0x0 -/* f0a55b4: 46003224 */ cvt.w.s $f8,$f6 -/* f0a55b8: 4446f800 */ cfc1 $a2,$31 -/* f0a55bc: 00000000 */ sll $zero,$zero,0x0 -/* f0a55c0: 30c60078 */ andi $a2,$a2,0x78 -/* f0a55c4: 50c00013 */ beqzl $a2,.NB0f0a5614 -/* f0a55c8: 44064000 */ mfc1 $a2,$f8 -/* f0a55cc: 44814000 */ mtc1 $at,$f8 -/* f0a55d0: 24060001 */ addiu $a2,$zero,0x1 -/* f0a55d4: 46083201 */ sub.s $f8,$f6,$f8 -/* f0a55d8: 44c6f800 */ ctc1 $a2,$31 -/* f0a55dc: 00000000 */ sll $zero,$zero,0x0 -/* f0a55e0: 46004224 */ cvt.w.s $f8,$f8 -/* f0a55e4: 4446f800 */ cfc1 $a2,$31 -/* f0a55e8: 00000000 */ sll $zero,$zero,0x0 -/* f0a55ec: 30c60078 */ andi $a2,$a2,0x78 -/* f0a55f0: 14c00005 */ bnez $a2,.NB0f0a5608 -/* f0a55f4: 00000000 */ sll $zero,$zero,0x0 -/* f0a55f8: 44064000 */ mfc1 $a2,$f8 -/* f0a55fc: 3c018000 */ lui $at,0x8000 -/* f0a5600: 10000007 */ beqz $zero,.NB0f0a5620 -/* f0a5604: 00c13025 */ or $a2,$a2,$at -.NB0f0a5608: -/* f0a5608: 10000005 */ beqz $zero,.NB0f0a5620 -/* f0a560c: 2406ffff */ addiu $a2,$zero,-1 -/* f0a5610: 44064000 */ mfc1 $a2,$f8 -.NB0f0a5614: -/* f0a5614: 00000000 */ sll $zero,$zero,0x0 -/* f0a5618: 04c0fffb */ bltz $a2,.NB0f0a5608 -/* f0a561c: 00000000 */ sll $zero,$zero,0x0 -.NB0f0a5620: -/* f0a5620: 44d8f800 */ ctc1 $t8,$31 -/* f0a5624: 0fc01990 */ jal colour_blend -/* f0a5628: 03202825 */ or $a1,$t9,$zero -/* f0a562c: afa20138 */ sw $v0,0x138($sp) -.NB0f0a5630: -/* f0a5630: 8e6f00bc */ lw $t7,0xbc($s3) -.NB0f0a5634: -/* f0a5634: 0fc089b4 */ jal chr_get_cloak_alpha -/* f0a5638: 8de40004 */ lw $a0,0x4($t7) -/* f0a563c: 284100ff */ slti $at,$v0,0xff -/* f0a5640: 1020000f */ beqz $at,.NB0f0a5680 -/* f0a5644: 240c0001 */ addiu $t4,$zero,0x1 -/* f0a5648: 44825000 */ mtc1 $v0,$f10 -/* f0a564c: 3c017f1a */ lui $at,%hi(var7f1aca90) -/* f0a5650: c4326dd8 */ lwc1 $f18,%lo(var7f1aca90)($at) -/* f0a5654: 46805420 */ cvt.s.w $f16,$f10 -/* f0a5658: 8fa40138 */ lw $a0,0x138($sp) -/* f0a565c: 240e0005 */ addiu $t6,$zero,0x5 -/* f0a5660: afae0134 */ sw $t6,0x134($sp) -/* f0a5664: afa4013c */ sw $a0,0x13c($sp) -/* f0a5668: 46128102 */ mul.s $f4,$f16,$f18 -/* f0a566c: 4600218d */ trunc.w.s $f6,$f4 -/* f0a5670: 44033000 */ mfc1 $v1,$f6 -/* f0a5674: 00000000 */ sll $zero,$zero,0x0 -/* f0a5678: 24750041 */ addiu $s5,$v1,0x41 -/* f0a567c: afb50138 */ sw $s5,0x138($sp) -.NB0f0a5680: -/* f0a5680: 0c005dbc */ jal mtx00016760 -/* f0a5684: afac0108 */ sw $t4,0x108($sp) -/* f0a5688: 8e020218 */ lw $v0,0x218($s0) -/* f0a568c: 5040000f */ beqzl $v0,.NB0f0a56cc -/* f0a5690: 8fa400e4 */ lw $a0,0xe4($sp) -/* f0a5694: 8c450018 */ lw $a1,0x18($v0) -/* f0a5698: 27a40104 */ addiu $a0,$sp,0x104 -/* f0a569c: 0c008be3 */ jal model_render -/* f0a56a0: afa50090 */ sw $a1,0x90($sp) -/* f0a56a4: 8fa60090 */ lw $a2,0x90($sp) -/* f0a56a8: 8cc80008 */ lw $t0,0x8($a2) -/* f0a56ac: 8cc4000c */ lw $a0,0xc($a2) -/* f0a56b0: 0fc303f0 */ jal mtx_f2l_bulk -/* f0a56b4: 8505000e */ lh $a1,0xe($t0) -/* f0a56b8: 8e0a021c */ lw $t2,0x21c($s0) -/* f0a56bc: 51400003 */ beqzl $t2,.NB0f0a56cc -/* f0a56c0: 8fa400e4 */ lw $a0,0xe4($sp) -/* f0a56c4: ae000218 */ sw $zero,0x218($s0) -/* f0a56c8: 8fa400e4 */ lw $a0,0xe4($sp) -.NB0f0a56cc: -/* f0a56cc: 0fc2bd48 */ jal weapon_has_flag -/* f0a56d0: 24050020 */ addiu $a1,$zero,0x20 -/* f0a56d4: 1040000e */ beqz $v0,.NB0f0a5710 -/* f0a56d8: 24010001 */ addiu $at,$zero,0x1 -/* f0a56dc: 8fab0110 */ lw $t3,0x110($sp) -/* f0a56e0: 3c18b600 */ lui $t8,0xb600 -/* f0a56e4: 24193000 */ addiu $t9,$zero,0x3000 -/* f0a56e8: 256d0008 */ addiu $t5,$t3,0x8 -/* f0a56ec: afad0110 */ sw $t5,0x110($sp) -/* f0a56f0: ad790004 */ sw $t9,0x4($t3) -/* f0a56f4: 16800004 */ bnez $s4,.NB0f0a5708 -/* f0a56f8: ad780000 */ sw $t8,0x0($t3) -/* f0a56fc: 240f0003 */ addiu $t7,$zero,0x3 -/* f0a5700: 10000003 */ beqz $zero,.NB0f0a5710 -/* f0a5704: afaf0140 */ sw $t7,0x140($sp) -.NB0f0a5708: -/* f0a5708: 24090002 */ addiu $t1,$zero,0x2 -/* f0a570c: afa90140 */ sw $t1,0x140($sp) -.NB0f0a5710: -/* f0a5710: 8e2e006c */ lw $t6,0x6c($s1) -/* f0a5714: 00002825 */ or $a1,$zero,$zero -/* f0a5718: 00002025 */ or $a0,$zero,$zero -/* f0a571c: 11c00003 */ beqz $t6,.NB0f0a572c -/* f0a5720: 00001025 */ or $v0,$zero,$zero -/* f0a5724: 10000001 */ beqz $zero,.NB0f0a572c -/* f0a5728: 24050001 */ addiu $a1,$zero,0x1 -.NB0f0a572c: -/* f0a572c: 8e2c0068 */ lw $t4,0x68($s1) -/* f0a5730: 00001825 */ or $v1,$zero,$zero -/* f0a5734: 11800003 */ beqz $t4,.NB0f0a5744 -/* f0a5738: 00000000 */ sll $zero,$zero,0x0 -/* f0a573c: 10000001 */ beqz $zero,.NB0f0a5744 -/* f0a5740: 24040001 */ addiu $a0,$zero,0x1 -.NB0f0a5744: -/* f0a5744: 8e280064 */ lw $t0,0x64($s1) -/* f0a5748: 11000003 */ beqz $t0,.NB0f0a5758 -/* f0a574c: 00000000 */ sll $zero,$zero,0x0 -/* f0a5750: 10000001 */ beqz $zero,.NB0f0a5758 -/* f0a5754: 24020001 */ addiu $v0,$zero,0x1 -.NB0f0a5758: -/* f0a5758: 8e2a0070 */ lw $t2,0x70($s1) -/* f0a575c: 11400003 */ beqz $t2,.NB0f0a576c -/* f0a5760: 00000000 */ sll $zero,$zero,0x0 -/* f0a5764: 10000001 */ beqz $zero,.NB0f0a576c -/* f0a5768: 24030001 */ addiu $v1,$zero,0x1 -.NB0f0a576c: -/* f0a576c: 00625821 */ addu $t3,$v1,$v0 -/* f0a5770: 01646821 */ addu $t5,$t3,$a0 -/* f0a5774: 01a5c021 */ addu $t8,$t5,$a1 -/* f0a5778: 17010036 */ bne $t8,$at,.NB0f0a5854 -/* f0a577c: 24050041 */ addiu $a1,$zero,0x41 -/* f0a5780: 0c006ea3 */ jal model_get_part -/* f0a5784: 8e04038c */ lw $a0,0x38c($s0) -/* f0a5788: 50400033 */ beqzl $v0,.NB0f0a5858 -/* f0a578c: 27a40104 */ addiu $a0,$sp,0x104 -/* f0a5790: 8c440004 */ lw $a0,0x4($v0) -/* f0a5794: 00002825 */ or $a1,$zero,$zero -/* f0a5798: 84990010 */ lh $t9,0x10($a0) -/* f0a579c: 5b20002e */ blezl $t9,.NB0f0a5858 -/* f0a57a0: 27a40104 */ addiu $a0,$sp,0x104 -/* f0a57a4: 8e2c0034 */ lw $t4,0x34($s1) -.NB0f0a57a8: -/* f0a57a8: 8c8f000c */ lw $t7,0xc($a0) -/* f0a57ac: 00054880 */ sll $t1,$a1,0x2 -/* f0a57b0: 01920019 */ multu $t4,$s2 -/* f0a57b4: 01254823 */ subu $t1,$t1,$a1 -/* f0a57b8: 00094880 */ sll $t1,$t1,0x2 -/* f0a57bc: 01e91021 */ addu $v0,$t7,$t1 -/* f0a57c0: 844e000a */ lh $t6,0xa($v0) -/* f0a57c4: 00056880 */ sll $t5,$a1,0x2 -/* f0a57c8: 01a56823 */ subu $t5,$t5,$a1 -/* f0a57cc: 000d6880 */ sll $t5,$t5,0x2 -/* f0a57d0: 24420002 */ addiu $v0,$v0,0x2 -/* f0a57d4: 00004012 */ mflo $t0 -/* f0a57d8: 01c85023 */ subu $t2,$t6,$t0 -/* f0a57dc: a44a0008 */ sh $t2,0x8($v0) -/* f0a57e0: 8c8b000c */ lw $t3,0xc($a0) -/* f0a57e4: 016dc021 */ addu $t8,$t3,$t5 -/* f0a57e8: 8719000a */ lh $t9,0xa($t8) -/* f0a57ec: 2b21a000 */ slti $at,$t9,-24576 -/* f0a57f0: 50200014 */ beqzl $at,.NB0f0a5844 -/* f0a57f4: 848b0010 */ lh $t3,0x10($a0) -/* f0a57f8: 848f0010 */ lh $t7,0x10($a0) -/* f0a57fc: 00001825 */ or $v1,$zero,$zero -/* f0a5800: 59e00010 */ blezl $t7,.NB0f0a5844 -/* f0a5804: 848b0010 */ lh $t3,0x10($a0) -/* f0a5808: 8c89000c */ lw $t1,0xc($a0) -.NB0f0a580c: -/* f0a580c: 00036080 */ sll $t4,$v1,0x2 -/* f0a5810: 01836023 */ subu $t4,$t4,$v1 -/* f0a5814: 000c6080 */ sll $t4,$t4,0x2 -/* f0a5818: 012c1021 */ addu $v0,$t1,$t4 -/* f0a581c: 844e000a */ lh $t6,0xa($v0) -/* f0a5820: 24630001 */ addiu $v1,$v1,0x1 -/* f0a5824: 24420002 */ addiu $v0,$v0,0x2 -/* f0a5828: 25c82000 */ addiu $t0,$t6,0x2000 -/* f0a582c: a4480008 */ sh $t0,0x8($v0) -/* f0a5830: 848a0010 */ lh $t2,0x10($a0) -/* f0a5834: 006a082a */ slt $at,$v1,$t2 -/* f0a5838: 5420fff4 */ bnezl $at,.NB0f0a580c -/* f0a583c: 8c89000c */ lw $t1,0xc($a0) -/* f0a5840: 848b0010 */ lh $t3,0x10($a0) -.NB0f0a5844: -/* f0a5844: 24a50001 */ addiu $a1,$a1,0x1 -/* f0a5848: 00ab082a */ slt $at,$a1,$t3 -/* f0a584c: 5420ffd6 */ bnezl $at,.NB0f0a57a8 -/* f0a5850: 8e2c0034 */ lw $t4,0x34($s1) -.NB0f0a5854: -/* f0a5854: 27a40104 */ addiu $a0,$sp,0x104 -.NB0f0a5858: -/* f0a5858: 0c008be3 */ jal model_render -/* f0a585c: 8fa50038 */ lw $a1,0x38($sp) -/* f0a5860: 8e6d1594 */ lw $t5,0x1594($s3) -/* f0a5864: 3c188007 */ lui $t8,%hi(var800702dc) -/* f0a5868: 51a00013 */ beqzl $t5,.NB0f0a58b8 -/* f0a586c: 8fa90110 */ lw $t1,0x110($sp) -/* f0a5870: 8f18299c */ lw $t8,%lo(var800702dc)($t8) -/* f0a5874: 8fb90138 */ lw $t9,0x138($sp) -/* f0a5878: 5300000f */ beqzl $t8,.NB0f0a58b8 -/* f0a587c: 8fa90110 */ lw $t1,0x110($sp) -/* f0a5880: afb90078 */ sw $t9,0x78($sp) -/* f0a5884: 8e0f0390 */ lw $t7,0x390($s0) -/* f0a5888: 26050534 */ addiu $a1,$s0,0x534 -/* f0a588c: 00a02025 */ or $a0,$a1,$zero -/* f0a5890: ae0f0540 */ sw $t7,0x540($s0) -/* f0a5894: 0c007728 */ jal model_update_relations -/* f0a5898: afa50050 */ sw $a1,0x50($sp) -/* f0a589c: 8fa50050 */ lw $a1,0x50($sp) -/* f0a58a0: afb50138 */ sw $s5,0x138($sp) -/* f0a58a4: 0c008be3 */ jal model_render -/* f0a58a8: 27a40104 */ addiu $a0,$sp,0x104 -/* f0a58ac: 8fa40078 */ lw $a0,0x78($sp) -/* f0a58b0: afa40138 */ sw $a0,0x138($sp) -/* f0a58b4: 8fa90110 */ lw $t1,0x110($sp) -.NB0f0a58b8: -/* f0a58b8: 8fa400e4 */ lw $a0,0xe4($sp) -/* f0a58bc: 24050020 */ addiu $a1,$zero,0x20 -/* f0a58c0: 0fc2bd48 */ jal weapon_has_flag -/* f0a58c4: afa90144 */ sw $t1,0x144($sp) -/* f0a58c8: 10400007 */ beqz $v0,.NB0f0a58e8 -/* f0a58cc: 8fac0144 */ lw $t4,0x144($sp) -/* f0a58d0: 258e0008 */ addiu $t6,$t4,0x8 -/* f0a58d4: afae0144 */ sw $t6,0x144($sp) -/* f0a58d8: 3c08b600 */ lui $t0,0xb600 -/* f0a58dc: 240a3000 */ addiu $t2,$zero,0x3000 -/* f0a58e0: ad8a0004 */ sw $t2,0x4($t4) -/* f0a58e4: ad880000 */ sw $t0,0x0($t4) -.NB0f0a58e8: -/* f0a58e8: 8e0b038c */ lw $t3,0x38c($s0) -/* f0a58ec: 8e040390 */ lw $a0,0x390($s0) -/* f0a58f0: 0fc303f0 */ jal mtx_f2l_bulk -/* f0a58f4: 8565000e */ lh $a1,0xe($t3) -/* f0a58f8: 0c005dc5 */ jal mtx00016784 -/* f0a58fc: 00000000 */ sll $zero,$zero,0x0 -/* f0a5900: 8fad0144 */ lw $t5,0x144($sp) -/* f0a5904: 3c19bc00 */ lui $t9,0xbc00 -/* f0a5908: 3739000e */ ori $t9,$t9,0xe -/* f0a590c: 25b80008 */ addiu $t8,$t5,0x8 -/* f0a5910: afb80144 */ sw $t8,0x144($sp) -/* f0a5914: adb90000 */ sw $t9,0x0($t5) -/* f0a5918: 0c002b3b */ jal vi_get_persp_scale -/* f0a591c: afad0070 */ sw $t5,0x70($sp) -/* f0a5920: 8fa30070 */ lw $v1,0x70($sp) -/* f0a5924: ac620004 */ sw $v0,0x4($v1) -.NB0f0a5928: -/* f0a5928: 26940001 */ addiu $s4,$s4,0x1 -/* f0a592c: 24010002 */ addiu $at,$zero,0x2 -/* f0a5930: 1681fe0c */ bne $s4,$at,.NB0f0a5164 -/* f0a5934: 261007a4 */ addiu $s0,$s0,0x7a4 -/* f0a5938: afb500dc */ sw $s5,0xdc($sp) -/* f0a593c: 0fc2b250 */ jal casings_render -/* f0a5940: 27a40144 */ addiu $a0,$sp,0x144 -/* f0a5944: 0fc5c3ce */ jal zbuf_swap -/* f0a5948: 00000000 */ sll $zero,$zero,0x0 -/* f0a594c: 0fc5c3d3 */ jal zbuf_configure_rdp -/* f0a5950: 8fa40144 */ lw $a0,0x144($sp) -/* f0a5954: afa20144 */ sw $v0,0x144($sp) -/* f0a5958: 0c002cd4 */ jal vi0000b1d0 -/* f0a595c: 00402025 */ or $a0,$v0,$zero -/* f0a5960: 244f0008 */ addiu $t7,$v0,0x8 -/* f0a5964: afaf0144 */ sw $t7,0x144($sp) -/* f0a5968: 0c002fb5 */ jal vi_get_view_left -/* f0a596c: 00408825 */ or $s1,$v0,$zero -/* f0a5970: 00028400 */ sll $s0,$v0,0x10 -/* f0a5974: 00104c03 */ sra $t1,$s0,0x10 -/* f0a5978: 0c002fb9 */ jal vi_get_view_top -/* f0a597c: 01208025 */ or $s0,$t1,$zero -/* f0a5980: 44824000 */ mtc1 $v0,$f8 -/* f0a5984: 44902000 */ mtc1 $s0,$f4 -/* f0a5988: 3c014080 */ lui $at,0x4080 -/* f0a598c: 468042a0 */ cvt.s.w $f10,$f8 -/* f0a5990: 44810000 */ mtc1 $at,$f0 -/* f0a5994: 3c01ed00 */ lui $at,0xed00 -/* f0a5998: 468021a0 */ cvt.s.w $f6,$f4 -/* f0a599c: 46005402 */ mul.s $f16,$f10,$f0 -/* f0a59a0: 00000000 */ sll $zero,$zero,0x0 -/* f0a59a4: 46003202 */ mul.s $f8,$f6,$f0 -/* f0a59a8: 4600848d */ trunc.w.s $f18,$f16 -/* f0a59ac: 4600428d */ trunc.w.s $f10,$f8 -/* f0a59b0: 440e9000 */ mfc1 $t6,$f18 -/* f0a59b4: 440d5000 */ mfc1 $t5,$f10 -/* f0a59b8: 31c80fff */ andi $t0,$t6,0xfff -/* f0a59bc: 01015025 */ or $t2,$t0,$at -/* f0a59c0: 31b80fff */ andi $t8,$t5,0xfff -/* f0a59c4: 0018cb00 */ sll $t9,$t8,0xc -/* f0a59c8: 01597825 */ or $t7,$t2,$t9 -/* f0a59cc: 0c002f97 */ jal vi_get_view_width -/* f0a59d0: ae2f0000 */ sw $t7,0x0($s1) -/* f0a59d4: 00029400 */ sll $s2,$v0,0x10 -/* f0a59d8: 00124c03 */ sra $t1,$s2,0x10 -/* f0a59dc: 0c002fb5 */ jal vi_get_view_left -/* f0a59e0: 01209025 */ or $s2,$t1,$zero -/* f0a59e4: 0002a400 */ sll $s4,$v0,0x10 -/* f0a59e8: 00146403 */ sra $t4,$s4,0x10 -/* f0a59ec: 0c002fb9 */ jal vi_get_view_top -/* f0a59f0: 0180a025 */ or $s4,$t4,$zero -/* f0a59f4: 00028400 */ sll $s0,$v0,0x10 -/* f0a59f8: 00107403 */ sra $t6,$s0,0x10 -/* f0a59fc: 0c002f9b */ jal vi_get_view_height -/* f0a5a00: 01c08025 */ or $s0,$t6,$zero -/* f0a5a04: 00504021 */ addu $t0,$v0,$s0 -/* f0a5a08: 44888000 */ mtc1 $t0,$f16 -/* f0a5a0c: 02925021 */ addu $t2,$s4,$s2 -/* f0a5a10: 448a5000 */ mtc1 $t2,$f10 -/* f0a5a14: 468084a0 */ cvt.s.w $f18,$f16 -/* f0a5a18: 3c014080 */ lui $at,0x4080 -/* f0a5a1c: 44812000 */ mtc1 $at,$f4 -/* f0a5a20: 46805420 */ cvt.s.w $f16,$f10 -/* f0a5a24: 46049182 */ mul.s $f6,$f18,$f4 -/* f0a5a28: 44819000 */ mtc1 $at,$f18 -/* f0a5a2c: 00000000 */ sll $zero,$zero,0x0 -/* f0a5a30: 46128102 */ mul.s $f4,$f16,$f18 -/* f0a5a34: 4600320d */ trunc.w.s $f8,$f6 -/* f0a5a38: 4600218d */ trunc.w.s $f6,$f4 -/* f0a5a3c: 440d4000 */ mfc1 $t5,$f8 -/* f0a5a40: 440f3000 */ mfc1 $t7,$f6 -/* f0a5a44: 31b80fff */ andi $t8,$t5,0xfff -/* f0a5a48: 31e90fff */ andi $t1,$t7,0xfff -/* f0a5a4c: 00096300 */ sll $t4,$t1,0xc -/* f0a5a50: 030c7025 */ or $t6,$t8,$t4 -/* f0a5a54: ae2e0004 */ sw $t6,0x4($s1) -/* f0a5a58: 8fab0148 */ lw $t3,0x148($sp) -/* f0a5a5c: 8fa80144 */ lw $t0,0x144($sp) -/* f0a5a60: ad680000 */ sw $t0,0x0($t3) -/* f0a5a64: 8fbf0034 */ lw $ra,0x34($sp) -.NB0f0a5a68: -/* f0a5a68: 8fb0001c */ lw $s0,0x1c($sp) -/* f0a5a6c: 8fb10020 */ lw $s1,0x20($sp) -/* f0a5a70: 8fb20024 */ lw $s2,0x24($sp) -/* f0a5a74: 8fb30028 */ lw $s3,0x28($sp) -/* f0a5a78: 8fb4002c */ lw $s4,0x2c($sp) -/* f0a5a7c: 8fb50030 */ lw $s5,0x30($sp) -/* f0a5a80: 03e00008 */ jr $ra -/* f0a5a84: 27bd0148 */ addiu $sp,$sp,0x148 -); -#endif -#else -// Mismatch: Goal uses different codegen for accessing vertices void bgun_render(Gfx **gdlptr) { Gfx *gdl = *gdlptr; - struct modelrenderdata renderdata = {NULL, true, 3}; // 10c + struct modelrenderdata renderdata = {NULL, true, 3}; struct player *player; - s32 i; + s32 handnum; - static bool renderhand = true; // var800702dc + static bool renderhand = true; player = g_Vars.currentplayer; if (player->visionmode == VISIONMODE_XRAY) { - for (i = 0; i < 2; i++) { - if (g_Vars.currentplayer->hands[i].firedrocket) { - g_Vars.currentplayer->hands[i].rocket = NULL; + for (handnum = 0; handnum < 2; handnum++) { + if (g_Vars.currentplayer->hands[handnum].firedrocket) { + g_Vars.currentplayer->hands[handnum].rocket = NULL; } } return; @@ -10758,17 +8222,17 @@ void bgun_render(Gfx **gdlptr) gdl = lasersight_render_beam(gdl); } - for (i = 0; i < 2; i++) { + for (handnum = 0; handnum < 2; handnum++) { struct hand *hand; - s32 j; + s32 stack; s32 alpha; - s32 weaponnum; // ec - struct modelnode *node; // e8 - u32 colour; // e4 + s32 weaponnum; + struct modelnode *node; + u32 colour; - hand = player->hands + i; + hand = &player->hands[handnum]; - weaponnum = bgun_get_weapon_num2(i); + weaponnum = bgun_get_weapon_num2(handnum); if (hand->visible) { gdl = beam_render(gdl, &hand->beam, 0, 0); @@ -10798,19 +8262,14 @@ void bgun_render(Gfx **gdlptr) renderdata.unk30 = 4; if (USINGDEVICE(DEVICE_NIGHTVISION) || USINGDEVICE(DEVICE_IRSCANNER)) { - // 67c u8 *col = player->gunshadecol; u32 shade; s32 spb0[4]; s32 spa0[4]; - if (col[0] > col[1] && col[0] > col[2]) { - shade = col[0]; - } else if (col[1] > col[2]) { - shade = col[1]; - } else { - shade = col[2]; - } + shade = (col[0] > col[1] && col[0] > col[2]) + ? col[0] + : (col[1] > col[2]) ? col[1] : col[2]; renderdata.envcolour = (shade << 24 | shade << 16 | shade << 8) + col[3]; @@ -10837,7 +8296,6 @@ void bgun_render(Gfx **gdlptr) renderdata.envcolour = player->gunshadecol[0] << 24 | player->gunshadecol[1] << 16 | player->gunshadecol[2] << 8 | player->gunshadecol[3]; colour = renderdata.envcolour; - // 838 if (hand->gset.weaponnum == WEAPON_MAULER) { u32 weight = hand->matmot1 * 50.0f; renderdata.envcolour = colour_blend(0xff00007f, renderdata.envcolour, weight); @@ -10848,10 +8306,11 @@ void bgun_render(Gfx **gdlptr) alpha = chr_get_cloak_alpha(player->prop->chr); if (alpha < 255) { - colour = (s32) (alpha * 0.74509805f) + 0x41; - renderdata.unk30 = 5; + alpha *= 0.74509805f; renderdata.fogcolour = renderdata.envcolour; - renderdata.envcolour = colour; + renderdata.envcolour = 65 + alpha; + renderdata.unk30 = 5; + colour = renderdata.envcolour; } renderdata.zbufferenabled = true; @@ -10860,10 +8319,11 @@ void bgun_render(Gfx **gdlptr) // Render rocket launcher's rocket if it's in Jo's hand or in the launcher if (hand->rocket) { - struct model *rocketmodel = hand->rocket->base.model; // 98 - bool sp94 = false; + struct model *rocketmodel = hand->rocket->base.model; #if VERSION >= VERSION_NTSC_1_0 + bool sp94 = false; + if (rocketmodel && rocketmodel->definition) { sp94 = true; @@ -10891,7 +8351,7 @@ void bgun_render(Gfx **gdlptr) if (weapon_has_flag(weaponnum, WEAPONFLAG_DUALFLIP)) { gSPClearGeometryMode(renderdata.gdl++, G_CULL_BOTH); - if (i == HAND_RIGHT) { + if (handnum == HAND_RIGHT) { renderdata.cullmode = CULLMODE_BACK; } else { renderdata.cullmode = CULLMODE_FRONT; @@ -10900,25 +8360,26 @@ void bgun_render(Gfx **gdlptr) // Slide the laser's liquid texture if (PLAYERCOUNT() == 1) { + s32 axis; + s32 i; + s32 j; + node = model_get_part(hand->gunmodel.definition, MODELPART_GUN_LASERLIQUID); - // a5c if (node) { - struct modelrodata_gundl *rodata; - rodata = &node->rodata->gundl; + struct modelrodata_gundl *rodata = &node->rodata->gundl; - for (j = 0; j < rodata->numvertices; j++) { - // a7c - s32 stack[2]; - s32 k; + for (axis = 1; axis < 2; axis++) { + for (i = 0; i < rodata->numvertices; i++) { + rodata->vertices[i].tc[axis] -= g_Vars.lvupdate240 * PALUP(25); - (rodata->vertices + j)->t -= g_Vars.lvupdate240 * PALUP(25); - - if ((rodata->vertices + j)->t < -0x6000) { - for (k = 0; k < rodata->numvertices; k++) { - (rodata->vertices + k)->t += 0x2000; + if (rodata->vertices[i].tc[axis] < -0x6000) { + for (j = 0; j < rodata->numvertices; j++) { + rodata->vertices[j].tc[axis] += 0x2000; + } } } + break; } } } @@ -10928,7 +8389,7 @@ void bgun_render(Gfx **gdlptr) // Render the hand if (player->gunctrl.handmodeldef && renderhand) { - s32 prevcolour = renderdata.envcolour; // 7c + u32 prevcolour = renderdata.envcolour; hand->handmodel.matrices = hand->gunmodel.matrices; @@ -10964,7 +8425,6 @@ void bgun_render(Gfx **gdlptr) *gdlptr = gdl; } -#endif /** * Find and return an available audio handle out of a pool of four.