diff --git a/src/game/bondcutscene.c b/src/game/bondcutscene.c index 56cbe24cc..7fce1c311 100644 --- a/src/game/bondcutscene.c +++ b/src/game/bondcutscene.c @@ -23,14 +23,14 @@ void currentPlayerSetMoveModeCutscene(void) // @bug? Should this be < 2? for (j = 0; j < 1; j++) { - struct hand *thing = &g_Vars.players[i]->hands[j]; + struct hand *hand = &g_Vars.players[i]->hands[j]; - if (thing->unk0d84 && func000337f0(thing->unk0d84)) { - func00033b24(thing->unk0d84); - thing->unk0d84 = NULL; + if (hand->audiohandle && func000337f0(hand->audiohandle)) { + audioStop(hand->audiohandle); + hand->audiohandle = NULL; } - thing->unk063c = 0; + hand->unk063c = 0; } } } diff --git a/src/game/bondeyespy.c b/src/game/bondeyespy.c index e53137f0e..a114d6b4e 100644 --- a/src/game/bondeyespy.c +++ b/src/game/bondeyespy.c @@ -1600,7 +1600,7 @@ glabel var7f1ada9c /* f0d0830: 240580ab */ addiu $a1,$zero,-32597 /* f0d0834: 00003025 */ or $a2,$zero,$zero /* f0d0838: 2407ffff */ addiu $a3,$zero,-1 -/* f0d083c: 0c004241 */ jal func00010904 +/* f0d083c: 0c004241 */ jal audioStart /* f0d0840: e7a00014 */ swc1 $f0,0x14($sp) /* f0d0844: 24180001 */ addiu $t8,$zero,0x1 /* f0d0848: afb800a0 */ sw $t8,0xa0($sp) @@ -3021,7 +3021,7 @@ glabel var7f1adb00 /* f0d1c24: 240500f2 */ addiu $a1,$zero,0xf2 /* f0d1c28: 00003025 */ or $a2,$zero,$zero /* f0d1c2c: 2407ffff */ addiu $a3,$zero,-1 -/* f0d1c30: 0c004241 */ jal func00010904 +/* f0d1c30: 0c004241 */ jal audioStart /* f0d1c34: e7a40014 */ swc1 $f4,0x14($sp) /* f0d1c38: 3c09800a */ lui $t1,%hi(g_Vars) /* f0d1c3c: 25299fc0 */ addiu $t1,$t1,%lo(g_Vars) diff --git a/src/game/bondwalk.c b/src/game/bondwalk.c index c8c805102..0c9f9732a 100644 --- a/src/game/bondwalk.c +++ b/src/game/bondwalk.c @@ -702,7 +702,7 @@ glabel func0f0c4250 /* f0c43a8: 240500f2 */ addiu $a1,$zero,0xf2 /* f0c43ac: 00003025 */ or $a2,$zero,$zero /* f0c43b0: 2407ffff */ addiu $a3,$zero,-1 -/* f0c43b4: 0c004241 */ jal func00010904 +/* f0c43b4: 0c004241 */ jal audioStart /* f0c43b8: e7a80014 */ swc1 $f8,0x14($sp) /* f0c43bc: 100000e5 */ beqz $zero,.L0f0c4754 /* f0c43c0: 8fbf0024 */ lw $ra,0x24($sp) diff --git a/src/game/chr/chraction.c b/src/game/chr/chraction.c index c2ee480cb..e57d0e157 100644 --- a/src/game/chr/chraction.c +++ b/src/game/chr/chraction.c @@ -6548,7 +6548,7 @@ glabel func0f0338e0 /* f033f00: afa80018 */ sw $t0,0x18($sp) /* f033f04: afaf0010 */ sw $t7,0x10($sp) /* f033f08: 8c845200 */ lw $a0,%lo(var80095200)($a0) -/* f033f0c: 0c004241 */ jal func00010904 +/* f033f0c: 0c004241 */ jal audioStart /* f033f10: e7a00014 */ swc1 $f0,0x14($sp) /* f033f14: 1000001f */ beqz $zero,.L0f033f94 /* f033f18: 8fbf0044 */ lw $ra,0x44($sp) diff --git a/src/game/chr/chraicommands.c b/src/game/chr/chraicommands.c index aebe1cb07..e064ab133 100644 --- a/src/game/chr/chraicommands.c +++ b/src/game/chr/chraicommands.c @@ -10836,7 +10836,7 @@ bool aiChrBeginOrEndTeleport(void) a = osGetThreadPri(0); b = osGetThreadPri(&var800915e0); osSetThreadPri(0, b + 1); - c = func00010904(var80095200, 1075, 0, -1, -1, -1, -1, -1); + c = audioStart(var80095200, 0x0433, NULL, -1, -1, -1, -1, -1); if (c) { func00033e50(c, 16, fvalue[0]); @@ -10877,7 +10877,7 @@ bool aiIfChrTeleportFullWhite(void) a = osGetThreadPri(0); b = osGetThreadPri(&var800915e0); osSetThreadPri(0, b + 1); - c = func00010904(var80095200, -32683, 0, -1, -1, -1, -1, -1); + c = audioStart(var80095200, 0x8055, NULL, -1, -1, -1, -1, -1); if (c) { func00033e50(c, 16, fvalue[0]); diff --git a/src/game/data/data_00e460.c b/src/game/data/data_00e460.c index a6832daea..6bfed1e8f 100644 --- a/src/game/data/data_00e460.c +++ b/src/game/data/data_00e460.c @@ -13,11 +13,11 @@ u32 g_TintedGlassEnabled = 0; // f8f4 -s32 g_AlarmActive = 0; +s32 g_AlarmTimer = 0; -u32 var800698d8 = 0x00000000; -u32 var800698dc = 0x42800000; -u32 var800698e0 = 0x3f800000; +s32 g_AlarmAudioHandle = 0; +f32 g_AlarmSpeakerWeight = 64; +f32 g_AlarmSpeakerDirection = 1; u32 var800698e4 = 0x00000000; u32 var800698e8 = 0x00000000; u32 var800698ec = 0x00000000; diff --git a/src/game/data/data_020df0.c b/src/game/data/data_020df0.c index cf0b2afd1..8ff89ca82 100644 --- a/src/game/data/data_020df0.c +++ b/src/game/data/data_020df0.c @@ -9570,7 +9570,7 @@ s32 g_MpTimeElapsed = 0; s32 g_MpTimeLimit = 36000; s32 g_MpScoreLimit = 10; s32 g_MpTeamScoreLimit = 20; -void *var80084034 = NULL; +void *g_MiscAudioHandle = NULL; s32 var80084038 = 0; f32 g_Uptime = 0; bool var80084040 = true; diff --git a/src/game/dlights.c b/src/game/dlights.c index 2c34471f5..a8a56b959 100644 --- a/src/game/dlights.c +++ b/src/game/dlights.c @@ -6210,7 +6210,7 @@ glabel func0f005bb0 /* f005eac: afb80018 */ sw $t8,0x18($sp) /* f005eb0: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f005eb4: afaf0010 */ sw $t7,0x10($sp) -/* f005eb8: 0c004241 */ jal func00010904 +/* f005eb8: 0c004241 */ jal audioStart /* f005ebc: e7a40014 */ swc1 $f4,0x14($sp) /* f005ec0: 3c08800a */ lui $t0,%hi(g_Vars+0x284) /* f005ec4: 8d08a244 */ lw $t0,%lo(g_Vars+0x284)($t0) @@ -6234,7 +6234,7 @@ glabel func0f005bb0 /* f005f08: afab0010 */ sw $t3,0x10($sp) /* f005f0c: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f005f10: 2407ffff */ addiu $a3,$zero,-1 -/* f005f14: 0c004241 */ jal func00010904 +/* f005f14: 0c004241 */ jal audioStart /* f005f18: e7a60014 */ swc1 $f6,0x14($sp) /* f005f1c: 10000028 */ beqz $zero,.L0f005fc0 /* f005f20: 8fbf0024 */ lw $ra,0x24($sp) @@ -6247,7 +6247,7 @@ glabel func0f005bb0 /* f005f38: 10400020 */ beqz $v0,.L0f005fbc /* f005f3c: 3c19800a */ lui $t9,%hi(g_Vars+0x284) /* f005f40: 8f39a244 */ lw $t9,%lo(g_Vars+0x284)($t9) -/* f005f44: 0c00cec9 */ jal func00033b24 +/* f005f44: 0c00cec9 */ jal audioStop /* f005f48: 8f241c24 */ lw $a0,0x1c24($t9) /* f005f4c: 1000001c */ beqz $zero,.L0f005fc0 /* f005f50: 8fbf0024 */ lw $ra,0x24($sp) @@ -6263,7 +6263,7 @@ glabel func0f005bb0 /* f005f74: 10400004 */ beqz $v0,.L0f005f88 /* f005f78: 3c18800a */ lui $t8,%hi(g_Vars+0x284) /* f005f7c: 8f18a244 */ lw $t8,%lo(g_Vars+0x284)($t8) -/* f005f80: 0c00cec9 */ jal func00033b24 +/* f005f80: 0c00cec9 */ jal audioStop /* f005f84: 8f041c20 */ lw $a0,0x1c20($t8) .L0f005f88: /* f005f88: 3c07800a */ lui $a3,%hi(g_Vars) @@ -6277,7 +6277,7 @@ glabel func0f005bb0 /* f005fa8: 10400004 */ beqz $v0,.L0f005fbc /* f005fac: 3c0c800a */ lui $t4,%hi(g_Vars+0x284) /* f005fb0: 8d8ca244 */ lw $t4,%lo(g_Vars+0x284)($t4) -/* f005fb4: 0c00cec9 */ jal func00033b24 +/* f005fb4: 0c00cec9 */ jal audioStop /* f005fb8: 8d841c24 */ lw $a0,0x1c24($t4) .L0f005fbc: /* f005fbc: 8fbf0024 */ lw $ra,0x24($sp) diff --git a/src/game/game_006bd0.c b/src/game/game_006bd0.c index 0cd609eb6..00d53d44e 100644 --- a/src/game/game_006bd0.c +++ b/src/game/game_006bd0.c @@ -3538,7 +3538,7 @@ glabel func0f009eac /* f009fa8: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f009fac: 2407ffff */ addiu $a3,$zero,-1 /* f009fb0: afa80038 */ sw $t0,0x38($sp) -/* f009fb4: 0c004241 */ jal func00010904 +/* f009fb4: 0c004241 */ jal audioStart /* f009fb8: e7a40014 */ swc1 $f4,0x14($sp) /* f009fbc: 3c048006 */ lui $a0,%hi(var800616e4) /* f009fc0: 8c8416e4 */ lw $a0,%lo(var800616e4)($a0) @@ -3601,7 +3601,7 @@ glabel func0f009eac /* f00a094: 00000000 */ sll $zero,$zero,0x0 /* f00a098: 1040000e */ beqz $v0,.L0f00a0d4 /* f00a09c: 3c048006 */ lui $a0,%hi(var800616e4) -/* f00a0a0: 0c00cec9 */ jal func00033b24 +/* f00a0a0: 0c00cec9 */ jal audioStop /* f00a0a4: 8c8416e4 */ lw $a0,%lo(var800616e4)($a0) /* f00a0a8: 1000000a */ beqz $zero,.L0f00a0d4 /* f00a0ac: 00000000 */ sll $zero,$zero,0x0 @@ -3613,7 +3613,7 @@ glabel func0f009eac /* f00a0c0: 00000000 */ sll $zero,$zero,0x0 /* f00a0c4: 10400003 */ beqz $v0,.L0f00a0d4 /* f00a0c8: 3c048006 */ lui $a0,%hi(var800616e4) -/* f00a0cc: 0c00cec9 */ jal func00033b24 +/* f00a0cc: 0c00cec9 */ jal audioStop /* f00a0d0: 8c8416e4 */ lw $a0,%lo(var800616e4)($a0) .L0f00a0d4: /* f00a0d4: 3c19800a */ lui $t9,%hi(g_Vars+0x34) @@ -3633,7 +3633,7 @@ glabel func0f009eac /* f00a108: 00000000 */ sll $zero,$zero,0x0 /* f00a10c: 50400004 */ beqzl $v0,.L0f00a120 /* f00a110: 8e040024 */ lw $a0,0x24($s0) -/* f00a114: 0c00cec9 */ jal func00033b24 +/* f00a114: 0c00cec9 */ jal audioStop /* f00a118: 8e040020 */ lw $a0,0x20($s0) /* f00a11c: 8e040024 */ lw $a0,0x24($s0) .L0f00a120: @@ -3643,7 +3643,7 @@ glabel func0f009eac /* f00a12c: 00000000 */ sll $zero,$zero,0x0 /* f00a130: 10400003 */ beqz $v0,.L0f00a140 /* f00a134: 00000000 */ sll $zero,$zero,0x0 -/* f00a138: 0c00cec9 */ jal func00033b24 +/* f00a138: 0c00cec9 */ jal audioStop /* f00a13c: 8e040024 */ lw $a0,0x24($s0) .L0f00a140: /* f00a140: 3c0a800a */ lui $t2,%hi(var8009cbf8) @@ -3774,7 +3774,7 @@ glabel func0f00a1f8 /* f00a2f4: afad0018 */ sw $t5,0x18($sp) /* f00a2f8: afac0010 */ sw $t4,0x10($sp) /* f00a2fc: 8c845200 */ lw $a0,%lo(var80095200)($a0) -/* f00a300: 0c004241 */ jal func00010904 +/* f00a300: 0c004241 */ jal audioStart /* f00a304: e7aa0014 */ swc1 $f10,0x14($sp) /* f00a308: 8e040020 */ lw $a0,0x20($s0) /* f00a30c: 3c017f1a */ lui $at,%hi(var7f1a7f3c) @@ -3802,7 +3802,7 @@ glabel func0f00a1f8 /* f00a35c: afb80010 */ sw $t8,0x10($sp) /* f00a360: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f00a364: 2407ffff */ addiu $a3,$zero,-1 -/* f00a368: 0c004241 */ jal func00010904 +/* f00a368: 0c004241 */ jal audioStart /* f00a36c: e7b20014 */ swc1 $f18,0x14($sp) /* f00a370: 8e040024 */ lw $a0,0x24($s0) /* f00a374: 3c017f1a */ lui $at,%hi(var7f1a7f40) diff --git a/src/game/game_00c490.c b/src/game/game_00c490.c index 1238c277f..38433136c 100644 --- a/src/game/game_00c490.c +++ b/src/game/game_00c490.c @@ -121,10 +121,10 @@ glabel func0f00c490 /* f00c580: 00000000 */ sll $zero,$zero,0x0 /* f00c584: 0fc0338f */ jal func0f00ce3c /* f00c588: 00000000 */ sll $zero,$zero,0x0 -/* f00c58c: 3c018007 */ lui $at,%hi(g_AlarmActive) -/* f00c590: ac2098d4 */ sw $zero,%lo(g_AlarmActive)($at) -/* f00c594: 3c018007 */ lui $at,%hi(var800698d8) -/* f00c598: ac2098d8 */ sw $zero,%lo(var800698d8)($at) +/* f00c58c: 3c018007 */ lui $at,%hi(g_AlarmTimer) +/* f00c590: ac2098d4 */ sw $zero,%lo(g_AlarmTimer)($at) +/* f00c594: 3c018007 */ lui $at,%hi(g_AlarmAudioHandle) +/* f00c598: ac2098d8 */ sw $zero,%lo(g_AlarmAudioHandle)($at) /* f00c59c: 3c014280 */ lui $at,0x4280 /* f00c5a0: 44812000 */ mtc1 $at,$f4 /* f00c5a4: 44800000 */ mtc1 $zero,$f0 diff --git a/src/game/game_0150a0.c b/src/game/game_0150a0.c index 8534908c3..425f6664b 100644 --- a/src/game/game_0150a0.c +++ b/src/game/game_0150a0.c @@ -73,7 +73,7 @@ glabel func0f0150a0 /* f015170: 92e90000 */ lbu $t1,0x0($s7) /* f015174: 8e4e0000 */ lw $t6,0x0($s2) /* f015178: 01d17821 */ addu $t7,$t6,$s1 -/* f01517c: 0c00cec9 */ jal func00033b24 +/* f01517c: 0c00cec9 */ jal audioStop /* f015180: 8de40000 */ lw $a0,0x0($t7) /* f015184: 8e580000 */ lw $t8,0x0($s2) /* f015188: 03118021 */ addu $s0,$t8,$s1 diff --git a/src/game/game_015470.c b/src/game/game_015470.c index 4ec9028db..c575ed7a0 100644 --- a/src/game/game_015470.c +++ b/src/game/game_015470.c @@ -85,7 +85,7 @@ glabel func0f015470 /* f015530: 00000000 */ sll $zero,$zero,0x0 /* f015534: 50400004 */ beqzl $v0,.L0f015548 /* f015538: 263107a4 */ addiu $s1,$s1,0x7a4 -/* f01553c: 0c00cec9 */ jal func00033b24 +/* f01553c: 0c00cec9 */ jal audioStop /* f015540: 8e0401cc */ lw $a0,0x1cc($s0) /* f015544: 263107a4 */ addiu $s1,$s1,0x7a4 .L0f015548: diff --git a/src/game/game_016100.c b/src/game/game_016100.c index 72a464d93..469f43ce1 100644 --- a/src/game/game_016100.c +++ b/src/game/game_016100.c @@ -3199,7 +3199,7 @@ glabel func0f018ddc /* f018de8: afbf0014 */ sw $ra,0x14($sp) /* f018dec: 10800003 */ beqz $a0,.L0f018dfc /* f018df0: 00000000 */ sll $zero,$zero,0x0 -/* f018df4: 0c00cec9 */ jal func00033b24 +/* f018df4: 0c00cec9 */ jal audioStop /* f018df8: 00000000 */ sll $zero,$zero,0x0 .L0f018dfc: /* f018dfc: 3c018006 */ lui $at,%hi(var80062864) @@ -3497,7 +3497,7 @@ glabel func0f019088 /* f019210: afad0018 */ sw $t5,0x18($sp) /* f019214: afac0010 */ sw $t4,0x10($sp) /* f019218: 8c845200 */ lw $a0,%lo(var80095200)($a0) -/* f01921c: 0c004241 */ jal func00010904 +/* f01921c: 0c004241 */ jal audioStart /* f019220: e7a40014 */ swc1 $f4,0x14($sp) /* f019224: 10000009 */ beqz $zero,.L0f01924c /* f019228: 00000000 */ sll $zero,$zero,0x0 @@ -3505,7 +3505,7 @@ glabel func0f019088 /* f01922c: 8cc40000 */ lw $a0,0x0($a2) /* f019230: 50800006 */ beqzl $a0,.L0f01924c /* f019234: acc00000 */ sw $zero,0x0($a2) -/* f019238: 0c00cec9 */ jal func00033b24 +/* f019238: 0c00cec9 */ jal audioStop /* f01923c: 00000000 */ sll $zero,$zero,0x0 /* f019240: 3c068006 */ lui $a2,%hi(var80062864) /* f019244: 24c62864 */ addiu $a2,$a2,%lo(var80062864) diff --git a/src/game/game_01bea0.c b/src/game/game_01bea0.c index 73ef518d1..69fb5825f 100644 --- a/src/game/game_01bea0.c +++ b/src/game/game_01bea0.c @@ -468,7 +468,7 @@ glabel var7f1a863c /* f01c414: 24058098 */ addiu $a1,$zero,-32616 /* f01c418: 00003025 */ or $a2,$zero,$zero /* f01c41c: 2407ffff */ addiu $a3,$zero,-1 -/* f01c420: 0c004241 */ jal func00010904 +/* f01c420: 0c004241 */ jal audioStart /* f01c424: e7b00014 */ swc1 $f16,0x14($sp) /* f01c428: 3c188009 */ lui $t8,%hi(g_Is4Mb) /* f01c42c: 93180af0 */ lbu $t8,%lo(g_Is4Mb)($t8) @@ -748,7 +748,7 @@ glabel var7f1a863c /* f01c800: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f01c804: 2407ffff */ addiu $a3,$zero,-1 /* f01c808: afa80058 */ sw $t0,0x58($sp) -/* f01c80c: 0c004241 */ jal func00010904 +/* f01c80c: 0c004241 */ jal audioStart /* f01c810: e7b20014 */ swc1 $f18,0x14($sp) /* f01c814: 8fa80058 */ lw $t0,0x58($sp) .L0f01c818: @@ -1279,7 +1279,7 @@ glabel var7f1a863c /* f01cf6c: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f01cf70: 00003025 */ or $a2,$zero,$zero /* f01cf74: 2407ffff */ addiu $a3,$zero,-1 -/* f01cf78: 0c004241 */ jal func00010904 +/* f01cf78: 0c004241 */ jal audioStart /* f01cf7c: e7a40014 */ swc1 $f4,0x14($sp) /* f01cf80: 8ea30004 */ lw $v1,0x4($s5) .L0f01cf84: diff --git a/src/game/game_01d9f0.c b/src/game/game_01d9f0.c index f13034e45..2e3107792 100644 --- a/src/game/game_01d9f0.c +++ b/src/game/game_01d9f0.c @@ -123,7 +123,7 @@ glabel func0f01d9f0 /* f01db68: 02003025 */ or $a2,$s0,$zero /* f01db6c: 24058051 */ addiu $a1,$zero,-32687 /* f01db70: 2407ffff */ addiu $a3,$zero,-1 -/* f01db74: 0c004241 */ jal func00010904 +/* f01db74: 0c004241 */ jal audioStart /* f01db78: e7a60014 */ swc1 $f6,0x14($sp) /* f01db7c: 8e040000 */ lw $a0,0x0($s0) /* f01db80: 24050010 */ addiu $a1,$zero,0x10 diff --git a/src/game/game_0601b0.c b/src/game/game_0601b0.c index 33865f569..737787057 100644 --- a/src/game/game_0601b0.c +++ b/src/game/game_0601b0.c @@ -671,7 +671,7 @@ glabel var7f1a9e50 /* f060b14: 01002825 */ or $a1,$t0,$zero /* f060b18: 00003025 */ or $a2,$zero,$zero /* f060b1c: 2407ffff */ addiu $a3,$zero,-1 -/* f060b20: 0c004241 */ jal func00010904 +/* f060b20: 0c004241 */ jal audioStart /* f060b24: e7a00014 */ swc1 $f0,0x14($sp) /* f060b28: 10400004 */ beqz $v0,.L0f060b3c /* f060b2c: 00402025 */ or $a0,$v0,$zero @@ -823,7 +823,7 @@ glabel var7f1a9e5c /* f060d1c: 01002825 */ or $a1,$t0,$zero /* f060d20: 00003025 */ or $a2,$zero,$zero /* f060d24: 2407ffff */ addiu $a3,$zero,-1 -/* f060d28: 0c004241 */ jal func00010904 +/* f060d28: 0c004241 */ jal audioStart /* f060d2c: e7a00014 */ swc1 $f0,0x14($sp) /* f060d30: 10400004 */ beqz $v0,.L0f060d44 /* f060d34: 00402025 */ or $a0,$v0,$zero @@ -4397,7 +4397,7 @@ glabel func0f06302c /* f063d7c: 9638035c */ lhu $t8,0x35c($s1) /* f063d80: 11a00007 */ beqz $t5,.L0f063da0 /* f063d84: a5580378 */ sh $t8,0x378($t2) -/* f063d88: 0fc2436d */ jal func0f090db4 +/* f063d88: 0fc2436d */ jal alarmTick /* f063d8c: 00000000 */ sll $zero,$zero,0x0 /* f063d90: 0fc24d42 */ jal func0f093508 /* f063d94: 00000000 */ sll $zero,$zero,0x0 diff --git a/src/game/game_092610.c b/src/game/game_092610.c index 27182cd95..97e7d9391 100644 --- a/src/game/game_092610.c +++ b/src/game/game_092610.c @@ -455,7 +455,7 @@ glabel func0f092a98 /* f092b2c: afa3001c */ sw $v1,0x1c($sp) /* f092b30: 10400003 */ beqz $v0,.L0f092b40 /* f092b34: 8fa3001c */ lw $v1,0x1c($sp) -/* f092b38: 0c00cec9 */ jal func00033b24 +/* f092b38: 0c00cec9 */ jal audioStop /* f092b3c: 8c640000 */ lw $a0,0x0($v1) .L0f092b40: /* f092b40: 8fbf0014 */ lw $ra,0x14($sp) @@ -1016,7 +1016,7 @@ glabel func0f092c04 /* f0932d8: c7b2003c */ lwc1 $f18,0x3c($sp) /* f0932dc: 8e040000 */ lw $a0,0x0($s0) /* f0932e0: e7b2003c */ swc1 $f18,0x3c($sp) -/* f0932e4: 0c00cec9 */ jal func00033b24 +/* f0932e4: 0c00cec9 */ jal audioStop /* f0932e8: afa80040 */ sw $t0,0x40($sp) /* f0932ec: 8fa80040 */ lw $t0,0x40($sp) /* f0932f0: c7b2003c */ lwc1 $f18,0x3c($sp) @@ -1102,7 +1102,7 @@ glabel func0f092c04 /* f093408: 30650010 */ andi $a1,$v1,0x10 /* f09340c: 8fa60048 */ lw $a2,0x48($sp) /* f093410: 8fa70044 */ lw $a3,0x44($sp) -/* f093414: 0c004128 */ jal func000104a0 +/* f093414: 0c004128 */ jal audioAdjust /* f093418: afae0018 */ sw $t6,0x18($sp) /* f09341c: 10000026 */ beqz $zero,.L0f0934b8 /* f093420: 00000000 */ sll $zero,$zero,0x0 @@ -3267,7 +3267,7 @@ glabel func0f09505c /* f0951d8: 8fa6004c */ lw $a2,0x4c($sp) /* f0951dc: 02003825 */ or $a3,$s0,$zero /* f0951e0: afad0010 */ sw $t5,0x10($sp) -/* f0951e4: 0c004128 */ jal func000104a0 +/* f0951e4: 0c004128 */ jal audioAdjust /* f0951e8: e7aa0014 */ swc1 $f10,0x14($sp) /* f0951ec: 8fbf0034 */ lw $ra,0x34($sp) /* f0951f0: 8fb00030 */ lw $s0,0x30($sp) diff --git a/src/game/game_097ba0.c b/src/game/game_097ba0.c index b4fd39455..d45d691a6 100644 --- a/src/game/game_097ba0.c +++ b/src/game/game_097ba0.c @@ -3219,7 +3219,7 @@ glabel var7f1ac31c /* f09a1a4: 2405804f */ addiu $a1,$zero,-32689 /* f09a1a8: 00003025 */ or $a2,$zero,$zero /* f09a1ac: 2407ffff */ addiu $a3,$zero,-1 -/* f09a1b0: 0c004241 */ jal func00010904 +/* f09a1b0: 0c004241 */ jal audioStart /* f09a1b4: e7a40014 */ swc1 $f4,0x14($sp) .L0f09a1b8: /* f09a1b8: 8e0e001c */ lw $t6,0x1c($s0) @@ -3823,7 +3823,7 @@ glabel var7f1ac320 /* f09a9f8: 00000000 */ sll $zero,$zero,0x0 /* f09a9fc: 50400004 */ beqzl $v0,.L0f09aa10 /* f09aa00: 8e0401d0 */ lw $a0,0x1d0($s0) -/* f09aa04: 0c00cec9 */ jal func00033b24 +/* f09aa04: 0c00cec9 */ jal audioStop /* f09aa08: 8e0401cc */ lw $a0,0x1cc($s0) /* f09aa0c: 8e0401d0 */ lw $a0,0x1d0($s0) .L0f09aa10: @@ -3833,7 +3833,7 @@ glabel var7f1ac320 /* f09aa1c: 00000000 */ sll $zero,$zero,0x0 /* f09aa20: 10400003 */ beqz $v0,.L0f09aa30 /* f09aa24: 00000000 */ sll $zero,$zero,0x0 -/* f09aa28: 0c00cec9 */ jal func00033b24 +/* f09aa28: 0c00cec9 */ jal audioStop /* f09aa2c: 8e0401d0 */ lw $a0,0x1d0($s0) .L0f09aa30: /* f09aa30: 0fc2c79a */ jal func0f0b1e68 @@ -3861,7 +3861,7 @@ glabel var7f1ac320 /* f09aa88: 01602825 */ or $a1,$t3,$zero /* f09aa8c: 260601cc */ addiu $a2,$s0,0x1cc /* f09aa90: 2407ffff */ addiu $a3,$zero,-1 -/* f09aa94: 0c004241 */ jal func00010904 +/* f09aa94: 0c004241 */ jal audioStart /* f09aa98: e7a80014 */ swc1 $f8,0x14($sp) /* f09aa9c: 10000018 */ beqz $zero,.L0f09ab00 /* f09aaa0: 00402025 */ or $a0,$v0,$zero @@ -3886,7 +3886,7 @@ glabel var7f1ac320 /* f09aae8: 01e02825 */ or $a1,$t7,$zero /* f09aaec: 260601d0 */ addiu $a2,$s0,0x1d0 /* f09aaf0: 2407ffff */ addiu $a3,$zero,-1 -/* f09aaf4: 0c004241 */ jal func00010904 +/* f09aaf4: 0c004241 */ jal audioStart /* f09aaf8: e7aa0014 */ swc1 $f10,0x14($sp) /* f09aafc: 00402025 */ or $a0,$v0,$zero .L0f09ab00: @@ -5188,7 +5188,7 @@ glabel var7f1ac450 /* f09bad4: 24058080 */ addiu $a1,$zero,-32640 /* f09bad8: 00003025 */ or $a2,$zero,$zero /* f09badc: 2407ffff */ addiu $a3,$zero,-1 -/* f09bae0: 0c004241 */ jal func00010904 +/* f09bae0: 0c004241 */ jal audioStart /* f09bae4: e7a60014 */ swc1 $f6,0x14($sp) /* f09bae8: 10400004 */ beqz $v0,.L0f09bafc /* f09baec: 00402025 */ or $a0,$v0,$zero @@ -5224,7 +5224,7 @@ glabel var7f1ac450 /* f09bb60: 24058052 */ addiu $a1,$zero,-32686 /* f09bb64: 00003025 */ or $a2,$zero,$zero /* f09bb68: 2407ffff */ addiu $a3,$zero,-1 -/* f09bb6c: 0c004241 */ jal func00010904 +/* f09bb6c: 0c004241 */ jal audioStart /* f09bb70: e7aa0014 */ swc1 $f10,0x14($sp) /* f09bb74: 10400004 */ beqz $v0,.L0f09bb88 /* f09bb78: 00402025 */ or $a0,$v0,$zero @@ -5251,7 +5251,7 @@ glabel var7f1ac450 /* f09bbc4: 24058052 */ addiu $a1,$zero,-32686 /* f09bbc8: 00003025 */ or $a2,$zero,$zero /* f09bbcc: 2407ffff */ addiu $a3,$zero,-1 -/* f09bbd0: 0c004241 */ jal func00010904 +/* f09bbd0: 0c004241 */ jal audioStart /* f09bbd4: e7b00014 */ swc1 $f16,0x14($sp) .L0f09bbd8: /* f09bbd8: 8e0e000c */ lw $t6,0xc($s0) @@ -6292,7 +6292,7 @@ glabel var7f1ac5ec /* f09c734: 24050002 */ addiu $a1,$zero,0x2 /* f09c738: 00003025 */ or $a2,$zero,$zero /* f09c73c: 2407ffff */ addiu $a3,$zero,-1 -/* f09c740: 0c004241 */ jal func00010904 +/* f09c740: 0c004241 */ jal audioStart /* f09c744: e7a80014 */ swc1 $f8,0x14($sp) /* f09c748: 10400004 */ beqz $v0,.L0f09c75c /* f09c74c: 00402025 */ or $a0,$v0,$zero @@ -6318,7 +6318,7 @@ glabel var7f1ac5ec /* f09c798: 240500f2 */ addiu $a1,$zero,0xf2 /* f09c79c: 00003025 */ or $a2,$zero,$zero /* f09c7a0: 2407ffff */ addiu $a3,$zero,-1 -/* f09c7a4: 0c004241 */ jal func00010904 +/* f09c7a4: 0c004241 */ jal audioStart /* f09c7a8: e7b00014 */ swc1 $f16,0x14($sp) /* f09c7ac: 10000090 */ beqz $zero,.L0f09c9f0 /* f09c7b0: 8e0e001c */ lw $t6,0x1c($s0) @@ -6335,7 +6335,7 @@ glabel var7f1ac5ec /* f09c7dc: 240500e9 */ addiu $a1,$zero,0xe9 /* f09c7e0: 00003025 */ or $a2,$zero,$zero /* f09c7e4: 2407ffff */ addiu $a3,$zero,-1 -/* f09c7e8: 0c004241 */ jal func00010904 +/* f09c7e8: 0c004241 */ jal audioStart /* f09c7ec: e7aa0014 */ swc1 $f10,0x14($sp) /* f09c7f0: 1000007f */ beqz $zero,.L0f09c9f0 /* f09c7f4: 8e0e001c */ lw $t6,0x1c($s0) @@ -6354,7 +6354,7 @@ glabel var7f1ac5ec /* f09c828: afa90010 */ sw $t1,0x10($sp) /* f09c82c: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f09c830: 2407ffff */ addiu $a3,$zero,-1 -/* f09c834: 0c004241 */ jal func00010904 +/* f09c834: 0c004241 */ jal audioStart /* f09c838: e7b20014 */ swc1 $f18,0x14($sp) /* f09c83c: 1000006c */ beqz $zero,.L0f09c9f0 /* f09c840: 8e0e001c */ lw $t6,0x1c($s0) @@ -6371,7 +6371,7 @@ glabel var7f1ac5ec /* f09c86c: 240500eb */ addiu $a1,$zero,0xeb /* f09c870: 00003025 */ or $a2,$zero,$zero /* f09c874: 2407ffff */ addiu $a3,$zero,-1 -/* f09c878: 0c004241 */ jal func00010904 +/* f09c878: 0c004241 */ jal audioStart /* f09c87c: e7a40014 */ swc1 $f4,0x14($sp) /* f09c880: 1000005b */ beqz $zero,.L0f09c9f0 /* f09c884: 8e0e001c */ lw $t6,0x1c($s0) @@ -6400,7 +6400,7 @@ glabel var7f1ac5ec /* f09c8e0: 240500e8 */ addiu $a1,$zero,0xe8 /* f09c8e4: 00003025 */ or $a2,$zero,$zero /* f09c8e8: 2407ffff */ addiu $a3,$zero,-1 -/* f09c8ec: 0c004241 */ jal func00010904 +/* f09c8ec: 0c004241 */ jal audioStart /* f09c8f0: e7a80014 */ swc1 $f8,0x14($sp) /* f09c8f4: 10400004 */ beqz $v0,.L0f09c908 /* f09c8f8: 00402025 */ or $a0,$v0,$zero @@ -6438,7 +6438,7 @@ glabel var7f1ac5ec /* f09c974: 240500e8 */ addiu $a1,$zero,0xe8 /* f09c978: 00003025 */ or $a2,$zero,$zero /* f09c97c: 2407ffff */ addiu $a3,$zero,-1 -/* f09c980: 0c004241 */ jal func00010904 +/* f09c980: 0c004241 */ jal audioStart /* f09c984: e7aa0014 */ swc1 $f10,0x14($sp) /* f09c988: 10400004 */ beqz $v0,.L0f09c99c /* f09c98c: 00402025 */ or $a0,$v0,$zero @@ -6465,7 +6465,7 @@ glabel var7f1ac5ec /* f09c9d8: 240500e8 */ addiu $a1,$zero,0xe8 /* f09c9dc: 00003025 */ or $a2,$zero,$zero /* f09c9e0: 2407ffff */ addiu $a3,$zero,-1 -/* f09c9e4: 0c004241 */ jal func00010904 +/* f09c9e4: 0c004241 */ jal audioStart /* f09c9e8: e7b20014 */ swc1 $f18,0x14($sp) .L0f09c9ec: /* f09c9ec: 8e0e001c */ lw $t6,0x1c($s0) @@ -12158,7 +12158,7 @@ glabel func0f0a1528 /* f0a17f0: 00000000 */ sll $zero,$zero,0x0 /* f0a17f4: 50400004 */ beqzl $v0,.L0f0a1808 /* f0a17f8: 26310001 */ addiu $s1,$s1,0x1 -/* f0a17fc: 0c00cec9 */ jal func00033b24 +/* f0a17fc: 0c00cec9 */ jal audioStop /* f0a1800: 8e040d84 */ lw $a0,0xd84($s0) /* f0a1804: 26310001 */ addiu $s1,$s1,0x1 .L0f0a1808: @@ -12194,7 +12194,7 @@ glabel func0f0a1528 /* f0a1878: 2405042e */ addiu $a1,$zero,0x42e /* f0a187c: 00003025 */ or $a2,$zero,$zero /* f0a1880: 2407ffff */ addiu $a3,$zero,-1 -/* f0a1884: 0c004241 */ jal func00010904 +/* f0a1884: 0c004241 */ jal audioStart /* f0a1888: e7a40014 */ swc1 $f4,0x14($sp) /* f0a188c: 3c03800a */ lui $v1,%hi(g_Vars+0x284) /* f0a1890: 8c63a244 */ lw $v1,%lo(g_Vars+0x284)($v1) @@ -14961,7 +14961,7 @@ glabel var7f1ac8b8 /* f0a3d24: afb80010 */ sw $t8,0x10($sp) /* f0a3d28: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f0a3d2c: 2407ffff */ addiu $a3,$zero,-1 -/* f0a3d30: 0c004241 */ jal func00010904 +/* f0a3d30: 0c004241 */ jal audioStart /* f0a3d34: e7a80014 */ swc1 $f8,0x14($sp) /* f0a3d38: 8e03074c */ lw $v1,0x74c($s0) .L0f0a3d3c: @@ -14984,7 +14984,7 @@ glabel var7f1ac8b8 /* f0a3d7c: 00000000 */ sll $zero,$zero,0x0 /* f0a3d80: 45000005 */ bc1f .L0f0a3d98 /* f0a3d84: 00000000 */ sll $zero,$zero,0x0 -/* f0a3d88: 0c00cec9 */ jal func00033b24 +/* f0a3d88: 0c00cec9 */ jal audioStop /* f0a3d8c: 8e04074c */ lw $a0,0x74c($s0) /* f0a3d90: 10000017 */ beqz $zero,.L0f0a3df0 /* f0a3d94: 8faa0044 */ lw $t2,0x44($sp) @@ -15420,7 +15420,7 @@ glabel func0f0a4334 /* f0a43a0: afa80010 */ sw $t0,0x10($sp) /* f0a43a4: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f0a43a8: 2407ffff */ addiu $a3,$zero,-1 -/* f0a43ac: 0c004241 */ jal func00010904 +/* f0a43ac: 0c004241 */ jal audioStart /* f0a43b0: e7a40014 */ swc1 $f4,0x14($sp) .L0f0a43b4: /* f0a43b4: 3c013f80 */ lui $at,0x3f80 @@ -15452,7 +15452,7 @@ glabel func0f0a4334 /* f0a4410: 00000000 */ sll $zero,$zero,0x0 /* f0a4414: 50400004 */ beqzl $v0,.L0f0a4428 /* f0a4418: 8fbf002c */ lw $ra,0x2c($sp) -/* f0a441c: 0c00cec9 */ jal func00033b24 +/* f0a441c: 0c00cec9 */ jal audioStop /* f0a4420: 8e04074c */ lw $a0,0x74c($s0) .L0f0a4424: /* f0a4424: 8fbf002c */ lw $ra,0x2c($sp) @@ -18397,7 +18397,7 @@ glabel var7f1aca84 /* f0a6b3c: afac0018 */ sw $t4,0x18($sp) /* f0a6b40: afab0010 */ sw $t3,0x10($sp) /* f0a6b44: 8ea40000 */ lw $a0,0x0($s5) -/* f0a6b48: 0c004241 */ jal func00010904 +/* f0a6b48: 0c004241 */ jal audioStart /* f0a6b4c: e7ba0014 */ swc1 $f26,0x14($sp) /* f0a6b50: 8e03074c */ lw $v1,0x74c($s0) .L0f0a6b54: @@ -18429,7 +18429,7 @@ glabel var7f1aca84 /* f0a6bb8: 16200005 */ bnez $s1,.L0f0a6bd0 /* f0a6bbc: 24050010 */ addiu $a1,$zero,0x10 .L0f0a6bc0: -/* f0a6bc0: 0c00cec9 */ jal func00033b24 +/* f0a6bc0: 0c00cec9 */ jal audioStop /* f0a6bc4: 8e04074c */ lw $a0,0x74c($s0) /* f0a6bc8: 10000005 */ beqz $zero,.L0f0a6be0 /* f0a6bcc: 267307a4 */ addiu $s3,$s3,0x7a4 @@ -18614,7 +18614,7 @@ glabel var7f1aca88 /* f0a6e2c: 244207a4 */ addiu $v0,$v0,1956 /* f0a6e30: 8e040d84 */ lw $a0,0xd84($s0) /* f0a6e34: afa3004c */ sw $v1,0x4c($sp) -/* f0a6e38: 0c00cec9 */ jal func00033b24 +/* f0a6e38: 0c00cec9 */ jal audioStop /* f0a6e3c: afa20020 */ sw $v0,0x20($sp) /* f0a6e40: 8fa20020 */ lw $v0,0x20($sp) /* f0a6e44: 8fa3004c */ lw $v1,0x4c($sp) @@ -19868,7 +19868,7 @@ glabel var7f1aca94 /* f0a803c: afab0010 */ sw $t3,0x10($sp) /* f0a8040: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f0a8044: 2407ffff */ addiu $a3,$zero,-1 -/* f0a8048: 0c004241 */ jal func00010904 +/* f0a8048: 0c004241 */ jal audioStart /* f0a804c: e7a60014 */ swc1 $f6,0x14($sp) /* f0a8050: 8faf00bc */ lw $t7,0xbc($sp) /* f0a8054: 00002825 */ or $a1,$zero,$zero @@ -19887,7 +19887,7 @@ glabel var7f1aca94 /* f0a8088: afa8001c */ sw $t0,0x1c($sp) /* f0a808c: afac0018 */ sw $t4,0x18($sp) /* f0a8090: afb90010 */ sw $t9,0x10($sp) -/* f0a8094: 0c004128 */ jal func000104a0 +/* f0a8094: 0c004128 */ jal audioAdjust /* f0a8098: e7a80014 */ swc1 $f8,0x14($sp) .L0f0a809c: /* f0a809c: 8fa900b0 */ lw $t1,0xb0($sp) @@ -20002,7 +20002,7 @@ glabel var7f1aca94 /* f0a8228: 8fa600bc */ lw $a2,0xbc($sp) /* f0a822c: 2407ffff */ addiu $a3,$zero,-1 /* f0a8230: afa30094 */ sw $v1,0x94($sp) -/* f0a8234: 0c004241 */ jal func00010904 +/* f0a8234: 0c004241 */ jal audioStart /* f0a8238: e7aa0014 */ swc1 $f10,0x14($sp) /* f0a823c: 8faa00bc */ lw $t2,0xbc($sp) /* f0a8240: 8fa30094 */ lw $v1,0x94($sp) @@ -20023,7 +20023,7 @@ glabel var7f1aca94 /* f0a827c: afae0018 */ sw $t6,0x18($sp) /* f0a8280: afa30094 */ sw $v1,0x94($sp) /* f0a8284: afab0010 */ sw $t3,0x10($sp) -/* f0a8288: 0c004128 */ jal func000104a0 +/* f0a8288: 0c004128 */ jal audioAdjust /* f0a828c: e7b00014 */ swc1 $f16,0x14($sp) /* f0a8290: 8fa30094 */ lw $v1,0x94($sp) .L0f0a8294: @@ -20094,7 +20094,7 @@ glabel var7f1aca94 /* f0a8388: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f0a838c: 8fa600bc */ lw $a2,0xbc($sp) /* f0a8390: 2407ffff */ addiu $a3,$zero,-1 -/* f0a8394: 0c004241 */ jal func00010904 +/* f0a8394: 0c004241 */ jal audioStart /* f0a8398: e7b20014 */ swc1 $f18,0x14($sp) .L0f0a839c: /* f0a839c: 8fb900bc */ lw $t9,0xbc($sp) @@ -20159,7 +20159,7 @@ glabel var7f1aca98 /* f0a845c: 24058077 */ addiu $a1,$zero,-32649 /* f0a8460: 2407ffff */ addiu $a3,$zero,-1 /* f0a8464: afa20034 */ sw $v0,0x34($sp) -/* f0a8468: 0c004241 */ jal func00010904 +/* f0a8468: 0c004241 */ jal audioStart /* f0a846c: e7a40014 */ swc1 $f4,0x14($sp) /* f0a8470: 8fa60034 */ lw $a2,0x34($sp) /* f0a8474: 3c07451c */ lui $a3,0x451c @@ -20275,7 +20275,7 @@ glabel var7f1acaa0 /* f0a85f8: 8fa600a4 */ lw $a2,0xa4($sp) /* f0a85fc: 2407ffff */ addiu $a3,$zero,-1 /* f0a8600: e7a40014 */ swc1 $f4,0x14($sp) -/* f0a8604: 0c004241 */ jal func00010904 +/* f0a8604: 0c004241 */ jal audioStart /* f0a8608: a7a50096 */ sh $a1,0x96($sp) /* f0a860c: 1000005f */ beqz $zero,.L0f0a878c /* f0a8610: 24030001 */ addiu $v1,$zero,0x1 @@ -20300,7 +20300,7 @@ glabel var7f1acaa0 /* f0a8654: 24058079 */ addiu $a1,$zero,-32647 /* f0a8658: 8fa600a4 */ lw $a2,0xa4($sp) /* f0a865c: 2407ffff */ addiu $a3,$zero,-1 -/* f0a8660: 0c004241 */ jal func00010904 +/* f0a8660: 0c004241 */ jal audioStart /* f0a8664: e7a60014 */ swc1 $f6,0x14($sp) /* f0a8668: 10000048 */ beqz $zero,.L0f0a878c /* f0a866c: 24030001 */ addiu $v1,$zero,0x1 @@ -20336,7 +20336,7 @@ glabel var7f1acaa0 /* f0a86dc: 240580aa */ addiu $a1,$zero,-32598 /* f0a86e0: 8fa600a4 */ lw $a2,0xa4($sp) /* f0a86e4: 2407ffff */ addiu $a3,$zero,-1 -/* f0a86e8: 0c004241 */ jal func00010904 +/* f0a86e8: 0c004241 */ jal audioStart /* f0a86ec: e7a80014 */ swc1 $f8,0x14($sp) /* f0a86f0: 10000026 */ beqz $zero,.L0f0a878c /* f0a86f4: 24030001 */ addiu $v1,$zero,0x1 @@ -20376,7 +20376,7 @@ glabel var7f1acaa0 /* f0a8774: 8fa600a4 */ lw $a2,0xa4($sp) /* f0a8778: 2407ffff */ addiu $a3,$zero,-1 /* f0a877c: a7a50096 */ sh $a1,0x96($sp) -/* f0a8780: 0c004241 */ jal func00010904 +/* f0a8780: 0c004241 */ jal audioStart /* f0a8784: e7aa0014 */ swc1 $f10,0x14($sp) /* f0a8788: 8fa30090 */ lw $v1,0x90($sp) .L0f0a878c: @@ -20457,7 +20457,7 @@ glabel var7f1acaa0 /* f0a88a4: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f0a88a8: 8fa600a4 */ lw $a2,0xa4($sp) /* f0a88ac: 2407ffff */ addiu $a3,$zero,-1 -/* f0a88b0: 0c004241 */ jal func00010904 +/* f0a88b0: 0c004241 */ jal audioStart /* f0a88b4: e7b20014 */ swc1 $f18,0x14($sp) .L0f0a88b8: /* f0a88b8: 8faa00a4 */ lw $t2,0xa4($sp) @@ -23759,7 +23759,7 @@ glabel func0f0abad0 /* f0abb50: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f0abb54: 00003025 */ or $a2,$zero,$zero /* f0abb58: 2407ffff */ addiu $a3,$zero,-1 -/* f0abb5c: 0c004241 */ jal func00010904 +/* f0abb5c: 0c004241 */ jal audioStart /* f0abb60: e7a40014 */ swc1 $f4,0x14($sp) /* f0abb64: 3c03800a */ lui $v1,%hi(g_Vars) /* f0abb68: 24639fc0 */ addiu $v1,$v1,%lo(g_Vars) diff --git a/src/game/game_0b63b0.c b/src/game/game_0b63b0.c index 83ec24edd..ab8421ebc 100644 --- a/src/game/game_0b63b0.c +++ b/src/game/game_0b63b0.c @@ -5166,7 +5166,7 @@ glabel func0f0bace0 /* f0bad30: 00000000 */ sll $zero,$zero,0x0 /* f0bad34: 50400004 */ beqzl $v0,.L0f0bad48 /* f0bad38: 263107a4 */ addiu $s1,$s1,0x7a4 -/* f0bad3c: 0c00cec9 */ jal func00033b24 +/* f0bad3c: 0c00cec9 */ jal audioStop /* f0bad40: 8e0401cc */ lw $a0,0x1cc($s0) /* f0bad44: 263107a4 */ addiu $s1,$s1,0x7a4 .L0f0bad48: @@ -8638,7 +8638,7 @@ glabel var7f1ad6ac /* f0bdf28: 240580ab */ addiu $a1,$zero,-32597 /* f0bdf2c: 00003025 */ or $a2,$zero,$zero /* f0bdf30: 2407ffff */ addiu $a3,$zero,-1 -/* f0bdf34: 0c004241 */ jal func00010904 +/* f0bdf34: 0c004241 */ jal audioStart /* f0bdf38: e7a80014 */ swc1 $f8,0x14($sp) /* f0bdf3c: 8e700284 */ lw $s0,0x284($s3) .L0f0bdf40: @@ -10731,7 +10731,7 @@ glabel var7f1ad6ac // eyespy->camerashuttertime = 0; // eyespy->startuptimer60 = 0; // eyespy->prop->chr->soundtimer = 10; -// func00010904(var80095200, 0x80ab, NULL, -1, -1, -1, -1, -1); +// audioStart(var80095200, 0x80ab, NULL, -1, -1, -1, -1, -1); // } // // g_Vars.currentplayer->invdowntime = -40; diff --git a/src/game/game_0dcdb0.c b/src/game/game_0dcdb0.c index 0b1dfbf81..c8768b4b6 100644 --- a/src/game/game_0dcdb0.c +++ b/src/game/game_0dcdb0.c @@ -3423,7 +3423,7 @@ glabel var7f1aded8 /* f0df828: afab0010 */ sw $t3,0x10($sp) /* f0df82c: afac0018 */ sw $t4,0x18($sp) /* f0df830: afad001c */ sw $t5,0x1c($sp) -/* f0df834: 0c004241 */ jal func00010904 +/* f0df834: 0c004241 */ jal audioStart /* f0df838: e7a40014 */ swc1 $f4,0x14($sp) .L0f0df83c: /* f0df83c: 9602001c */ lhu $v0,0x1c($s0) diff --git a/src/game/game_0f09f0.c b/src/game/game_0f09f0.c index 118f6150b..5928ad9c2 100644 --- a/src/game/game_0f09f0.c +++ b/src/game/game_0f09f0.c @@ -447,7 +447,7 @@ glabel var7f1b27fc /* f0f0b24: 01e02825 */ or $a1,$t7,$zero /* f0f0b28: 00003025 */ or $a2,$zero,$zero /* f0f0b2c: 2407ffff */ addiu $a3,$zero,-1 -/* f0f0b30: 0c004241 */ jal func00010904 +/* f0f0b30: 0c004241 */ jal audioStart /* f0f0b34: e7b00014 */ swc1 $f16,0x14($sp) /* f0f0b38: 8fa80038 */ lw $t0,0x38($sp) /* f0f0b3c: 10400007 */ beqz $v0,.L0f0f0b5c diff --git a/src/game/game_167ae0.c b/src/game/game_167ae0.c index 0dad88c89..7a6c28751 100644 --- a/src/game/game_167ae0.c +++ b/src/game/game_167ae0.c @@ -208,7 +208,7 @@ glabel func0f167b84 /* f167c0c: 84a54046 */ lh $a1,%lo(var80084044+0x2)($a1) /* f167c10: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f167c14: 2407ffff */ addiu $a3,$zero,-1 -/* f167c18: 0c004241 */ jal func00010904 +/* f167c18: 0c004241 */ jal audioStart /* f167c1c: e7a40014 */ swc1 $f4,0x14($sp) /* f167c20: 8fa30028 */ lw $v1,0x28($sp) /* f167c24: 8fae0038 */ lw $t6,0x38($sp) @@ -226,7 +226,7 @@ glabel func0f167b84 /* f167c50: 00021080 */ sll $v0,$v0,0x2 /* f167c54: 01227821 */ addu $t7,$t1,$v0 /* f167c58: 8de40000 */ lw $a0,0x0($t7) -/* f167c5c: 0c00cec9 */ jal func00033b24 +/* f167c5c: 0c00cec9 */ jal audioStop /* f167c60: afa20028 */ sw $v0,0x28($sp) /* f167c64: 8fa20028 */ lw $v0,0x28($sp) /* f167c68: 3c01800b */ lui $at,%hi(var800aa5c0) @@ -269,8 +269,8 @@ void doBoostAndSlayerSfx(void) func0f167b84(2, usingrocket); } - if (g_Vars.lvupdate240 == 0 && var80084034 && func000337f0(var80084034)) { - func00033b24(var80084034); + if (g_Vars.lvupdate240 == 0 && g_MiscAudioHandle && func000337f0(g_MiscAudioHandle)) { + audioStop(g_MiscAudioHandle); } } @@ -320,7 +320,7 @@ void func0f167e7c(s32 stagenum) g_Vars.unk0004d6 = 0; g_Vars.unk0004d7 = 0; - var80084034 = NULL; + g_MiscAudioHandle = NULL; func0f16d324(); func0f011124(true); @@ -2458,7 +2458,7 @@ glabel var7f1b7868 /* f16a0b0: afb70010 */ sw $s7,0x10($sp) /* f16a0b4: e7b40014 */ swc1 $f20,0x14($sp) /* f16a0b8: afb70018 */ sw $s7,0x18($sp) -/* f16a0bc: 0c004241 */ jal func00010904 +/* f16a0bc: 0c004241 */ jal audioStart /* f16a0c0: afb7001c */ sw $s7,0x1c($sp) /* f16a0c4: 10000053 */ beqz $zero,.L0f16a214 /* f16a0c8: 8e700284 */ lw $s0,0x284($s3) @@ -2478,7 +2478,7 @@ glabel var7f1b7868 /* f16a0fc: afb70010 */ sw $s7,0x10($sp) /* f16a100: e7b40014 */ swc1 $f20,0x14($sp) /* f16a104: afb70018 */ sw $s7,0x18($sp) -/* f16a108: 0c004241 */ jal func00010904 +/* f16a108: 0c004241 */ jal audioStart /* f16a10c: afb7001c */ sw $s7,0x1c($sp) /* f16a110: 8e700284 */ lw $s0,0x284($s3) /* f16a114: 240f001c */ addiu $t7,$zero,0x1c @@ -2511,7 +2511,7 @@ glabel var7f1b7868 /* f16a17c: afb70010 */ sw $s7,0x10($sp) /* f16a180: e7b40014 */ swc1 $f20,0x14($sp) /* f16a184: afb70018 */ sw $s7,0x18($sp) -/* f16a188: 0c004241 */ jal func00010904 +/* f16a188: 0c004241 */ jal audioStart /* f16a18c: afb7001c */ sw $s7,0x1c($sp) .L0f16a190: /* f16a190: 10000020 */ beqz $zero,.L0f16a214 @@ -2837,7 +2837,7 @@ glabel var7f1b7868 /* f16a64c: afb70010 */ sw $s7,0x10($sp) /* f16a650: e7b40014 */ swc1 $f20,0x14($sp) /* f16a654: afb70018 */ sw $s7,0x18($sp) -/* f16a658: 0c004241 */ jal func00010904 +/* f16a658: 0c004241 */ jal audioStart /* f16a65c: afb7001c */ sw $s7,0x1c($sp) .L0f16a660: /* f16a660: 3c0a8008 */ lui $t2,%hi(var8008409c) @@ -2882,7 +2882,7 @@ glabel var7f1b7868 /* f16a6f8: afb70010 */ sw $s7,0x10($sp) /* f16a6fc: e7b40014 */ swc1 $f20,0x14($sp) /* f16a700: afb70018 */ sw $s7,0x18($sp) -/* f16a704: 0c004241 */ jal func00010904 +/* f16a704: 0c004241 */ jal audioStart /* f16a708: afb7001c */ sw $s7,0x1c($sp) .L0f16a70c: /* f16a70c: 3c0a8008 */ lui $t2,%hi(var8008409c) @@ -2909,7 +2909,7 @@ glabel var7f1b7868 /* f16a75c: afb70010 */ sw $s7,0x10($sp) /* f16a760: e7b40014 */ swc1 $f20,0x14($sp) /* f16a764: afb70018 */ sw $s7,0x18($sp) -/* f16a768: 0c004241 */ jal func00010904 +/* f16a768: 0c004241 */ jal audioStart /* f16a76c: afb7001c */ sw $s7,0x1c($sp) .L0f16a770: /* f16a770: 12000005 */ beqz $s0,.L0f16a788 @@ -2926,7 +2926,7 @@ glabel var7f1b7868 /* f16a798: 8e700284 */ lw $s0,0x284($s3) /* f16a79c: 55a00004 */ bnezl $t5,.L0f16a7b0 /* f16a7a0: 8e700284 */ lw $s0,0x284($s3) -/* f16a7a4: 0c00cec9 */ jal func00033b24 +/* f16a7a4: 0c00cec9 */ jal audioStop /* f16a7a8: 00000000 */ sll $zero,$zero,0x0 /* f16a7ac: 8e700284 */ lw $s0,0x284($s3) .L0f16a7b0: @@ -3044,7 +3044,7 @@ glabel var7f1b7868 /* f16a940: afb70010 */ sw $s7,0x10($sp) /* f16a944: e7b40014 */ swc1 $f20,0x14($sp) /* f16a948: afb70018 */ sw $s7,0x18($sp) -/* f16a94c: 0c004241 */ jal func00010904 +/* f16a94c: 0c004241 */ jal audioStart /* f16a950: afb7001c */ sw $s7,0x1c($sp) /* f16a954: 8e630460 */ lw $v1,0x460($s3) /* f16a958: 2861000f */ slti $at,$v1,0xf @@ -5091,8 +5091,8 @@ glabel func0f16b96c .L0f16c56c: /* f16c56c: 024c082a */ slt $at,$s2,$t4 /* f16c570: 1420001c */ bnez $at,.L0f16c5e4 -/* f16c574: 3c108008 */ lui $s0,%hi(var80084034) -/* f16c578: 26104034 */ addiu $s0,$s0,%lo(var80084034) +/* f16c574: 3c108008 */ lui $s0,%hi(g_MiscAudioHandle) +/* f16c578: 26104034 */ addiu $s0,$s0,%lo(g_MiscAudioHandle) /* f16c57c: 8e0d0000 */ lw $t5,0x0($s0) /* f16c580: 55a00019 */ bnezl $t5,.L0f16c5e8 /* f16c584: 8e8d0034 */ lw $t5,0x34($s4) @@ -5709,11 +5709,11 @@ glabel func0f16b96c // // // Sound alarm at 10 seconds remaining // if (nexttime >= g_MpTimeLimit - 600 -// && var80084034 == NULL +// && g_MiscAudioHandle == NULL // && !soloIsPaused() // && nexttime < g_MpTimeLimit) { // // 5dc -// func00010718(&var80084034, 0, 0x7fff, 0x40, 163, 1, 1, -1, 1); +// func00010718(&g_MiscAudioHandle, 0, 0x7fff, 0x40, 163, 1, 1, -1, 1); // } // } // @@ -5875,8 +5875,8 @@ void stageLoad(void) { func0f11dcb0(1); - if (var80084034 && func000337f0(var80084034)) { - func00033b24(var80084034); + if (g_MiscAudioHandle && func000337f0(g_MiscAudioHandle)) { + audioStop(g_MiscAudioHandle); } if (g_Vars.stagenum < NUM_STAGES) { diff --git a/src/game/game_17f930.c b/src/game/game_17f930.c index 6ca59aa76..5f5ff9d9b 100644 --- a/src/game/game_17f930.c +++ b/src/game/game_17f930.c @@ -352,7 +352,7 @@ glabel func0f17fcb0 /* f17fd8c: afa80010 */ sw $t0,0x10($sp) /* f17fd90: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f17fd94: 2407ffff */ addiu $a3,$zero,-1 -/* f17fd98: 0c004241 */ jal func00010904 +/* f17fd98: 0c004241 */ jal audioStart /* f17fd9c: e7a40014 */ swc1 $f4,0x14($sp) .L0f17fda0: /* f17fda0: 8fbf0024 */ lw $ra,0x24($sp) @@ -852,7 +852,8 @@ void scenarioHtbCallback14(struct chrdata *chr) chr->aibot->unk0a0 += g_Vars.lvupdate240; if (chr->aibot->unk0a0 >= SECSTOFRAMES240(30)) { - func00010904(var80095200, 0x5b8, 0, -1, -1, -1, -1, -1); + // Point scored sound + audioStart(var80095200, 0x5b8, NULL, -1, -1, -1, -1, -1); var800ac500[mpPlayerGetIndex(chr)]->unk3e++; chr->aibot->unk0a0 = 0; } @@ -864,7 +865,8 @@ void scenarioHtbCallback14(struct chrdata *chr) g_Vars.currentplayerstats->tokenheldtime += g_Vars.lvupdate240; if (g_Vars.currentplayerstats->tokenheldtime >= SECSTOFRAMES240(30)) { - func00010904(var80095200, 0x5b8, 0, -1, -1, -1, -1, -1); + // Point scored sound + audioStart(var80095200, 0x5b8, NULL, -1, -1, -1, -1, -1); var800ac500[g_Vars.currentplayernum]->unk3e++; func0f0ddfa4(langGet(L_MPWEAPONS(24)), 9, 1); // "1 Point!" g_Vars.currentplayerstats->tokenheldtime = 0; @@ -2198,7 +2200,7 @@ glabel var7f1b8950 /* f1820f0: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f1820f4: 2407ffff */ addiu $a3,$zero,-1 /* f1820f8: 00008825 */ or $s1,$zero,$zero -/* f1820fc: 0c004241 */ jal func00010904 +/* f1820fc: 0c004241 */ jal audioStart /* f182100: e7a40014 */ swc1 $f4,0x14($sp) /* f182104: a6700004 */ sh $s0,0x4($s3) /* f182108: a6600006 */ sh $zero,0x6($s3) @@ -2339,7 +2341,7 @@ glabel var7f1b8950 /* f1822f0: 00003025 */ or $a2,$zero,$zero /* f1822f4: 2407ffff */ addiu $a3,$zero,-1 /* f1822f8: 00009025 */ or $s2,$zero,$zero -/* f1822fc: 0c004241 */ jal func00010904 +/* f1822fc: 0c004241 */ jal audioStart /* f182300: e7a60014 */ swc1 $f6,0x14($sp) /* f182304: 3c03800b */ lui $v1,%hi(g_MpNumPlayers) /* f182308: 8c63c530 */ lw $v1,%lo(g_MpNumPlayers)($v1) @@ -7122,7 +7124,7 @@ glabel chrGiveBriefcase /* f186cf0: 240505b8 */ addiu $a1,$zero,0x5b8 /* f186cf4: 00003025 */ or $a2,$zero,$zero /* f186cf8: 2407ffff */ addiu $a3,$zero,-1 -/* f186cfc: 0c004241 */ jal func00010904 +/* f186cfc: 0c004241 */ jal audioStart /* f186d00: e7a40014 */ swc1 $f4,0x14($sp) /* f186d04: 0fc24494 */ jal func0f091250 /* f186d08: 24040057 */ addiu $a0,$zero,0x57 diff --git a/src/game/game_19c990.c b/src/game/game_19c990.c index 99a7206a7..c3107efb7 100644 --- a/src/game/game_19c990.c +++ b/src/game/game_19c990.c @@ -476,7 +476,7 @@ glabel func0f19d338 /* f19d3e0: 240505d5 */ addiu $a1,$zero,0x5d5 /* f19d3e4: 00003025 */ or $a2,$zero,$zero /* f19d3e8: 2407ffff */ addiu $a3,$zero,-1 -/* f19d3ec: 0c004241 */ jal func00010904 +/* f19d3ec: 0c004241 */ jal audioStart /* f19d3f0: e7a40014 */ swc1 $f4,0x14($sp) .L0f19d3f4: /* f19d3f4: 00002025 */ or $a0,$zero,$zero @@ -539,7 +539,7 @@ glabel func0f19d414 /* f19d4c4: 240505d6 */ addiu $a1,$zero,0x5d6 /* f19d4c8: 00003025 */ or $a2,$zero,$zero /* f19d4cc: 2407ffff */ addiu $a3,$zero,-1 -/* f19d4d0: 0c004241 */ jal func00010904 +/* f19d4d0: 0c004241 */ jal audioStart /* f19d4d4: e7a40014 */ swc1 $f4,0x14($sp) .L0f19d4d8: /* f19d4d8: 8fbf002c */ lw $ra,0x2c($sp) @@ -3160,7 +3160,7 @@ glabel var7f1b94e4 /* f19fb58: 240505db */ addiu $a1,$zero,0x5db /* f19fb5c: 00003025 */ or $a2,$zero,$zero /* f19fb60: 2407ffff */ addiu $a3,$zero,-1 -/* f19fb64: 0c004241 */ jal func00010904 +/* f19fb64: 0c004241 */ jal audioStart /* f19fb68: e7b80014 */ swc1 $f24,0x14($sp) /* f19fb6c: 3c048009 */ lui $a0,%hi(menudialog_frtrainingstats2) /* f19fb70: 24849198 */ addiu $a0,$a0,%lo(menudialog_frtrainingstats2) @@ -3181,7 +3181,7 @@ glabel var7f1b94e4 /* f19fba8: 240505dc */ addiu $a1,$zero,0x5dc /* f19fbac: 00003025 */ or $a2,$zero,$zero /* f19fbb0: 2407ffff */ addiu $a3,$zero,-1 -/* f19fbb4: 0c004241 */ jal func00010904 +/* f19fbb4: 0c004241 */ jal audioStart /* f19fbb8: e7b80014 */ swc1 $f24,0x14($sp) /* f19fbbc: 3c048009 */ lui $a0,%hi(menudialog_frtrainingstats) /* f19fbc0: 2484907c */ addiu $a0,$a0,%lo(menudialog_frtrainingstats) @@ -3402,7 +3402,7 @@ glabel var7f1b94e4 /* f19fecc: 240505d4 */ addiu $a1,$zero,0x5d4 /* f19fed0: 00003025 */ or $a2,$zero,$zero /* f19fed4: 2407ffff */ addiu $a3,$zero,-1 -/* f19fed8: 0c004241 */ jal func00010904 +/* f19fed8: 0c004241 */ jal audioStart /* f19fedc: e7b80014 */ swc1 $f24,0x14($sp) /* f19fee0: 8ea30464 */ lw $v1,0x464($s5) .L0f19fee4: diff --git a/src/game/propobj.c b/src/game/propobj.c index fa58d6712..942054fa3 100644 --- a/src/game/propobj.c +++ b/src/game/propobj.c @@ -37782,12 +37782,13 @@ bool propobjInteract(struct prop *prop) if (handled) { // Typing sound - func00010904(var80095200, 0x8118, 0, -1, -1, -1, -1, -1); + audioStart(var80095200, 0x8118, NULL, -1, -1, -1, -1, -1); } func0f0fd494(&prop->pos); } else if (obj->type == OBJTYPE_ALARM) { - func00010904(var80095200, 0xba, 0, -1, -1, -1, -1, -1); + // Button press sound + audioStart(var80095200, 0xba, NULL, -1, -1, -1, -1, -1); if (alarmIsActive()) { alarmDeactivate(); @@ -38490,7 +38491,7 @@ glabel var7f1aac40 // } //} -void func0f087b0c(u32 ammotype) +void ammotypePlayPickupSound(u32 ammotype) { switch (ammotype) { case AMMOTYPE_PISTOL: @@ -38509,7 +38510,7 @@ void func0f087b0c(u32 ammotype) case AMMOTYPE_CLOAK: case AMMOTYPE_BOOST: case AMMOTYPE_TOKEN: - func00010904(var80095200, 0xea, 0, -1, -1, -1, -1, -1); + audioStart(var80095200, 0xea, NULL, -1, -1, -1, -1, -1); break; case AMMOTYPE_REMOTE_MINE: case AMMOTYPE_PROXY_MINE: @@ -38518,10 +38519,10 @@ void func0f087b0c(u32 ammotype) case AMMOTYPE_MICROCAMERA: case AMMOTYPE_PLASTIQUE: case AMMOTYPE_ECM_MINE: - func00010904(var80095200, 0xeb, 0, -1, -1, -1, -1, -1); + audioStart(var80095200, 0xeb, NULL, -1, -1, -1, -1, -1); break; case AMMOTYPE_KNIFE: - func00010904(var80095200, 0xe9, 0, -1, -1, -1, -1, -1); + audioStart(var80095200, 0xe9, NULL, -1, -1, -1, -1, -1); break; } } @@ -38586,7 +38587,7 @@ void func0f087d10(s32 weaponnum) sound = 0xe8; } - func00010904(var80095200, sound, 0, -1, -1, -1, -1, -1); + audioStart(var80095200, sound, NULL, -1, -1, -1, -1, -1); } GLOBAL_ASM( @@ -38766,7 +38767,7 @@ glabel func0f088028 .L0f0880a0: /* f0880a0: 51000004 */ beqzl $t0,.L0f0880b4 /* f0880a4: 24010007 */ addiu $at,$zero,0x7 -/* f0880a8: 0fc21ec3 */ jal func0f087b0c +/* f0880a8: 0fc21ec3 */ jal ammotypePlayPickupSound /* f0880ac: 02002025 */ or $a0,$s0,$zero /* f0880b0: 24010007 */ addiu $at,$zero,0x7 .L0f0880b4: @@ -39167,7 +39168,7 @@ glabel var7f1aae70 /* f0888e4: afac0010 */ sw $t4,0x10($sp) /* f0888e8: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f0888ec: 2407ffff */ addiu $a3,$zero,-1 -/* f0888f0: 0c004241 */ jal func00010904 +/* f0888f0: 0c004241 */ jal audioStart /* f0888f4: e7a40014 */ swc1 $f4,0x14($sp) .L0f0888f8: /* f0888f8: 8faf00a4 */ lw $t7,0xa4($sp) @@ -39247,7 +39248,7 @@ glabel var7f1aae70 /* f088a10: afad0010 */ sw $t5,0x10($sp) /* f088a14: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f088a18: 2407ffff */ addiu $a3,$zero,-1 -/* f088a1c: 0c004241 */ jal func00010904 +/* f088a1c: 0c004241 */ jal audioStart /* f088a20: e7a40014 */ swc1 $f4,0x14($sp) .L0f088a24: /* f088a24: 24180001 */ addiu $t8,$zero,0x1 @@ -39526,7 +39527,7 @@ glabel var7f1aae70 /* f088e0c: afad0010 */ sw $t5,0x10($sp) /* f088e10: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f088e14: 2407ffff */ addiu $a3,$zero,-1 -/* f088e18: 0c004241 */ jal func00010904 +/* f088e18: 0c004241 */ jal audioStart /* f088e1c: e7a60014 */ swc1 $f6,0x14($sp) .L0f088e20: /* f088e20: 8faf00a4 */ lw $t7,0xa4($sp) @@ -39618,7 +39619,7 @@ glabel var7f1aae70 /* f088f50: afb80010 */ sw $t8,0x10($sp) /* f088f54: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f088f58: 2407ffff */ addiu $a3,$zero,-1 -/* f088f5c: 0c004241 */ jal func00010904 +/* f088f5c: 0c004241 */ jal audioStart /* f088f60: e7a80014 */ swc1 $f8,0x14($sp) .L0f088f64: /* f088f64: 8faa00a4 */ lw $t2,0xa4($sp) @@ -39690,7 +39691,7 @@ glabel var7f1aae70 // switch (obj->type) { // case 0x04: // f0888b4 - key // if (g_Vars.in_cutscene == false) { -// func00010904(var80095200, 0xe5, 0, -1, -1, -1, -1, -1); +// audioStart(var80095200, 0xe5, NULL, -1, -1, -1, -1, -1); // } // // if (showhudmsg) { @@ -39729,7 +39730,7 @@ glabel var7f1aae70 // } // // if (g_Vars.in_cutscene == false) { -// func00010904(var80095200, 0xea, 0, -1, -1, -1, -1, -1); +// audioStart(var80095200, 0xea, NULL, -1, -1, -1, -1, -1); // } // // sp148[1] = 1; @@ -39880,7 +39881,7 @@ glabel var7f1aae70 // func0f0c2210(shield->amount); // // if (g_Vars.in_cutscene == false) { -// func00010904(var80095200, 0x1cd, 0, -1, -1, -1, -1, -1); +// audioStart(var80095200, 0x1cd, NULL, -1, -1, -1, -1, -1); // } // // if (showhudmsg) { @@ -39946,7 +39947,7 @@ glabel var7f1aae70 // case 0x2f: // f088f20 // default: // if (g_Vars.in_cutscene == false) { -// func00010904(var80095200, 0xe5, 0, -1, -1, -1, -1, -1); +// audioStart(var80095200, 0xe5, NULL, -1, -1, -1, -1, -1); // } // // if (showhudmsg) { @@ -41895,7 +41896,7 @@ glabel func0f08a9f4 /* f08aa44: 240580ab */ addiu $a1,$zero,-32597 /* f08aa48: 00003025 */ or $a2,$zero,$zero /* f08aa4c: 2407ffff */ addiu $a3,$zero,-1 -/* f08aa50: 0c004241 */ jal func00010904 +/* f08aa50: 0c004241 */ jal audioStart /* f08aa54: e7a40014 */ swc1 $f4,0x14($sp) /* f08aa58: 0fc28c41 */ jal func0f0a3104 /* f08aa5c: 8fa40028 */ lw $a0,0x28($sp) @@ -47721,15 +47722,15 @@ bool func0f09018c(struct prop *doorprop) void alarmActivate(void) { - if (g_AlarmActive < 1) { - g_AlarmActive = 1; + if (g_AlarmTimer < 1) { + g_AlarmTimer = 1; } } GLOBAL_ASM( glabel func0f0903d4 -/* f0903d4: 3c048007 */ lui $a0,%hi(var800698d8) -/* f0903d8: 8c8498d8 */ lw $a0,%lo(var800698d8)($a0) +/* f0903d4: 3c048007 */ lui $a0,%hi(g_AlarmAudioHandle) +/* f0903d8: 8c8498d8 */ lw $a0,%lo(g_AlarmAudioHandle)($a0) /* f0903dc: 27bdffe8 */ addiu $sp,$sp,-24 /* f0903e0: afbf0014 */ sw $ra,0x14($sp) /* f0903e4: 50800008 */ beqzl $a0,.L0f090408 @@ -47737,9 +47738,9 @@ glabel func0f0903d4 /* f0903ec: 0c00cdfc */ jal func000337f0 /* f0903f0: 00000000 */ sll $zero,$zero,0x0 /* f0903f4: 10400003 */ beqz $v0,.L0f090404 -/* f0903f8: 3c048007 */ lui $a0,%hi(var800698d8) -/* f0903fc: 0c00cec9 */ jal func00033b24 -/* f090400: 8c8498d8 */ lw $a0,%lo(var800698d8)($a0) +/* f0903f8: 3c048007 */ lui $a0,%hi(g_AlarmAudioHandle) +/* f0903fc: 0c00cec9 */ jal audioStop +/* f090400: 8c8498d8 */ lw $a0,%lo(g_AlarmAudioHandle)($a0) .L0f090404: /* f090404: 8fbf0014 */ lw $ra,0x14($sp) .L0f090408: @@ -47750,13 +47751,13 @@ glabel func0f0903d4 void alarmDeactivate(void) { - g_AlarmActive = 0; + g_AlarmTimer = 0; func0f0903d4(); } bool alarmIsActive(void) { - return g_AlarmActive > 0; + return g_AlarmTimer > 0; } GLOBAL_ASM( @@ -47814,7 +47815,7 @@ glabel func0f0904e0 /* f0904fc: 00000000 */ sll $zero,$zero,0x0 /* f090500: 10400003 */ beqz $v0,.L0f090510 /* f090504: 3c048007 */ lui $a0,%hi(var80069900) -/* f090508: 0c00cec9 */ jal func00033b24 +/* f090508: 0c00cec9 */ jal audioStop /* f09050c: 8c849900 */ lw $a0,%lo(var80069900)($a0) .L0f090510: /* f090510: 8fbf0014 */ lw $ra,0x14($sp) @@ -47917,7 +47918,7 @@ glabel var7f1ab19c /* f090658: afaa0018 */ sw $t2,0x18($sp) /* f09065c: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f090660: afa90010 */ sw $t1,0x10($sp) -/* f090664: 0c004241 */ jal func00010904 +/* f090664: 0c004241 */ jal audioStart /* f090668: e7a60014 */ swc1 $f6,0x14($sp) /* f09066c: 3c018007 */ lui $at,0x8007 /* f090670: c42098e4 */ lwc1 $f0,-0x671c($at) @@ -47985,7 +47986,7 @@ glabel var7f1ab19c /* f090760: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f090764: 24050037 */ addiu $a1,$zero,0x37 /* f090768: 2407ffff */ addiu $a3,$zero,-1 -/* f09076c: 0c004241 */ jal func00010904 +/* f09076c: 0c004241 */ jal audioStart /* f090770: e7a40014 */ swc1 $f4,0x14($sp) .L0f090774: /* f090774: 3c048007 */ lui $a0,%hi(var80069900) @@ -48020,7 +48021,7 @@ glabel var7f1ab19c /* f0907e4: 00000000 */ sll $zero,$zero,0x0 /* f0907e8: 10400003 */ beqz $v0,.L0f0907f8 /* f0907ec: 3c048007 */ lui $a0,%hi(var80069900) -/* f0907f0: 0c00cec9 */ jal func00033b24 +/* f0907f0: 0c00cec9 */ jal audioStop /* f0907f4: 8c849900 */ lw $a0,%lo(var80069900)($a0) .L0f0907f8: /* f0907f8: 8fbf002c */ lw $ra,0x2c($sp) @@ -48425,230 +48426,67 @@ glabel func0f090d34 /* f090db0: 00000000 */ sll $zero,$zero,0x0 ); -GLOBAL_ASM( -glabel func0f090db4 -.late_rodata -glabel var7f1ab1ac -.word func0f090db4+0x40 # f090df4 -glabel var7f1ab1b0 -.word func0f090db4+0x48 # f090dfc -glabel var7f1ab1b4 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1b8 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1bc -.word func0f090db4+0x58 # f090e0c -glabel var7f1ab1c0 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1c4 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1c8 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1cc -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1d0 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1d4 -.word func0f090db4+0x50 # f090e04 -glabel var7f1ab1d8 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1dc -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1e0 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1e4 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1e8 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1ec -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1f0 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1f4 -.word func0f090db4+0x68 # f090e1c -glabel var7f1ab1f8 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab1fc -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab200 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab204 -.word func0f090db4+0x70 # f090e24 -glabel var7f1ab208 -.word func0f090db4+0x60 # f090e14 -.text -/* f090db4: 27bdffc8 */ addiu $sp,$sp,-56 -/* f090db8: afbf002c */ sw $ra,0x2c($sp) -/* f090dbc: 0fc2410e */ jal alarmIsActive -/* f090dc0: 00000000 */ sll $zero,$zero,0x0 -/* f090dc4: 10400079 */ beqz $v0,.L0f090fac -/* f090dc8: 3c0e800a */ lui $t6,%hi(g_Vars+0x4b4) -/* f090dcc: 8dcea474 */ lw $t6,%lo(g_Vars+0x4b4)($t6) -/* f090dd0: 25cfffe3 */ addiu $t7,$t6,-29 -/* f090dd4: 2de10018 */ sltiu $at,$t7,0x18 -/* f090dd8: 10200012 */ beqz $at,.L0f090e24 -/* f090ddc: 000f7880 */ sll $t7,$t7,0x2 -/* f090de0: 3c017f1b */ lui $at,%hi(var7f1ab1ac) -/* f090de4: 002f0821 */ addu $at,$at,$t7 -/* f090de8: 8c2fb1ac */ lw $t7,%lo(var7f1ab1ac)($at) -/* f090dec: 01e00008 */ jr $t7 -/* f090df0: 00000000 */ sll $zero,$zero,0x0 -/* f090df4: 1000000c */ beqz $zero,.L0f090e28 -/* f090df8: 24056455 */ addiu $a1,$zero,0x6455 -/* f090dfc: 1000000a */ beqz $zero,.L0f090e28 -/* f090e00: 240500a2 */ addiu $a1,$zero,0xa2 -/* f090e04: 10000008 */ beqz $zero,.L0f090e28 -/* f090e08: 240500a1 */ addiu $a1,$zero,0xa1 -/* f090e0c: 10000006 */ beqz $zero,.L0f090e28 -/* f090e10: 240500a2 */ addiu $a1,$zero,0xa2 -/* f090e14: 10000004 */ beqz $zero,.L0f090e28 -/* f090e18: 240505c2 */ addiu $a1,$zero,0x5c2 -/* f090e1c: 10000002 */ beqz $zero,.L0f090e28 -/* f090e20: 240504ac */ addiu $a1,$zero,0x4ac -.L0f090e24: -/* f090e24: 240500a3 */ addiu $a1,$zero,0xa3 -.L0f090e28: -/* f090e28: 0fc5b364 */ jal soloIsPaused -/* f090e2c: a7a50036 */ sh $a1,0x36($sp) -/* f090e30: 14400057 */ bnez $v0,.L0f090f90 -/* f090e34: 87a50036 */ lh $a1,0x36($sp) -/* f090e38: 3c188007 */ lui $t8,%hi(var800698d8) -/* f090e3c: 8f1898d8 */ lw $t8,%lo(var800698d8)($t8) -/* f090e40: 3c068007 */ lui $a2,%hi(var800698d8) -/* f090e44: 24c698d8 */ addiu $a2,$a2,%lo(var800698d8) -/* f090e48: 13000045 */ beqz $t8,.L0f090f60 -/* f090e4c: 3c048009 */ lui $a0,%hi(var80095200) -/* f090e50: 3c19800a */ lui $t9,%hi(g_Vars+0x34) -/* f090e54: 8f399ff4 */ lw $t9,%lo(g_Vars+0x34)($t9) -/* f090e58: 3c014120 */ lui $at,0x4120 -/* f090e5c: 44810000 */ mtc1 $at,$f0 -/* f090e60: 44992000 */ mtc1 $t9,$f4 -/* f090e64: 3c014170 */ lui $at,0x4170 -/* f090e68: 44814000 */ mtc1 $at,$f8 -/* f090e6c: 468021a0 */ cvt.s.w $f6,$f4 -/* f090e70: 3c038007 */ lui $v1,%hi(var800698e0) -/* f090e74: 3c048007 */ lui $a0,%hi(var800698d8) -/* f090e78: 246398e0 */ addiu $v1,$v1,%lo(var800698e0) -/* f090e7c: 248498d8 */ addiu $a0,$a0,%lo(var800698d8) -/* f090e80: 00002825 */ or $a1,$zero,$zero -/* f090e84: 46083083 */ div.s $f2,$f6,$f8 -/* f090e88: 24067fff */ addiu $a2,$zero,0x7fff -/* f090e8c: 2409ffff */ addiu $t1,$zero,-1 -/* f090e90: 240affff */ addiu $t2,$zero,-1 -/* f090e94: 240b0001 */ addiu $t3,$zero,0x1 -/* f090e98: 4602003c */ c.lt.s $f0,$f2 -/* f090e9c: 00000000 */ sll $zero,$zero,0x0 -/* f090ea0: 45020003 */ bc1fl .L0f090eb0 -/* f090ea4: c46c0000 */ lwc1 $f12,0x0($v1) -/* f090ea8: 46000086 */ mov.s $f2,$f0 -/* f090eac: c46c0000 */ lwc1 $f12,0x0($v1) -.L0f090eb0: -/* f090eb0: 3c028007 */ lui $v0,%hi(var800698dc) -/* f090eb4: 244298dc */ addiu $v0,$v0,%lo(var800698dc) -/* f090eb8: 46026402 */ mul.s $f16,$f12,$f2 -/* f090ebc: c44a0000 */ lwc1 $f10,0x0($v0) -/* f090ec0: 3c0141f0 */ lui $at,0x41f0 -/* f090ec4: 44817000 */ mtc1 $at,$f14 -/* f090ec8: 3c0142c4 */ lui $at,0x42c4 -/* f090ecc: 46105480 */ add.s $f18,$f10,$f16 -/* f090ed0: e4520000 */ swc1 $f18,0x0($v0) -/* f090ed4: c4400000 */ lwc1 $f0,0x0($v0) -/* f090ed8: 460e003c */ c.lt.s $f0,$f14 -/* f090edc: 00000000 */ sll $zero,$zero,0x0 -/* f090ee0: 45020009 */ bc1fl .L0f090f08 -/* f090ee4: 44811000 */ mtc1 $at,$f2 -/* f090ee8: 3c01bf80 */ lui $at,0xbf80 -/* f090eec: 44812000 */ mtc1 $at,$f4 -/* f090ef0: e44e0000 */ swc1 $f14,0x0($v0) -/* f090ef4: c4400000 */ lwc1 $f0,0x0($v0) -/* f090ef8: 46046182 */ mul.s $f6,$f12,$f4 -/* f090efc: 1000000c */ beqz $zero,.L0f090f30 -/* f090f00: e4660000 */ swc1 $f6,0x0($v1) -/* f090f04: 44811000 */ mtc1 $at,$f2 -.L0f090f08: -/* f090f08: 3c01bf80 */ lui $at,0xbf80 -/* f090f0c: 4600103c */ c.lt.s $f2,$f0 -/* f090f10: 00000000 */ sll $zero,$zero,0x0 -/* f090f14: 45020007 */ bc1fl .L0f090f34 -/* f090f18: 4600040d */ trunc.w.s $f16,$f0 -/* f090f1c: 44814000 */ mtc1 $at,$f8 -/* f090f20: e4420000 */ swc1 $f2,0x0($v0) -/* f090f24: c4400000 */ lwc1 $f0,0x0($v0) -/* f090f28: 46086282 */ mul.s $f10,$f12,$f8 -/* f090f2c: e46a0000 */ swc1 $f10,0x0($v1) -.L0f090f30: -/* f090f30: 4600040d */ trunc.w.s $f16,$f0 -.L0f090f34: -/* f090f34: 3c01bf80 */ lui $at,0xbf80 -/* f090f38: 44819000 */ mtc1 $at,$f18 -/* f090f3c: afa90010 */ sw $t1,0x10($sp) -/* f090f40: 44078000 */ mfc1 $a3,$f16 -/* f090f44: afa00018 */ sw $zero,0x18($sp) -/* f090f48: afaa001c */ sw $t2,0x1c($sp) -/* f090f4c: afab0020 */ sw $t3,0x20($sp) -/* f090f50: 0c004128 */ jal func000104a0 -/* f090f54: e7b20014 */ swc1 $f18,0x14($sp) -/* f090f58: 1000000d */ beqz $zero,.L0f090f90 -/* f090f5c: 00000000 */ sll $zero,$zero,0x0 -.L0f090f60: -/* f090f60: 3c01bf80 */ lui $at,0xbf80 -/* f090f64: 44812000 */ mtc1 $at,$f4 -/* f090f68: 240cffff */ addiu $t4,$zero,-1 -/* f090f6c: 240dffff */ addiu $t5,$zero,-1 -/* f090f70: 240effff */ addiu $t6,$zero,-1 -/* f090f74: afae001c */ sw $t6,0x1c($sp) -/* f090f78: afad0018 */ sw $t5,0x18($sp) -/* f090f7c: afac0010 */ sw $t4,0x10($sp) -/* f090f80: 8c845200 */ lw $a0,%lo(var80095200)($a0) -/* f090f84: 2407ffff */ addiu $a3,$zero,-1 -/* f090f88: 0c004241 */ jal func00010904 -/* f090f8c: e7a40014 */ swc1 $f4,0x14($sp) -.L0f090f90: -/* f090f90: 3c038007 */ lui $v1,%hi(g_AlarmActive) -/* f090f94: 246398d4 */ addiu $v1,$v1,%lo(g_AlarmActive) -/* f090f98: 3c18800a */ lui $t8,%hi(g_Vars+0x38) -/* f090f9c: 8f189ff8 */ lw $t8,%lo(g_Vars+0x38)($t8) -/* f090fa0: 8c6f0000 */ lw $t7,0x0($v1) -/* f090fa4: 01f8c821 */ addu $t9,$t7,$t8 -/* f090fa8: ac790000 */ sw $t9,0x0($v1) -.L0f090fac: -/* f090fac: 3c038007 */ lui $v1,%hi(g_AlarmActive) -/* f090fb0: 246398d4 */ addiu $v1,$v1,%lo(g_AlarmActive) -/* f090fb4: 8c620000 */ lw $v0,0x0($v1) -/* f090fb8: 28410709 */ slti $at,$v0,0x709 -/* f090fbc: 54200008 */ bnezl $at,.L0f090fe0 -/* f090fc0: 28410ce5 */ slti $at,$v0,0xce5 -/* f090fc4: 0c003a61 */ jal getCurrentStageId -/* f090fc8: 00000000 */ sll $zero,$zero,0x0 -/* f090fcc: 2401001e */ addiu $at,$zero,0x1e -/* f090fd0: 1441000a */ bne $v0,$at,.L0f090ffc -/* f090fd4: 3c028007 */ lui $v0,%hi(g_AlarmActive) -/* f090fd8: 8c4298d4 */ lw $v0,%lo(g_AlarmActive)($v0) -/* f090fdc: 28410ce5 */ slti $at,$v0,0xce5 -.L0f090fe0: -/* f090fe0: 14200008 */ bnez $at,.L0f091004 -/* f090fe4: 00000000 */ sll $zero,$zero,0x0 -/* f090fe8: 0c003a61 */ jal getCurrentStageId -/* f090fec: 00000000 */ sll $zero,$zero,0x0 -/* f090ff0: 2401001e */ addiu $at,$zero,0x1e -/* f090ff4: 14410003 */ bne $v0,$at,.L0f091004 -/* f090ff8: 00000000 */ sll $zero,$zero,0x0 -.L0f090ffc: -/* f090ffc: 0fc24105 */ jal alarmDeactivate -/* f091000: 00000000 */ sll $zero,$zero,0x0 -.L0f091004: -/* f091004: 0fc24153 */ jal func0f09054c -/* f091008: 00000000 */ sll $zero,$zero,0x0 -/* f09100c: 0fc24222 */ jal countdownTimerTick -/* f091010: 00000000 */ sll $zero,$zero,0x0 -/* f091014: 0fc22b2c */ jal func0f08acb0 -/* f091018: 00000000 */ sll $zero,$zero,0x0 -/* f09101c: 8fbf002c */ lw $ra,0x2c($sp) -/* f091020: 3c018007 */ lui $at,%hi(var80069910) -/* f091024: ac209910 */ sw $zero,%lo(var80069910)($at) -/* f091028: 03e00008 */ jr $ra -/* f09102c: 27bd0038 */ addiu $sp,$sp,0x38 -); +void alarmTick(void) +{ + if (alarmIsActive()) { + s16 sound; + + // These sounds are alarm sounds. + // They go for a fraction of a second and are repeated by this function. + switch (g_Vars.stagenum) { + case STAGE_CHICAGO: sound = 0x6455; break; + case STAGE_G5BUILDING: sound = 0x00a2; break; + case STAGE_AIRBASE: sound = 0x00a1; break; + case STAGE_PELAGIC: sound = 0x00a2; break; + case STAGE_ATTACKSHIP: sound = 0x05c2; break; + case STAGE_INFILTRATION: sound = 0x04ac; break; + default: sound = 0x00a3; break; + } + + if (!soloIsPaused()) { + if (g_AlarmAudioHandle) { + // The sound is currently playing. Cycle between the left/right + // speaker for stereo or headphone mode. + f32 increment = g_Vars.lvupdate240 / 15.0f; + + if (increment > 10) { + increment = 10; + } + + g_AlarmSpeakerWeight += g_AlarmSpeakerDirection * increment; + + if (g_AlarmSpeakerWeight < 30) { + g_AlarmSpeakerWeight = 30; + g_AlarmSpeakerDirection *= -1; + } else if (g_AlarmSpeakerWeight > 98) { + g_AlarmSpeakerWeight = 98; + g_AlarmSpeakerDirection *= -1; + } + + audioAdjust(&g_AlarmAudioHandle, 0, 0x7fff, g_AlarmSpeakerWeight, -1, -1, 0, -1, 1); + } else { + // The alarm finished, or this is the first one. + // Start the sound again. + audioStart(var80095200, sound, &g_AlarmAudioHandle, -1, -1, -1, -1, -1); + } + } + + g_AlarmTimer += g_Vars.lvupdate240_60; + } + + // For G5, stop alarm after 55 seconds. + // For all other levels, stop alarm after 30 seconds. + if ((g_AlarmTimer > 1800 && getCurrentStageId() != STAGE_G5BUILDING) + || (g_AlarmTimer > 3300 && getCurrentStageId() == STAGE_G5BUILDING)) { + alarmDeactivate(); + } + + func0f09054c(); + countdownTimerTick(); + func0f08acb0(); + + var80069910 = 0; +} GLOBAL_ASM( glabel func0f091030 diff --git a/src/game/weather.c b/src/game/weather.c index d9fd94a33..cfed86d84 100644 --- a/src/game/weather.c +++ b/src/game/weather.c @@ -527,7 +527,7 @@ glabel var7f1b56f4 /* f131c00: afae0018 */ sw $t6,0x18($sp) /* f131c04: 8c845200 */ lw $a0,%lo(var80095200)($a0) /* f131c08: e7b60014 */ swc1 $f22,0x14($sp) -/* f131c0c: 0c004241 */ jal func00010904 +/* f131c0c: 0c004241 */ jal audioStart /* f131c10: afad0010 */ sw $t5,0x10($sp) /* f131c14: 8e040034 */ lw $a0,0x34($s0) .L0f131c18: @@ -557,7 +557,7 @@ glabel var7f1b56f4 /* f131c70: 03003025 */ or $a2,$t8,$zero /* f131c74: 2407ffff */ addiu $a3,$zero,-1 /* f131c78: afb90010 */ sw $t9,0x10($sp) -/* f131c7c: 0c004128 */ jal func000104a0 +/* f131c7c: 0c004128 */ jal audioAdjust /* f131c80: e7b20014 */ swc1 $f18,0x14($sp) /* f131c84: 10000007 */ beqz $zero,.L0f131ca4 /* f131c88: 26730004 */ addiu $s3,$s3,0x4 @@ -565,7 +565,7 @@ glabel var7f1b56f4 .L0f131c90: /* f131c90: 50800004 */ beqzl $a0,.L0f131ca4 /* f131c94: 26730004 */ addiu $s3,$s3,0x4 -/* f131c98: 0c00cec9 */ jal func00033b24 +/* f131c98: 0c00cec9 */ jal audioStop /* f131c9c: 00000000 */ sll $zero,$zero,0x0 .L0f131ca0: /* f131ca0: 26730004 */ addiu $s3,$s3,0x4 @@ -975,21 +975,21 @@ const char var7f1b5620[] = "rainspeedxtra"; // } // // if (iVar10 > 0) { -// if (weather->unk34[i] == 0 && sounds[i] >= 0) { +// if (weather->audiohandles[i] == 0 && sounds[i] >= 0) { // weather->unkf8 = sounds[i]; -// func00010904(var80095200, weather->unkf8, &weather->unk34[i], -1, +// audioStart(var80095200, weather->unkf8, &weather->audiohandles[i], -1, // -1, -1, -1, -1); // } // -// if (weather->unk34[i] != 0) { -// if (func000337f0(weather->unk34[i])) { -// func000104a0(&weather->unk34[i], 0, iVar10 * 3 / 4, -1, +// if (weather->audiohandles[i] != 0) { +// if (func000337f0(weather->audiohandles[i])) { +// audioAdjust(&weather->audiohandles[i], 0, iVar10 * 3 / 4, -1, // weather->unkf8, 1, 1, -1, 1); // } // } // } else { -// if (weather->unk34[i] != 0) { -// func00033b24(weather->unk34[i]); +// if (weather->audiohandles[i] != 0) { +// audioStop(weather->audiohandles[i]); // } // } // } @@ -2737,7 +2737,7 @@ glabel var7f1b5780 /* f1337e8: afad0018 */ sw $t5,0x18($sp) /* f1337ec: afac0010 */ sw $t4,0x10($sp) /* f1337f0: 8c845200 */ lw $a0,%lo(var80095200)($a0) -/* f1337f4: 0c004241 */ jal func00010904 +/* f1337f4: 0c004241 */ jal audioStart /* f1337f8: e7aa0014 */ swc1 $f10,0x14($sp) /* f1337fc: 8faf0dec */ lw $t7,0xdec($sp) /* f133800: 3c013f80 */ lui $at,0x3f80 @@ -2772,7 +2772,7 @@ glabel var7f1b5780 /* f13386c: afaf001c */ sw $t7,0x1c($sp) /* f133870: afb80018 */ sw $t8,0x18($sp) /* f133874: afae0010 */ sw $t6,0x10($sp) -/* f133878: 0c004128 */ jal func000104a0 +/* f133878: 0c004128 */ jal audioAdjust /* f13387c: e7a40014 */ swc1 $f4,0x14($sp) /* f133880: 8fb90dec */ lw $t9,0xdec($sp) /* f133884: 24050010 */ addiu $a1,$zero,0x10 @@ -5187,20 +5187,20 @@ glabel var7f1b5790 void weatherFree(void) { if (g_WeatherData) { - if (g_WeatherData->unk34[0]) { - func00033b24(g_WeatherData->unk34[0]); + if (g_WeatherData->audiohandles[0]) { + audioStop(g_WeatherData->audiohandles[0]); } - if (g_WeatherData->unk34[1]) { - func00033b24(g_WeatherData->unk34[1]); + if (g_WeatherData->audiohandles[1]) { + audioStop(g_WeatherData->audiohandles[1]); } - if (g_WeatherData->unk34[2]) { - func00033b24(g_WeatherData->unk34[2]); + if (g_WeatherData->audiohandles[2]) { + audioStop(g_WeatherData->audiohandles[2]); } - if (g_WeatherData->unk34[3]) { - func00033b24(g_WeatherData->unk34[3]); + if (g_WeatherData->audiohandles[3]) { + audioStop(g_WeatherData->audiohandles[3]); } g_WeatherData = NULL; diff --git a/src/game/weatherallocate.c b/src/game/weatherallocate.c index a6ca49fed..84c3b7c3e 100644 --- a/src/game/weatherallocate.c +++ b/src/game/weatherallocate.c @@ -38,10 +38,10 @@ void weatherAllocate(void) g_WeatherData->windspeed = 5; } - g_WeatherData->unk34[0] = 0; - g_WeatherData->unk34[1] = 0; - g_WeatherData->unk34[2] = 0; - g_WeatherData->unk34[3] = 0; + g_WeatherData->audiohandles[0] = 0; + g_WeatherData->audiohandles[1] = 0; + g_WeatherData->audiohandles[2] = 0; + g_WeatherData->audiohandles[3] = 0; g_WeatherData->unk44 = 0; g_WeatherData->unk94 = -1; g_WeatherData->unk48 = 1; diff --git a/src/include/game/data/data_000000.h b/src/include/game/data/data_000000.h index f46507d4c..007162b0f 100644 --- a/src/include/game/data/data_000000.h +++ b/src/include/game/data/data_000000.h @@ -36,7 +36,7 @@ extern u16 g_CommandLengths[NUM_AICOMMANDS]; extern struct coord var80068fec; extern u32 g_TintedGlassEnabled; -extern s32 g_AlarmActive; +extern s32 g_AlarmTimer; // counts upwards extern u32 var80059fe0; extern u32 var8005a0b0; extern u32 var8005b4d0; diff --git a/src/include/game/data/data_00e460.h b/src/include/game/data/data_00e460.h index 8fe2361b4..73ea61b36 100644 --- a/src/include/game/data/data_00e460.h +++ b/src/include/game/data/data_00e460.h @@ -26,9 +26,9 @@ extern u8 var80069860[8]; extern struct coord var80069868; extern struct coord var80069874; extern u32 var800698c0; -extern u32 var800698d8; -extern u32 var800698dc; -extern u32 var800698e0; +extern s32 g_AlarmAudioHandle; +extern f32 g_AlarmSpeakerWeight; +extern f32 g_AlarmSpeakerDirection; extern u32 var800698e4; extern u32 var800698e8; extern u32 var800698ec; diff --git a/src/include/game/data/data_020df0.h b/src/include/game/data/data_020df0.h index e7505c890..8a9cc5b57 100644 --- a/src/include/game/data/data_020df0.h +++ b/src/include/game/data/data_020df0.h @@ -281,7 +281,7 @@ extern s32 g_MpTimeElapsed; extern s32 g_MpTimeLimit; extern s32 g_MpScoreLimit; extern s32 g_MpTeamScoreLimit; -extern void *var80084034; +extern void *g_MiscAudioHandle; extern s32 var80084038; extern f32 g_Uptime; extern bool var80084040; diff --git a/src/include/game/propobj.h b/src/include/game/propobj.h index 0385c3a4c..1cafc05eb 100644 --- a/src/include/game/propobj.h +++ b/src/include/game/propobj.h @@ -236,7 +236,7 @@ void propObjGetBbox(struct prop *prop, f32 *width, f32 *ymax, f32 *ymin); u32 func0f087638(void); u32 func0f087668(void); void ammotypeGetPickupName(char *dst, s32 ammotype, s32 qty); -void func0f087b0c(u32 ammotype); +void ammotypePlayPickupSound(u32 ammotype); u32 propPlayPickupSound(struct prop *prop, s32 weapon); void func0f087d10(s32 weaponnum); u32 func0f087e40(void); @@ -264,7 +264,7 @@ struct weaponobj *weaponFindThrown(s32 weaponnum); u32 func0f08ab64(void); u32 func0f08ab9c(void); u32 func0f08abd4(void); -u32 func0f08acb0(void); +void func0f08acb0(void); void propweaponSetDual(struct weaponobj *weapon1, struct weaponobj *weapon2); u32 func0f08adc8(void); u32 func0f08ae0c(void); @@ -330,10 +330,10 @@ u32 func0f0903d4(void); u32 func0f09044c(void); u32 func0f0904e0(void); u32 func0f090520(void); -u32 func0f09054c(void); +void func0f09054c(void); u32 func0f0908b8(void); u32 func0f090d34(void); -u32 func0f090db4(void); +void alarmTick(void); u32 func0f091030(void); void func0f0910ac(void); u32 func0f091250(void); diff --git a/src/include/lib/lib_0e9d0.h b/src/include/lib/lib_0e9d0.h index 056d6794f..e7848c3ef 100644 --- a/src/include/lib/lib_0e9d0.h +++ b/src/include/lib/lib_0e9d0.h @@ -31,9 +31,9 @@ void func0000fe50(void); void func0000fe88(void); u32 func00010360(void); u32 func0001036c(void); -void func000104a0(s32 *arg0, u32 arg1, u32 arg2, s32 arg3, s16 arg4, f32 arg5, s32 arg6, s32 arg7, s32 arg8); +void audioAdjust(s32 *handle, u32 arg1, u32 arg2, s32 speakerweight, s16 arg4, f32 arg5, s32 arg6, s32 arg7, s32 arg8); void func00010718(s32 *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, f32 arg5, s32 arg6, s32 arg7, s32 arg8); -s32 func00010904(s32 arg0, s16 arg1, s32 *arg2, s32 arg3, s32 arg4, f32 arg5, s32 arg6, s32 arg7); +s32 audioStart(s32 arg0, s16 sound, s32 *handle, s32 arg3, s32 arg4, f32 arg5, s32 arg6, s32 arg7); u32 func00010ae4(void); void func00010db0(s32 room_id); void func00010de0(s32 room_id); diff --git a/src/include/lib/lib_317f0.h b/src/include/lib/lib_317f0.h index 0ddc91d58..20e2c6bf1 100644 --- a/src/include/lib/lib_317f0.h +++ b/src/include/lib/lib_317f0.h @@ -13,9 +13,9 @@ u32 func00033378(void); u32 func00033390(void); u32 func00033634(void); u32 func0003364c(void); -u32 func000337f0(void *arg0); +u32 func000337f0(s32 *handle); u32 func00033820(void); -void func00033b24(void *arg0); +void audioStop(s32 *handle); u32 func00033bc0(void); u32 func00033c30(void); u32 func00033cf0(void); diff --git a/src/include/types.h b/src/include/types.h index 4fac0e3f5..998656ccb 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -1671,7 +1671,7 @@ struct hand { /*0x0d74*/ u16 unk0d74[4]; /*0x0d7c*/ u32 unk0d7c; /*0x0d80*/ u32 unk0d80; - /*0x0d84*/ void *unk0d84; + /*0x0d84*/ s32 *audiohandle; /*0x0d88*/ u32 unk0d88; /*0x0d8c*/ u32 unk0d8c; /*0x0d90*/ u32 unk0d90; @@ -5353,7 +5353,7 @@ struct weatherdata { /*0x28*/ u32 unk28; /*0x2c*/ u32 unk2c; /*0x30*/ u32 unk30; - /*0x34*/ void *unk34[4]; + /*0x34*/ s32 *audiohandles[4]; /*0x44*/ s32 unk44; /*0x48*/ s32 unk48; /*0x4c*/ s32 unk4c; diff --git a/src/lib/lib_0e9d0.c b/src/lib/lib_0e9d0.c index 65a75286d..70b71e713 100644 --- a/src/lib/lib_0e9d0.c +++ b/src/lib/lib_0e9d0.c @@ -1894,7 +1894,7 @@ glabel func0000fe88 /* 10324: 87a50050 */ lh $a1,0x50($sp) /* 10328: 00003025 */ or $a2,$zero,$zero /* 1032c: 2407ffff */ addiu $a3,$zero,-1 -/* 10330: 0c004241 */ jal func00010904 +/* 10330: 0c004241 */ jal audioStart /* 10334: e7a40014 */ swc1 $f4,0x14($sp) .L00010338: /* 10338: 8fbf002c */ lw $ra,0x2c($sp) @@ -1953,7 +1953,7 @@ glabel func0001036c /* 103e8: afa9001c */ sw $t1,0x1c($sp) /* 103ec: 00003025 */ or $a2,$zero,$zero /* 103f0: 2407ffff */ addiu $a3,$zero,-1 -/* 103f4: 0c004241 */ jal func00010904 +/* 103f4: 0c004241 */ jal audioStart /* 103f8: e7a40014 */ swc1 $f4,0x14($sp) .L000103fc: /* 103fc: 8fbf0024 */ lw $ra,0x24($sp) @@ -2037,7 +2037,7 @@ glabel audioIsFiltered //} GLOBAL_ASM( -glabel func000104a0 +glabel audioAdjust /* 104a0: 27bdffd8 */ addiu $sp,$sp,-40 /* 104a4: 8faf0048 */ lw $t7,0x48($sp) /* 104a8: 240effff */ addiu $t6,$zero,-1 @@ -2337,7 +2337,7 @@ glabel func00010718 /* 108cc: afa8001c */ sw $t0,0x1c($sp) /* 108d0: afad0010 */ sw $t5,0x10($sp) /* 108d4: e7a40014 */ swc1 $f4,0x14($sp) -/* 108d8: 0c004241 */ jal func00010904 +/* 108d8: 0c004241 */ jal audioStart /* 108dc: afb80018 */ sw $t8,0x18($sp) /* 108e0: afa20034 */ sw $v0,0x34($sp) /* 108e4: 00002025 */ or $a0,$zero,$zero @@ -2351,7 +2351,7 @@ glabel func00010718 ); GLOBAL_ASM( -glabel func00010904 +glabel audioStart /* 10904: 27bdffb8 */ addiu $sp,$sp,-72 /* 10908: 8fae0064 */ lw $t6,0x64($sp) /* 1090c: 2402ffff */ addiu $v0,$zero,-1 @@ -2789,7 +2789,7 @@ glabel func00010e10 /* 10f00: 2484ddc0 */ addiu $a0,$a0,%lo(var8005ddc0) /* 10f04: afac0010 */ sw $t4,0x10($sp) /* 10f08: e7a00014 */ swc1 $f0,0x14($sp) -/* 10f0c: 0c004128 */ jal func000104a0 +/* 10f0c: 0c004128 */ jal audioAdjust /* 10f10: afa00018 */ sw $zero,0x18($sp) /* 10f14: 10000066 */ beqz $zero,.L000110b0 /* 10f18: 8fbf002c */ lw $ra,0x2c($sp) @@ -2797,7 +2797,7 @@ glabel func00010e10 /* 10f1c: 8c84ddc0 */ lw $a0,-8768($a0) /* 10f20: 50800063 */ beqzl $a0,.L000110b0 /* 10f24: 8fbf002c */ lw $ra,0x2c($sp) -/* 10f28: 0c00cec9 */ jal func00033b24 +/* 10f28: 0c00cec9 */ jal audioStop /* 10f2c: 00000000 */ sll $zero,$zero,0x0 /* 10f30: 3c018006 */ lui $at,%hi(var8005ddc0) /* 10f34: 1000005d */ beqz $zero,.L000110ac @@ -2821,7 +2821,7 @@ glabel func00010e10 /* 10f78: 24c6ddc0 */ addiu $a2,$a2,%lo(var8005ddc0) /* 10f7c: 2407ffff */ addiu $a3,$zero,-1 /* 10f80: e7a00034 */ swc1 $f0,0x34($sp) -/* 10f84: 0c004241 */ jal func00010904 +/* 10f84: 0c004241 */ jal audioStart /* 10f88: e7a40014 */ swc1 $f4,0x14($sp) /* 10f8c: 3c08800a */ lui $t0,%hi(g_Vars) /* 10f90: 25089fc0 */ addiu $t0,$t0,%lo(g_Vars) @@ -2855,7 +2855,7 @@ glabel func00010e10 /* 10ff8: afae0010 */ sw $t6,0x10($sp) /* 10ffc: 24070040 */ addiu $a3,$zero,0x40 /* 11000: e7a00014 */ swc1 $f0,0x14($sp) -/* 11004: 0c004128 */ jal func000104a0 +/* 11004: 0c004128 */ jal audioAdjust /* 11008: afa00018 */ sw $zero,0x18($sp) /* 1100c: 10000028 */ beqz $zero,.L000110b0 /* 11010: 8fbf002c */ lw $ra,0x2c($sp) @@ -2888,7 +2888,7 @@ glabel func00010e10 /* 11074: 2484ddc0 */ addiu $a0,$a0,%lo(var8005ddc0) /* 11078: afab0010 */ sw $t3,0x10($sp) /* 1107c: afa00018 */ sw $zero,0x18($sp) -/* 11080: 0c004128 */ jal func000104a0 +/* 11080: 0c004128 */ jal audioAdjust /* 11084: e7a80014 */ swc1 $f8,0x14($sp) /* 11088: 10000009 */ beqz $zero,.L000110b0 /* 1108c: 8fbf002c */ lw $ra,0x2c($sp) @@ -2896,7 +2896,7 @@ glabel func00010e10 /* 11090: 8c84ddc0 */ lw $a0,-8768($a0) /* 11094: 50800006 */ beqzl $a0,.L000110b0 /* 11098: 8fbf002c */ lw $ra,0x2c($sp) -/* 1109c: 0c00cec9 */ jal func00033b24 +/* 1109c: 0c00cec9 */ jal audioStop /* 110a0: 00000000 */ sll $zero,$zero,0x0 /* 110a4: 3c018006 */ lui $at,%hi(var8005ddc0) /* 110a8: ac20ddc0 */ sw $zero,%lo(var8005ddc0)($at) @@ -3028,7 +3028,7 @@ glabel func0001111c /* 11258: 2484ddc4 */ addiu $a0,$a0,%lo(var8005ddc4) /* 1125c: afac0010 */ sw $t4,0x10($sp) /* 11260: e7a00014 */ swc1 $f0,0x14($sp) -/* 11264: 0c004128 */ jal func000104a0 +/* 11264: 0c004128 */ jal audioAdjust /* 11268: afa00018 */ sw $zero,0x18($sp) /* 1126c: 10000067 */ beqz $zero,.L0001140c /* 11270: 8fbf002c */ lw $ra,0x2c($sp) @@ -3036,7 +3036,7 @@ glabel func0001111c /* 11274: 8c84ddc4 */ lw $a0,-8764($a0) /* 11278: 50800064 */ beqzl $a0,.L0001140c /* 1127c: 8fbf002c */ lw $ra,0x2c($sp) -/* 11280: 0c00cec9 */ jal func00033b24 +/* 11280: 0c00cec9 */ jal audioStop /* 11284: 00000000 */ sll $zero,$zero,0x0 /* 11288: 3c018006 */ lui $at,%hi(var8005ddc4) /* 1128c: 1000005e */ beqz $zero,.L00011408 @@ -3060,7 +3060,7 @@ glabel func0001111c /* 112d0: 24c6ddc4 */ addiu $a2,$a2,%lo(var8005ddc4) /* 112d4: 2407ffff */ addiu $a3,$zero,-1 /* 112d8: e7a00034 */ swc1 $f0,0x34($sp) -/* 112dc: 0c004241 */ jal func00010904 +/* 112dc: 0c004241 */ jal audioStart /* 112e0: e7a80014 */ swc1 $f8,0x14($sp) /* 112e4: 3c08800a */ lui $t0,%hi(g_Vars) /* 112e8: 25089fc0 */ addiu $t0,$t0,%lo(g_Vars) @@ -3095,7 +3095,7 @@ glabel func0001111c /* 11354: afae0010 */ sw $t6,0x10($sp) /* 11358: 24070040 */ addiu $a3,$zero,0x40 /* 1135c: e7a00014 */ swc1 $f0,0x14($sp) -/* 11360: 0c004128 */ jal func000104a0 +/* 11360: 0c004128 */ jal audioAdjust /* 11364: afa00018 */ sw $zero,0x18($sp) /* 11368: 10000028 */ beqz $zero,.L0001140c /* 1136c: 8fbf002c */ lw $ra,0x2c($sp) @@ -3128,7 +3128,7 @@ glabel func0001111c /* 113d0: 2484ddc4 */ addiu $a0,$a0,%lo(var8005ddc4) /* 113d4: afab0010 */ sw $t3,0x10($sp) /* 113d8: afa00018 */ sw $zero,0x18($sp) -/* 113dc: 0c004128 */ jal func000104a0 +/* 113dc: 0c004128 */ jal audioAdjust /* 113e0: e7a60014 */ swc1 $f6,0x14($sp) /* 113e4: 10000009 */ beqz $zero,.L0001140c /* 113e8: 8fbf002c */ lw $ra,0x2c($sp) @@ -3136,7 +3136,7 @@ glabel func0001111c /* 113ec: 8c84ddc4 */ lw $a0,-8764($a0) /* 113f0: 50800006 */ beqzl $a0,.L0001140c /* 113f4: 8fbf002c */ lw $ra,0x2c($sp) -/* 113f8: 0c00cec9 */ jal func00033b24 +/* 113f8: 0c00cec9 */ jal audioStop /* 113fc: 00000000 */ sll $zero,$zero,0x0 /* 11400: 3c018006 */ lui $at,%hi(var8005ddc4) /* 11404: ac20ddc4 */ sw $zero,%lo(var8005ddc4)($at) diff --git a/src/lib/lib_317f0.c b/src/lib/lib_317f0.c index d21171206..ab2b8768b 100644 --- a/src/lib/lib_317f0.c +++ b/src/lib/lib_317f0.c @@ -2516,7 +2516,7 @@ glabel func00033820 #if VERSION >= VERSION_NTSC_FINAL GLOBAL_ASM( -glabel func00033b24 +glabel audioStop /* 33b24: 27bdffd8 */ addiu $sp,$sp,-40 /* 33b28: afbf0014 */ sw $ra,0x14($sp) /* 33b2c: afa40028 */ sw $a0,0x28($sp) @@ -2562,7 +2562,7 @@ glabel func00033b24 ); #else GLOBAL_ASM( -glabel func00033b24 +glabel audioStop /* 33b24: 27bdffd8 */ addiu $sp,$sp,-40 /* 33b28: afbf0014 */ sw $ra,0x14($sp) /* 33b2c: afa40028 */ sw $a0,0x28($sp)