Decompile starsReset

This commit is contained in:
Ryan Dwyer
2022-09-14 21:19:57 +10:00
parent 213ba550a6
commit 165da3c305
+37 -592
View File
@@ -92,562 +92,24 @@ void starInsert(s32 index, struct coord *arg1)
}
}
#if MATCHING
GLOBAL_ASM(
glabel starsReset
/* f1360e8: 27bdff18 */ addiu $sp,$sp,-232
/* f1360ec: 3c05800a */ lui $a1,%hi(g_Vars)
/* f1360f0: 24a59fc0 */ addiu $a1,$a1,%lo(g_Vars)
/* f1360f4: 8cae006c */ lw $t6,0x6c($a1)
/* f1360f8: afb00044 */ sw $s0,0x44($sp)
/* f1360fc: 3c108008 */ lui $s0,%hi(g_StarPositions)
/* f136100: 2610f120 */ addiu $s0,$s0,%lo(g_StarPositions)
/* f136104: afbf004c */ sw $ra,0x4c($sp)
/* f136108: afb10048 */ sw $s1,0x48($sp)
/* f13610c: f7be0038 */ sdc1 $f30,0x38($sp)
/* f136110: f7bc0030 */ sdc1 $f28,0x30($sp)
/* f136114: f7ba0028 */ sdc1 $f26,0x28($sp)
/* f136118: f7b80020 */ sdc1 $f24,0x20($sp)
/* f13611c: f7b60018 */ sdc1 $f22,0x18($sp)
/* f136120: f7b40010 */ sdc1 $f20,0x10($sp)
/* f136124: 11c00003 */ beqz $t6,.L0f136134
/* f136128: ae000000 */ sw $zero,0x0($s0)
/* f13612c: 10000002 */ b .L0f136138
/* f136130: 24060001 */ addiu $a2,$zero,0x1
.L0f136134:
/* f136134: 00003025 */ or $a2,$zero,$zero
.L0f136138:
/* f136138: 8caf0068 */ lw $t7,0x68($a1)
/* f13613c: 00001825 */ or $v1,$zero,$zero
/* f136140: 00002025 */ or $a0,$zero,$zero
/* f136144: 11e00003 */ beqz $t7,.L0f136154
/* f136148: 00001025 */ or $v0,$zero,$zero
/* f13614c: 10000001 */ b .L0f136154
/* f136150: 24030001 */ addiu $v1,$zero,0x1
.L0f136154:
/* f136154: 8cb80064 */ lw $t8,0x64($a1)
/* f136158: 3c088008 */ lui $t0,%hi(g_StarsBelowHorizon)
/* f13615c: 2508f124 */ addiu $t0,$t0,%lo(g_StarsBelowHorizon)
/* f136160: 13000003 */ beqz $t8,.L0f136170
/* f136164: 240c0003 */ addiu $t4,$zero,0x3
/* f136168: 10000001 */ b .L0f136170
/* f13616c: 24040001 */ addiu $a0,$zero,0x1
.L0f136170:
/* f136170: 8cb90070 */ lw $t9,0x70($a1)
/* f136174: 13200003 */ beqz $t9,.L0f136184
/* f136178: 00000000 */ nop
/* f13617c: 10000001 */ b .L0f136184
/* f136180: 24020001 */ addiu $v0,$zero,0x1
.L0f136184:
/* f136184: 00444821 */ addu $t1,$v0,$a0
/* f136188: 01235021 */ addu $t2,$t1,$v1
/* f13618c: 01465821 */ addu $t3,$t2,$a2
/* f136190: 29610002 */ slti $at,$t3,0x2
/* f136194: 102001ae */ beqz $at,.L0f136850
/* f136198: 3c03800a */ lui $v1,%hi(g_StarGridSize)
/* f13619c: 8ca204b4 */ lw $v0,0x4b4($a1)
/* f1361a0: 24634158 */ addiu $v1,$v1,%lo(g_StarGridSize)
/* f1361a4: 2401004e */ addiu $at,$zero,0x4e
/* f1361a8: ad000000 */ sw $zero,0x0($t0)
/* f1361ac: 14410007 */ bne $v0,$at,.L0f1361cc
/* f1361b0: ac6c0000 */ sw $t4,0x0($v1)
/* f1361b4: 240d0001 */ addiu $t5,$zero,0x1
/* f1361b8: ad0d0000 */ sw $t5,0x0($t0)
/* f1361bc: 240e0640 */ addiu $t6,$zero,0x640
/* f1361c0: 3c01800a */ lui $at,%hi(g_StarCount)
/* f1361c4: 10000018 */ b .L0f136228
/* f1361c8: ac2e4150 */ sw $t6,%lo(g_StarCount)($at)
.L0f1361cc:
/* f1361cc: 24010030 */ addiu $at,$zero,0x30
/* f1361d0: 10410003 */ beq $v0,$at,.L0f1361e0
/* f1361d4: 240f00c8 */ addiu $t7,$zero,0xc8
/* f1361d8: 24010022 */ addiu $at,$zero,0x22
/* f1361dc: 14410005 */ bne $v0,$at,.L0f1361f4
.L0f1361e0:
/* f1361e0: 3c01800a */ lui $at,%hi(g_StarCount)
/* f1361e4: ac2f4150 */ sw $t7,%lo(g_StarCount)($at)
/* f1361e8: 24180002 */ addiu $t8,$zero,0x2
/* f1361ec: 1000000e */ b .L0f136228
/* f1361f0: ac780000 */ sw $t8,0x0($v1)
.L0f1361f4:
/* f1361f4: 24010034 */ addiu $at,$zero,0x34
/* f1361f8: 14410007 */ bne $v0,$at,.L0f136218
/* f1361fc: 240a00c8 */ addiu $t2,$zero,0xc8
/* f136200: 24190001 */ addiu $t9,$zero,0x1
/* f136204: ad190000 */ sw $t9,0x0($t0)
/* f136208: 240904b0 */ addiu $t1,$zero,0x4b0
/* f13620c: 3c01800a */ lui $at,%hi(g_StarCount)
/* f136210: 10000005 */ b .L0f136228
/* f136214: ac294150 */ sw $t1,%lo(g_StarCount)($at)
.L0f136218:
/* f136218: 3c01800a */ lui $at,%hi(g_StarCount)
/* f13621c: ac2a4150 */ sw $t2,%lo(g_StarCount)($at)
/* f136220: 240b0002 */ addiu $t3,$zero,0x2
/* f136224: ac6b0000 */ sw $t3,0x0($v1)
.L0f136228:
/* f136228: 8c670000 */ lw $a3,0x0($v1)
/* f13622c: 24060006 */ addiu $a2,$zero,0x6
/* f136230: 3c0c800a */ lui $t4,%hi(g_StarCount)
/* f136234: 24e20001 */ addiu $v0,$a3,0x1
/* f136238: 000270c0 */ sll $t6,$v0,0x3
/* f13623c: 01c27021 */ addu $t6,$t6,$v0
/* f136240: 000e70c0 */ sll $t6,$t6,0x3
/* f136244: 01c20019 */ multu $t6,$v0
/* f136248: 8d8c4150 */ lw $t4,%lo(g_StarCount)($t4)
/* f13624c: 24050004 */ addiu $a1,$zero,0x4
/* f136250: 000c6880 */ sll $t5,$t4,0x2
/* f136254: 01ac6823 */ subu $t5,$t5,$t4
/* f136258: 00007812 */ mflo $t7
/* f13625c: 01afc021 */ addu $t8,$t5,$t7
/* f136260: 00000000 */ nop
/* f136264: 00e60019 */ multu $a3,$a2
/* f136268: 0000c812 */ mflo $t9
/* f13626c: 00000000 */ nop
/* f136270: 00000000 */ nop
/* f136274: 03270019 */ multu $t9,$a3
/* f136278: 00004812 */ mflo $t1
/* f13627c: 00095080 */ sll $t2,$t1,0x2
/* f136280: 030a2021 */ addu $a0,$t8,$t2
/* f136284: 24840043 */ addiu $a0,$a0,0x43
/* f136288: 348b003f */ ori $t3,$a0,0x3f
/* f13628c: 0c0048f2 */ jal mempAlloc
/* f136290: 3964003f */ xori $a0,$t3,0x3f
/* f136294: 24060006 */ addiu $a2,$zero,0x6
/* f136298: 1040016d */ beqz $v0,.L0f136850
/* f13629c: ae020000 */ sw $v0,0x0($s0)
/* f1362a0: 3c08800a */ lui $t0,%hi(g_StarGridSize)
/* f1362a4: 25084158 */ addiu $t0,$t0,%lo(g_StarGridSize)
/* f1362a8: 8d070000 */ lw $a3,0x0($t0)
/* f1362ac: 3c0e800a */ lui $t6,%hi(g_StarCount)
/* f1362b0: 8dce4150 */ lw $t6,%lo(g_StarCount)($t6)
/* f1362b4: 00e60019 */ multu $a3,$a2
/* f1362b8: 3c04800a */ lui $a0,%hi(g_StarPosIndexes)
/* f1362bc: 000e6880 */ sll $t5,$t6,0x2
/* f1362c0: 01ae6823 */ subu $t5,$t5,$t6
/* f1362c4: 2484415c */ addiu $a0,$a0,%lo(g_StarPosIndexes)
/* f1362c8: 01a27821 */ addu $t7,$t5,$v0
/* f1362cc: ac8f0000 */ sw $t7,0x0($a0)
/* f1362d0: 00001025 */ or $v0,$zero,$zero
/* f1362d4: 00008825 */ or $s1,$zero,$zero
/* f1362d8: 0000c812 */ mflo $t9
/* f1362dc: 00000000 */ nop
/* f1362e0: 00000000 */ nop
/* f1362e4: 03270019 */ multu $t9,$a3
/* f1362e8: 00001812 */ mflo $v1
/* f1362ec: 24630001 */ addiu $v1,$v1,0x1
/* f1362f0: 58600013 */ blezl $v1,.L0f136340
/* f1362f4: 8c8c0000 */ lw $t4,0x0($a0)
/* f1362f8: 8c890000 */ lw $t1,0x0($a0)
.L0f1362fc:
/* f1362fc: 26310001 */ addiu $s1,$s1,0x1
/* f136300: 0122c021 */ addu $t8,$t1,$v0
/* f136304: af000000 */ sw $zero,0x0($t8)
/* f136308: 8d070000 */ lw $a3,0x0($t0)
/* f13630c: 24420004 */ addiu $v0,$v0,0x4
/* f136310: 00e60019 */ multu $a3,$a2
/* f136314: 00005012 */ mflo $t2
/* f136318: 00000000 */ nop
/* f13631c: 00000000 */ nop
/* f136320: 01470019 */ multu $t2,$a3
/* f136324: 00001812 */ mflo $v1
/* f136328: 24630001 */ addiu $v1,$v1,0x1
/* f13632c: 0223082a */ slt $at,$s1,$v1
/* f136330: 5420fff2 */ bnezl $at,.L0f1362fc
/* f136334: 8c890000 */ lw $t1,0x0($a0)
/* f136338: 00008825 */ or $s1,$zero,$zero
/* f13633c: 8c8c0000 */ lw $t4,0x0($a0)
.L0f136340:
/* f136340: 00035880 */ sll $t3,$v1,0x2
/* f136344: 3c01800a */ lui $at,%hi(g_StarData3)
/* f136348: 016c7021 */ addu $t6,$t3,$t4
/* f13634c: 0fc4d71c */ jal stars0f135c70
/* f136350: ac2e4154 */ sw $t6,%lo(g_StarData3)($at)
/* f136354: 3c0d800a */ lui $t5,%hi(g_StarCount)
/* f136358: 8dad4150 */ lw $t5,%lo(g_StarCount)($t5)
/* f13635c: 3c013f80 */ lui $at,0x3f80
/* f136360: c7b800bc */ lwc1 $f24,0xbc($sp)
/* f136364: 19a0013a */ blez $t5,.L0f136850
/* f136368: c7b600c0 */ lwc1 $f22,0xc0($sp)
/* f13636c: 4481f000 */ mtc1 $at,$f30
/* f136370: 3c012f80 */ lui $at,0x2f80
/* f136374: 4481e000 */ mtc1 $at,$f28
/* f136378: 3c01bf80 */ lui $at,0xbf80
/* f13637c: 4481d000 */ mtc1 $at,$f26
/* f136380: 4480a000 */ mtc1 $zero,$f20
/* f136384: 8fb000b0 */ lw $s0,0xb0($sp)
.L0f136388:
/* f136388: 0c004b70 */ jal random
/* f13638c: 00000000 */ nop
/* f136390: 44822000 */ mtc1 $v0,$f4
/* f136394: 3c014f80 */ lui $at,0x4f80
/* f136398: 04410004 */ bgez $v0,.L0f1363ac
/* f13639c: 468021a0 */ cvt.s.w $f6,$f4
/* f1363a0: 44814000 */ mtc1 $at,$f8
/* f1363a4: 00000000 */ nop
/* f1363a8: 46083180 */ add.s $f6,$f6,$f8
.L0f1363ac:
/* f1363ac: 461c3002 */ mul.s $f0,$f6,$f28
/* f1363b0: 3c0f8008 */ lui $t7,%hi(g_StarsBelowHorizon)
/* f1363b4: 8deff124 */ lw $t7,%lo(g_StarsBelowHorizon)($t7)
/* f1363b8: 46000280 */ add.s $f10,$f0,$f0
/* f1363bc: 461e5381 */ sub.s $f14,$f10,$f30
/* f1363c0: 11e0000f */ beqz $t7,.L0f136400
/* f1363c4: e7ae00d4 */ swc1 $f14,0xd4($sp)
/* f1363c8: 0c004b70 */ jal random
/* f1363cc: 00000000 */ nop
/* f1363d0: 44822000 */ mtc1 $v0,$f4
/* f1363d4: 3c014f80 */ lui $at,0x4f80
/* f1363d8: 04410004 */ bgez $v0,.L0f1363ec
/* f1363dc: 46802220 */ cvt.s.w $f8,$f4
/* f1363e0: 44813000 */ mtc1 $at,$f6
/* f1363e4: 00000000 */ nop
/* f1363e8: 46064200 */ add.s $f8,$f8,$f6
.L0f1363ec:
/* f1363ec: 461c4002 */ mul.s $f0,$f8,$f28
/* f1363f0: 46000280 */ add.s $f10,$f0,$f0
/* f1363f4: 461e5401 */ sub.s $f16,$f10,$f30
/* f1363f8: 1000000c */ b .L0f13642c
/* f1363fc: e7b000d8 */ swc1 $f16,0xd8($sp)
.L0f136400:
/* f136400: 0c004b70 */ jal random
/* f136404: 00000000 */ nop
/* f136408: 44822000 */ mtc1 $v0,$f4
/* f13640c: 3c014f80 */ lui $at,0x4f80
/* f136410: 04410004 */ bgez $v0,.L0f136424
/* f136414: 468021a0 */ cvt.s.w $f6,$f4
/* f136418: 44814000 */ mtc1 $at,$f8
/* f13641c: 00000000 */ nop
/* f136420: 46083180 */ add.s $f6,$f6,$f8
.L0f136424:
/* f136424: 461c3402 */ mul.s $f16,$f6,$f28
/* f136428: e7b000d8 */ swc1 $f16,0xd8($sp)
.L0f13642c:
/* f13642c: 0c004b70 */ jal random
/* f136430: 00000000 */ nop
/* f136434: 44825000 */ mtc1 $v0,$f10
/* f136438: 3c014f80 */ lui $at,0x4f80
/* f13643c: 04410004 */ bgez $v0,.L0f136450
/* f136440: 46805120 */ cvt.s.w $f4,$f10
/* f136444: 44814000 */ mtc1 $at,$f8
/* f136448: 00000000 */ nop
/* f13644c: 46082100 */ add.s $f4,$f4,$f8
.L0f136450:
/* f136450: 461c2002 */ mul.s $f0,$f4,$f28
/* f136454: 27a400d4 */ addiu $a0,$sp,0xd4
/* f136458: 27a500d8 */ addiu $a1,$sp,0xd8
/* f13645c: 27a600dc */ addiu $a2,$sp,0xdc
/* f136460: 46000180 */ add.s $f6,$f0,$f0
/* f136464: 461e3301 */ sub.s $f12,$f6,$f30
/* f136468: 0c0011e4 */ jal guNormalize
/* f13646c: e7ac00dc */ swc1 $f12,0xdc($sp)
/* f136470: c7ae00d4 */ lwc1 $f14,0xd4($sp)
/* f136474: c7b000d8 */ lwc1 $f16,0xd8($sp)
/* f136478: c7ac00dc */ lwc1 $f12,0xdc($sp)
/* f13647c: 4614703c */ c.lt.s $f14,$f20
/* f136480: 00000000 */ nop
/* f136484: 45020004 */ bc1fl .L0f136498
/* f136488: 46007086 */ mov.s $f2,$f14
/* f13648c: 10000002 */ b .L0f136498
/* f136490: 46007087 */ neg.s $f2,$f14
/* f136494: 46007086 */ mov.s $f2,$f14
.L0f136498:
/* f136498: 4614803c */ c.lt.s $f16,$f20
/* f13649c: 00000000 */ nop
/* f1364a0: 45020004 */ bc1fl .L0f1364b4
/* f1364a4: 46008006 */ mov.s $f0,$f16
/* f1364a8: 10000002 */ b .L0f1364b4
/* f1364ac: 46008007 */ neg.s $f0,$f16
/* f1364b0: 46008006 */ mov.s $f0,$f16
.L0f1364b4:
/* f1364b4: 4602003c */ c.lt.s $f0,$f2
/* f1364b8: 00000000 */ nop
/* f1364bc: 45020027 */ bc1fl .L0f13655c
/* f1364c0: 4614803c */ c.lt.s $f16,$f20
/* f1364c4: 4614703c */ c.lt.s $f14,$f20
/* f1364c8: c7ac00dc */ lwc1 $f12,0xdc($sp)
/* f1364cc: 45020004 */ bc1fl .L0f1364e0
/* f1364d0: 46007086 */ mov.s $f2,$f14
/* f1364d4: 10000002 */ b .L0f1364e0
/* f1364d8: 46007087 */ neg.s $f2,$f14
/* f1364dc: 46007086 */ mov.s $f2,$f14
.L0f1364e0:
/* f1364e0: 4614603c */ c.lt.s $f12,$f20
/* f1364e4: 00000000 */ nop
/* f1364e8: 45020004 */ bc1fl .L0f1364fc
/* f1364ec: 46006006 */ mov.s $f0,$f12
/* f1364f0: 10000002 */ b .L0f1364fc
/* f1364f4: 46006007 */ neg.s $f0,$f12
/* f1364f8: 46006006 */ mov.s $f0,$f12
.L0f1364fc:
/* f1364fc: 4602003c */ c.lt.s $f0,$f2
/* f136500: 00000000 */ nop
/* f136504: 4502000b */ bc1fl .L0f136534
/* f136508: 4614603c */ c.lt.s $f12,$f20
/* f13650c: 4614703c */ c.lt.s $f14,$f20
/* f136510: 00000000 */ nop
/* f136514: 45020004 */ bc1fl .L0f136528
/* f136518: 46007006 */ mov.s $f0,$f14
/* f13651c: 10000032 */ b .L0f1365e8
/* f136520: 46007007 */ neg.s $f0,$f14
/* f136524: 46007006 */ mov.s $f0,$f14
.L0f136528:
/* f136528: 10000030 */ b .L0f1365ec
/* f13652c: 46007483 */ div.s $f18,$f14,$f0
/* f136530: 4614603c */ c.lt.s $f12,$f20
.L0f136534:
/* f136534: 00000000 */ nop
/* f136538: 45020004 */ bc1fl .L0f13654c
/* f13653c: 46006006 */ mov.s $f0,$f12
/* f136540: 10000002 */ b .L0f13654c
/* f136544: 46006007 */ neg.s $f0,$f12
/* f136548: 46006006 */ mov.s $f0,$f12
.L0f13654c:
/* f13654c: 46000086 */ mov.s $f2,$f0
/* f136550: 10000025 */ b .L0f1365e8
/* f136554: 46001006 */ mov.s $f0,$f2
/* f136558: 4614803c */ c.lt.s $f16,$f20
.L0f13655c:
/* f13655c: 00000000 */ nop
/* f136560: 45020004 */ bc1fl .L0f136574
/* f136564: 46008086 */ mov.s $f2,$f16
/* f136568: 10000002 */ b .L0f136574
/* f13656c: 46008087 */ neg.s $f2,$f16
/* f136570: 46008086 */ mov.s $f2,$f16
.L0f136574:
/* f136574: 4614603c */ c.lt.s $f12,$f20
/* f136578: 00000000 */ nop
/* f13657c: 45020004 */ bc1fl .L0f136590
/* f136580: 46006006 */ mov.s $f0,$f12
/* f136584: 10000002 */ b .L0f136590
/* f136588: 46006007 */ neg.s $f0,$f12
/* f13658c: 46006006 */ mov.s $f0,$f12
.L0f136590:
/* f136590: 4602003c */ c.lt.s $f0,$f2
/* f136594: 00000000 */ nop
/* f136598: 4502000b */ bc1fl .L0f1365c8
/* f13659c: 4614603c */ c.lt.s $f12,$f20
/* f1365a0: 4614803c */ c.lt.s $f16,$f20
/* f1365a4: 00000000 */ nop
/* f1365a8: 45020004 */ bc1fl .L0f1365bc
/* f1365ac: 46008006 */ mov.s $f0,$f16
/* f1365b0: 1000000c */ b .L0f1365e4
/* f1365b4: 46008087 */ neg.s $f2,$f16
/* f1365b8: 46008006 */ mov.s $f0,$f16
.L0f1365bc:
/* f1365bc: 10000009 */ b .L0f1365e4
/* f1365c0: 46000086 */ mov.s $f2,$f0
/* f1365c4: 4614603c */ c.lt.s $f12,$f20
.L0f1365c8:
/* f1365c8: 00000000 */ nop
/* f1365cc: 45020004 */ bc1fl .L0f1365e0
/* f1365d0: 46006006 */ mov.s $f0,$f12
/* f1365d4: 10000002 */ b .L0f1365e0
/* f1365d8: 46006007 */ neg.s $f0,$f12
/* f1365dc: 46006006 */ mov.s $f0,$f12
.L0f1365e0:
/* f1365e0: 46000086 */ mov.s $f2,$f0
.L0f1365e4:
/* f1365e4: 46001006 */ mov.s $f0,$f2
.L0f1365e8:
/* f1365e8: 46007483 */ div.s $f18,$f14,$f0
.L0f1365ec:
/* f1365ec: 3c07800a */ lui $a3,%hi(g_StarGridSize)
/* f1365f0: 8ce74158 */ lw $a3,%lo(g_StarGridSize)($a3)
/* f1365f4: 3c013f80 */ lui $at,0x3f80
/* f1365f8: 44812000 */ mtc1 $at,$f4
/* f1365fc: 00e70019 */ multu $a3,$a3
/* f136600: e7ac00dc */ swc1 $f12,0xdc($sp)
/* f136604: e7ae00d4 */ swc1 $f14,0xd4($sp)
/* f136608: e7b000d8 */ swc1 $f16,0xd8($sp)
/* f13660c: 3c013f80 */ lui $at,0x3f80
/* f136610: 00004012 */ mflo $t0
/* f136614: 46008283 */ div.s $f10,$f16,$f0
/* f136618: 46122032 */ c.eq.s $f4,$f18
/* f13661c: 46006203 */ div.s $f8,$f12,$f0
/* f136620: e7aa00cc */ swc1 $f10,0xcc($sp)
/* f136624: 45010006 */ bc1t .L0f136640
/* f136628: e7a800d0 */ swc1 $f8,0xd0($sp)
/* f13662c: 4612d032 */ c.eq.s $f26,$f18
/* f136630: c7a000cc */ lwc1 $f0,0xcc($sp)
/* f136634: c7ae00d0 */ lwc1 $f14,0xd0($sp)
/* f136638: 45020018 */ bc1fl .L0f13669c
/* f13663c: 3c013f80 */ lui $at,0x3f80
.L0f136640:
/* f136640: 4612d032 */ c.eq.s $f26,$f18
/* f136644: 44813000 */ mtc1 $at,$f6
/* f136648: c7a000cc */ lwc1 $f0,0xcc($sp)
/* f13664c: c7ae00d0 */ lwc1 $f14,0xd0($sp)
/* f136650: 45000003 */ bc1f .L0f136660
/* f136654: e7b200c8 */ swc1 $f18,0xc8($sp)
/* f136658: 10000002 */ b .L0f136664
/* f13665c: 00008025 */ or $s0,$zero,$zero
.L0f136660:
/* f136660: 24100001 */ addiu $s0,$zero,0x1
.L0f136664:
/* f136664: 3c014000 */ lui $at,0x4000
/* f136668: 44814000 */ mtc1 $at,$f8
/* f13666c: 46060280 */ add.s $f10,$f0,$f6
/* f136670: 3c013f80 */ lui $at,0x3f80
/* f136674: 44812000 */ mtc1 $at,$f4
/* f136678: 3c014000 */ lui $at,0x4000
/* f13667c: 46085083 */ div.s $f2,$f10,$f8
/* f136680: 44815000 */ mtc1 $at,$f10
/* f136684: 46000586 */ mov.s $f22,$f0
/* f136688: 46007606 */ mov.s $f24,$f14
/* f13668c: 46047180 */ add.s $f6,$f14,$f4
/* f136690: 1000004c */ b .L0f1367c4
/* f136694: 460a3303 */ div.s $f12,$f6,$f10
/* f136698: 3c013f80 */ lui $at,0x3f80
.L0f13669c:
/* f13669c: 44814000 */ mtc1 $at,$f8
/* f1366a0: 3c013f80 */ lui $at,0x3f80
/* f1366a4: 46004032 */ c.eq.s $f8,$f0
/* f1366a8: 00000000 */ nop
/* f1366ac: 45030006 */ bc1tl .L0f1366c8
/* f1366b0: 4600d032 */ c.eq.s $f26,$f0
/* f1366b4: 4600d032 */ c.eq.s $f26,$f0
/* f1366b8: 00000000 */ nop
/* f1366bc: 45020016 */ bc1fl .L0f136718
/* f1366c0: 3c013f80 */ lui $at,0x3f80
/* f1366c4: 4600d032 */ c.eq.s $f26,$f0
.L0f1366c8:
/* f1366c8: 44812000 */ mtc1 $at,$f4
/* f1366cc: 3c014000 */ lui $at,0x4000
/* f1366d0: 44815000 */ mtc1 $at,$f10
/* f1366d4: 45000003 */ bc1f .L0f1366e4
/* f1366d8: 46047180 */ add.s $f6,$f14,$f4
/* f1366dc: 10000002 */ b .L0f1366e8
/* f1366e0: 24100002 */ addiu $s0,$zero,0x2
.L0f1366e4:
/* f1366e4: 24100003 */ addiu $s0,$zero,0x3
.L0f1366e8:
/* f1366e8: 3c013f80 */ lui $at,0x3f80
/* f1366ec: 44814000 */ mtc1 $at,$f8
/* f1366f0: 3c014000 */ lui $at,0x4000
/* f1366f4: 460a3083 */ div.s $f2,$f6,$f10
/* f1366f8: 44813000 */ mtc1 $at,$f6
/* f1366fc: 46007586 */ mov.s $f22,$f14
/* f136700: 46009606 */ mov.s $f24,$f18
/* f136704: 46089100 */ add.s $f4,$f18,$f8
/* f136708: e7b200c8 */ swc1 $f18,0xc8($sp)
/* f13670c: 1000002d */ b .L0f1367c4
/* f136710: 46062303 */ div.s $f12,$f4,$f6
/* f136714: 3c013f80 */ lui $at,0x3f80
.L0f136718:
/* f136718: 44815000 */ mtc1 $at,$f10
/* f13671c: 3c013f80 */ lui $at,0x3f80
/* f136720: 460e5032 */ c.eq.s $f10,$f14
/* f136724: 00000000 */ nop
/* f136728: 45030006 */ bc1tl .L0f136744
/* f13672c: 460ed032 */ c.eq.s $f26,$f14
/* f136730: 460ed032 */ c.eq.s $f26,$f14
/* f136734: 00000000 */ nop
/* f136738: 45020016 */ bc1fl .L0f136794
/* f13673c: 3c013f80 */ lui $at,0x3f80
/* f136740: 460ed032 */ c.eq.s $f26,$f14
.L0f136744:
/* f136744: 44814000 */ mtc1 $at,$f8
/* f136748: 3c014000 */ lui $at,0x4000
/* f13674c: 44813000 */ mtc1 $at,$f6
/* f136750: 45000003 */ bc1f .L0f136760
/* f136754: 46089100 */ add.s $f4,$f18,$f8
/* f136758: 10000002 */ b .L0f136764
/* f13675c: 24100004 */ addiu $s0,$zero,0x4
.L0f136760:
/* f136760: 24100005 */ addiu $s0,$zero,0x5
.L0f136764:
/* f136764: 3c013f80 */ lui $at,0x3f80
/* f136768: 44815000 */ mtc1 $at,$f10
/* f13676c: 3c014000 */ lui $at,0x4000
/* f136770: 46062083 */ div.s $f2,$f4,$f6
/* f136774: 44812000 */ mtc1 $at,$f4
/* f136778: 46009586 */ mov.s $f22,$f18
/* f13677c: 46000606 */ mov.s $f24,$f0
/* f136780: 460a0200 */ add.s $f8,$f0,$f10
/* f136784: e7b200c8 */ swc1 $f18,0xc8($sp)
/* f136788: 1000000e */ b .L0f1367c4
/* f13678c: 46044303 */ div.s $f12,$f8,$f4
/* f136790: 3c013f80 */ lui $at,0x3f80
.L0f136794:
/* f136794: 44813000 */ mtc1 $at,$f6
/* f136798: 3c014000 */ lui $at,0x4000
/* f13679c: 44814000 */ mtc1 $at,$f8
/* f1367a0: 4606b280 */ add.s $f10,$f22,$f6
/* f1367a4: 3c013f80 */ lui $at,0x3f80
/* f1367a8: 44812000 */ mtc1 $at,$f4
/* f1367ac: 3c014000 */ lui $at,0x4000
/* f1367b0: 46085083 */ div.s $f2,$f10,$f8
/* f1367b4: 44815000 */ mtc1 $at,$f10
/* f1367b8: e7b200c8 */ swc1 $f18,0xc8($sp)
/* f1367bc: 4604c180 */ add.s $f6,$f24,$f4
/* f1367c0: 460a3303 */ div.s $f12,$f6,$f10
.L0f1367c4:
/* f1367c4: 44874000 */ mtc1 $a3,$f8
/* f1367c8: 00000000 */ nop
/* f1367cc: 46804020 */ cvt.s.w $f0,$f8
/* f1367d0: 46001102 */ mul.s $f4,$f2,$f0
/* f1367d4: 00000000 */ nop
/* f1367d8: 46006282 */ mul.s $f10,$f12,$f0
/* f1367dc: 4600218d */ trunc.w.s $f6,$f4
/* f1367e0: 4600520d */ trunc.w.s $f8,$f10
/* f1367e4: 44023000 */ mfc1 $v0,$f6
/* f1367e8: 44034000 */ mfc1 $v1,$f8
/* f1367ec: 14470002 */ bne $v0,$a3,.L0f1367f8
/* f1367f0: 00000000 */ nop
/* f1367f4: 2442ffff */ addiu $v0,$v0,-1
.L0f1367f8:
/* f1367f8: 14670002 */ bne $v1,$a3,.L0f136804
/* f1367fc: 00000000 */ nop
/* f136800: 2463ffff */ addiu $v1,$v1,-1
.L0f136804:
/* f136804: 00e30019 */ multu $a3,$v1
/* f136808: 27a500d4 */ addiu $a1,$sp,0xd4
/* f13680c: 0000c012 */ mflo $t8
/* f136810: 03023021 */ addu $a2,$t8,$v0
/* f136814: 00000000 */ nop
/* f136818: 02080019 */ multu $s0,$t0
/* f13681c: 00005012 */ mflo $t2
/* f136820: 01462021 */ addu $a0,$t2,$a2
/* f136824: 0fc4d7c2 */ jal starInsert
/* f136828: 00000000 */ nop
/* f13682c: 3c0b800a */ lui $t3,%hi(g_StarCount)
/* f136830: 8d6b4150 */ lw $t3,%lo(g_StarCount)($t3)
/* f136834: 26310001 */ addiu $s1,$s1,0x1
/* f136838: 022b082a */ slt $at,$s1,$t3
/* f13683c: 1420fed2 */ bnez $at,.L0f136388
/* f136840: 00000000 */ nop
/* f136844: e7b800bc */ swc1 $f24,0xbc($sp)
/* f136848: e7b600c0 */ swc1 $f22,0xc0($sp)
/* f13684c: afb000b0 */ sw $s0,0xb0($sp)
.L0f136850:
/* f136850: 8fbf004c */ lw $ra,0x4c($sp)
/* f136854: d7b40010 */ ldc1 $f20,0x10($sp)
/* f136858: d7b60018 */ ldc1 $f22,0x18($sp)
/* f13685c: d7b80020 */ ldc1 $f24,0x20($sp)
/* f136860: d7ba0028 */ ldc1 $f26,0x28($sp)
/* f136864: d7bc0030 */ ldc1 $f28,0x30($sp)
/* f136868: d7be0038 */ ldc1 $f30,0x38($sp)
/* f13686c: 8fb00044 */ lw $s0,0x44($sp)
/* f136870: 8fb10048 */ lw $s1,0x48($sp)
/* f136874: 03e00008 */ jr $ra
/* f136878: 27bd00e8 */ addiu $sp,$sp,0xe8
);
#else
#define ABS2(value) ((value) < 0 ? -(value) : (value))
void starsReset(void)
{
struct coord spd4;
struct coord spc8;
f32 spbc[2];
s32 spb0;
f32 f12;
f32 f0;
f32 f2;
s32 v0;
s32 v1;
struct coord spd4;
struct coord spc8;
s32 i;
f32 spc0;
f32 spbc;
f32 stack[1];
s32 count;
s32 spb0;
f32 f0;
s32 tmp;
s32 tmp1;
s32 tmp2;
g_StarPositions = NULL;
@@ -670,71 +132,53 @@ void starsReset(void)
}
tmp = g_StarGridSize + 1;
g_StarPositions = mempAlloc(ALIGN64(g_StarCount * 3 + tmp * 72 * tmp + g_StarGridSize * 6 * g_StarGridSize * 4 + 4), MEMPOOL_STAGE);
g_StarPositions = mempAlloc(ALIGN64(g_StarCount * 3U + tmp * 72 * tmp + 6 * g_StarGridSize * g_StarGridSize * 4U + 4), MEMPOOL_STAGE);
if (g_StarPositions != NULL) {
s32 tmp;
g_StarPosIndexes = (s32 *)(g_StarPositions + g_StarCount * 3);
for (i = 0; i < (g_StarGridSize * 6 * g_StarGridSize + 1); i++) {
for (i = 0; i < (6 * g_StarGridSize * g_StarGridSize + 1); i++) {
g_StarPosIndexes[i] = 0;
}
g_StarData3 = (f32 *)((u32)g_StarPosIndexes + (g_StarGridSize * 6 * g_StarGridSize + 1) * sizeof(f32));
count = 6 * g_StarGridSize * g_StarGridSize + 1;
g_StarData3 = (f32 *)(count * sizeof(f32) + (s32)g_StarPosIndexes);
stars0f135c70();
for (i = 0; i < g_StarCount; i++) {
spd4.f[0] = 2.0f * RANDOMFRAC() - 1.0f;
if (g_StarsBelowHorizon) {
spd4.f[1] = 2.0f * RANDOMFRAC() - 1.0f;
} else {
spd4.f[1] = RANDOMFRAC();
}
spd4.f[1] = g_StarsBelowHorizon ? 2.0f * RANDOMFRAC() - 1.0f : RANDOMFRAC();
spd4.f[2] = 2.0f * RANDOMFRAC() - 1.0f;
guNormalize(&spd4.f[0], &spd4.f[1], &spd4.f[2]);
if (ABS2(spd4.f[1]) < ABS2(spd4.f[0])) {
f0 = ABS2(spd4.f[2]) < ABS2(spd4.f[0]) ? ABS2(spd4.f[0]) : ABS2(spd4.f[2]);
} else {
f0 = ABS2(spd4.f[2]) < ABS2(spd4.f[1]) ? ABS2(spd4.f[1]) : ABS2(spd4.f[2]);
}
// 5e0
tmp = g_StarGridSize * g_StarGridSize;
f0 = (ABS2(spd4.f[0]) > ABS2(spd4.f[1])) ? (ABS2(spd4.f[0]) > ABS2(spd4.f[2]) ? ABS2(spd4.f[0]) : ABS2(spd4.f[2])) : (ABS2(spd4.f[1]) > ABS2(spd4.f[2]) ? ABS2(spd4.f[1]) : ABS2(spd4.f[2]));
spc8.f[0] = spd4.f[0] / f0;
spc8.f[1] = spd4.f[1] / f0;
spc8.f[2] = spd4.f[2] / f0;
if (spc8.f[0] == 1.0f || spc8.f[0] == -1.0f) {
spb0 = spc8.f[0] == -1.0f ? 0 : 1;
spbc[0] = spc8.f[2];
spbc[1] = spc8.f[1];
f12 = (spbc[0] + 1.0f) / 2.0f;
f2 = (spbc[1] + 1.0f) / 2.0f;
} else if (spc8.f[1] == 1.0f || spc8.f[1] == -1.0f) {
spb0 = spc8.f[1] == -1.0f ? 2 : 3;
spbc[0] = spc8.f[0];
spbc[1] = spc8.f[2];
f12 = (spbc[0] + 1.0f) / 2.0f;
f2 = (spbc[1] + 1.0f) / 2.0f;
} else if (spc8.f[2] == 1.0f || spc8.f[2] == -1.0f) {
spb0 = spc8.f[2] == -1.0f ? 4 : 5;
spbc[0] = spc8.f[1];
spbc[1] = spc8.f[0];
f12 = (spbc[0] + 1.0f) / 2.0f;
f2 = (spbc[1] + 1.0f) / 2.0f;
} else{
f12 = (spbc[0] + 1.0f) / 2.0f;
f2 = (spbc[1] + 1.0f) / 2.0f;
tmp1 = g_StarGridSize * g_StarGridSize;
if (spc8.f[0] == 1 || spc8.f[0] == -1) {
spb0 = spc8.f[0] == -1 ? 0 : 1;
spc0 = spc8.f[1];
spbc = spc8.f[2];
} else if (spc8.f[1] == 1 || spc8.f[1] == -1) {
spb0 = spc8.f[1] == -1 ? 2 : 3;
spc0 = spc8.f[2];
spbc = spc8.f[0];
} else if (spc8.f[2] == 1 || spc8.f[2] == -1) {
spb0 = spc8.f[2] == -1 ? 4 : 5;
spc0 = spc8.f[0];
spbc = spc8.f[1];
} else {
// empty
}
v0 = f2 * g_StarGridSize;
v1 = f12 * g_StarGridSize;
v0 = (spc0 + 1) / 2 * g_StarGridSize;
v1 = (spbc + 1) / 2 * g_StarGridSize;
if (v0 == g_StarGridSize) {
v0--;
@@ -744,12 +188,13 @@ void starsReset(void)
v1--;
}
starInsert(spb0 * tmp + (g_StarGridSize * v1) + v0, &spd4);
tmp2 = v0 + g_StarGridSize * v1;
starInsert(spb0 * tmp1 + tmp2, &spd4);
}
}
}
}
#endif
Gfx *starsRender(Gfx *gdl)
{