Decompile amgrMain
This commit is contained in:
parent
7b01b104bf
commit
9ea46b4abe
|
|
@ -32,8 +32,7 @@ u32 var800915bc;
|
|||
u32 var800915c0;
|
||||
u32 var800915c4;
|
||||
AMAudioMgr g_AudioManager;
|
||||
u32 var800918d0;
|
||||
u32 var800918d4;
|
||||
OSScClient var800918d0;
|
||||
u32 var800918d8;
|
||||
u32 var800918dc;
|
||||
u32 var800918e0;
|
||||
|
|
@ -396,7 +395,6 @@ u32 var8005d504 = 0x00000000;
|
|||
u32 var8005d508 = 0x00000000;
|
||||
u32 var8005d50c = 0x00000000;
|
||||
s8 g_AudioIsThreadRunning = false;
|
||||
u32 var8005d514 = 0x00000001;
|
||||
|
||||
void amgrHandleDoneMsg(AudioInfo *info);
|
||||
|
||||
|
|
@ -1337,470 +1335,66 @@ void amgrStopThread(void)
|
|||
}
|
||||
}
|
||||
|
||||
void amgrMain(void *arg)
|
||||
{
|
||||
s32 count = 0;
|
||||
bool done = false;
|
||||
s16 *msg = NULL;
|
||||
AudioInfo *info = NULL;
|
||||
|
||||
static u32 var8005d514 = 1;
|
||||
|
||||
#if VERSION >= VERSION_PAL_FINAL
|
||||
GLOBAL_ASM(
|
||||
glabel amgrMain
|
||||
/* 907c: 27bdff90 */ addiu $sp,$sp,-112
|
||||
/* 9080: afa40070 */ sw $a0,0x70($sp)
|
||||
/* 9084: afbf003c */ sw $ra,0x3c($sp)
|
||||
/* 9088: afb30024 */ sw $s3,0x24($sp)
|
||||
/* 908c: afb20020 */ sw $s2,0x20($sp)
|
||||
/* 9090: 3c048009 */ lui $a0,0x8009
|
||||
/* 9094: 3c058009 */ lui $a1,0x8009
|
||||
/* 9098: 3c068009 */ lui $a2,0x8009
|
||||
/* 909c: afbe0038 */ sw $s8,0x38($sp)
|
||||
/* 90a0: afb70034 */ sw $s7,0x34($sp)
|
||||
/* 90a4: afb60030 */ sw $s6,0x30($sp)
|
||||
/* 90a8: afb5002c */ sw $s5,0x2c($sp)
|
||||
/* 90ac: afb40028 */ sw $s4,0x28($sp)
|
||||
/* 90b0: afb1001c */ sw $s1,0x1c($sp)
|
||||
/* 90b4: afb00018 */ sw $s0,0x18($sp)
|
||||
/* 90b8: 00009025 */ move $s2,$zero
|
||||
/* 90bc: 00009825 */ move $s3,$zero
|
||||
/* 90c0: afa00064 */ sw $zero,0x64($sp)
|
||||
/* 90c4: afa00060 */ sw $zero,0x60($sp)
|
||||
/* 90c8: 24c61d60 */ addiu $a2,$a2,0x1d60
|
||||
/* 90cc: 24a51e20 */ addiu $a1,$a1,0x1e20
|
||||
/* 90d0: 2484e120 */ addiu $a0,$a0,-7904
|
||||
/* 90d4: 0c00078c */ jal osScAddClient
|
||||
/* 90d8: 24070001 */ li $a3,0x1
|
||||
/* 90dc: 3c158009 */ lui $s5,0x8009
|
||||
/* 90e0: 3c148009 */ lui $s4,0x8009
|
||||
/* 90e4: 3c118009 */ lui $s1,0x8009
|
||||
/* 90e8: 3c108009 */ lui $s0,0x8009
|
||||
/* 90ec: 26101ad0 */ addiu $s0,$s0,0x1ad0
|
||||
/* 90f0: 26311ab8 */ addiu $s1,$s1,0x1ab8
|
||||
/* 90f4: 26941ad8 */ addiu $s4,$s4,0x1ad8
|
||||
/* 90f8: 26b51ae0 */ addiu $s5,$s5,0x1ae0
|
||||
/* 90fc: 241e0005 */ li $s8,0x5
|
||||
/* 9100: 24170004 */ li $s7,0x4
|
||||
/* 9104: 27b60064 */ addiu $s6,$sp,0x64
|
||||
.PF00009108:
|
||||
/* 9108: 3c048009 */ lui $a0,0x8009
|
||||
/* 910c: 24841d60 */ addiu $a0,$a0,0x1d60
|
||||
/* 9110: 02c02825 */ move $a1,$s6
|
||||
/* 9114: 0c011ffc */ jal osRecvMesg
|
||||
/* 9118: 24060001 */ li $a2,0x1
|
||||
/* 911c: 8fae0064 */ lw $t6,0x64($sp)
|
||||
/* 9120: 85c40000 */ lh $a0,0x0($t6)
|
||||
/* 9124: 10970007 */ beq $a0,$s7,.PF00009144
|
||||
/* 9128: 00000000 */ nop
|
||||
/* 912c: 109e0078 */ beq $a0,$s8,.PF00009310
|
||||
/* 9130: 2401000a */ li $at,0xa
|
||||
/* 9134: 50810079 */ beql $a0,$at,.PF0000931c
|
||||
/* 9138: 24130001 */ li $s3,0x1
|
||||
/* 913c: 10000077 */ b .PF0000931c
|
||||
/* 9140: 00000000 */ nop
|
||||
.PF00009144:
|
||||
/* 9144: 0c012288 */ jal osGetTime
|
||||
/* 9148: 00000000 */ nop
|
||||
/* 914c: ae820000 */ sw $v0,0x0($s4)
|
||||
/* 9150: ae830004 */ sw $v1,0x4($s4)
|
||||
/* 9154: 0c002664 */ jal func00009aa0
|
||||
/* 9158: 3c040003 */ lui $a0,0x3
|
||||
/* 915c: 3c0f8009 */ lui $t7,0x8009
|
||||
/* 9160: 8def2d78 */ lw $t7,0x2d78($t7)
|
||||
/* 9164: 24010003 */ li $at,0x3
|
||||
/* 9168: 3c048009 */ lui $a0,0x8009
|
||||
/* 916c: 01e1001b */ divu $zero,$t7,$at
|
||||
/* 9170: 0000c010 */ mfhi $t8
|
||||
/* 9174: 0018c880 */ sll $t9,$t8,0x2
|
||||
/* 9178: 00992021 */ addu $a0,$a0,$t9
|
||||
/* 917c: 8c841b20 */ lw $a0,0x1b20($a0)
|
||||
/* 9180: 0c0024d8 */ jal amgrHandleFrameMsg
|
||||
/* 9184: 8fa50060 */ lw $a1,0x60($sp)
|
||||
/* 9188: 0c00263f */ jal func00009a08
|
||||
/* 918c: 00000000 */ nop
|
||||
/* 9190: 26520001 */ addiu $s2,$s2,0x1
|
||||
/* 9194: 0c002664 */ jal func00009aa0
|
||||
/* 9198: 3c040006 */ lui $a0,0x6
|
||||
/* 919c: 0c012288 */ jal osGetTime
|
||||
/* 91a0: 00000000 */ nop
|
||||
/* 91a4: 8e8a0000 */ lw $t2,0x0($s4)
|
||||
/* 91a8: 8e8b0004 */ lw $t3,0x4($s4)
|
||||
/* 91ac: aea20000 */ sw $v0,0x0($s5)
|
||||
/* 91b0: 004ac023 */ subu $t8,$v0,$t2
|
||||
/* 91b4: 006b082b */ sltu $at,$v1,$t3
|
||||
/* 91b8: 0301c023 */ subu $t8,$t8,$at
|
||||
/* 91bc: aea30004 */ sw $v1,0x4($s5)
|
||||
/* 91c0: 3c018009 */ lui $at,0x8009
|
||||
/* 91c4: 006bc823 */ subu $t9,$v1,$t3
|
||||
/* 91c8: ac391ac4 */ sw $t9,0x1ac4($at)
|
||||
/* 91cc: ac381ac0 */ sw $t8,0x1ac0($at)
|
||||
/* 91d0: 240100f0 */ li $at,0xf0
|
||||
/* 91d4: 0241001a */ div $zero,$s2,$at
|
||||
/* 91d8: 00004010 */ mfhi $t0
|
||||
/* 91dc: afb90044 */ sw $t9,0x44($sp)
|
||||
/* 91e0: afb80040 */ sw $t8,0x40($sp)
|
||||
/* 91e4: afa20050 */ sw $v0,0x50($sp)
|
||||
/* 91e8: afa30054 */ sw $v1,0x54($sp)
|
||||
/* 91ec: afaa0048 */ sw $t2,0x48($sp)
|
||||
/* 91f0: 1500001c */ bnez $t0,.PF00009264
|
||||
/* 91f4: afab004c */ sw $t3,0x4c($sp)
|
||||
/* 91f8: 8e040000 */ lw $a0,0x0($s0)
|
||||
/* 91fc: 8e050004 */ lw $a1,0x4($s0)
|
||||
/* 9200: 24060000 */ li $a2,0x0
|
||||
/* 9204: 0c01369a */ jal __ull_div
|
||||
/* 9208: 240700f0 */ li $a3,0xf0
|
||||
/* 920c: 3c018009 */ lui $at,0x8009
|
||||
/* 9210: ac221ac8 */ sw $v0,0x1ac8($at)
|
||||
/* 9214: ac231acc */ sw $v1,0x1acc($at)
|
||||
/* 9218: 8e990004 */ lw $t9,0x4($s4)
|
||||
/* 921c: 8e980000 */ lw $t8,0x0($s4)
|
||||
/* 9220: 8eaf0004 */ lw $t7,0x4($s5)
|
||||
/* 9224: 8eae0000 */ lw $t6,0x0($s5)
|
||||
/* 9228: 240a0000 */ li $t2,0x0
|
||||
/* 922c: 01f9082b */ sltu $at,$t7,$t9
|
||||
/* 9230: 01d84023 */ subu $t0,$t6,$t8
|
||||
/* 9234: 01014023 */ subu $t0,$t0,$at
|
||||
/* 9238: 240b0000 */ li $t3,0x0
|
||||
/* 923c: 240c0000 */ li $t4,0x0
|
||||
/* 9240: 240d0000 */ li $t5,0x0
|
||||
/* 9244: 01f94823 */ subu $t1,$t7,$t9
|
||||
/* 9248: afa90044 */ sw $t1,0x44($sp)
|
||||
/* 924c: ae2d0004 */ sw $t5,0x4($s1)
|
||||
/* 9250: ae2c0000 */ sw $t4,0x0($s1)
|
||||
/* 9254: ae0b0004 */ sw $t3,0x4($s0)
|
||||
/* 9258: afa80040 */ sw $t0,0x40($sp)
|
||||
/* 925c: 10000011 */ b .PF000092a4
|
||||
/* 9260: ae0a0000 */ sw $t2,0x0($s0)
|
||||
.PF00009264:
|
||||
/* 9264: 8e0b0004 */ lw $t3,0x4($s0)
|
||||
/* 9268: 8fad0054 */ lw $t5,0x54($sp)
|
||||
/* 926c: 8e0a0000 */ lw $t2,0x0($s0)
|
||||
/* 9270: 8fac0050 */ lw $t4,0x50($sp)
|
||||
/* 9274: 016d7821 */ addu $t7,$t3,$t5
|
||||
/* 9278: 8fb80048 */ lw $t8,0x48($sp)
|
||||
/* 927c: 8fb9004c */ lw $t9,0x4c($sp)
|
||||
/* 9280: 01ed082b */ sltu $at,$t7,$t5
|
||||
/* 9284: 002a7021 */ addu $t6,$at,$t2
|
||||
/* 9288: 01cc7021 */ addu $t6,$t6,$t4
|
||||
/* 928c: 01d84023 */ subu $t0,$t6,$t8
|
||||
/* 9290: 01f9082b */ sltu $at,$t7,$t9
|
||||
/* 9294: 01014023 */ subu $t0,$t0,$at
|
||||
/* 9298: 01f94823 */ subu $t1,$t7,$t9
|
||||
/* 929c: ae090004 */ sw $t1,0x4($s0)
|
||||
/* 92a0: ae080000 */ sw $t0,0x0($s0)
|
||||
.PF000092a4:
|
||||
/* 92a4: 8e2a0000 */ lw $t2,0x0($s1)
|
||||
/* 92a8: 8fac0040 */ lw $t4,0x40($sp)
|
||||
/* 92ac: 8e2b0004 */ lw $t3,0x4($s1)
|
||||
/* 92b0: 8fad0044 */ lw $t5,0x44($sp)
|
||||
/* 92b4: 018a082b */ sltu $at,$t4,$t2
|
||||
/* 92b8: 14200008 */ bnez $at,.PF000092dc
|
||||
/* 92bc: 3c0e8006 */ lui $t6,0x8006
|
||||
/* 92c0: 014c082b */ sltu $at,$t2,$t4
|
||||
/* 92c4: 14200003 */ bnez $at,.PF000092d4
|
||||
/* 92c8: 016d082b */ sltu $at,$t3,$t5
|
||||
/* 92cc: 10200003 */ beqz $at,.PF000092dc
|
||||
/* 92d0: 00000000 */ nop
|
||||
.PF000092d4:
|
||||
/* 92d4: ae2c0000 */ sw $t4,0x0($s1)
|
||||
/* 92d8: ae2d0004 */ sw $t5,0x4($s1)
|
||||
.PF000092dc:
|
||||
/* 92dc: 8dced1b4 */ lw $t6,-0x2e4c($t6)
|
||||
/* 92e0: 3c048009 */ lui $a0,0x8009
|
||||
/* 92e4: 24841d98 */ addiu $a0,$a0,0x1d98
|
||||
/* 92e8: 15c00003 */ bnez $t6,.PF000092f8
|
||||
/* 92ec: 27a50060 */ addiu $a1,$sp,0x60
|
||||
/* 92f0: 0c011ffc */ jal osRecvMesg
|
||||
/* 92f4: 24060001 */ li $a2,0x1
|
||||
.PF000092f8:
|
||||
/* 92f8: 3c018006 */ lui $at,0x8006
|
||||
/* 92fc: ac20d1b4 */ sw $zero,-0x2e4c($at)
|
||||
/* 9300: 0c00254b */ jal amgrHandleDoneMsg
|
||||
/* 9304: 8fa40060 */ lw $a0,0x60($sp)
|
||||
/* 9308: 10000004 */ b .PF0000931c
|
||||
/* 930c: 00000000 */ nop
|
||||
.PF00009310:
|
||||
/* 9310: 10000002 */ b .PF0000931c
|
||||
/* 9314: 24130001 */ li $s3,0x1
|
||||
/* 9318: 24130001 */ li $s3,0x1
|
||||
.PF0000931c:
|
||||
/* 931c: 1260ff7a */ beqz $s3,.PF00009108
|
||||
/* 9320: 00000000 */ nop
|
||||
/* 9324: 3c048009 */ lui $a0,0x8009
|
||||
/* 9328: 0c00bd43 */ jal n_alClose
|
||||
/* 932c: 24841dd0 */ addiu $a0,$a0,0x1dd0
|
||||
/* 9330: 8fbf003c */ lw $ra,0x3c($sp)
|
||||
/* 9334: 8fb00018 */ lw $s0,0x18($sp)
|
||||
/* 9338: 8fb1001c */ lw $s1,0x1c($sp)
|
||||
/* 933c: 8fb20020 */ lw $s2,0x20($sp)
|
||||
/* 9340: 8fb30024 */ lw $s3,0x24($sp)
|
||||
/* 9344: 8fb40028 */ lw $s4,0x28($sp)
|
||||
/* 9348: 8fb5002c */ lw $s5,0x2c($sp)
|
||||
/* 934c: 8fb60030 */ lw $s6,0x30($sp)
|
||||
/* 9350: 8fb70034 */ lw $s7,0x34($sp)
|
||||
/* 9354: 8fbe0038 */ lw $s8,0x38($sp)
|
||||
/* 9358: 03e00008 */ jr $ra
|
||||
/* 935c: 27bd0070 */ addiu $sp,$sp,0x70
|
||||
);
|
||||
osScAddClient(&g_SchedThread, &var800918d0, &g_AudioManager.audioFrameMsgQ, (void *)true);
|
||||
#else
|
||||
GLOBAL_ASM(
|
||||
glabel amgrMain
|
||||
/* 9154: 27bdff90 */ addiu $sp,$sp,-112
|
||||
/* 9158: 3c078009 */ lui $a3,%hi(g_Is4Mb)
|
||||
/* 915c: 90e70af0 */ lbu $a3,%lo(g_Is4Mb)($a3)
|
||||
/* 9160: afa40070 */ sw $a0,0x70($sp)
|
||||
/* 9164: afbf003c */ sw $ra,0x3c($sp)
|
||||
/* 9168: 38ee0001 */ xori $t6,$a3,0x1
|
||||
/* 916c: afb30024 */ sw $s3,0x24($sp)
|
||||
/* 9170: afb20020 */ sw $s2,0x20($sp)
|
||||
/* 9174: 2dce0001 */ sltiu $t6,$t6,0x1
|
||||
/* 9178: 3c048009 */ lui $a0,%hi(g_SchedThread)
|
||||
/* 917c: 3c058009 */ lui $a1,%hi(var800918d0)
|
||||
/* 9180: 3c068009 */ lui $a2,%hi(g_AudioManager+0x248)
|
||||
/* 9184: afbe0038 */ sw $s8,0x38($sp)
|
||||
/* 9188: afb70034 */ sw $s7,0x34($sp)
|
||||
/* 918c: afb60030 */ sw $s6,0x30($sp)
|
||||
/* 9190: afb5002c */ sw $s5,0x2c($sp)
|
||||
/* 9194: afb40028 */ sw $s4,0x28($sp)
|
||||
/* 9198: afb1001c */ sw $s1,0x1c($sp)
|
||||
/* 919c: afb00018 */ sw $s0,0x18($sp)
|
||||
/* 91a0: 00009025 */ or $s2,$zero,$zero
|
||||
/* 91a4: 00009825 */ or $s3,$zero,$zero
|
||||
/* 91a8: afa00064 */ sw $zero,0x64($sp)
|
||||
/* 91ac: afa00060 */ sw $zero,0x60($sp)
|
||||
/* 91b0: 24c61810 */ addiu $a2,$a2,%lo(g_AudioManager+0x248)
|
||||
/* 91b4: 24a518d0 */ addiu $a1,$a1,%lo(var800918d0)
|
||||
/* 91b8: 2484dbd0 */ addiu $a0,$a0,%lo(g_SchedThread)
|
||||
/* 91bc: 0c00078c */ jal osScAddClient
|
||||
/* 91c0: 2dc70001 */ sltiu $a3,$t6,0x1
|
||||
/* 91c4: 3c158009 */ lui $s5,%hi(var80091590)
|
||||
/* 91c8: 3c148009 */ lui $s4,%hi(var80091588)
|
||||
/* 91cc: 3c118009 */ lui $s1,%hi(var80091568)
|
||||
/* 91d0: 3c108009 */ lui $s0,%hi(var80091580)
|
||||
/* 91d4: 26101580 */ addiu $s0,$s0,%lo(var80091580)
|
||||
/* 91d8: 26311568 */ addiu $s1,$s1,%lo(var80091568)
|
||||
/* 91dc: 26941588 */ addiu $s4,$s4,%lo(var80091588)
|
||||
/* 91e0: 26b51590 */ addiu $s5,$s5,%lo(var80091590)
|
||||
/* 91e4: 241e0005 */ addiu $s8,$zero,0x5
|
||||
/* 91e8: 24170004 */ addiu $s7,$zero,0x4
|
||||
/* 91ec: 27b60064 */ addiu $s6,$sp,0x64
|
||||
.L000091f0:
|
||||
/* 91f0: 3c048009 */ lui $a0,%hi(g_AudioManager+0x248)
|
||||
/* 91f4: 24841810 */ addiu $a0,$a0,%lo(g_AudioManager+0x248)
|
||||
/* 91f8: 02c02825 */ or $a1,$s6,$zero
|
||||
/* 91fc: 0c0121bc */ jal osRecvMesg
|
||||
/* 9200: 24060001 */ addiu $a2,$zero,0x1
|
||||
/* 9204: 8faf0064 */ lw $t7,0x64($sp)
|
||||
/* 9208: 85e70000 */ lh $a3,0x0($t7)
|
||||
/* 920c: 10f70007 */ beq $a3,$s7,.L0000922c
|
||||
/* 9210: 00000000 */ nop
|
||||
/* 9214: 10fe0078 */ beq $a3,$s8,.L000093f8
|
||||
/* 9218: 2401000a */ addiu $at,$zero,0xa
|
||||
/* 921c: 50e10079 */ beql $a3,$at,.L00009404
|
||||
/* 9220: 24130001 */ addiu $s3,$zero,0x1
|
||||
/* 9224: 10000077 */ b .L00009404
|
||||
/* 9228: 00000000 */ nop
|
||||
.L0000922c:
|
||||
/* 922c: 0c012448 */ jal osGetTime
|
||||
/* 9230: 00000000 */ nop
|
||||
/* 9234: ae820000 */ sw $v0,0x0($s4)
|
||||
/* 9238: ae830004 */ sw $v1,0x4($s4)
|
||||
/* 923c: 0c0026a8 */ jal func00009aa0
|
||||
/* 9240: 3c040003 */ lui $a0,0x3
|
||||
/* 9244: 3c188009 */ lui $t8,%hi(var80092828)
|
||||
/* 9248: 8f182828 */ lw $t8,%lo(var80092828)($t8)
|
||||
/* 924c: 24010003 */ addiu $at,$zero,0x3
|
||||
/* 9250: 3c048009 */ lui $a0,%hi(g_AudioManager+0x8)
|
||||
/* 9254: 0301001b */ divu $zero,$t8,$at
|
||||
/* 9258: 0000c810 */ mfhi $t9
|
||||
/* 925c: 00194080 */ sll $t0,$t9,0x2
|
||||
/* 9260: 00882021 */ addu $a0,$a0,$t0
|
||||
/* 9264: 8c8415d0 */ lw $a0,%lo(g_AudioManager+0x8)($a0)
|
||||
/* 9268: 0c002512 */ jal amgrHandleFrameMsg
|
||||
/* 926c: 8fa50060 */ lw $a1,0x60($sp)
|
||||
/* 9270: 0c002682 */ jal func00009a08
|
||||
/* 9274: 00000000 */ nop
|
||||
/* 9278: 26520001 */ addiu $s2,$s2,0x1
|
||||
/* 927c: 0c0026a8 */ jal func00009aa0
|
||||
/* 9280: 3c040006 */ lui $a0,0x6
|
||||
/* 9284: 0c012448 */ jal osGetTime
|
||||
/* 9288: 00000000 */ nop
|
||||
/* 928c: 8e8c0000 */ lw $t4,0x0($s4)
|
||||
/* 9290: 8e8d0004 */ lw $t5,0x4($s4)
|
||||
/* 9294: aea20000 */ sw $v0,0x0($s5)
|
||||
/* 9298: 004c4023 */ subu $t0,$v0,$t4
|
||||
/* 929c: 006d082b */ sltu $at,$v1,$t5
|
||||
/* 92a0: 01014023 */ subu $t0,$t0,$at
|
||||
/* 92a4: aea30004 */ sw $v1,0x4($s5)
|
||||
/* 92a8: 3c018009 */ lui $at,%hi(var80091570+0x4)
|
||||
/* 92ac: 006d4823 */ subu $t1,$v1,$t5
|
||||
/* 92b0: ac291574 */ sw $t1,%lo(var80091570+0x4)($at)
|
||||
/* 92b4: ac281570 */ sw $t0,0x1570($at)
|
||||
/* 92b8: 240100f0 */ addiu $at,$zero,0xf0
|
||||
/* 92bc: 0241001a */ div $zero,$s2,$at
|
||||
/* 92c0: 00005010 */ mfhi $t2
|
||||
/* 92c4: afa90044 */ sw $t1,0x44($sp)
|
||||
/* 92c8: afa80040 */ sw $t0,0x40($sp)
|
||||
/* 92cc: afa20050 */ sw $v0,0x50($sp)
|
||||
/* 92d0: afa30054 */ sw $v1,0x54($sp)
|
||||
/* 92d4: afac0048 */ sw $t4,0x48($sp)
|
||||
/* 92d8: 1540001c */ bnez $t2,.L0000934c
|
||||
/* 92dc: afad004c */ sw $t5,0x4c($sp)
|
||||
/* 92e0: 8e040000 */ lw $a0,0x0($s0)
|
||||
/* 92e4: 8e050004 */ lw $a1,0x4($s0)
|
||||
/* 92e8: 24060000 */ addiu $a2,$zero,0x0
|
||||
/* 92ec: 0c012b9a */ jal __ull_div
|
||||
/* 92f0: 240700f0 */ addiu $a3,$zero,0xf0
|
||||
/* 92f4: 3c018009 */ lui $at,%hi(var80091578)
|
||||
/* 92f8: ac221578 */ sw $v0,%lo(var80091578)($at)
|
||||
/* 92fc: ac23157c */ sw $v1,0x157c($at)
|
||||
/* 9300: 8e890004 */ lw $t1,0x4($s4)
|
||||
/* 9304: 8e880000 */ lw $t0,0x0($s4)
|
||||
/* 9308: 8eb90004 */ lw $t9,0x4($s5)
|
||||
/* 930c: 8eb80000 */ lw $t8,0x0($s5)
|
||||
/* 9310: 240c0000 */ addiu $t4,$zero,0x0
|
||||
/* 9314: 0329082b */ sltu $at,$t9,$t1
|
||||
/* 9318: 03085023 */ subu $t2,$t8,$t0
|
||||
/* 931c: 01415023 */ subu $t2,$t2,$at
|
||||
/* 9320: 240d0000 */ addiu $t5,$zero,0x0
|
||||
/* 9324: 240e0000 */ addiu $t6,$zero,0x0
|
||||
/* 9328: 240f0000 */ addiu $t7,$zero,0x0
|
||||
/* 932c: 03295823 */ subu $t3,$t9,$t1
|
||||
/* 9330: afab0044 */ sw $t3,0x44($sp)
|
||||
/* 9334: ae2f0004 */ sw $t7,0x4($s1)
|
||||
/* 9338: ae2e0000 */ sw $t6,0x0($s1)
|
||||
/* 933c: ae0d0004 */ sw $t5,0x4($s0)
|
||||
/* 9340: afaa0040 */ sw $t2,0x40($sp)
|
||||
/* 9344: 10000011 */ b .L0000938c
|
||||
/* 9348: ae0c0000 */ sw $t4,0x0($s0)
|
||||
.L0000934c:
|
||||
/* 934c: 8e0d0004 */ lw $t5,0x4($s0)
|
||||
/* 9350: 8faf0054 */ lw $t7,0x54($sp)
|
||||
/* 9354: 8e0c0000 */ lw $t4,0x0($s0)
|
||||
/* 9358: 8fae0050 */ lw $t6,0x50($sp)
|
||||
/* 935c: 01afc821 */ addu $t9,$t5,$t7
|
||||
/* 9360: 8fa80048 */ lw $t0,0x48($sp)
|
||||
/* 9364: 8fa9004c */ lw $t1,0x4c($sp)
|
||||
/* 9368: 032f082b */ sltu $at,$t9,$t7
|
||||
/* 936c: 002cc021 */ addu $t8,$at,$t4
|
||||
/* 9370: 030ec021 */ addu $t8,$t8,$t6
|
||||
/* 9374: 03085023 */ subu $t2,$t8,$t0
|
||||
/* 9378: 0329082b */ sltu $at,$t9,$t1
|
||||
/* 937c: 01415023 */ subu $t2,$t2,$at
|
||||
/* 9380: 03295823 */ subu $t3,$t9,$t1
|
||||
/* 9384: ae0b0004 */ sw $t3,0x4($s0)
|
||||
/* 9388: ae0a0000 */ sw $t2,0x0($s0)
|
||||
.L0000938c:
|
||||
/* 938c: 8e2c0000 */ lw $t4,0x0($s1)
|
||||
/* 9390: 8fae0040 */ lw $t6,0x40($sp)
|
||||
/* 9394: 8e2d0004 */ lw $t5,0x4($s1)
|
||||
/* 9398: 8faf0044 */ lw $t7,0x44($sp)
|
||||
/* 939c: 01cc082b */ sltu $at,$t6,$t4
|
||||
/* 93a0: 14200008 */ bnez $at,.L000093c4
|
||||
/* 93a4: 3c188006 */ lui $t8,%hi(var8005d514)
|
||||
/* 93a8: 018e082b */ sltu $at,$t4,$t6
|
||||
/* 93ac: 14200003 */ bnez $at,.L000093bc
|
||||
/* 93b0: 01af082b */ sltu $at,$t5,$t7
|
||||
/* 93b4: 10200003 */ beqz $at,.L000093c4
|
||||
/* 93b8: 00000000 */ nop
|
||||
.L000093bc:
|
||||
/* 93bc: ae2e0000 */ sw $t6,0x0($s1)
|
||||
/* 93c0: ae2f0004 */ sw $t7,0x4($s1)
|
||||
.L000093c4:
|
||||
/* 93c4: 8f18d514 */ lw $t8,%lo(var8005d514)($t8)
|
||||
/* 93c8: 3c048009 */ lui $a0,%hi(g_AudioManager+0x280)
|
||||
/* 93cc: 24841848 */ addiu $a0,$a0,%lo(g_AudioManager+0x280)
|
||||
/* 93d0: 17000003 */ bnez $t8,.L000093e0
|
||||
/* 93d4: 27a50060 */ addiu $a1,$sp,0x60
|
||||
/* 93d8: 0c0121bc */ jal osRecvMesg
|
||||
/* 93dc: 24060001 */ addiu $a2,$zero,0x1
|
||||
.L000093e0:
|
||||
/* 93e0: 3c018006 */ lui $at,%hi(var8005d514)
|
||||
/* 93e4: ac20d514 */ sw $zero,%lo(var8005d514)($at)
|
||||
/* 93e8: 0c002585 */ jal amgrHandleDoneMsg
|
||||
/* 93ec: 8fa40060 */ lw $a0,0x60($sp)
|
||||
/* 93f0: 10000004 */ b .L00009404
|
||||
/* 93f4: 00000000 */ nop
|
||||
.L000093f8:
|
||||
/* 93f8: 10000002 */ b .L00009404
|
||||
/* 93fc: 24130001 */ addiu $s3,$zero,0x1
|
||||
/* 9400: 24130001 */ addiu $s3,$zero,0x1
|
||||
.L00009404:
|
||||
/* 9404: 1260ff7a */ beqz $s3,.L000091f0
|
||||
/* 9408: 00000000 */ nop
|
||||
/* 940c: 3c048009 */ lui $a0,%hi(g_AudioManager+0x2b8)
|
||||
/* 9410: 0c00bf03 */ jal n_alClose
|
||||
/* 9414: 24841880 */ addiu $a0,$a0,%lo(g_AudioManager+0x2b8)
|
||||
/* 9418: 8fbf003c */ lw $ra,0x3c($sp)
|
||||
/* 941c: 8fb00018 */ lw $s0,0x18($sp)
|
||||
/* 9420: 8fb1001c */ lw $s1,0x1c($sp)
|
||||
/* 9424: 8fb20020 */ lw $s2,0x20($sp)
|
||||
/* 9428: 8fb30024 */ lw $s3,0x24($sp)
|
||||
/* 942c: 8fb40028 */ lw $s4,0x28($sp)
|
||||
/* 9430: 8fb5002c */ lw $s5,0x2c($sp)
|
||||
/* 9434: 8fb60030 */ lw $s6,0x30($sp)
|
||||
/* 9438: 8fb70034 */ lw $s7,0x34($sp)
|
||||
/* 943c: 8fbe0038 */ lw $s8,0x38($sp)
|
||||
/* 9440: 03e00008 */ jr $ra
|
||||
/* 9444: 27bd0070 */ addiu $sp,$sp,0x70
|
||||
);
|
||||
osScAddClient(&g_SchedThread, &var800918d0, &g_AudioManager.audioFrameMsgQ, (void *)!IS4MB());
|
||||
#endif
|
||||
|
||||
// Mismatch: needs bss relocation
|
||||
//void amgrMain(void *arg)
|
||||
//{
|
||||
// s32 count = 0; // s2
|
||||
// bool done = false; // s3
|
||||
// s16 *msg = NULL; // 64
|
||||
// AudioInfo *info = NULL; // 60
|
||||
//
|
||||
// static u32 var8005d514;
|
||||
// static u64 var80091570;
|
||||
// static u64 var80091578;
|
||||
//
|
||||
// osScAddClient(&g_SchedThread, &var800918d0, &g_AudioManager.audioFrameMsgQ, (void *)!IS4MB());
|
||||
//
|
||||
// while (!done) {
|
||||
// osRecvMesg(&g_AudioManager.audioFrameMsgQ, (OSMesg *) &msg, OS_MESG_BLOCK);
|
||||
//
|
||||
// switch (*msg) {
|
||||
// case 4:
|
||||
// var80091588 = osGetTime();
|
||||
// func00009aa0(0x30000);
|
||||
// amgrHandleFrameMsg(var800915d0[var80092828 % 3], info);
|
||||
// func00009a08();
|
||||
//
|
||||
// count++;
|
||||
// func00009aa0(0x60000);
|
||||
//
|
||||
// var80091590 = osGetTime();
|
||||
// var80091570 = var80091590 - var80091588;
|
||||
//
|
||||
// // 2d8
|
||||
// if (count % 240 == 0) {
|
||||
// var80091578 = var80091580 / 240;
|
||||
// var80091568 = 0;
|
||||
// var80091580 = 0;
|
||||
// } else {
|
||||
// // 34c
|
||||
// var80091580 = (var80091580 + var80091590) - var80091588;
|
||||
// }
|
||||
//
|
||||
// if (var80091568 < var80091590 - var80091588) {
|
||||
// var80091568 = var80091590 - var80091588;
|
||||
// }
|
||||
//
|
||||
// if (var8005d514 == 0) {
|
||||
// osRecvMesg(&g_AudioManager.audioReplyMsgQ, (OSMesg *) &info, OS_MESG_BLOCK);
|
||||
// }
|
||||
//
|
||||
// var8005d514 = 0;
|
||||
// amgrHandleDoneMsg(info);
|
||||
// break;
|
||||
// case 5:
|
||||
// done = true;
|
||||
// break;
|
||||
// case 10:
|
||||
// done = true;
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// n_alClose(&g_AudioManager.g);
|
||||
//}
|
||||
while (!done) {
|
||||
osRecvMesg(&g_AudioManager.audioFrameMsgQ, (OSMesg *) &msg, OS_MESG_BLOCK);
|
||||
|
||||
switch (*msg) {
|
||||
case 4:
|
||||
var80091588 = osGetTime();
|
||||
func00009aa0(0x30000);
|
||||
amgrHandleFrameMsg(g_AudioManager.audioInfo[var80092828 % 3], info);
|
||||
func00009a08();
|
||||
|
||||
count++;
|
||||
func00009aa0(0x60000);
|
||||
|
||||
var80091590 = osGetTime();
|
||||
var80091570 = var80091590 - var80091588;
|
||||
|
||||
if (count % 240 == 0) {
|
||||
var80091578 = var80091580 / 240;
|
||||
var80091580 = 0; var80091568 = 0;
|
||||
} else {
|
||||
var80091580 = (var80091580 + var80091590) - var80091588;
|
||||
}
|
||||
|
||||
if (var80091568 < var80091590 - var80091588) {
|
||||
var80091568 = var80091590 - var80091588;
|
||||
}
|
||||
|
||||
if (var8005d514 == 0) {
|
||||
osRecvMesg(&g_AudioManager.audioReplyMsgQ, (OSMesg *) &info, OS_MESG_BLOCK);
|
||||
}
|
||||
|
||||
var8005d514 = 0;
|
||||
amgrHandleDoneMsg(info);
|
||||
break;
|
||||
case 5:
|
||||
done = true;
|
||||
break;
|
||||
case 10:
|
||||
done = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
n_alClose(&g_AudioManager.g);
|
||||
}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel amgrHandleFrameMsg
|
||||
|
|
|
|||
Loading…
Reference in New Issue