mk64/asm/os/__osException.s

657 lines
32 KiB
ArmAsm

# handwritten (needs data/rodata too)
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64
.include "macros.inc"
.section .rodata
glabel D_800F3A00
.byte 0x00, 0x14, 0x18, 0x18, 0x1c, 0x1c, 0x1c, 0x1c
.byte 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20
.byte 0x00, 0x04, 0x08, 0x08, 0x0c, 0x0c, 0x0c, 0x0c
.byte 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10
glabel jpt_800F3A20
.word L800D1668, L800D1630, L800D1610, L800D1474
.word L800D1420, L800D15B4, L800D13E8, L800D13F4
.word L800D1400
.section .bss
glabel D_801976A0
.skip 432
.section .text, "ax"
glabel __osExceptionPreamble
/* 0D1DB0 800D11B0 3C1A800D */ lui $k0, %hi(__osException) # $k0, 0x800d
/* 0D1DB4 800D11B4 275A11C0 */ addiu $k0, %lo(__osException) # addiu $k0, $k0, 0x11c0
/* 0D1DB8 800D11B8 03400008 */ jr $k0
/* 0D1DBC 800D11BC 00000000 */ nop
glabel __osException
/* 0D1DC0 800D11C0 3C1A8019 */ lui $k0, %hi(D_801976A0) # $k0, 0x8019
/* 0D1DC4 800D11C4 275A76A0 */ addiu $k0, %lo(D_801976A0) # addiu $k0, $k0, 0x76a0
/* 0D1DC8 800D11C8 FF410020 */ sd $at, 0x20($k0)
/* 0D1DCC 800D11CC 401B6000 */ mfc0 $k1, $12
/* 0D1DD0 800D11D0 AF5B0118 */ sw $k1, 0x118($k0)
/* 0D1DD4 800D11D4 2401FFFC */ li $at, -4
/* 0D1DD8 800D11D8 0361D824 */ and $k1, $k1, $at
/* 0D1DDC 800D11DC 409B6000 */ mtc0 $k1, $12
/* 0D1DE0 800D11E0 FF480058 */ sd $t0, 0x58($k0)
/* 0D1DE4 800D11E4 FF490060 */ sd $t1, 0x60($k0)
/* 0D1DE8 800D11E8 FF4A0068 */ sd $t2, 0x68($k0)
/* 0D1DEC 800D11EC AF400018 */ sw $zero, 0x18($k0)
/* 0D1DF0 800D11F0 40086800 */ mfc0 $t0, $13
/* 0D1DF4 800D11F4 03404025 */ move $t0, $k0
/* 0D1DF8 800D11F8 3C1A800F */ lui $k0, %hi(__osRunningThread) # $k0, 0x800f
/* 0D1DFC 800D11FC 8F5AB3B0 */ lw $k0, %lo(__osRunningThread)($k0)
/* 0D1E00 800D1200 DD090020 */ ld $t1, 0x20($t0)
/* 0D1E04 800D1204 FF490020 */ sd $t1, 0x20($k0)
/* 0D1E08 800D1208 DD090118 */ ld $t1, 0x118($t0)
/* 0D1E0C 800D120C FF490118 */ sd $t1, 0x118($k0)
/* 0D1E10 800D1210 DD090058 */ ld $t1, 0x58($t0)
/* 0D1E14 800D1214 FF490058 */ sd $t1, 0x58($k0)
/* 0D1E18 800D1218 DD090060 */ ld $t1, 0x60($t0)
/* 0D1E1C 800D121C FF490060 */ sd $t1, 0x60($k0)
/* 0D1E20 800D1220 DD090068 */ ld $t1, 0x68($t0)
/* 0D1E24 800D1224 FF490068 */ sd $t1, 0x68($k0)
/* 0D1E28 800D1228 8F5B0118 */ lw $k1, 0x118($k0)
/* 0D1E2C 800D122C 00004012 */ mflo $t0
/* 0D1E30 800D1230 FF480108 */ sd $t0, 0x108($k0)
/* 0D1E34 800D1234 00004010 */ mfhi $t0
/* 0D1E38 800D1238 3369FF00 */ andi $t1, $k1, 0xff00
/* 0D1E3C 800D123C FF420028 */ sd $v0, 0x28($k0)
/* 0D1E40 800D1240 FF430030 */ sd $v1, 0x30($k0)
/* 0D1E44 800D1244 FF440038 */ sd $a0, 0x38($k0)
/* 0D1E48 800D1248 FF450040 */ sd $a1, 0x40($k0)
/* 0D1E4C 800D124C FF460048 */ sd $a2, 0x48($k0)
/* 0D1E50 800D1250 FF470050 */ sd $a3, 0x50($k0)
/* 0D1E54 800D1254 FF4B0070 */ sd $t3, 0x70($k0)
/* 0D1E58 800D1258 FF4C0078 */ sd $t4, 0x78($k0)
/* 0D1E5C 800D125C FF4D0080 */ sd $t5, 0x80($k0)
/* 0D1E60 800D1260 FF4E0088 */ sd $t6, 0x88($k0)
/* 0D1E64 800D1264 FF4F0090 */ sd $t7, 0x90($k0)
/* 0D1E68 800D1268 FF500098 */ sd $s0, 0x98($k0)
/* 0D1E6C 800D126C FF5100A0 */ sd $s1, 0xa0($k0)
/* 0D1E70 800D1270 FF5200A8 */ sd $s2, 0xa8($k0)
/* 0D1E74 800D1274 FF5300B0 */ sd $s3, 0xb0($k0)
/* 0D1E78 800D1278 FF5400B8 */ sd $s4, 0xb8($k0)
/* 0D1E7C 800D127C FF5500C0 */ sd $s5, 0xc0($k0)
/* 0D1E80 800D1280 FF5600C8 */ sd $s6, 0xc8($k0)
/* 0D1E84 800D1284 FF5700D0 */ sd $s7, 0xd0($k0)
/* 0D1E88 800D1288 FF5800D8 */ sd $t8, 0xd8($k0)
/* 0D1E8C 800D128C FF5900E0 */ sd $t9, 0xe0($k0)
/* 0D1E90 800D1290 FF5C00E8 */ sd $gp, 0xe8($k0)
/* 0D1E94 800D1294 FF5D00F0 */ sd $sp, 0xf0($k0)
/* 0D1E98 800D1298 FF5E00F8 */ sd $fp, 0xf8($k0)
/* 0D1E9C 800D129C FF5F0100 */ sd $ra, 0x100($k0)
/* 0D1EA0 800D12A0 1120000D */ beqz $t1, .L800D12D8
/* 0D1EA4 800D12A4 FF480110 */ sd $t0, 0x110($k0)
/* 0D1EA8 800D12A8 3C08800F */ lui $t0, %hi(__OSGlobalIntMask) # $t0, 0x800f
/* 0D1EAC 800D12AC 2508A5EC */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, -0x5a14
/* 0D1EB0 800D12B0 8D080000 */ lw $t0, ($t0)
/* 0D1EB4 800D12B4 2401FFFF */ li $at, -1
/* 0D1EB8 800D12B8 01014026 */ xor $t0, $t0, $at
/* 0D1EBC 800D12BC 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff
/* 0D1EC0 800D12C0 3108FF00 */ andi $t0, $t0, 0xff00
/* 0D1EC4 800D12C4 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff
/* 0D1EC8 800D12C8 01284825 */ or $t1, $t1, $t0
/* 0D1ECC 800D12CC 0361D824 */ and $k1, $k1, $at
/* 0D1ED0 800D12D0 0369D825 */ or $k1, $k1, $t1
/* 0D1ED4 800D12D4 AF5B0118 */ sw $k1, 0x118($k0)
.L800D12D8:
/* 0D1ED8 800D12D8 3C09A430 */ lui $t1, %hi(D_A430000C) # $t1, 0xa430
/* 0D1EDC 800D12DC 8D29000C */ lw $t1, %lo(D_A430000C)($t1)
/* 0D1EE0 800D12E0 1120000B */ beqz $t1, .L800D1310
/* 0D1EE4 800D12E4 00000000 */ nop
/* 0D1EE8 800D12E8 3C08800F */ lui $t0, %hi(__OSGlobalIntMask) # $t0, 0x800f
/* 0D1EEC 800D12EC 2508A5EC */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, -0x5a14
/* 0D1EF0 800D12F0 8D080000 */ lw $t0, ($t0)
/* 0D1EF4 800D12F4 8F4C0128 */ lw $t4, 0x128($k0)
/* 0D1EF8 800D12F8 2401FFFF */ li $at, -1
/* 0D1EFC 800D12FC 00084402 */ srl $t0, $t0, 0x10
/* 0D1F00 800D1300 01014026 */ xor $t0, $t0, $at
/* 0D1F04 800D1304 3108003F */ andi $t0, $t0, 0x3f
/* 0D1F08 800D1308 010C4024 */ and $t0, $t0, $t4
/* 0D1F0C 800D130C 01284825 */ or $t1, $t1, $t0
.L800D1310:
/* 0D1F10 800D1310 AF490128 */ sw $t1, 0x128($k0)
/* 0D1F14 800D1314 40087000 */ mfc0 $t0, $14
/* 0D1F18 800D1318 AF48011C */ sw $t0, 0x11c($k0)
/* 0D1F1C 800D131C 8F480018 */ lw $t0, 0x18($k0)
/* 0D1F20 800D1320 11000014 */ beqz $t0, .L800D1374
/* 0D1F24 800D1324 00000000 */ nop
/* 0D1F28 800D1328 4448F800 */ cfc1 $t0, $31
/* 0D1F2C 800D132C 00000000 */ nop
/* 0D1F30 800D1330 AF48012C */ sw $t0, 0x12c($k0)
/* 0D1F34 800D1334 F7400130 */ sdc1 $f0, 0x130($k0)
/* 0D1F38 800D1338 F7420138 */ sdc1 $f2, 0x138($k0)
/* 0D1F3C 800D133C F7440140 */ sdc1 $f4, 0x140($k0)
/* 0D1F40 800D1340 F7460148 */ sdc1 $f6, 0x148($k0)
/* 0D1F44 800D1344 F7480150 */ sdc1 $f8, 0x150($k0)
/* 0D1F48 800D1348 F74A0158 */ sdc1 $f10, 0x158($k0)
/* 0D1F4C 800D134C F74C0160 */ sdc1 $f12, 0x160($k0)
/* 0D1F50 800D1350 F74E0168 */ sdc1 $f14, 0x168($k0)
/* 0D1F54 800D1354 F7500170 */ sdc1 $f16, 0x170($k0)
/* 0D1F58 800D1358 F7520178 */ sdc1 $f18, 0x178($k0)
/* 0D1F5C 800D135C F7540180 */ sdc1 $f20, 0x180($k0)
/* 0D1F60 800D1360 F7560188 */ sdc1 $f22, 0x188($k0)
/* 0D1F64 800D1364 F7580190 */ sdc1 $f24, 0x190($k0)
/* 0D1F68 800D1368 F75A0198 */ sdc1 $f26, 0x198($k0)
/* 0D1F6C 800D136C F75C01A0 */ sdc1 $f28, 0x1a0($k0)
/* 0D1F70 800D1370 F75E01A8 */ sdc1 $f30, 0x1a8($k0)
.L800D1374:
/* 0D1F74 800D1374 40086800 */ mfc0 $t0, $13
/* 0D1F78 800D1378 AF480120 */ sw $t0, 0x120($k0)
/* 0D1F7C 800D137C 24090002 */ li $t1, 2
/* 0D1F80 800D1380 A7490010 */ sh $t1, 0x10($k0)
/* 0D1F84 800D1384 3109007C */ andi $t1, $t0, 0x7c
/* 0D1F88 800D1388 240A0024 */ li $t2, 36
/* 0D1F8C 800D138C 112A00B0 */ beq $t1, $t2, .L800D1650
/* 0D1F90 800D1390 00000000 */ nop
/* 0D1F94 800D1394 240A002C */ li $t2, 44
/* 0D1F98 800D1398 112A00FF */ beq $t1, $t2, .L800D1798
/* 0D1F9C 800D139C 00000000 */ nop
/* 0D1FA0 800D13A0 240A0000 */ li $t2, 0
/* 0D1FA4 800D13A4 152A00C3 */ bne $t1, $t2, .L800D16B4
/* 0D1FA8 800D13A8 00000000 */ nop
/* 0D1FAC 800D13AC 03688024 */ and $s0, $k1, $t0
.L800D13B0:
/* 0D1FB0 800D13B0 3209FF00 */ andi $t1, $s0, 0xff00
/* 0D1FB4 800D13B4 00095302 */ srl $t2, $t1, 0xc
/* 0D1FB8 800D13B8 15400003 */ bnez $t2, .L800D13C8
/* 0D1FBC 800D13BC 00000000 */ nop
/* 0D1FC0 800D13C0 00095202 */ srl $t2, $t1, 8
/* 0D1FC4 800D13C4 214A0010 */ addi $t2, $t2, 0x10
.L800D13C8:
/* 0D1FC8 800D13C8 3C01800F */ lui $at, %hi(D_800F3A00) # 0x800f
/* 0D1FCC 800D13CC 002A0821 */ addu $at, $at, $t2
/* 0D1FD0 800D13D0 902A3A00 */ lbu $t2, %lo(D_800F3A00)($at) # 0x3a00($at)
/* 0D1FD4 800D13D4 3C01800F */ lui $at, %hi(jpt_800F3A20)
/* 0D1FD8 800D13D8 002A0821 */ addu $at, $at, $t2
/* 0D1FDC 800D13DC 8C2A3A20 */ lw $t2, %lo(jpt_800F3A20)($at)
/* 0D1FE0 800D13E0 01400008 */ jr $t2
/* 0D1FE4 800D13E4 00000000 */ nop
glabel L800D13E8
/* 0D1FE8 800D13E8 2401DFFF */ li $at, -8193
/* 0D1FEC 800D13EC 1000FFF0 */ b .L800D13B0
/* 0D1FF0 800D13F0 02018024 */ and $s0, $s0, $at
glabel L800D13F4
/* 0D1FF4 800D13F4 2401BFFF */ li $at, -16385
/* 0D1FF8 800D13F8 1000FFED */ b .L800D13B0
/* 0D1FFC 800D13FC 02018024 */ and $s0, $s0, $at
glabel L800D1400
/* 0D2000 800D1400 40095800 */ mfc0 $t1, $11
/* 0D2004 800D1404 40895800 */ mtc0 $t1, $11
/* 0D2008 800D1408 0C0345B9 */ jal func_800D16E4
/* 0D200C 800D140C 24040018 */ li $a0, 24
/* 0D2010 800D1410 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff
/* 0D2014 800D1414 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff
/* 0D2018 800D1418 1000FFE5 */ b .L800D13B0
/* 0D201C 800D141C 02018024 */ and $s0, $s0, $at
glabel L800D1420
/* 0D2020 800D1420 2401F7FF */ li $at, -2049
/* 0D2024 800D1424 02018024 */ and $s0, $s0, $at
/* 0D2028 800D1428 240A0004 */ li $t2, 4
/* 0D202C 800D142C 3C01800F */ lui $at, %hi(__osHwIntTable) # 0x800f
/* 0D2030 800D1430 002A0821 */ addu $at, $at, $t2
/* 0D2034 800D1434 8C2AB380 */ lw $t2, %lo(__osHwIntTable)($at) # -0x4c80($at)
/* 0D2038 800D1438 3C1D8019 */ lui $sp, %hi(leoDiskStack) # $sp, 0x8019
/* 0D203C 800D143C 27BD65E0 */ addiu $sp, %lo(leoDiskStack) # addiu $sp, $sp, 0x65e0
/* 0D2040 800D1440 24040010 */ li $a0, 16
/* 0D2044 800D1444 11400007 */ beqz $t2, .L800D1464
/* 0D2048 800D1448 27BD0FF0 */ addiu $sp, $sp, 0xff0
/* 0D204C 800D144C 0140F809 */ jalr $t2
/* 0D2050 800D1450 00000000 */ nop
/* 0D2054 800D1454 10400003 */ beqz $v0, .L800D1464
/* 0D2058 800D1458 00000000 */ nop
/* 0D205C 800D145C 10000082 */ b .L800D1668
/* 0D2060 800D1460 00000000 */ nop
.L800D1464:
/* 0D2064 800D1464 0C0345B9 */ jal func_800D16E4
/* 0D2068 800D1468 00000000 */ nop
/* 0D206C 800D146C 1000FFD0 */ b .L800D13B0
/* 0D2070 800D1470 00000000 */ nop
glabel L800D1474
/* 0D2074 800D1474 3C08800F */ lui $t0, %hi(__OSGlobalIntMask) # $t0, 0x800f
/* 0D2078 800D1478 2508A5EC */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, -0x5a14
/* 0D207C 800D147C 8D080000 */ lw $t0, ($t0)
/* 0D2080 800D1480 3C11A430 */ lui $s1, %hi(D_A4300008) # $s1, 0xa430
/* 0D2084 800D1484 8E310008 */ lw $s1, %lo(D_A4300008)($s1)
/* 0D2088 800D1488 00084402 */ srl $t0, $t0, 0x10
/* 0D208C 800D148C 02288824 */ and $s1, $s1, $t0
/* 0D2090 800D1490 32290001 */ andi $t1, $s1, 1
/* 0D2094 800D1494 11200013 */ beqz $t1, .L800D14E4
/* 0D2098 800D1498 00000000 */ nop
/* 0D209C 800D149C 3C0CA404 */ lui $t4, %hi(D_A4040010) # $t4, 0xa404
/* 0D20A0 800D14A0 8D8C0010 */ lw $t4, %lo(D_A4040010)($t4)
/* 0D20A4 800D14A4 24090008 */ li $t1, 8
/* 0D20A8 800D14A8 3C01A404 */ lui $at, %hi(D_A4040010) # $at, 0xa404
/* 0D20AC 800D14AC 318C0300 */ andi $t4, $t4, 0x300
/* 0D20B0 800D14B0 3231003E */ andi $s1, $s1, 0x3e
/* 0D20B4 800D14B4 11800007 */ beqz $t4, .L800D14D4
/* 0D20B8 800D14B8 AC290010 */ sw $t1, %lo(D_A4040010)($at)
/* 0D20BC 800D14BC 0C0345B9 */ jal func_800D16E4
/* 0D20C0 800D14C0 24040020 */ li $a0, 32
/* 0D20C4 800D14C4 12200038 */ beqz $s1, .L800D15A8
/* 0D20C8 800D14C8 00000000 */ nop
/* 0D20CC 800D14CC 10000005 */ b .L800D14E4
/* 0D20D0 800D14D0 00000000 */ nop
.L800D14D4:
/* 0D20D4 800D14D4 0C0345B9 */ jal func_800D16E4
/* 0D20D8 800D14D8 24040058 */ li $a0, 88
/* 0D20DC 800D14DC 12200032 */ beqz $s1, .L800D15A8
/* 0D20E0 800D14E0 00000000 */ nop
.L800D14E4:
/* 0D20E4 800D14E4 32290008 */ andi $t1, $s1, 8
/* 0D20E8 800D14E8 11200007 */ beqz $t1, .L800D1508
/* 0D20EC 800D14EC 3C01A440 */ lui $at, %hi(D_A4400010) # $at, 0xa440
/* 0D20F0 800D14F0 32310037 */ andi $s1, $s1, 0x37
/* 0D20F4 800D14F4 AC200010 */ sw $zero, %lo(D_A4400010)($at)
/* 0D20F8 800D14F8 0C0345B9 */ jal func_800D16E4
/* 0D20FC 800D14FC 24040038 */ li $a0, 56
/* 0D2100 800D1500 12200029 */ beqz $s1, .L800D15A8
/* 0D2104 800D1504 00000000 */ nop
.L800D1508:
/* 0D2108 800D1508 32290004 */ andi $t1, $s1, 4
/* 0D210C 800D150C 11200009 */ beqz $t1, .L800D1534
/* 0D2110 800D1510 00000000 */ nop
/* 0D2114 800D1514 24090001 */ li $t1, 1
/* 0D2118 800D1518 3C01A450 */ lui $at, %hi(D_A450000C) # $at, 0xa450
/* 0D211C 800D151C 3231003B */ andi $s1, $s1, 0x3b
/* 0D2120 800D1520 AC29000C */ sw $t1, %lo(D_A450000C)($at)
/* 0D2124 800D1524 0C0345B9 */ jal func_800D16E4
/* 0D2128 800D1528 24040030 */ li $a0, 48
/* 0D212C 800D152C 1220001E */ beqz $s1, .L800D15A8
/* 0D2130 800D1530 00000000 */ nop
.L800D1534:
/* 0D2134 800D1534 32290002 */ andi $t1, $s1, 2
/* 0D2138 800D1538 11200007 */ beqz $t1, .L800D1558
/* 0D213C 800D153C 3C01A480 */ lui $at, %hi(D_A4800018) # $at, 0xa480
/* 0D2140 800D1540 3231003D */ andi $s1, $s1, 0x3d
/* 0D2144 800D1544 AC200018 */ sw $zero, %lo(D_A4800018)($at)
/* 0D2148 800D1548 0C0345B9 */ jal func_800D16E4
/* 0D214C 800D154C 24040028 */ li $a0, 40
/* 0D2150 800D1550 12200015 */ beqz $s1, .L800D15A8
/* 0D2154 800D1554 00000000 */ nop
.L800D1558:
/* 0D2158 800D1558 32290010 */ andi $t1, $s1, 0x10
/* 0D215C 800D155C 11200009 */ beqz $t1, .L800D1584
/* 0D2160 800D1560 00000000 */ nop
/* 0D2164 800D1564 24090002 */ li $t1, 2
/* 0D2168 800D1568 3C01A460 */ lui $at, %hi(D_A4600010) # $at, 0xa460
/* 0D216C 800D156C 3231002F */ andi $s1, $s1, 0x2f
/* 0D2170 800D1570 AC290010 */ sw $t1, %lo(D_A4600010)($at)
/* 0D2174 800D1574 0C0345B9 */ jal func_800D16E4
/* 0D2178 800D1578 24040040 */ li $a0, 64
/* 0D217C 800D157C 1220000A */ beqz $s1, .L800D15A8
/* 0D2180 800D1580 00000000 */ nop
.L800D1584:
/* 0D2184 800D1584 32290020 */ andi $t1, $s1, 0x20
/* 0D2188 800D1588 11200007 */ beqz $t1, .L800D15A8
/* 0D218C 800D158C 00000000 */ nop
/* 0D2190 800D1590 24090800 */ li $t1, 2048
/* 0D2194 800D1594 3C01A430 */ lui $at, 0xa430
/* 0D2198 800D1598 3231001F */ andi $s1, $s1, 0x1f
/* 0D219C 800D159C AC290000 */ sw $t1, ($at)
/* 0D21A0 800D15A0 0C0345B9 */ jal func_800D16E4
/* 0D21A4 800D15A4 24040048 */ li $a0, 72
.L800D15A8:
/* 0D21A8 800D15A8 2401FBFF */ li $at, -1025
/* 0D21AC 800D15AC 1000FF80 */ b .L800D13B0
/* 0D21B0 800D15B0 02018024 */ and $s0, $s0, $at
glabel L800D15B4
/* 0D21B4 800D15B4 8F5B0118 */ lw $k1, 0x118($k0)
/* 0D21B8 800D15B8 2401EFFF */ li $at, -4097
/* 0D21BC 800D15BC 3C09800F */ lui $t1, %hi(D_800EA5E8) # $t1, 0x800f
/* 0D21C0 800D15C0 0361D824 */ and $k1, $k1, $at
/* 0D21C4 800D15C4 AF5B0118 */ sw $k1, 0x118($k0)
/* 0D21C8 800D15C8 2529A5E8 */ addiu $t1, %lo(D_800EA5E8) # addiu $t1, $t1, -0x5a18
/* 0D21CC 800D15CC 8D2A0000 */ lw $t2, ($t1)
/* 0D21D0 800D15D0 11400003 */ beqz $t2, .L800D15E0
/* 0D21D4 800D15D4 2401EFFF */ li $at, -4097
/* 0D21D8 800D15D8 10000023 */ b .L800D1668
/* 0D21DC 800D15DC 02018024 */ and $s0, $s0, $at
.L800D15E0:
/* 0D21E0 800D15E0 240A0001 */ li $t2, 1
/* 0D21E4 800D15E4 AD2A0000 */ sw $t2, ($t1)
/* 0D21E8 800D15E8 0C0345B9 */ jal func_800D16E4
/* 0D21EC 800D15EC 24040070 */ li $a0, 112
/* 0D21F0 800D15F0 3C0A800F */ lui $t2, %hi(__osRunQueue) # $t2, 0x800f
/* 0D21F4 800D15F4 8D4AB3A8 */ lw $t2, %lo(__osRunQueue)($t2)
/* 0D21F8 800D15F8 2401EFFF */ li $at, -4097
/* 0D21FC 800D15FC 02018024 */ and $s0, $s0, $at
/* 0D2200 800D1600 8D5B0118 */ lw $k1, 0x118($t2)
/* 0D2204 800D1604 0361D824 */ and $k1, $k1, $at
/* 0D2208 800D1608 10000017 */ b .L800D1668
/* 0D220C 800D160C AD5B0118 */ sw $k1, 0x118($t2)
glabel L800D1610
/* 0D2210 800D1610 2401FDFF */ li $at, -513
/* 0D2214 800D1614 01014024 */ and $t0, $t0, $at
/* 0D2218 800D1618 40886800 */ mtc0 $t0, $13
/* 0D221C 800D161C 0C0345B9 */ jal func_800D16E4
/* 0D2220 800D1620 24040008 */ li $a0, 8
/* 0D2224 800D1624 2401FDFF */ li $at, -513
/* 0D2228 800D1628 1000FF61 */ b .L800D13B0
/* 0D222C 800D162C 02018024 */ and $s0, $s0, $at
glabel L800D1630
/* 0D2230 800D1630 2401FEFF */ li $at, -257
/* 0D2234 800D1634 01014024 */ and $t0, $t0, $at
/* 0D2238 800D1638 40886800 */ mtc0 $t0, $13
/* 0D223C 800D163C 0C0345B9 */ jal func_800D16E4
/* 0D2240 800D1640 24040000 */ li $a0, 0
/* 0D2244 800D1644 2401FEFF */ li $at, -257
/* 0D2248 800D1648 1000FF59 */ b .L800D13B0
/* 0D224C 800D164C 02018024 */ and $s0, $s0, $at
.L800D1650:
/* 0D2250 800D1650 24090001 */ li $t1, 1
/* 0D2254 800D1654 A7490012 */ sh $t1, 0x12($k0)
/* 0D2258 800D1658 0C0345B9 */ jal func_800D16E4
/* 0D225C 800D165C 24040050 */ li $a0, 80
/* 0D2260 800D1660 10000001 */ b .L800D1668
/* 0D2264 800D1664 00000000 */ nop
.L800D1668:
glabel L800D1668
/* 0D2268 800D1668 3C0A800F */ lui $t2, %hi(__osRunQueue) # $t2, 0x800f
/* 0D226C 800D166C 8D4AB3A8 */ lw $t2, %lo(__osRunQueue)($t2)
/* 0D2270 800D1670 8F490004 */ lw $t1, 4($k0)
/* 0D2274 800D1674 8D4B0004 */ lw $t3, 4($t2)
/* 0D2278 800D1678 012B082A */ slt $at, $t1, $t3
/* 0D227C 800D167C 10200007 */ beqz $at, .L800D169C
/* 0D2280 800D1680 00000000 */ nop
/* 0D2284 800D1684 3C04800F */ lui $a0, %hi(__osRunQueue) # $a0, 0x800f
/* 0D2288 800D1688 03402825 */ move $a1, $k0
/* 0D228C 800D168C 0C034633 */ jal __osEnqueueThread
/* 0D2290 800D1690 2484B3A8 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, -0x4c58
/* 0D2294 800D1694 08034649 */ j __osDispatchThread
/* 0D2298 800D1698 00000000 */ nop
.L800D169C:
/* 0D229C 800D169C 3C09800F */ lui $t1, %hi(__osRunQueue) # $t1, 0x800f
/* 0D22A0 800D16A0 2529B3A8 */ addiu $t1, %lo(__osRunQueue) # addiu $t1, $t1, -0x4c58
/* 0D22A4 800D16A4 8D2A0000 */ lw $t2, ($t1)
/* 0D22A8 800D16A8 AF4A0000 */ sw $t2, ($k0)
/* 0D22AC 800D16AC 08034649 */ j __osDispatchThread
/* 0D22B0 800D16B0 AD3A0000 */ sw $k0, ($t1)
.L800D16B4:
/* 0D22B4 800D16B4 3C01800F */ lui $at, %hi(__osFaultedThread) # $at, 0x800f
/* 0D22B8 800D16B8 AC3AB3B4 */ sw $k0, %lo(__osFaultedThread)($at)
/* 0D22BC 800D16BC 24090001 */ li $t1, 1
/* 0D22C0 800D16C0 A7490010 */ sh $t1, 0x10($k0)
/* 0D22C4 800D16C4 24090002 */ li $t1, 2
/* 0D22C8 800D16C8 A7490012 */ sh $t1, 0x12($k0)
/* 0D22CC 800D16CC 400A4000 */ mfc0 $t2, $8
/* 0D22D0 800D16D0 AF4A0124 */ sw $t2, 0x124($k0)
/* 0D22D4 800D16D4 0C0345B9 */ jal func_800D16E4
/* 0D22D8 800D16D8 24040060 */ li $a0, 96
/* 0D22DC 800D16DC 08034649 */ j __osDispatchThread
/* 0D22E0 800D16E0 00000000 */ nop
glabel func_800D16E4
/* 0D22E4 800D16E4 3C0A8019 */ lui $t2, %hi(__osEventStateTab) # $t2, 0x8019
/* 0D22E8 800D16E8 254A6440 */ addiu $t2, %lo(__osEventStateTab) # addiu $t2, $t2, 0x6440
/* 0D22EC 800D16EC 01445021 */ addu $t2, $t2, $a0
/* 0D22F0 800D16F0 8D490000 */ lw $t1, ($t2)
/* 0D22F4 800D16F4 03E09025 */ move $s2, $ra
/* 0D22F8 800D16F8 11200025 */ beqz $t1, .L800D1790
/* 0D22FC 800D16FC 00000000 */ nop
/* 0D2300 800D1700 8D2B0008 */ lw $t3, 8($t1)
/* 0D2304 800D1704 8D2C0010 */ lw $t4, 0x10($t1)
/* 0D2308 800D1708 016C082A */ slt $at, $t3, $t4
/* 0D230C 800D170C 10200020 */ beqz $at, .L800D1790
/* 0D2310 800D1710 00000000 */ nop
/* 0D2314 800D1714 8D2D000C */ lw $t5, 0xc($t1)
/* 0D2318 800D1718 01AB6821 */ addu $t5, $t5, $t3
/* 0D231C 800D171C 01AC001A */ div $zero, $t5, $t4
/* 0D2320 800D1720 15800002 */ bnez $t4, .L800D172C
/* 0D2324 800D1724 00000000 */ nop
/* 0D2328 800D1728 0007000D */ break 7
.L800D172C:
/* 0D232C 800D172C 2401FFFF */ li $at, -1
/* 0D2330 800D1730 15810004 */ bne $t4, $at, .L800D1744
/* 0D2334 800D1734 3C018000 */ lui $at, 0x8000
/* 0D2338 800D1738 15A10002 */ bne $t5, $at, .L800D1744
/* 0D233C 800D173C 00000000 */ nop
/* 0D2340 800D1740 0006000D */ break 6
.L800D1744:
/* 0D2344 800D1744 8D2C0014 */ lw $t4, 0x14($t1)
/* 0D2348 800D1748 00006810 */ mfhi $t5
/* 0D234C 800D174C 000D6880 */ sll $t5, $t5, 2
/* 0D2350 800D1750 018D6021 */ addu $t4, $t4, $t5
/* 0D2354 800D1754 8D4D0004 */ lw $t5, 4($t2)
/* 0D2358 800D1758 256A0001 */ addiu $t2, $t3, 1
/* 0D235C 800D175C AD8D0000 */ sw $t5, ($t4)
/* 0D2360 800D1760 AD2A0008 */ sw $t2, 8($t1)
/* 0D2364 800D1764 8D2A0000 */ lw $t2, ($t1)
/* 0D2368 800D1768 8D4B0000 */ lw $t3, ($t2)
/* 0D236C 800D176C 11600008 */ beqz $t3, .L800D1790
/* 0D2370 800D1770 00000000 */ nop
/* 0D2374 800D1774 0C034645 */ jal __osPopThread
/* 0D2378 800D1778 01202025 */ move $a0, $t1
/* 0D237C 800D177C 00405025 */ move $t2, $v0
/* 0D2380 800D1780 3C04800F */ lui $a0, %hi(__osRunQueue) # $a0, 0x800f
/* 0D2384 800D1784 01402825 */ move $a1, $t2
/* 0D2388 800D1788 0C034633 */ jal __osEnqueueThread
/* 0D238C 800D178C 2484B3A8 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, -0x4c58
.L800D1790:
/* 0D2390 800D1790 02400008 */ jr $s2
/* 0D2394 800D1794 00000000 */ nop
.L800D1798:
/* 0D2398 800D1798 3C013000 */ lui $at, 0x3000
/* 0D239C 800D179C 01014824 */ and $t1, $t0, $at
/* 0D23A0 800D17A0 00094F02 */ srl $t1, $t1, 0x1c
/* 0D23A4 800D17A4 240A0001 */ li $t2, 1
/* 0D23A8 800D17A8 152AFFC2 */ bne $t1, $t2, .L800D16B4
/* 0D23AC 800D17AC 00000000 */ nop
/* 0D23B0 800D17B0 8F5B0118 */ lw $k1, 0x118($k0)
/* 0D23B4 800D17B4 3C012000 */ lui $at, 0x2000
/* 0D23B8 800D17B8 24090001 */ li $t1, 1
/* 0D23BC 800D17BC 0361D825 */ or $k1, $k1, $at
/* 0D23C0 800D17C0 AF490018 */ sw $t1, 0x18($k0)
/* 0D23C4 800D17C4 1000FFB5 */ b .L800D169C
/* 0D23C8 800D17C8 AF5B0118 */ sw $k1, 0x118($k0)
glabel __osEnqueueAndYield
/* 0D23CC 800D17CC 3C05800F */ lui $a1, %hi(__osRunningThread) # $a1, 0x800f
/* 0D23D0 800D17D0 8CA5B3B0 */ lw $a1, %lo(__osRunningThread)($a1)
/* 0D23D4 800D17D4 40086000 */ mfc0 $t0, $12
/* 0D23D8 800D17D8 8CBB0018 */ lw $k1, 0x18($a1)
/* 0D23DC 800D17DC 35080002 */ ori $t0, $t0, 2
/* 0D23E0 800D17E0 ACA80118 */ sw $t0, 0x118($a1)
/* 0D23E4 800D17E4 FCB00098 */ sd $s0, 0x98($a1)
/* 0D23E8 800D17E8 FCB100A0 */ sd $s1, 0xa0($a1)
/* 0D23EC 800D17EC FCB200A8 */ sd $s2, 0xa8($a1)
/* 0D23F0 800D17F0 FCB300B0 */ sd $s3, 0xb0($a1)
/* 0D23F4 800D17F4 FCB400B8 */ sd $s4, 0xb8($a1)
/* 0D23F8 800D17F8 FCB500C0 */ sd $s5, 0xc0($a1)
/* 0D23FC 800D17FC FCB600C8 */ sd $s6, 0xc8($a1)
/* 0D2400 800D1800 FCB700D0 */ sd $s7, 0xd0($a1)
/* 0D2404 800D1804 FCBC00E8 */ sd $gp, 0xe8($a1)
/* 0D2408 800D1808 FCBD00F0 */ sd $sp, 0xf0($a1)
/* 0D240C 800D180C FCBE00F8 */ sd $fp, 0xf8($a1)
/* 0D2410 800D1810 FCBF0100 */ sd $ra, 0x100($a1)
/* 0D2414 800D1814 13600009 */ beqz $k1, .L800D183C
/* 0D2418 800D1818 ACBF011C */ sw $ra, 0x11c($a1)
/* 0D241C 800D181C 445BF800 */ cfc1 $k1, $31
/* 0D2420 800D1820 F4B40180 */ sdc1 $f20, 0x180($a1)
/* 0D2424 800D1824 F4B60188 */ sdc1 $f22, 0x188($a1)
/* 0D2428 800D1828 F4B80190 */ sdc1 $f24, 0x190($a1)
/* 0D242C 800D182C F4BA0198 */ sdc1 $f26, 0x198($a1)
/* 0D2430 800D1830 F4BC01A0 */ sdc1 $f28, 0x1a0($a1)
/* 0D2434 800D1834 F4BE01A8 */ sdc1 $f30, 0x1a8($a1)
/* 0D2438 800D1838 ACBB012C */ sw $k1, 0x12c($a1)
.L800D183C:
/* 0D243C 800D183C 8CBB0118 */ lw $k1, 0x118($a1)
/* 0D2440 800D1840 3369FF00 */ andi $t1, $k1, 0xff00
/* 0D2444 800D1844 1120000D */ beqz $t1, .L800D187C
/* 0D2448 800D1848 00000000 */ nop
/* 0D244C 800D184C 3C08800F */ lui $t0, %hi(__OSGlobalIntMask) # $t0, 0x800f
/* 0D2450 800D1850 2508A5EC */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, -0x5a14
/* 0D2454 800D1854 8D080000 */ lw $t0, ($t0)
/* 0D2458 800D1858 2401FFFF */ li $at, -1
/* 0D245C 800D185C 01014026 */ xor $t0, $t0, $at
/* 0D2460 800D1860 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff
/* 0D2464 800D1864 3108FF00 */ andi $t0, $t0, 0xff00
/* 0D2468 800D1868 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff
/* 0D246C 800D186C 01284825 */ or $t1, $t1, $t0
/* 0D2470 800D1870 0361D824 */ and $k1, $k1, $at
/* 0D2474 800D1874 0369D825 */ or $k1, $k1, $t1
/* 0D2478 800D1878 ACBB0118 */ sw $k1, 0x118($a1)
.L800D187C:
/* 0D247C 800D187C 3C1BA430 */ lui $k1, %hi(D_A430000C) # $k1, 0xa430
/* 0D2480 800D1880 8F7B000C */ lw $k1, %lo(D_A430000C)($k1)
/* 0D2484 800D1884 1360000B */ beqz $k1, .L800D18B4
/* 0D2488 800D1888 00000000 */ nop
/* 0D248C 800D188C 3C1A800F */ lui $k0, %hi(__OSGlobalIntMask) # $k0, 0x800f
/* 0D2490 800D1890 275AA5EC */ addiu $k0, %lo(__OSGlobalIntMask) # addiu $k0, $k0, -0x5a14
/* 0D2494 800D1894 8F5A0000 */ lw $k0, ($k0)
/* 0D2498 800D1898 8CA80128 */ lw $t0, 0x128($a1)
/* 0D249C 800D189C 2401FFFF */ li $at, -1
/* 0D24A0 800D18A0 001AD402 */ srl $k0, $k0, 0x10
/* 0D24A4 800D18A4 0341D026 */ xor $k0, $k0, $at
/* 0D24A8 800D18A8 335A003F */ andi $k0, $k0, 0x3f
/* 0D24AC 800D18AC 0348D024 */ and $k0, $k0, $t0
/* 0D24B0 800D18B0 037AD825 */ or $k1, $k1, $k0
.L800D18B4:
/* 0D24B4 800D18B4 10800003 */ beqz $a0, .L800D18C4
/* 0D24B8 800D18B8 ACBB0128 */ sw $k1, 0x128($a1)
/* 0D24BC 800D18BC 0C034633 */ jal __osEnqueueThread
/* 0D24C0 800D18C0 00000000 */ nop
.L800D18C4:
/* 0D24C4 800D18C4 08034649 */ j __osDispatchThread
/* 0D24C8 800D18C8 00000000 */ nop
glabel __osEnqueueThread
/* 0D24CC 800D18CC 8C980000 */ lw $t8, ($a0)
/* 0D24D0 800D18D0 8CAF0004 */ lw $t7, 4($a1)
/* 0D24D4 800D18D4 0080C825 */ move $t9, $a0
/* 0D24D8 800D18D8 8F0E0004 */ lw $t6, 4($t8)
/* 0D24DC 800D18DC 01CF082A */ slt $at, $t6, $t7
/* 0D24E0 800D18E0 14200007 */ bnez $at, .L800D1900
/* 0D24E4 800D18E4 00000000 */ nop
.L800D18E8:
/* 0D24E8 800D18E8 0300C825 */ move $t9, $t8
/* 0D24EC 800D18EC 8F180000 */ lw $t8, ($t8)
/* 0D24F0 800D18F0 8F0E0004 */ lw $t6, 4($t8)
/* 0D24F4 800D18F4 01CF082A */ slt $at, $t6, $t7
/* 0D24F8 800D18F8 1020FFFB */ beqz $at, .L800D18E8
/* 0D24FC 800D18FC 00000000 */ nop
.L800D1900:
/* 0D2500 800D1900 8F380000 */ lw $t8, ($t9)
/* 0D2504 800D1904 ACB80000 */ sw $t8, ($a1)
/* 0D2508 800D1908 AF250000 */ sw $a1, ($t9)
/* 0D250C 800D190C 03E00008 */ jr $ra
/* 0D2510 800D1910 ACA40008 */ sw $a0, 8($a1)
glabel __osPopThread
/* 0D2514 800D1914 8C820000 */ lw $v0, ($a0)
/* 0D2518 800D1918 8C590000 */ lw $t9, ($v0)
/* 0D251C 800D191C 03E00008 */ jr $ra
/* 0D2520 800D1920 AC990000 */ sw $t9, ($a0)
glabel __osDispatchThread
/* 0D2524 800D1924 3C04800F */ lui $a0, %hi(__osRunQueue) # $a0, 0x800f
/* 0D2528 800D1928 0C034645 */ jal __osPopThread
/* 0D252C 800D192C 2484B3A8 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, -0x4c58
/* 0D2530 800D1930 3C01800F */ lui $at, %hi(__osRunningThread) # $at, 0x800f
/* 0D2534 800D1934 AC22B3B0 */ sw $v0, %lo(__osRunningThread)($at)
/* 0D2538 800D1938 24080004 */ li $t0, 4
/* 0D253C 800D193C A4480010 */ sh $t0, 0x10($v0)
/* 0D2540 800D1940 0040D025 */ move $k0, $v0
/* 0D2544 800D1944 3C08800F */ lui $t0, %hi(__OSGlobalIntMask) # $t0, 0x800f
/* 0D2548 800D1948 8F5B0118 */ lw $k1, 0x118($k0)
/* 0D254C 800D194C 2508A5EC */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, -0x5a14
/* 0D2550 800D1950 8D080000 */ lw $t0, ($t0)
/* 0D2554 800D1954 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff
/* 0D2558 800D1958 3369FF00 */ andi $t1, $k1, 0xff00
/* 0D255C 800D195C 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff
/* 0D2560 800D1960 3108FF00 */ andi $t0, $t0, 0xff00
/* 0D2564 800D1964 01284824 */ and $t1, $t1, $t0
/* 0D2568 800D1968 0361D824 */ and $k1, $k1, $at
/* 0D256C 800D196C 0369D825 */ or $k1, $k1, $t1
/* 0D2570 800D1970 409B6000 */ mtc0 $k1, $12
/* 0D2574 800D1974 DF5B0108 */ ld $k1, 0x108($k0)
/* 0D2578 800D1978 DF410020 */ ld $at, 0x20($k0)
/* 0D257C 800D197C DF420028 */ ld $v0, 0x28($k0)
/* 0D2580 800D1980 03600013 */ mtlo $k1
/* 0D2584 800D1984 DF5B0110 */ ld $k1, 0x110($k0)
/* 0D2588 800D1988 DF430030 */ ld $v1, 0x30($k0)
/* 0D258C 800D198C DF440038 */ ld $a0, 0x38($k0)
/* 0D2590 800D1990 DF450040 */ ld $a1, 0x40($k0)
/* 0D2594 800D1994 DF460048 */ ld $a2, 0x48($k0)
/* 0D2598 800D1998 DF470050 */ ld $a3, 0x50($k0)
/* 0D259C 800D199C DF480058 */ ld $t0, 0x58($k0)
/* 0D25A0 800D19A0 DF490060 */ ld $t1, 0x60($k0)
/* 0D25A4 800D19A4 DF4A0068 */ ld $t2, 0x68($k0)
/* 0D25A8 800D19A8 DF4B0070 */ ld $t3, 0x70($k0)
/* 0D25AC 800D19AC DF4C0078 */ ld $t4, 0x78($k0)
/* 0D25B0 800D19B0 DF4D0080 */ ld $t5, 0x80($k0)
/* 0D25B4 800D19B4 DF4E0088 */ ld $t6, 0x88($k0)
/* 0D25B8 800D19B8 DF4F0090 */ ld $t7, 0x90($k0)
/* 0D25BC 800D19BC DF500098 */ ld $s0, 0x98($k0)
/* 0D25C0 800D19C0 DF5100A0 */ ld $s1, 0xa0($k0)
/* 0D25C4 800D19C4 DF5200A8 */ ld $s2, 0xa8($k0)
/* 0D25C8 800D19C8 DF5300B0 */ ld $s3, 0xb0($k0)
/* 0D25CC 800D19CC DF5400B8 */ ld $s4, 0xb8($k0)
/* 0D25D0 800D19D0 DF5500C0 */ ld $s5, 0xc0($k0)
/* 0D25D4 800D19D4 DF5600C8 */ ld $s6, 0xc8($k0)
/* 0D25D8 800D19D8 DF5700D0 */ ld $s7, 0xd0($k0)
/* 0D25DC 800D19DC DF5800D8 */ ld $t8, 0xd8($k0)
/* 0D25E0 800D19E0 DF5900E0 */ ld $t9, 0xe0($k0)
/* 0D25E4 800D19E4 DF5C00E8 */ ld $gp, 0xe8($k0)
/* 0D25E8 800D19E8 03600011 */ mthi $k1
/* 0D25EC 800D19EC DF5D00F0 */ ld $sp, 0xf0($k0)
/* 0D25F0 800D19F0 DF5E00F8 */ ld $fp, 0xf8($k0)
/* 0D25F4 800D19F4 DF5F0100 */ ld $ra, 0x100($k0)
/* 0D25F8 800D19F8 8F5B011C */ lw $k1, 0x11c($k0)
/* 0D25FC 800D19FC 409B7000 */ mtc0 $k1, $14
/* 0D2600 800D1A00 8F5B0018 */ lw $k1, 0x18($k0)
/* 0D2604 800D1A04 13600013 */ beqz $k1, .L800D1A54
/* 0D2608 800D1A08 00000000 */ nop
/* 0D260C 800D1A0C 8F5B012C */ lw $k1, 0x12c($k0)
/* 0D2610 800D1A10 44DBF800 */ ctc1 $k1, $31
/* 0D2614 800D1A14 D7400130 */ ldc1 $f0, 0x130($k0)
/* 0D2618 800D1A18 D7420138 */ ldc1 $f2, 0x138($k0)
/* 0D261C 800D1A1C D7440140 */ ldc1 $f4, 0x140($k0)
/* 0D2620 800D1A20 D7460148 */ ldc1 $f6, 0x148($k0)
/* 0D2624 800D1A24 D7480150 */ ldc1 $f8, 0x150($k0)
/* 0D2628 800D1A28 D74A0158 */ ldc1 $f10, 0x158($k0)
/* 0D262C 800D1A2C D74C0160 */ ldc1 $f12, 0x160($k0)
/* 0D2630 800D1A30 D74E0168 */ ldc1 $f14, 0x168($k0)
/* 0D2634 800D1A34 D7500170 */ ldc1 $f16, 0x170($k0)
/* 0D2638 800D1A38 D7520178 */ ldc1 $f18, 0x178($k0)
/* 0D263C 800D1A3C D7540180 */ ldc1 $f20, 0x180($k0)
/* 0D2640 800D1A40 D7560188 */ ldc1 $f22, 0x188($k0)
/* 0D2644 800D1A44 D7580190 */ ldc1 $f24, 0x190($k0)
/* 0D2648 800D1A48 D75A0198 */ ldc1 $f26, 0x198($k0)
/* 0D264C 800D1A4C D75C01A0 */ ldc1 $f28, 0x1a0($k0)
/* 0D2650 800D1A50 D75E01A8 */ ldc1 $f30, 0x1a8($k0)
.L800D1A54:
/* 0D2654 800D1A54 8F5B0128 */ lw $k1, 0x128($k0)
/* 0D2658 800D1A58 3C1A800F */ lui $k0, %hi(__OSGlobalIntMask) # $k0, 0x800f
/* 0D265C 800D1A5C 275AA5EC */ addiu $k0, %lo(__OSGlobalIntMask) # addiu $k0, $k0, -0x5a14
/* 0D2660 800D1A60 8F5A0000 */ lw $k0, ($k0)
/* 0D2664 800D1A64 001AD402 */ srl $k0, $k0, 0x10
/* 0D2668 800D1A68 037AD824 */ and $k1, $k1, $k0
/* 0D266C 800D1A6C 001BD840 */ sll $k1, $k1, 1
/* 0D2670 800D1A70 3C1A800F */ lui $k0, %hi(D_800F3C10) # $k0, 0x800f
/* 0D2674 800D1A74 275A3C10 */ addiu $k0, %lo(D_800F3C10) # addiu $k0, $k0, 0x3c10
/* 0D2678 800D1A78 037AD821 */ addu $k1, $k1, $k0
/* 0D267C 800D1A7C 977B0000 */ lhu $k1, ($k1)
/* 0D2680 800D1A80 3C1AA430 */ lui $k0, %hi(D_A430000C) # $k0, 0xa430
/* 0D2684 800D1A84 275A000C */ addiu $k0, %lo(D_A430000C) # addiu $k0, $k0, 0xc
/* 0D2688 800D1A88 AF5B0000 */ sw $k1, ($k0)
/* 0D268C 800D1A8C 00000000 */ nop
/* 0D2690 800D1A90 00000000 */ nop
/* 0D2694 800D1A94 00000000 */ nop
/* 0D2698 800D1A98 00000000 */ nop
/* 0D269C 800D1A9C 42000018 */ eret
glabel __osCleanupThread
/* 0D26A0 800D1AA0 0C035E9C */ jal osDestroyThread
/* 0D26A4 800D1AA4 00002025 */ move $a0, $zero
/* 0D26A8 800D1AA8 00000000 */ nop
/* 0D26AC 800D1AAC 00000000 */ nop