mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 08:52:40 +01:00
58 lines
2.7 KiB
ArmAsm
58 lines
2.7 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel osStopThread
|
|
/* 41540 80066140 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 41544 80066144 AFB00010 */ sw $s0, 0x10($sp)
|
|
/* 41548 80066148 00808021 */ addu $s0, $a0, $zero
|
|
/* 4154C 8006614C AFBF0018 */ sw $ra, 0x18($sp)
|
|
/* 41550 80066150 0C01ACD8 */ jal __osDisableInt
|
|
/* 41554 80066154 AFB10014 */ sw $s1, 0x14($sp)
|
|
/* 41558 80066158 24030004 */ addiu $v1, $zero, 4
|
|
/* 4155C 8006615C 12000002 */ beqz $s0, .L80066168
|
|
/* 41560 80066160 00408821 */ addu $s1, $v0, $zero
|
|
/* 41564 80066164 96030010 */ lhu $v1, 0x10($s0)
|
|
.L80066168:
|
|
/* 41568 80066168 3063FFFF */ andi $v1, $v1, 0xffff
|
|
/* 4156C 8006616C 24020004 */ addiu $v0, $zero, 4
|
|
/* 41570 80066170 1062000C */ beq $v1, $v0, .L800661A4
|
|
/* 41574 80066174 28620005 */ slti $v0, $v1, 5
|
|
/* 41578 80066178 10400005 */ beqz $v0, .L80066190
|
|
/* 4157C 8006617C 24020002 */ addiu $v0, $zero, 2
|
|
/* 41580 80066180 10620010 */ beq $v1, $v0, .L800661C4
|
|
/* 41584 80066184 00000000 */ nop
|
|
/* 41588 80066188 08019876 */ j .L800661D8
|
|
/* 4158C 8006618C 00000000 */ nop
|
|
.L80066190:
|
|
/* 41590 80066190 24020008 */ addiu $v0, $zero, 8
|
|
/* 41594 80066194 1062000B */ beq $v1, $v0, .L800661C4
|
|
/* 41598 80066198 00000000 */ nop
|
|
/* 4159C 8006619C 08019876 */ j .L800661D8
|
|
/* 415A0 800661A0 00000000 */ nop
|
|
.L800661A4:
|
|
/* 415A4 800661A4 3C038009 */ lui $v1, %hi(D_80094660)
|
|
/* 415A8 800661A8 8C634660 */ lw $v1, %lo(D_80094660)($v1)
|
|
/* 415AC 800661AC 00002021 */ addu $a0, $zero, $zero
|
|
/* 415B0 800661B0 24020001 */ addiu $v0, $zero, 1
|
|
/* 415B4 800661B4 0C01AC1B */ jal osEnqueueAndYield
|
|
/* 415B8 800661B8 A4620010 */ sh $v0, 0x10($v1)
|
|
/* 415BC 800661BC 08019876 */ j .L800661D8
|
|
/* 415C0 800661C0 00000000 */ nop
|
|
.L800661C4:
|
|
/* 415C4 800661C4 8E040008 */ lw $a0, 8($s0)
|
|
/* 415C8 800661C8 24020001 */ addiu $v0, $zero, 1
|
|
/* 415CC 800661CC 02002821 */ addu $a1, $s0, $zero
|
|
/* 415D0 800661D0 0C019880 */ jal osDequeueThread
|
|
/* 415D4 800661D4 A6020010 */ sh $v0, 0x10($s0)
|
|
.L800661D8:
|
|
/* 415D8 800661D8 0C01ACF4 */ jal __osRestoreInt
|
|
/* 415DC 800661DC 02202021 */ addu $a0, $s1, $zero
|
|
/* 415E0 800661E0 8FBF0018 */ lw $ra, 0x18($sp)
|
|
/* 415E4 800661E4 8FB10014 */ lw $s1, 0x14($sp)
|
|
/* 415E8 800661E8 8FB00010 */ lw $s0, 0x10($sp)
|
|
/* 415EC 800661EC 03E00008 */ jr $ra
|
|
/* 415F0 800661F0 27BD0020 */ addiu $sp, $sp, 0x20
|
|
/* 415F4 800661F4 00000000 */ nop
|
|
/* 415F8 800661F8 00000000 */ nop
|
|
/* 415FC 800661FC 00000000 */ nop
|