From 62b6cb3c0a02d3f7e1725b4dbedf3e70da0fa4ac Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Sat, 27 Mar 2021 18:05:22 +1000 Subject: [PATCH] Decompile alCSPNew --- src/include/PR/libaudio.h | 20 ++ src/include/PR/seqp.h | 37 +++ src/include/data.h | 2 +- src/include/lib/lib_34240.h | 2 +- src/include/lib/lib_39c80.h | 2 +- src/include/lib/lib_3c4d0.h | 2 - src/include/lib/lib_3d280.h | 1 - src/lib/lib_2fba0.c | 14 +- src/lib/lib_30ce0.c | 268 ++++++++++----------- src/lib/lib_317f0.c | 10 +- src/lib/lib_37b00.c | 8 +- src/lib/lib_39fc0.c | 4 +- src/lib/lib_39fe0.c | 8 +- src/lib/lib_3a100.c | 16 +- src/lib/lib_3c430.c | 4 +- src/lib/lib_3c4d0.c | 66 +++--- src/lib/lib_3ccf0.c | 4 +- src/lib/lib_3cdc0.c | 4 +- src/lib/lib_3cef0.c | 20 +- src/lib/lib_3d280.c | 2 +- src/lib/lib_3e3e0.c | 28 +-- src/lib/lib_3e730.c | 4 +- src/lib/lib_446d0.c | 4 +- src/lib/lib_44bc0.c | 24 +- src/lib/snd.c | 2 +- src/lib/ultra/audio/csplayer.c | 415 +++++++-------------------------- 26 files changed, 388 insertions(+), 583 deletions(-) create mode 100755 src/include/PR/seqp.h diff --git a/src/include/PR/libaudio.h b/src/include/PR/libaudio.h index 98023bb09..590c5d5f2 100644 --- a/src/include/PR/libaudio.h +++ b/src/include/PR/libaudio.h @@ -35,7 +35,11 @@ extern "C" { #define AL_FX_BUFFER_SIZE 8192 #define AL_FRAME_INIT -1 +#if PAL +#define AL_USEC_PER_FRAME 20000 +#else #define AL_USEC_PER_FRAME 16000 +#endif #define AL_MAX_PRIORITY 127 #define AL_GAIN_CHANGE_TIME 1000 @@ -621,6 +625,8 @@ typedef struct ALVoiceState_s { u8 tremelo; /* current value of the tremelo */ u8 flags; /* bit 0 tremelo flag bit 1 vibrato flag */ + u32 unk38; + u32 unk3c; } ALVoiceState; typedef struct { @@ -633,6 +639,15 @@ typedef struct { u8 fxmix; /* current fx mix for this chan */ u8 sustain; /* current sustain pedal state */ f32 pitchBend; /* current pitch bend val in cents */ + u32 unk10; + u32 unk14; + u32 unk18; + u32 unk1c; + u32 unk20; + u32 unk24; + u32 unk28; + u32 unk2c; + u32 unk30; } ALChanState; typedef struct ALSeq_s { @@ -749,6 +764,11 @@ typedef struct { ALOscInit initOsc; ALOscUpdate updateOsc; ALOscStop stopOsc; + f32 unk7c; + f32 unk80; + s32 unk84; + u8 unk88; + u8 unk89; } ALCSPlayer; /* diff --git a/src/include/PR/seqp.h b/src/include/PR/seqp.h new file mode 100755 index 000000000..c9ab02baa --- /dev/null +++ b/src/include/PR/seqp.h @@ -0,0 +1,37 @@ + + +#define KILL_TIME 50000 /* 50 ms */ + +#ifndef MIN +#define MIN(a,b) (((a)<(b))?(a):(b)) +#endif + +#ifndef MAX +#define MAX(a,b) (((a)>(b))?(a):(b)) +#endif + +ALVoiceState *__mapVoice(ALSeqPlayer *, u8, u8, u8); +void __unmapVoice(ALSeqPlayer *seqp, ALVoice *voice); +char __voiceNeedsNoteKill(ALSeqPlayer *seqp, ALVoice *voice, ALMicroTime killTime); /* sct 1/5/96 */ + +ALVoiceState *__lookupVoice(ALSeqPlayer *, u8, u8); +ALSound *__lookupSound(ALSeqPlayer *, u8, u8, u8); +ALSound *__lookupSoundQuick(ALSeqPlayer *, u8, u8, u8); + +s16 __vsVol(ALVoiceState *voice, ALSeqPlayer *seqp); +ALMicroTime __vsDelta(ALVoiceState *voice, ALMicroTime t); +ALPan __vsPan(ALVoiceState *voice, ALSeqPlayer *seqp); + +void __initFromBank(ALSeqPlayer *seqp, ALBank *b); +void __initChanState(ALSeqPlayer *seqp); +void __resetPerfChanState(ALSeqPlayer *seqp, s32 chan); +void __setInstChanState(ALSeqPlayer *seqp, ALInstrument *inst, s32 chan); + +void __seqpPrintVoices(ALSeqPlayer *); +void __seqpReleaseVoice(ALSeqPlayer *seqp, ALVoice *voice, + ALMicroTime deltaTime); + +void __seqpStopOsc(ALSeqPlayer *seqp, ALVoiceState *vs); + +void __postNextSeqEvent(ALSeqPlayer *seqp); /* sct 11/7/95 */ + diff --git a/src/include/data.h b/src/include/data.h index c00656cdf..c4693db4f 100644 --- a/src/include/data.h +++ b/src/include/data.h @@ -86,7 +86,7 @@ extern u32 var8005f048; extern u32 var8005f0a8; extern u32 var8005f108; extern u32 var8005f110; -extern u32 var8005f114; +extern ALGlobals *alGlobals; extern u32 var8005f120; extern u32 var8005f124; extern u32 var8005f128; diff --git a/src/include/lib/lib_34240.h b/src/include/lib/lib_34240.h index 0a87233e0..726919a14 100644 --- a/src/include/lib/lib_34240.h +++ b/src/include/lib/lib_34240.h @@ -4,7 +4,7 @@ #include "data.h" #include "types.h" -u32 func00034240(void); +u32 alCSPNew(void); u32 func00034df8(void); u32 func00034f0c(void); u32 func00034fb8(void); diff --git a/src/include/lib/lib_39c80.h b/src/include/lib/lib_39c80.h index e5a0afe64..476f0abc8 100644 --- a/src/include/lib/lib_39c80.h +++ b/src/include/lib/lib_39c80.h @@ -5,7 +5,7 @@ #include "types.h" u32 func00039c80(void); -u32 func00039cd0(void); +void func00039cd0(ALCSPlayer *seqp); u32 func00039e5c(void); #endif diff --git a/src/include/lib/lib_3c4d0.h b/src/include/lib/lib_3c4d0.h index bf1db5a66..f975ab977 100644 --- a/src/include/lib/lib_3c4d0.h +++ b/src/include/lib/lib_3c4d0.h @@ -4,11 +4,9 @@ #include "data.h" #include "types.h" -u32 func0003c4d0(void); u32 func0003c56c(void); u32 func0003c7c0(void); u32 func0003c900(void); -u32 func0003c970(void); u32 func0003c9e0(void); u32 func0003cbb4(void); diff --git a/src/include/lib/lib_3d280.h b/src/include/lib/lib_3d280.h index f1e7b1b35..43d1bcb43 100644 --- a/src/include/lib/lib_3d280.h +++ b/src/include/lib/lib_3d280.h @@ -15,7 +15,6 @@ u32 func0003d9cc(void); u32 func0003dad0(void); u32 func0003db14(void); u32 func0003dba0(void); -u32 func0003dc88(void); u32 func0003dd14(void); u32 func0003df64(void); u32 func0003e2a0(void); diff --git a/src/lib/lib_2fba0.c b/src/lib/lib_2fba0.c index 3cfb4cc2a..dcc03ded2 100644 --- a/src/lib/lib_2fba0.c +++ b/src/lib/lib_2fba0.c @@ -7,7 +7,7 @@ #include "types.h" u32 var8005f110 = 0; -u32 var8005f114 = 0; +ALGlobals *alGlobals = NULL; u32 var8005f118 = 0; u32 var8005f11c = 0; @@ -24,14 +24,14 @@ glabel func0002fba0 /* 2fbc0: 8faf0018 */ lw $t7,0x18($sp) /* 2fbc4: 3c018006 */ lui $at,%hi(var8005f110) /* 2fbc8: ac2ff110 */ sw $t7,%lo(var8005f110)($at) -/* 2fbcc: 3c188006 */ lui $t8,%hi(var8005f114) -/* 2fbd0: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 2fbcc: 3c188006 */ lui $t8,%hi(alGlobals) +/* 2fbd0: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 2fbd4: 17000007 */ bnez $t8,.L0002fbf4 /* 2fbd8: 00000000 */ nop /* 2fbdc: 3c198006 */ lui $t9,%hi(var8005f110) /* 2fbe0: 8f39f110 */ lw $t9,%lo(var8005f110)($t9) -/* 2fbe4: 3c018006 */ lui $at,%hi(var8005f114) -/* 2fbe8: ac39f114 */ sw $t9,%lo(var8005f114)($at) +/* 2fbe4: 3c018006 */ lui $at,%hi(alGlobals) +/* 2fbe8: ac39f114 */ sw $t9,%lo(alGlobals)($at) /* 2fbec: 0c00c338 */ jal func00030ce0 /* 2fbf0: 8fa4001c */ lw $a0,0x1c($sp) .L0002fbf4: @@ -57,8 +57,8 @@ glabel alClose /* 2fc2c: 00000000 */ nop /* 2fc30: 3c018006 */ lui $at,%hi(var8005f110) /* 2fc34: ac20f110 */ sw $zero,%lo(var8005f110)($at) -/* 2fc38: 3c018006 */ lui $at,%hi(var8005f114) -/* 2fc3c: ac20f114 */ sw $zero,%lo(var8005f114)($at) +/* 2fc38: 3c018006 */ lui $at,%hi(alGlobals) +/* 2fc3c: ac20f114 */ sw $zero,%lo(alGlobals)($at) .L0002fc40: /* 2fc40: 10000001 */ b .L0002fc48 /* 2fc44: 00000000 */ nop diff --git a/src/lib/lib_30ce0.c b/src/lib/lib_30ce0.c index f6615ca4c..b09f80fc9 100644 --- a/src/lib/lib_30ce0.c +++ b/src/lib/lib_30ce0.c @@ -21,39 +21,39 @@ glabel func00030ce0 /* 30cec: 8fae0040 */ lw $t6,0x40($sp) /* 30cf0: 8dcf0014 */ lw $t7,0x14($t6) /* 30cf4: afaf002c */ sw $t7,0x2c($sp) -/* 30cf8: 3c188006 */ lui $t8,%hi(var8005f114) -/* 30cfc: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 30cf8: 3c188006 */ lui $t8,%hi(alGlobals) +/* 30cfc: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 30d00: af000000 */ sw $zero,0x0($t8) /* 30d04: 8fb90040 */ lw $t9,0x40($sp) -/* 30d08: 3c098006 */ lui $t1,%hi(var8005f114) -/* 30d0c: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 30d08: 3c098006 */ lui $t1,%hi(alGlobals) +/* 30d0c: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 30d10: 8f280004 */ lw $t0,0x4($t9) /* 30d14: ad280038 */ sw $t0,0x38($t1) -/* 30d18: 3c0a8006 */ lui $t2,%hi(var8005f114) -/* 30d1c: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 30d18: 3c0a8006 */ lui $t2,%hi(alGlobals) +/* 30d1c: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 30d20: ad400020 */ sw $zero,0x20($t2) -/* 30d24: 3c0b8006 */ lui $t3,%hi(var8005f114) -/* 30d28: 8d6bf114 */ lw $t3,%lo(var8005f114)($t3) +/* 30d24: 3c0b8006 */ lui $t3,%hi(alGlobals) +/* 30d28: 8d6bf114 */ lw $t3,%lo(alGlobals)($t3) /* 30d2c: ad60001c */ sw $zero,0x1c($t3) /* 30d30: 8fac0040 */ lw $t4,0x40($sp) -/* 30d34: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 30d38: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 30d34: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 30d38: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 30d3c: 8d8d0018 */ lw $t5,0x18($t4) /* 30d40: adcd0040 */ sw $t5,0x40($t6) -/* 30d44: 3c188006 */ lui $t8,%hi(var8005f114) -/* 30d48: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 30d44: 3c188006 */ lui $t8,%hi(alGlobals) +/* 30d48: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 30d4c: 240f00b8 */ addiu $t7,$zero,0xb8 /* 30d50: af0f0044 */ sw $t7,0x44($t8) /* 30d54: 8fb90040 */ lw $t9,0x40($sp) -/* 30d58: 3c098006 */ lui $t1,%hi(var8005f114) -/* 30d5c: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 30d58: 3c098006 */ lui $t1,%hi(alGlobals) +/* 30d5c: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 30d60: 8f280010 */ lw $t0,0x10($t9) /* 30d64: ad280024 */ sw $t0,0x24($t1) -/* 30d68: 3c0a8006 */ lui $t2,%hi(var8005f114) -/* 30d6c: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 30d68: 3c0a8006 */ lui $t2,%hi(alGlobals) +/* 30d6c: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 30d70: ad400048 */ sw $zero,0x48($t2) -/* 30d74: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 30d78: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 30d74: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 30d78: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 30d7c: 240b0001 */ addiu $t3,$zero,0x1 /* 30d80: ad8b004c */ sw $t3,0x4c($t4) /* 30d84: 8fad0040 */ lw $t5,0x40($sp) @@ -61,8 +61,8 @@ glabel func00030ce0 /* 30d8c: 29c10003 */ slti $at,$t6,0x3 /* 30d90: 14200006 */ bnez $at,.L00030dac /* 30d94: 00000000 */ nop -/* 30d98: 3c188006 */ lui $t8,%hi(var8005f114) -/* 30d9c: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 30d98: 3c188006 */ lui $t8,%hi(alGlobals) +/* 30d9c: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 30da0: 240f0002 */ addiu $t7,$zero,0x2 /* 30da4: 1000000f */ b .L00030de4 /* 30da8: af0f003c */ sw $t7,0x3c($t8) @@ -71,20 +71,20 @@ glabel func00030ce0 /* 30db0: 8f28000c */ lw $t0,0xc($t9) /* 30db4: 1d000006 */ bgtz $t0,.L00030dd0 /* 30db8: 00000000 */ nop -/* 30dbc: 3c0a8006 */ lui $t2,%hi(var8005f114) -/* 30dc0: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 30dbc: 3c0a8006 */ lui $t2,%hi(alGlobals) +/* 30dc0: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 30dc4: 24090001 */ addiu $t1,$zero,0x1 /* 30dc8: 10000006 */ b .L00030de4 /* 30dcc: ad49003c */ sw $t1,0x3c($t2) .L00030dd0: /* 30dd0: 8fab0040 */ lw $t3,0x40($sp) -/* 30dd4: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 30dd8: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 30dd4: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 30dd8: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 30ddc: 8d6c000c */ lw $t4,0xc($t3) /* 30de0: adac003c */ sw $t4,0x3c($t5) .L00030de4: -/* 30de4: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 30de8: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 30de4: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 30de8: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 30dec: 240f0048 */ addiu $t7,$zero,0x48 /* 30df0: 00002025 */ or $a0,$zero,$zero /* 30df4: 8dc7003c */ lw $a3,0x3c($t6) @@ -92,18 +92,18 @@ glabel func00030ce0 /* 30dfc: 00002825 */ or $a1,$zero,$zero /* 30e00: 0c00bec5 */ jal alHeapDBAlloc /* 30e04: 8fa6002c */ lw $a2,0x2c($sp) -/* 30e08: 3c188006 */ lui $t8,%hi(var8005f114) -/* 30e0c: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 30e08: 3c188006 */ lui $t8,%hi(alGlobals) +/* 30e0c: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 30e10: af020034 */ sw $v0,0x34($t8) -/* 30e14: 3c198006 */ lui $t9,%hi(var8005f114) -/* 30e18: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 30e14: 3c198006 */ lui $t9,%hi(alGlobals) +/* 30e18: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 30e1c: afa0003c */ sw $zero,0x3c($sp) /* 30e20: 8f28003c */ lw $t0,0x3c($t9) /* 30e24: 19000088 */ blez $t0,.L00031048 /* 30e28: 00000000 */ nop .L00030e2c: -/* 30e2c: 3c098006 */ lui $t1,%hi(var8005f114) -/* 30e30: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 30e2c: 3c098006 */ lui $t1,%hi(alGlobals) +/* 30e30: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 30e34: 8fab003c */ lw $t3,0x3c($sp) /* 30e38: 8d2a0034 */ lw $t2,0x34($t1) /* 30e3c: 000b60c0 */ sll $t4,$t3,0x3 @@ -111,8 +111,8 @@ glabel func00030ce0 /* 30e44: 000c60c0 */ sll $t4,$t4,0x3 /* 30e48: 014c6821 */ addu $t5,$t2,$t4 /* 30e4c: ada00014 */ sw $zero,0x14($t5) -/* 30e50: 3c188006 */ lui $t8,%hi(var8005f114) -/* 30e54: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 30e50: 3c188006 */ lui $t8,%hi(alGlobals) +/* 30e54: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 30e58: 8fa8003c */ lw $t0,0x3c($sp) /* 30e5c: 8fae0040 */ lw $t6,0x40($sp) /* 30e60: 8f190034 */ lw $t9,0x34($t8) @@ -130,8 +130,8 @@ glabel func00030ce0 /* 30e90: 00002825 */ or $a1,$zero,$zero /* 30e94: 0c00bec5 */ jal alHeapDBAlloc /* 30e98: 8fa6002c */ lw $a2,0x2c($sp) -/* 30e9c: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 30ea0: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 30e9c: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 30ea0: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 30ea4: 8fb8003c */ lw $t8,0x3c($sp) /* 30ea8: 8dae0034 */ lw $t6,0x34($t5) /* 30eac: 001840c0 */ sll $t0,$t8,0x3 @@ -149,8 +149,8 @@ glabel func00030ce0 /* 30edc: 8fa50040 */ lw $a1,0x40($sp) /* 30ee0: 0c00e81c */ jal func0003a070 /* 30ee4: 8fa6002c */ lw $a2,0x2c($sp) -/* 30ee8: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 30eec: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 30ee8: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 30eec: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 30ef0: 8fb8003c */ lw $t8,0x3c($sp) /* 30ef4: 8d8d0034 */ lw $t5,0x34($t4) /* 30ef8: 001870c0 */ sll $t6,$t8,0x3 @@ -160,8 +160,8 @@ glabel func00030ce0 /* 30f08: 1000000a */ b .L00030f34 /* 30f0c: ad020020 */ sw $v0,0x20($t0) .L00030f10: -/* 30f10: 3c198006 */ lui $t9,%hi(var8005f114) -/* 30f14: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 30f10: 3c198006 */ lui $t9,%hi(alGlobals) +/* 30f14: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 30f18: 8faf003c */ lw $t7,0x3c($sp) /* 30f1c: 8f290034 */ lw $t1,0x34($t9) /* 30f20: 000f58c0 */ sll $t3,$t7,0x3 @@ -177,8 +177,8 @@ glabel func00030ce0 /* 30f44: 8fa6002c */ lw $a2,0x2c($sp) /* 30f48: 0c00bec5 */ jal alHeapDBAlloc /* 30f4c: 24070001 */ addiu $a3,$zero,0x1 -/* 30f50: 3c188006 */ lui $t8,%hi(var8005f114) -/* 30f54: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 30f50: 3c188006 */ lui $t8,%hi(alGlobals) +/* 30f54: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 30f58: 8fae003c */ lw $t6,0x3c($sp) /* 30f5c: 8f0d0034 */ lw $t5,0x34($t8) /* 30f60: 000e40c0 */ sll $t0,$t6,0x3 @@ -186,8 +186,8 @@ glabel func00030ce0 /* 30f68: 000840c0 */ sll $t0,$t0,0x3 /* 30f6c: 01a8c821 */ addu $t9,$t5,$t0 /* 30f70: af220044 */ sw $v0,0x44($t9) -/* 30f74: 3c0f8006 */ lui $t7,%hi(var8005f114) -/* 30f78: 8deff114 */ lw $t7,%lo(var8005f114)($t7) +/* 30f74: 3c0f8006 */ lui $t7,%hi(alGlobals) +/* 30f78: 8deff114 */ lw $t7,%lo(alGlobals)($t7) /* 30f7c: 8fab003c */ lw $t3,0x3c($sp) /* 30f80: 8de90034 */ lw $t1,0x34($t7) /* 30f84: 000b50c0 */ sll $t2,$t3,0x3 @@ -203,8 +203,8 @@ glabel func00030ce0 /* 30fac: 8fa6002c */ lw $a2,0x2c($sp) /* 30fb0: 0c00bec5 */ jal alHeapDBAlloc /* 30fb4: 24070001 */ addiu $a3,$zero,0x1 -/* 30fb8: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 30fbc: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 30fb8: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 30fbc: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 30fc0: 8fb9003c */ lw $t9,0x3c($sp) /* 30fc4: 8da80034 */ lw $t0,0x34($t5) /* 30fc8: 001978c0 */ sll $t7,$t9,0x3 @@ -220,8 +220,8 @@ glabel func00030ce0 /* 30ff0: 8fa6002c */ lw $a2,0x2c($sp) /* 30ff4: 0c00bec5 */ jal alHeapDBAlloc /* 30ff8: 24070001 */ addiu $a3,$zero,0x1 -/* 30ffc: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 31000: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 30ffc: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 31000: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 31004: 8fae003c */ lw $t6,0x3c($sp) /* 31008: 8d980034 */ lw $t8,0x34($t4) /* 3100c: 000e68c0 */ sll $t5,$t6,0x3 @@ -231,8 +231,8 @@ glabel func00030ce0 /* 3101c: 8f280044 */ lw $t0,0x44($t9) /* 31020: ad020030 */ sw $v0,0x30($t0) /* 31024: 8faf003c */ lw $t7,0x3c($sp) -/* 31028: 3c098006 */ lui $t1,%hi(var8005f114) -/* 3102c: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 31028: 3c098006 */ lui $t1,%hi(alGlobals) +/* 3102c: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 31030: 25eb0001 */ addiu $t3,$t7,0x1 /* 31034: afab003c */ sw $t3,0x3c($sp) /* 31038: 8d2a003c */ lw $t2,0x3c($t1) @@ -247,32 +247,32 @@ glabel func00030ce0 /* 31058: 8fa6002c */ lw $a2,0x2c($sp) /* 3105c: 0c00bec5 */ jal alHeapDBAlloc /* 31060: 24070001 */ addiu $a3,$zero,0x1 -/* 31064: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 31068: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 31064: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 31068: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3106c: adc20030 */ sw $v0,0x30($t6) -/* 31070: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 31074: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 31070: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 31074: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 31078: 3c187004 */ lui $t8,%hi(func0003a100) /* 3107c: 2718a100 */ addiu $t8,$t8,%lo(func0003a100) /* 31080: 8db90030 */ lw $t9,0x30($t5) /* 31084: af380004 */ sw $t8,0x4($t9) -/* 31088: 3c088006 */ lui $t0,%hi(var8005f114) -/* 3108c: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) +/* 31088: 3c088006 */ lui $t0,%hi(alGlobals) +/* 3108c: 8d08f114 */ lw $t0,%lo(alGlobals)($t0) /* 31090: ad000004 */ sw $zero,0x4($t0) -/* 31094: 3c0f8006 */ lui $t7,%hi(var8005f114) -/* 31098: 8deff114 */ lw $t7,%lo(var8005f114)($t7) +/* 31094: 3c0f8006 */ lui $t7,%hi(alGlobals) +/* 31098: 8deff114 */ lw $t7,%lo(alGlobals)($t7) /* 3109c: ade00008 */ sw $zero,0x8($t7) -/* 310a0: 3c098006 */ lui $t1,%hi(var8005f114) -/* 310a4: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 310a0: 3c098006 */ lui $t1,%hi(alGlobals) +/* 310a4: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 310a8: ad200014 */ sw $zero,0x14($t1) -/* 310ac: 3c0b8006 */ lui $t3,%hi(var8005f114) -/* 310b0: 8d6bf114 */ lw $t3,%lo(var8005f114)($t3) +/* 310ac: 3c0b8006 */ lui $t3,%hi(alGlobals) +/* 310b0: 8d6bf114 */ lw $t3,%lo(alGlobals)($t3) /* 310b4: ad600018 */ sw $zero,0x18($t3) -/* 310b8: 3c0a8006 */ lui $t2,%hi(var8005f114) -/* 310bc: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 310b8: 3c0a8006 */ lui $t2,%hi(alGlobals) +/* 310bc: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 310c0: ad40000c */ sw $zero,0xc($t2) -/* 310c4: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 310c8: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 310c4: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 310c8: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 310cc: ad800010 */ sw $zero,0x10($t4) /* 310d0: 8fae0040 */ lw $t6,0x40($sp) /* 310d4: 240d00c0 */ addiu $t5,$zero,0xc0 @@ -296,28 +296,28 @@ glabel func00030ce0 /* 31118: 000f7980 */ sll $t7,$t7,0x6 /* 3111c: 01e95821 */ addu $t3,$t7,$t1 /* 31120: afab0034 */ sw $t3,0x34($sp) -/* 31124: 3c058006 */ lui $a1,%hi(var8005f114) -/* 31128: 8ca5f114 */ lw $a1,%lo(var8005f114)($a1) +/* 31124: 3c058006 */ lui $a1,%hi(alGlobals) +/* 31128: 8ca5f114 */ lw $a1,%lo(alGlobals)($a1) /* 3112c: 8fa40034 */ lw $a0,0x34($sp) /* 31130: 0c00c5dc */ jal alLink /* 31134: 24a50004 */ addiu $a1,$a1,4 /* 31138: 8faa0034 */ lw $t2,0x34($sp) /* 3113c: ad400008 */ sw $zero,0x8($t2) -/* 31140: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 31144: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 31140: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 31144: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 31148: 8fa40034 */ lw $a0,0x34($sp) /* 3114c: 8fa6002c */ lw $a2,0x2c($sp) /* 31150: 0c00f085 */ jal func0003c214 /* 31154: 8d850024 */ lw $a1,0x24($t4) -/* 31158: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3115c: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 31158: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3115c: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 31160: afa00038 */ sw $zero,0x38($sp) /* 31164: 8dcd003c */ lw $t5,0x3c($t6) /* 31168: 19a00023 */ blez $t5,.L000311f8 /* 3116c: 00000000 */ nop .L00031170: -/* 31170: 3c198006 */ lui $t9,%hi(var8005f114) -/* 31174: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 31170: 3c198006 */ lui $t9,%hi(alGlobals) +/* 31174: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 31178: 8faf0038 */ lw $t7,0x38($sp) /* 3117c: 8fb80034 */ lw $t8,0x34($sp) /* 31180: 8f280034 */ lw $t0,0x34($t9) @@ -327,12 +327,12 @@ glabel func00030ce0 /* 31190: 01095821 */ addu $t3,$t0,$t1 /* 31194: 8d6c0014 */ lw $t4,0x14($t3) /* 31198: 8d6a001c */ lw $t2,0x1c($t3) -/* 3119c: 3c198006 */ lui $t9,%hi(var8005f114) +/* 3119c: 3c198006 */ lui $t9,%hi(alGlobals) /* 311a0: 000c7080 */ sll $t6,$t4,0x2 /* 311a4: 014e6821 */ addu $t5,$t2,$t6 /* 311a8: adb80000 */ sw $t8,0x0($t5) /* 311ac: 8fa80038 */ lw $t0,0x38($sp) -/* 311b0: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 311b0: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 311b4: 000848c0 */ sll $t1,$t0,0x3 /* 311b8: 8f2f0034 */ lw $t7,0x34($t9) /* 311bc: 01284821 */ addu $t1,$t1,$t0 @@ -342,8 +342,8 @@ glabel func00030ce0 /* 311cc: 258a0001 */ addiu $t2,$t4,0x1 /* 311d0: ad6a0014 */ sw $t2,0x14($t3) /* 311d4: 8fae0038 */ lw $t6,0x38($sp) -/* 311d8: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 311dc: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 311d8: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 311dc: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 311e0: 25d80001 */ addiu $t8,$t6,0x1 /* 311e4: afb80038 */ sw $t8,0x38($sp) /* 311e8: 8db9003c */ lw $t9,0x3c($t5) @@ -369,8 +369,8 @@ glabel func00030ce0 /* 31230: 0c00bec5 */ jal alHeapDBAlloc /* 31234: 8fa6002c */ lw $a2,0x2c($sp) /* 31238: afa20028 */ sw $v0,0x28($sp) -/* 3123c: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 31240: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3123c: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 31240: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 31244: adc0002c */ sw $zero,0x2c($t6) /* 31248: 8fad0040 */ lw $t5,0x40($sp) /* 3124c: afa0003c */ sw $zero,0x3c($sp) @@ -385,13 +385,13 @@ glabel func00030ce0 /* 3126c: 00084080 */ sll $t0,$t0,0x2 /* 31270: 01097821 */ addu $t7,$t0,$t1 /* 31274: afaf0024 */ sw $t7,0x24($sp) -/* 31278: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 3127c: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 31278: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 3127c: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 31280: 8fab0024 */ lw $t3,0x24($sp) /* 31284: 8d8a002c */ lw $t2,0x2c($t4) /* 31288: ad6a0000 */ sw $t2,0x0($t3) -/* 3128c: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 31290: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 3128c: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 31290: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 31294: 8fae0024 */ lw $t6,0x24($sp) /* 31298: adae002c */ sw $t6,0x2c($t5) /* 3129c: 8fb8003c */ lw $t8,0x3c($sp) @@ -403,8 +403,8 @@ glabel func00030ce0 /* 312b4: 1420ffe9 */ bnez $at,.L0003125c /* 312b8: 00000000 */ nop .L000312bc: -/* 312bc: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 312c0: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 312bc: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 312c0: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 312c4: 8faf002c */ lw $t7,0x2c($sp) /* 312c8: ad8f0028 */ sw $t7,0x28($t4) /* 312cc: 10000001 */ b .L000312d4 @@ -430,8 +430,8 @@ glabel alAudioFrame /* 31308: afae0038 */ sw $t6,0x38($sp) /* 3130c: 8faf0048 */ lw $t7,0x48($sp) /* 31310: afaf002c */ sw $t7,0x2c($sp) -/* 31314: 3c188006 */ lui $t8,%hi(var8005f114) -/* 31318: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 31314: 3c188006 */ lui $t8,%hi(alGlobals) +/* 31318: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 3131c: 8f190000 */ lw $t9,0x0($t8) /* 31320: 17200005 */ bnez $t9,.L00031338 /* 31324: 00000000 */ nop @@ -442,11 +442,11 @@ glabel alAudioFrame .L00031338: /* 31338: 0c00c5b4 */ jal func000316d0 /* 3133c: 27a4003c */ addiu $a0,$sp,0x3c -/* 31340: 3c098006 */ lui $t1,%hi(var8005f114) -/* 31344: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) -/* 31348: 3c0a8006 */ lui $t2,%hi(var8005f114) +/* 31340: 3c098006 */ lui $t1,%hi(alGlobals) +/* 31344: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) +/* 31348: 3c0a8006 */ lui $t2,%hi(alGlobals) /* 3134c: ad22001c */ sw $v0,0x1c($t1) -/* 31350: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 31350: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 31354: 8fae004c */ lw $t6,0x4c($sp) /* 31358: 8d4b001c */ lw $t3,0x1c($t2) /* 3135c: 8d4c0020 */ lw $t4,0x20($t2) @@ -455,8 +455,8 @@ glabel alAudioFrame /* 31368: 10200022 */ beqz $at,.L000313f4 /* 3136c: 00000000 */ nop .L00031370: -/* 31370: 3c0f8006 */ lui $t7,%hi(var8005f114) -/* 31374: 8deff114 */ lw $t7,%lo(var8005f114)($t7) +/* 31370: 3c0f8006 */ lui $t7,%hi(alGlobals) +/* 31374: 8deff114 */ lw $t7,%lo(alGlobals)($t7) /* 31378: 2401fff0 */ addiu $at,$zero,-16 /* 3137c: 8df8001c */ lw $t8,0x1c($t7) /* 31380: 0301c824 */ and $t9,$t8,$at @@ -476,11 +476,11 @@ glabel alAudioFrame /* 313b8: ad2b0010 */ sw $t3,0x10($t1) /* 313bc: 0c00c5b4 */ jal func000316d0 /* 313c0: 27a4003c */ addiu $a0,$sp,0x3c -/* 313c4: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 313c8: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) -/* 313cc: 3c0d8006 */ lui $t5,%hi(var8005f114) +/* 313c4: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 313c8: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) +/* 313cc: 3c0d8006 */ lui $t5,%hi(alGlobals) /* 313d0: ad82001c */ sw $v0,0x1c($t4) -/* 313d4: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 313d4: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 313d8: 8fa8004c */ lw $t0,0x4c($sp) /* 313dc: 8dae001c */ lw $t6,0x1c($t5) /* 313e0: 8db80020 */ lw $t8,0x20($t5) @@ -489,8 +489,8 @@ glabel alAudioFrame /* 313ec: 1420ffe0 */ bnez $at,.L00031370 /* 313f0: 00000000 */ nop .L000313f4: -/* 313f4: 3c198006 */ lui $t9,%hi(var8005f114) -/* 313f8: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 313f4: 3c198006 */ lui $t9,%hi(alGlobals) +/* 313f8: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 313fc: 2401fff0 */ addiu $at,$zero,-16 /* 31400: 8f2a001c */ lw $t2,0x1c($t9) /* 31404: 01415824 */ and $t3,$t2,$at @@ -499,8 +499,8 @@ glabel alAudioFrame /* 31410: 1920002b */ blez $t1,.L000314c0 /* 31414: 00000000 */ nop .L00031418: -/* 31418: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 3141c: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 31418: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 3141c: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 31420: 8fae004c */ lw $t6,0x4c($sp) /* 31424: 8d8d0044 */ lw $t5,0x44($t4) /* 31428: 01ae082a */ slt $at,$t5,$t6 @@ -514,12 +514,12 @@ glabel alAudioFrame .L00031444: /* 31444: 8faf0038 */ lw $t7,0x38($sp) /* 31448: afaf0034 */ sw $t7,0x34($sp) -/* 3144c: 3c0a8006 */ lui $t2,%hi(var8005f114) -/* 31450: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 3144c: 3c0a8006 */ lui $t2,%hi(alGlobals) +/* 31450: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 31454: 8fa8002c */ lw $t0,0x2c($sp) /* 31458: ad480048 */ sw $t0,0x48($t2) -/* 3145c: 3c0b8006 */ lui $t3,%hi(var8005f114) -/* 31460: 8d6bf114 */ lw $t3,%lo(var8005f114)($t3) +/* 3145c: 3c0b8006 */ lui $t3,%hi(alGlobals) +/* 31460: 8d6bf114 */ lw $t3,%lo(alGlobals)($t3) /* 31464: 8fa50034 */ lw $a1,0x34($sp) /* 31468: 0c00f10c */ jal func0003c430 /* 3146c: 8d640020 */ lw $a0,0x20($t3) @@ -534,8 +534,8 @@ glabel alAudioFrame /* 31490: 00187840 */ sll $t7,$t8,0x1 /* 31494: 01cf4021 */ addu $t0,$t6,$t7 /* 31498: afa8002c */ sw $t0,0x2c($sp) -/* 3149c: 3c0a8006 */ lui $t2,%hi(var8005f114) -/* 314a0: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 3149c: 3c0a8006 */ lui $t2,%hi(alGlobals) +/* 314a0: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 314a4: 8fb90030 */ lw $t9,0x30($sp) /* 314a8: 8d4b0020 */ lw $t3,0x20($t2) /* 314ac: 01794821 */ addu $t1,$t3,$t9 @@ -568,17 +568,17 @@ GLOBAL_ASM( glabel func00031504 /* 31504: 27bdfff8 */ addiu $sp,$sp,-8 /* 31508: afa00004 */ sw $zero,0x4($sp) -/* 3150c: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 31510: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3150c: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 31510: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 31514: 8dcf002c */ lw $t7,0x2c($t6) /* 31518: 11e0000c */ beqz $t7,.L0003154c /* 3151c: 00000000 */ nop -/* 31520: 3c188006 */ lui $t8,%hi(var8005f114) -/* 31524: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 31520: 3c188006 */ lui $t8,%hi(alGlobals) +/* 31524: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 31528: 8f19002c */ lw $t9,0x2c($t8) /* 3152c: afb90004 */ sw $t9,0x4($sp) -/* 31530: 3c088006 */ lui $t0,%hi(var8005f114) -/* 31534: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) +/* 31530: 3c088006 */ lui $t0,%hi(alGlobals) +/* 31534: 8d08f114 */ lw $t0,%lo(alGlobals)($t0) /* 31538: 8d09002c */ lw $t1,0x2c($t0) /* 3153c: 8d2a0000 */ lw $t2,0x0($t1) /* 31540: ad0a002c */ sw $t2,0x2c($t0) @@ -596,12 +596,12 @@ glabel func00031504 GLOBAL_ASM( glabel func00031564 -/* 31564: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 31568: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 31564: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 31568: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3156c: 8dcf002c */ lw $t7,0x2c($t6) /* 31570: ac8f0000 */ sw $t7,0x0($a0) -/* 31574: 3c188006 */ lui $t8,%hi(var8005f114) -/* 31578: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 31574: 3c188006 */ lui $t8,%hi(alGlobals) +/* 31578: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 3157c: af04002c */ sw $a0,0x2c($t8) /* 31580: 03e00008 */ jr $ra /* 31584: 00000000 */ nop @@ -613,21 +613,21 @@ GLOBAL_ASM( glabel func00031590 /* 31590: 27bdffe0 */ addiu $sp,$sp,-32 /* 31594: afbf0014 */ sw $ra,0x14($sp) -/* 31598: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3159c: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 31598: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3159c: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 315a0: 8dcf0014 */ lw $t7,0x14($t6) /* 315a4: 11e0000d */ beqz $t7,.L000315dc /* 315a8: afaf001c */ sw $t7,0x1c($sp) .L000315ac: /* 315ac: 0c00c5e9 */ jal alUnlink /* 315b0: 8fa4001c */ lw $a0,0x1c($sp) -/* 315b4: 3c058006 */ lui $a1,%hi(var8005f114) -/* 315b8: 8ca5f114 */ lw $a1,%lo(var8005f114)($a1) +/* 315b4: 3c058006 */ lui $a1,%hi(alGlobals) +/* 315b8: 8ca5f114 */ lw $a1,%lo(alGlobals)($a1) /* 315bc: 8fa4001c */ lw $a0,0x1c($sp) /* 315c0: 0c00c5dc */ jal alLink /* 315c4: 24a50004 */ addiu $a1,$a1,4 -/* 315c8: 3c188006 */ lui $t8,%hi(var8005f114) -/* 315cc: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 315c8: 3c188006 */ lui $t8,%hi(alGlobals) +/* 315cc: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 315d0: 8f190014 */ lw $t9,0x14($t8) /* 315d4: 1720fff5 */ bnez $t9,.L000315ac /* 315d8: afb9001c */ sw $t9,0x1c($sp) @@ -648,8 +648,8 @@ glabel func000315f4 /* 315fc: afa40018 */ sw $a0,0x18($sp) /* 31600: 0c00c5e9 */ jal alUnlink /* 31604: 8fa40018 */ lw $a0,0x18($sp) -/* 31608: 3c058006 */ lui $a1,%hi(var8005f114) -/* 3160c: 8ca5f114 */ lw $a1,%lo(var8005f114)($a1) +/* 31608: 3c058006 */ lui $a1,%hi(alGlobals) +/* 3160c: 8ca5f114 */ lw $a1,%lo(alGlobals)($a1) /* 31610: 8fa40018 */ lw $a0,0x18($sp) /* 31614: 0c00c5dc */ jal alLink /* 31618: 24a50014 */ addiu $a1,$a1,20 @@ -665,8 +665,8 @@ glabel func000315f4 GLOBAL_ASM( glabel func00031634 /* 31634: 27bdfff8 */ addiu $sp,$sp,-8 -/* 31638: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3163c: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 31638: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3163c: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 31640: 44842000 */ mtc1 $a0,$f4 /* 31644: 3c017005 */ lui $at,%hi(var70054730) /* 31648: 8dcf0040 */ lw $t7,0x40($t6) @@ -718,14 +718,14 @@ glabel func000316d0 /* 316d8: 35ceffff */ ori $t6,$t6,0xffff /* 316dc: afae0004 */ sw $t6,0x4($sp) /* 316e0: ac800000 */ sw $zero,0x0($a0) -/* 316e4: 3c0f8006 */ lui $t7,%hi(var8005f114) -/* 316e8: 8deff114 */ lw $t7,%lo(var8005f114)($t7) +/* 316e4: 3c0f8006 */ lui $t7,%hi(alGlobals) +/* 316e8: 8deff114 */ lw $t7,%lo(alGlobals)($t7) /* 316ec: 8df80000 */ lw $t8,0x0($t7) /* 316f0: 13000018 */ beqz $t8,.L00031754 /* 316f4: afb80000 */ sw $t8,0x0($sp) .L000316f8: -/* 316f8: 3c098006 */ lui $t1,%hi(var8005f114) -/* 316fc: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 316f8: 3c098006 */ lui $t1,%hi(alGlobals) +/* 316fc: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 31700: 8fb90000 */ lw $t9,0x0($sp) /* 31704: 8fac0004 */ lw $t4,0x4($sp) /* 31708: 8d2a0020 */ lw $t2,0x20($t1) @@ -736,8 +736,8 @@ glabel func000316d0 /* 3171c: 00000000 */ nop /* 31720: 8fad0000 */ lw $t5,0x0($sp) /* 31724: ac8d0000 */ sw $t5,0x0($a0) -/* 31728: 3c188006 */ lui $t8,%hi(var8005f114) -/* 3172c: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 31728: 3c188006 */ lui $t8,%hi(alGlobals) +/* 3172c: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 31730: 8fae0000 */ lw $t6,0x0($sp) /* 31734: 8f190020 */ lw $t9,0x20($t8) /* 31738: 8dcf0010 */ lw $t7,0x10($t6) diff --git a/src/lib/lib_317f0.c b/src/lib/lib_317f0.c index b36d7779a..98f8b2237 100644 --- a/src/lib/lib_317f0.c +++ b/src/lib/lib_317f0.c @@ -85,7 +85,7 @@ glabel func000317f0 /* 318ac: 8fa80040 */ lw $t0,0x40($sp) /* 318b0: 8fa50038 */ lw $a1,0x38($sp) /* 318b4: 24840014 */ addiu $a0,$a0,20 -/* 318b8: 0c00f134 */ jal func0003c4d0 +/* 318b8: 0c00f134 */ jal alEvtqNew /* 318bc: 8d060004 */ lw $a2,0x4($t0) /* 318c0: 3c098006 */ lui $t1,%hi(var8005f12c) /* 318c4: 8d29f12c */ lw $t1,%lo(var8005f12c)($t1) @@ -252,7 +252,7 @@ glabel func000317f0 /* 318ac: 8fa80040 */ lw $t0,0x40($sp) /* 318b0: 8fa50038 */ lw $a1,0x38($sp) /* 318b4: 24840014 */ addiu $a0,$a0,20 -/* 318b8: 0c00f134 */ jal func0003c4d0 +/* 318b8: 0c00f134 */ jal alEvtqNew /* 318bc: 8d060004 */ lw $a2,0x4($t0) /* 318c0: 3c098006 */ lui $t1,%hi(var8005f12c) /* 318c4: 8d29f12c */ lw $t1,%lo(var8005f12c)($t1) @@ -417,7 +417,7 @@ glabel func000317f0 /* 32ff4: 8fa80040 */ lw $t0,0x40($sp) /* 32ff8: 8fa50038 */ lw $a1,0x38($sp) /* 32ffc: 24840014 */ addiu $a0,$a0,0x14 -/* 33000: 0c00f628 */ jal func0003c4d0 +/* 33000: 0c00f628 */ jal alEvtqNew /* 33004: 8d060004 */ lw $a2,0x4($t0) /* 33008: 3c098006 */ lui $t1,0x8006 /* 3300c: 8d29163c */ lw $t1,0x163c($t1) @@ -1651,8 +1651,8 @@ glabel var7005477c /* 329e0: 8fa80060 */ lw $t0,0x60($sp) /* 329e4: 8d780008 */ lw $t8,0x8($t3) /* 329e8: a1180043 */ sb $t8,0x43($t0) -/* 329ec: 3c098006 */ lui $t1,%hi(var8005f114) -/* 329f0: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 329ec: 3c098006 */ lui $t1,%hi(alGlobals) +/* 329f0: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 329f4: 8fac0060 */ lw $t4,0x60($sp) /* 329f8: 8d2e003c */ lw $t6,0x3c($t1) /* 329fc: 91990043 */ lbu $t9,0x43($t4) diff --git a/src/lib/lib_37b00.c b/src/lib/lib_37b00.c index e8bcf12a2..93d12c51a 100644 --- a/src/lib/lib_37b00.c +++ b/src/lib/lib_37b00.c @@ -1412,8 +1412,8 @@ glabel func00038ba8 /* 38c10: 014b6023 */ subu $t4,$t2,$t3 /* 38c14: afac0028 */ sw $t4,0x28($sp) .L00038c18: -/* 38c18: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 38c1c: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 38c18: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 38c1c: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 38c20: 27a4001c */ addiu $a0,$sp,0x1c /* 38c24: 8db90024 */ lw $t9,0x24($t5) /* 38c28: 0320f809 */ jalr $t9 @@ -1456,8 +1456,8 @@ GLOBAL_ASM( glabel func00038cac /* 38cac: 27bdffe0 */ addiu $sp,$sp,-32 /* 38cb0: afbf0014 */ sw $ra,0x14($sp) -/* 38cb4: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 38cb8: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 38cb4: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 38cb8: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 38cbc: 27a4001c */ addiu $a0,$sp,0x1c /* 38cc0: 8dd90024 */ lw $t9,0x24($t6) /* 38cc4: 0320f809 */ jalr $t9 diff --git a/src/lib/lib_39fc0.c b/src/lib/lib_39fc0.c index dac2527e6..068522b3a 100644 --- a/src/lib/lib_39fc0.c +++ b/src/lib/lib_39fc0.c @@ -6,8 +6,8 @@ GLOBAL_ASM( glabel func00039fc0 -/* 39fc0: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 39fc4: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 39fc0: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 39fc4: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 39fc8: adc00000 */ sw $zero,0x0($t6) /* 39fcc: 03e00008 */ jr $ra /* 39fd0: 00000000 */ nop diff --git a/src/lib/lib_39fe0.c b/src/lib/lib_39fe0.c index 14365eec6..569e14ff7 100644 --- a/src/lib/lib_39fe0.c +++ b/src/lib/lib_39fe0.c @@ -63,8 +63,8 @@ glabel func0003a070 /* 3a078: afa40018 */ sw $a0,0x18($sp) /* 3a07c: afa5001c */ sw $a1,0x1c($sp) /* 3a080: afa60020 */ sw $a2,0x20($sp) -/* 3a084: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3a088: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3a084: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3a088: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3a08c: 87b8001a */ lh $t8,0x1a($sp) /* 3a090: 8fa5001c */ lw $a1,0x1c($sp) /* 3a094: 8dcf0034 */ lw $t7,0x34($t6) @@ -76,8 +76,8 @@ glabel func0003a070 /* 3a0ac: 8fa70020 */ lw $a3,0x20($sp) /* 3a0b0: 0c00ef14 */ jal func0003bc50 /* 3a0b4: 03003025 */ or $a2,$t8,$zero -/* 3a0b8: 3c088006 */ lui $t0,%hi(var8005f114) -/* 3a0bc: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) +/* 3a0b8: 3c088006 */ lui $t0,%hi(alGlobals) +/* 3a0bc: 8d08f114 */ lw $t0,%lo(alGlobals)($t0) /* 3a0c0: 87aa001a */ lh $t2,0x1a($sp) /* 3a0c4: 8d090034 */ lw $t1,0x34($t0) /* 3a0c8: 000a58c0 */ sll $t3,$t2,0x3 diff --git a/src/lib/lib_3a100.c b/src/lib/lib_3a100.c index e2b6bde49..61ab3da3d 100644 --- a/src/lib/lib_3a100.c +++ b/src/lib/lib_3a100.c @@ -20,8 +20,8 @@ glabel var70054a90 /* 3a110: afa60088 */ sw $a2,0x88($sp) /* 3a114: 8fae0084 */ lw $t6,0x84($sp) /* 3a118: afae007c */ sw $t6,0x7c($sp) -/* 3a11c: 3c0f8006 */ lui $t7,%hi(var8005f114) -/* 3a120: 8deff114 */ lw $t7,%lo(var8005f114)($t7) +/* 3a11c: 3c0f8006 */ lui $t7,%hi(alGlobals) +/* 3a120: 8deff114 */ lw $t7,%lo(alGlobals)($t7) /* 3a124: 8fb90088 */ lw $t9,0x88($sp) /* 3a128: 8df80034 */ lw $t8,0x34($t7) /* 3a12c: 001940c0 */ sll $t0,$t9,0x3 @@ -627,8 +627,8 @@ glabel var70054abc /* 3a9bc: 8c2e4a94 */ lw $t6,%lo(var70054a94)($at) /* 3a9c0: 01c00008 */ jr $t6 /* 3a9c4: 00000000 */ nop -/* 3a9c8: 3c188006 */ lui $t8,%hi(var8005f114) -/* 3a9cc: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 3a9c8: 3c188006 */ lui $t8,%hi(alGlobals) +/* 3a9cc: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 3a9d0: 8faf0020 */ lw $t7,0x20($sp) /* 3a9d4: 240103e8 */ addiu $at,$zero,0x3e8 /* 3a9d8: 8f190040 */ lw $t9,0x40($t8) @@ -650,8 +650,8 @@ glabel var70054abc /* 3aa18: af0a0000 */ sw $t2,0x0($t8) /* 3aa1c: 10000078 */ b .L0003ac00 /* 3aa20: 00000000 */ nop -/* 3aa24: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3aa28: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3aa24: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3aa28: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3aa2c: 8faf0020 */ lw $t7,0x20($sp) /* 3aa30: 240103e8 */ addiu $at,$zero,0x3e8 /* 3aa34: 8f280040 */ lw $t0,0x40($t9) @@ -710,8 +710,8 @@ glabel var70054abc /* 3ab08: 3c01447a */ lui $at,0x447a /* 3ab0c: 44814000 */ mtc1 $at,$f8 /* 3ab10: 448d2000 */ mtc1 $t5,$f4 -/* 3ab14: 3c088006 */ lui $t0,%hi(var8005f114) -/* 3ab18: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) +/* 3ab14: 3c088006 */ lui $t0,%hi(alGlobals) +/* 3ab18: 8d08f114 */ lw $t0,%lo(alGlobals)($t0) /* 3ab1c: 468021a0 */ cvt.s.w $f6,$f4 /* 3ab20: 3c014000 */ lui $at,0x4000 /* 3ab24: 8d0e0040 */ lw $t6,0x40($t0) diff --git a/src/lib/lib_3c430.c b/src/lib/lib_3c430.c index dc0af0ab3..cf379a4a3 100644 --- a/src/lib/lib_3c430.c +++ b/src/lib/lib_3c430.c @@ -31,8 +31,8 @@ glabel func0003c430 /* 3c484: 8fac001c */ lw $t4,0x1c($sp) /* 3c488: 3c0b062e */ lui $t3,0x62e /* 3c48c: ad8b0000 */ sw $t3,0x0($t4) -/* 3c490: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 3c494: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 3c490: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 3c494: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 3c498: 8faf001c */ lw $t7,0x1c($sp) /* 3c49c: 8dae0048 */ lw $t6,0x48($t5) /* 3c4a0: adee0004 */ sw $t6,0x4($t7) diff --git a/src/lib/lib_3c4d0.c b/src/lib/lib_3c4d0.c index fdc2705af..282ae4b7c 100644 --- a/src/lib/lib_3c4d0.c +++ b/src/lib/lib_3c4d0.c @@ -9,7 +9,7 @@ #include "types.h" GLOBAL_ASM( -glabel func0003c4d0 +glabel alEvtqNew /* 3c4d0: 27bdffe0 */ addiu $sp,$sp,-32 /* 3c4d4: afbf0014 */ sw $ra,0x14($sp) /* 3c4d8: afa40020 */ sw $a0,0x20($sp) @@ -290,18 +290,18 @@ glabel func0003c7c0 /* 3c89c: 0c012194 */ jal osSetIntMask /* 3c8a0: 24040001 */ addiu $a0,$zero,0x1 /* 3c8a4: afa2001c */ sw $v0,0x1c($sp) -/* 3c8a8: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3c8ac: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3c8a8: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3c8ac: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3c8b0: 8fb80020 */ lw $t8,0x20($sp) /* 3c8b4: 8dcf0020 */ lw $t7,0x20($t6) /* 3c8b8: af0f0010 */ sw $t7,0x10($t8) -/* 3c8bc: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3c8c0: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3c8bc: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3c8c0: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3c8c4: 8fa90020 */ lw $t1,0x20($sp) /* 3c8c8: 8f280000 */ lw $t0,0x0($t9) /* 3c8cc: ad280000 */ sw $t0,0x0($t1) -/* 3c8d0: 3c0b8006 */ lui $t3,%hi(var8005f114) -/* 3c8d4: 8d6bf114 */ lw $t3,%lo(var8005f114)($t3) +/* 3c8d0: 3c0b8006 */ lui $t3,%hi(alGlobals) +/* 3c8d4: 8d6bf114 */ lw $t3,%lo(alGlobals)($t3) /* 3c8d8: 8faa0020 */ lw $t2,0x20($sp) /* 3c8dc: ad6a0000 */ sw $t2,0x0($t3) /* 3c8e0: 0c012194 */ jal osSetIntMask @@ -323,18 +323,18 @@ glabel func0003c900 /* 3c90c: 0c012194 */ jal osSetIntMask /* 3c910: 24040001 */ addiu $a0,$zero,0x1 /* 3c914: afa2001c */ sw $v0,0x1c($sp) -/* 3c918: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3c91c: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3c918: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3c91c: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3c920: 8fb80020 */ lw $t8,0x20($sp) /* 3c924: 8dcf0020 */ lw $t7,0x20($t6) /* 3c928: af0f0010 */ sw $t7,0x10($t8) -/* 3c92c: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3c930: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3c92c: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3c930: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3c934: 8fa90020 */ lw $t1,0x20($sp) /* 3c938: 8f280000 */ lw $t0,0x0($t9) /* 3c93c: ad280000 */ sw $t0,0x0($t1) -/* 3c940: 3c0b8006 */ lui $t3,%hi(var8005f114) -/* 3c944: 8d6bf114 */ lw $t3,%lo(var8005f114)($t3) +/* 3c940: 3c0b8006 */ lui $t3,%hi(alGlobals) +/* 3c944: 8d6bf114 */ lw $t3,%lo(alGlobals)($t3) /* 3c948: 8faa0020 */ lw $t2,0x20($sp) /* 3c94c: ad6a0000 */ sw $t2,0x0($t3) /* 3c950: 0c012194 */ jal osSetIntMask @@ -356,18 +356,18 @@ glabel func0003c970 /* 3c97c: 0c012194 */ jal osSetIntMask /* 3c980: 24040001 */ addiu $a0,$zero,0x1 /* 3c984: afa2001c */ sw $v0,0x1c($sp) -/* 3c988: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3c98c: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3c988: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3c98c: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3c990: 8fb80020 */ lw $t8,0x20($sp) /* 3c994: 8dcf0020 */ lw $t7,0x20($t6) /* 3c998: af0f0010 */ sw $t7,0x10($t8) -/* 3c99c: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3c9a0: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3c99c: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3c9a0: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3c9a4: 8fa90020 */ lw $t1,0x20($sp) /* 3c9a8: 8f280000 */ lw $t0,0x0($t9) /* 3c9ac: ad280000 */ sw $t0,0x0($t1) -/* 3c9b0: 3c0b8006 */ lui $t3,%hi(var8005f114) -/* 3c9b4: 8d6bf114 */ lw $t3,%lo(var8005f114)($t3) +/* 3c9b0: 3c0b8006 */ lui $t3,%hi(alGlobals) +/* 3c9b4: 8d6bf114 */ lw $t3,%lo(alGlobals)($t3) /* 3c9b8: 8faa0020 */ lw $t2,0x20($sp) /* 3c9bc: ad6a0000 */ sw $t2,0x0($t3) /* 3c9c0: 0c012194 */ jal osSetIntMask @@ -435,8 +435,8 @@ glabel func0003c9e0 /* 3caa4: 8fb90020 */ lw $t9,0x20($sp) /* 3caa8: 13200015 */ beqz $t9,.L0003cb00 /* 3caac: 00000000 */ nop -/* 3cab0: 3c088006 */ lui $t0,%hi(var8005f114) -/* 3cab4: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) +/* 3cab0: 3c088006 */ lui $t0,%hi(alGlobals) +/* 3cab4: 8d08f114 */ lw $t0,%lo(alGlobals)($t0) /* 3cab8: 8faa0020 */ lw $t2,0x20($sp) /* 3cabc: 8d09001c */ lw $t1,0x1c($t0) /* 3cac0: ad490004 */ sw $t1,0x4($t2) @@ -462,8 +462,8 @@ glabel func0003c9e0 /* 3cb0c: 8fb90020 */ lw $t9,0x20($sp) /* 3cb10: 13200015 */ beqz $t9,.L0003cb68 /* 3cb14: 00000000 */ nop -/* 3cb18: 3c088006 */ lui $t0,%hi(var8005f114) -/* 3cb1c: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) +/* 3cb18: 3c088006 */ lui $t0,%hi(alGlobals) +/* 3cb1c: 8d08f114 */ lw $t0,%lo(alGlobals)($t0) /* 3cb20: 8faa0024 */ lw $t2,0x24($sp) /* 3cb24: 8fad0020 */ lw $t5,0x20($sp) /* 3cb28: 8d09001c */ lw $t1,0x1c($t0) @@ -514,8 +514,8 @@ glabel func0003cbb4 /* 3cbbc: afa40028 */ sw $a0,0x28($sp) /* 3cbc0: afa5002c */ sw $a1,0x2c($sp) /* 3cbc4: afa0001c */ sw $zero,0x1c($sp) -/* 3cbc8: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3cbcc: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3cbc8: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3cbcc: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3cbd0: 8dcf0014 */ lw $t7,0x14($t6) /* 3cbd4: 11e0000d */ beqz $t7,.L0003cc0c /* 3cbd8: afaf0024 */ sw $t7,0x24($sp) @@ -524,16 +524,16 @@ glabel func0003cbb4 /* 3cbe4: af380000 */ sw $t8,0x0($t9) /* 3cbe8: 0c00c5e9 */ jal alUnlink /* 3cbec: 8fa40024 */ lw $a0,0x24($sp) -/* 3cbf0: 3c058006 */ lui $a1,%hi(var8005f114) -/* 3cbf4: 8ca5f114 */ lw $a1,%lo(var8005f114)($a1) +/* 3cbf0: 3c058006 */ lui $a1,%hi(alGlobals) +/* 3cbf4: 8ca5f114 */ lw $a1,%lo(alGlobals)($a1) /* 3cbf8: 8fa40024 */ lw $a0,0x24($sp) /* 3cbfc: 0c00c5dc */ jal alLink /* 3cc00: 24a5000c */ addiu $a1,$a1,12 /* 3cc04: 10000030 */ b .L0003ccc8 /* 3cc08: 00000000 */ nop .L0003cc0c: -/* 3cc0c: 3c088006 */ lui $t0,%hi(var8005f114) -/* 3cc10: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) +/* 3cc0c: 3c088006 */ lui $t0,%hi(alGlobals) +/* 3cc10: 8d08f114 */ lw $t0,%lo(alGlobals)($t0) /* 3cc14: 8d090004 */ lw $t1,0x4($t0) /* 3cc18: 1120000d */ beqz $t1,.L0003cc50 /* 3cc1c: afa90024 */ sw $t1,0x24($sp) @@ -542,16 +542,16 @@ glabel func0003cbb4 /* 3cc28: ad6a0000 */ sw $t2,0x0($t3) /* 3cc2c: 0c00c5e9 */ jal alUnlink /* 3cc30: 8fa40024 */ lw $a0,0x24($sp) -/* 3cc34: 3c058006 */ lui $a1,%hi(var8005f114) -/* 3cc38: 8ca5f114 */ lw $a1,%lo(var8005f114)($a1) +/* 3cc34: 3c058006 */ lui $a1,%hi(alGlobals) +/* 3cc38: 8ca5f114 */ lw $a1,%lo(alGlobals)($a1) /* 3cc3c: 8fa40024 */ lw $a0,0x24($sp) /* 3cc40: 0c00c5dc */ jal alLink /* 3cc44: 24a5000c */ addiu $a1,$a1,12 /* 3cc48: 1000001f */ b .L0003ccc8 /* 3cc4c: 00000000 */ nop .L0003cc50: -/* 3cc50: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 3cc54: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 3cc50: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 3cc54: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 3cc58: 8d8d000c */ lw $t5,0xc($t4) /* 3cc5c: 11a0001a */ beqz $t5,.L0003ccc8 /* 3cc60: afad0024 */ sw $t5,0x24($sp) diff --git a/src/lib/lib_3ccf0.c b/src/lib/lib_3ccf0.c index 8cedb5274..6d3cdf3e1 100644 --- a/src/lib/lib_3ccf0.c +++ b/src/lib/lib_3ccf0.c @@ -27,8 +27,8 @@ glabel func0003ccf0 /* 3cd30: 00000000 */ nop .L0003cd34: /* 3cd34: 8fa90020 */ lw $t1,0x20($sp) -/* 3cd38: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3cd3c: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3cd38: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3cd3c: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3cd40: 8d2a0008 */ lw $t2,0x8($t1) /* 3cd44: 8fad001c */ lw $t5,0x1c($sp) /* 3cd48: 8f28001c */ lw $t0,0x1c($t9) diff --git a/src/lib/lib_3cdc0.c b/src/lib/lib_3cdc0.c index 7050f97f6..937ea06ec 100644 --- a/src/lib/lib_3cdc0.c +++ b/src/lib/lib_3cdc0.c @@ -28,8 +28,8 @@ glabel func0003cdc0 /* 3ce04: 00000000 */ nop .L0003ce08: /* 3ce08: 8fa90020 */ lw $t1,0x20($sp) -/* 3ce0c: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3ce10: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3ce0c: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3ce10: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3ce14: 8d2a0008 */ lw $t2,0x8($t1) /* 3ce18: 8fad001c */ lw $t5,0x1c($sp) /* 3ce1c: 8f28001c */ lw $t0,0x1c($t9) diff --git a/src/lib/lib_3cef0.c b/src/lib/lib_3cef0.c index c8ad1713a..2cfb728f9 100644 --- a/src/lib/lib_3cef0.c +++ b/src/lib/lib_3cef0.c @@ -26,8 +26,8 @@ glabel func0003cef0 /* 3cf2c: 00000000 */ nop .L0003cf30: /* 3cf30: 8fa90020 */ lw $t1,0x20($sp) -/* 3cf34: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3cf38: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3cf34: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3cf38: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3cf3c: 8d2a0008 */ lw $t2,0x8($t1) /* 3cf40: 8fad001c */ lw $t5,0x1c($sp) /* 3cf44: 8f28001c */ lw $t0,0x1c($t9) @@ -77,8 +77,8 @@ glabel func0003cfa0 /* 3cfdc: 00000000 */ nop .L0003cfe0: /* 3cfe0: 8fa90020 */ lw $t1,0x20($sp) -/* 3cfe4: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3cfe8: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3cfe4: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3cfe8: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3cfec: 8d2a0008 */ lw $t2,0x8($t1) /* 3cff0: 8fad001c */ lw $t5,0x1c($sp) /* 3cff4: 8f28001c */ lw $t0,0x1c($t9) @@ -128,8 +128,8 @@ glabel func0003d050 /* 3d08c: 00000000 */ nop .L0003d090: /* 3d090: 8fa90020 */ lw $t1,0x20($sp) -/* 3d094: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3d098: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3d094: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3d098: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3d09c: 8d2a0008 */ lw $t2,0x8($t1) /* 3d0a0: 8fad001c */ lw $t5,0x1c($sp) /* 3d0a4: 8f28001c */ lw $t0,0x1c($t9) @@ -178,8 +178,8 @@ glabel func0003d100 /* 3d138: 00000000 */ nop .L0003d13c: /* 3d13c: 8fa90020 */ lw $t1,0x20($sp) -/* 3d140: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3d144: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3d140: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3d144: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3d148: 8d2a0008 */ lw $t2,0x8($t1) /* 3d14c: 8fad001c */ lw $t5,0x1c($sp) /* 3d150: 8f28001c */ lw $t0,0x1c($t9) @@ -230,8 +230,8 @@ glabel func0003d1a0 /* 3d1ec: 00000000 */ nop .L0003d1f0: /* 3d1f0: 8fac0020 */ lw $t4,0x20($sp) -/* 3d1f4: 3c0a8006 */ lui $t2,%hi(var8005f114) -/* 3d1f8: 8d4af114 */ lw $t2,%lo(var8005f114)($t2) +/* 3d1f4: 3c0a8006 */ lui $t2,%hi(alGlobals) +/* 3d1f8: 8d4af114 */ lw $t2,%lo(alGlobals)($t2) /* 3d1fc: 8d8d0008 */ lw $t5,0x8($t4) /* 3d200: 8fb8001c */ lw $t8,0x1c($sp) /* 3d204: 8d4b001c */ lw $t3,0x1c($t2) diff --git a/src/lib/lib_3d280.c b/src/lib/lib_3d280.c index cdfcd9248..4d843d4e1 100644 --- a/src/lib/lib_3d280.c +++ b/src/lib/lib_3d280.c @@ -861,7 +861,7 @@ glabel func0003dba0 ); GLOBAL_ASM( -glabel func0003dc88 +glabel __initChanState /* 3dc88: 27bdffe0 */ addiu $sp,$sp,-32 /* 3dc8c: afbf0014 */ sw $ra,0x14($sp) /* 3dc90: afa40020 */ sw $a0,0x20($sp) diff --git a/src/lib/lib_3e3e0.c b/src/lib/lib_3e3e0.c index 636763d62..cbeddf9ba 100644 --- a/src/lib/lib_3e3e0.c +++ b/src/lib/lib_3e3e0.c @@ -32,8 +32,8 @@ glabel func0003e3e0 /* 3e41c: 00000000 */ nop .L0003e420: /* 3e420: 8fa90020 */ lw $t1,0x20($sp) -/* 3e424: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3e428: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3e424: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3e428: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3e42c: 8d2a0008 */ lw $t2,0x8($t1) /* 3e430: 8fad001c */ lw $t5,0x1c($sp) /* 3e434: 8f28001c */ lw $t0,0x1c($t9) @@ -83,8 +83,8 @@ glabel func0003e490 /* 3e4cc: 00000000 */ nop .L0003e4d0: /* 3e4d0: 8fa90020 */ lw $t1,0x20($sp) -/* 3e4d4: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3e4d8: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3e4d4: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3e4d8: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3e4dc: 8d2a0008 */ lw $t2,0x8($t1) /* 3e4e0: 8fad001c */ lw $t5,0x1c($sp) /* 3e4e4: 8f28001c */ lw $t0,0x1c($t9) @@ -119,8 +119,8 @@ glabel func0003e540 /* 3e540: 00042400 */ sll $a0,$a0,0x10 /* 3e544: 00042403 */ sra $a0,$a0,0x10 /* 3e548: 27bdfff8 */ addiu $sp,$sp,-8 -/* 3e54c: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3e550: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3e54c: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3e550: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3e554: 8dcf0030 */ lw $t7,0x30($t6) /* 3e558: afaf0004 */ sw $t7,0x4($sp) /* 3e55c: 8fb80004 */ lw $t8,0x4($sp) @@ -129,8 +129,8 @@ glabel func0003e540 /* 3e568: 8f190004 */ lw $t9,0x4($t8) /* 3e56c: 1728000c */ bne $t9,$t0,.L0003e5a0 /* 3e570: 00000000 */ nop -/* 3e574: 3c098006 */ lui $t1,%hi(var8005f114) -/* 3e578: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 3e574: 3c098006 */ lui $t1,%hi(alGlobals) +/* 3e578: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 3e57c: 000458c0 */ sll $t3,$a0,0x3 /* 3e580: 01645821 */ addu $t3,$t3,$a0 /* 3e584: 8d2a0034 */ lw $t2,0x34($t1) @@ -156,8 +156,8 @@ glabel func0003e5b8 /* 3e5b8: 00042400 */ sll $a0,$a0,0x10 /* 3e5bc: 00042403 */ sra $a0,$a0,0x10 /* 3e5c0: 27bdfff8 */ addiu $sp,$sp,-8 -/* 3e5c4: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3e5c8: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3e5c4: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3e5c8: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3e5cc: 8dcf0030 */ lw $t7,0x30($t6) /* 3e5d0: afaf0004 */ sw $t7,0x4($sp) /* 3e5d4: 8fb80004 */ lw $t8,0x4($sp) @@ -166,8 +166,8 @@ glabel func0003e5b8 /* 3e5e0: 8f190004 */ lw $t9,0x4($t8) /* 3e5e4: 1728000c */ bne $t9,$t0,.L0003e618 /* 3e5e8: 00000000 */ nop -/* 3e5ec: 3c098006 */ lui $t1,%hi(var8005f114) -/* 3e5f0: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 3e5ec: 3c098006 */ lui $t1,%hi(alGlobals) +/* 3e5f0: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 3e5f4: 000458c0 */ sll $t3,$a0,0x3 /* 3e5f8: 01645821 */ addu $t3,$t3,$a0 /* 3e5fc: 8d2a0034 */ lw $t2,0x34($t1) @@ -244,8 +244,8 @@ glabel func0003e674 /* 3e6e4: 8d6c0000 */ lw $t4,0x0($t3) /* 3e6e8: a5ac0000 */ sh $t4,0x0($t5) .L0003e6ec: -/* 3e6ec: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 3e6f0: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 3e6ec: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 3e6f0: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 3e6f4: 8fa40018 */ lw $a0,0x18($sp) /* 3e6f8: 8dcf0040 */ lw $t7,0x40($t6) /* 3e6fc: 448f9000 */ mtc1 $t7,$f18 diff --git a/src/lib/lib_3e730.c b/src/lib/lib_3e730.c index f11439d26..626ba2977 100644 --- a/src/lib/lib_3e730.c +++ b/src/lib/lib_3e730.c @@ -35,8 +35,8 @@ glabel func0003e730 /* 3e76c: 00000000 */ nop .L0003e770: /* 3e770: 8fa90020 */ lw $t1,0x20($sp) -/* 3e774: 3c198006 */ lui $t9,%hi(var8005f114) -/* 3e778: 8f39f114 */ lw $t9,%lo(var8005f114)($t9) +/* 3e774: 3c198006 */ lui $t9,%hi(alGlobals) +/* 3e778: 8f39f114 */ lw $t9,%lo(alGlobals)($t9) /* 3e77c: 8d2a0008 */ lw $t2,0x8($t1) /* 3e780: 8fad001c */ lw $t5,0x1c($sp) /* 3e784: 8f28001c */ lw $t0,0x1c($t9) diff --git a/src/lib/lib_446d0.c b/src/lib/lib_446d0.c index 1a8c75535..7f3060230 100644 --- a/src/lib/lib_446d0.c +++ b/src/lib/lib_446d0.c @@ -17,8 +17,8 @@ glabel func000446d0 /* 446e4: afa70054 */ sw $a3,0x54($sp) /* 446e8: 8fae004c */ lw $t6,0x4c($sp) /* 446ec: afae0044 */ sw $t6,0x44($sp) -/* 446f0: 3c0f8006 */ lui $t7,%hi(var8005f114) -/* 446f4: 8deff114 */ lw $t7,%lo(var8005f114)($t7) +/* 446f0: 3c0f8006 */ lui $t7,%hi(alGlobals) +/* 446f4: 8deff114 */ lw $t7,%lo(alGlobals)($t7) /* 446f8: 8fb90050 */ lw $t9,0x50($sp) /* 446fc: 8df80034 */ lw $t8,0x34($t7) /* 44700: 001940c0 */ sll $t0,$t9,0x3 diff --git a/src/lib/lib_44bc0.c b/src/lib/lib_44bc0.c index 0bc726c07..5d7e31d18 100644 --- a/src/lib/lib_44bc0.c +++ b/src/lib/lib_44bc0.c @@ -31,15 +31,15 @@ glabel func00044bc0 /* 44c10: 240902e0 */ addiu $t1,$zero,0x2e0 /* 44c14: ad490004 */ sw $t1,0x4($t2) .L00044c18: -/* 44c18: 3c0b8006 */ lui $t3,%hi(var8005f114) -/* 44c1c: 8d6bf114 */ lw $t3,%lo(var8005f114)($t3) +/* 44c18: 3c0b8006 */ lui $t3,%hi(alGlobals) +/* 44c1c: 8d6bf114 */ lw $t3,%lo(alGlobals)($t3) /* 44c20: afa00040 */ sw $zero,0x40($sp) /* 44c24: 8d6c003c */ lw $t4,0x3c($t3) /* 44c28: 198000bd */ blez $t4,.L00044f20 /* 44c2c: 00000000 */ nop .L00044c30: -/* 44c30: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 44c34: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 44c30: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 44c34: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 44c38: 8fa40048 */ lw $a0,0x48($sp) /* 44c3c: 8fa50044 */ lw $a1,0x44($sp) /* 44c40: 8dae0030 */ lw $t6,0x30($t5) @@ -138,8 +138,8 @@ glabel func00044bc0 /* 44da0: 354a04e0 */ ori $t2,$t2,0x4e0 /* 44da4: ad6a0004 */ sw $t2,0x4($t3) .L00044da8: -/* 44da8: 3c0c8006 */ lui $t4,%hi(var8005f114) -/* 44dac: 8d8cf114 */ lw $t4,%lo(var8005f114)($t4) +/* 44da8: 3c0c8006 */ lui $t4,%hi(alGlobals) +/* 44dac: 8d8cf114 */ lw $t4,%lo(alGlobals)($t4) /* 44db0: 8fae0040 */ lw $t6,0x40($sp) /* 44db4: 8d8d0034 */ lw $t5,0x34($t4) /* 44db8: 000ec8c0 */ sll $t9,$t6,0x3 @@ -150,8 +150,8 @@ glabel func00044bc0 /* 44dcc: 87080002 */ lh $t0,0x2($t8) /* 44dd0: 1900004a */ blez $t0,.L00044efc /* 44dd4: 00000000 */ nop -/* 44dd8: 3c098006 */ lui $t1,%hi(var8005f114) -/* 44ddc: 8d29f114 */ lw $t1,%lo(var8005f114)($t1) +/* 44dd8: 3c098006 */ lui $t1,%hi(alGlobals) +/* 44ddc: 8d29f114 */ lw $t1,%lo(alGlobals)($t1) /* 44de0: 8fab0040 */ lw $t3,0x40($sp) /* 44de4: 8d2a0034 */ lw $t2,0x34($t1) /* 44de8: 000b60c0 */ sll $t4,$t3,0x3 @@ -164,8 +164,8 @@ glabel func00044bc0 /* 44e04: 8f2f0028 */ lw $t7,0x28($t9) /* 44e08: 11e0000b */ beqz $t7,.L00044e38 /* 44e0c: 00000000 */ nop -/* 44e10: 3c188006 */ lui $t8,%hi(var8005f114) -/* 44e14: 8f18f114 */ lw $t8,%lo(var8005f114)($t8) +/* 44e10: 3c188006 */ lui $t8,%hi(alGlobals) +/* 44e14: 8f18f114 */ lw $t8,%lo(alGlobals)($t8) /* 44e18: 8fa40024 */ lw $a0,0x24($sp) /* 44e1c: 8f080040 */ lw $t0,0x40($t8) /* 44e20: 44882000 */ mtc1 $t0,$f4 @@ -226,8 +226,8 @@ glabel func00044bc0 /* 44ef8: ad600028 */ sw $zero,0x28($t3) .L00044efc: /* 44efc: 8faa0040 */ lw $t2,0x40($sp) -/* 44f00: 3c0e8006 */ lui $t6,%hi(var8005f114) -/* 44f04: 8dcef114 */ lw $t6,%lo(var8005f114)($t6) +/* 44f00: 3c0e8006 */ lui $t6,%hi(alGlobals) +/* 44f04: 8dcef114 */ lw $t6,%lo(alGlobals)($t6) /* 44f08: 254c0001 */ addiu $t4,$t2,0x1 /* 44f0c: afac0040 */ sw $t4,0x40($sp) /* 44f10: 8dcd003c */ lw $t5,0x3c($t6) diff --git a/src/lib/snd.c b/src/lib/snd.c index 9d4ad07ac..bf237d927 100644 --- a/src/lib/snd.c +++ b/src/lib/snd.c @@ -2110,7 +2110,7 @@ glabel snd0000f67c /* f734: 8fae0040 */ lw $t6,0x40($sp) /* f738: 00402025 */ or $a0,$v0,$zero /* f73c: 27a50020 */ addiu $a1,$sp,0x20 -/* f740: 0c00d090 */ jal func00034240 +/* f740: 0c00d090 */ jal alCSPNew /* f744: adc200f8 */ sw $v0,0xf8($t6) /* f748: 8faf0040 */ lw $t7,0x40($sp) /* f74c: 3c058009 */ lui $a1,%hi(var80095204) diff --git a/src/lib/ultra/audio/csplayer.c b/src/lib/ultra/audio/csplayer.c index 0faae0423..b3beb928e 100644 --- a/src/lib/ultra/audio/csplayer.c +++ b/src/lib/ultra/audio/csplayer.c @@ -1,4 +1,5 @@ #include +#include "PR/seqp.h" #include "constants.h" #include "bss.h" #include "lib/snd.h" @@ -887,336 +888,86 @@ const u32 var70054a70[] = {0x70038300}; const u32 var70054a74[] = {0x700382b8}; #endif -#if VERSION >= VERSION_PAL_FINAL -GLOBAL_ASM( -glabel func00034240 -/* 34240: 27bdffc8 */ addiu $sp,$sp,-56 -/* 34244: afbf001c */ sw $ra,0x1c($sp) -/* 34248: afa40038 */ sw $a0,0x38($sp) -/* 3424c: afa5003c */ sw $a1,0x3c($sp) -/* 34250: 8fae003c */ lw $t6,0x3c($sp) -/* 34254: 8dcf000c */ lw $t7,0xc($t6) -/* 34258: afaf0024 */ sw $t7,0x24($sp) -/* 3425c: 8fb80038 */ lw $t8,0x38($sp) -/* 34260: af000020 */ sw $zero,0x20($t8) -/* 34264: 8fb90038 */ lw $t9,0x38($sp) -/* 34268: af200018 */ sw $zero,0x18($t9) -/* 3426c: 3c088006 */ lui $t0,%hi(var8005f114) -/* 34270: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) -/* 34274: 8fa90038 */ lw $t1,0x38($sp) -/* 34278: ad280014 */ sw $t0,0x14($t1) -/* 3427c: 8fab0038 */ lw $t3,0x38($sp) -/* 34280: 340affff */ dli $t2,0xffff -/* 34284: a56a0030 */ sh $t2,0x30($t3) -/* 34288: 0c00e734 */ jal func00039cd0 -/* 3428c: 8fa40038 */ lw $a0,0x38($sp) -/* 34290: 8fad0038 */ lw $t5,0x38($sp) -/* 34294: 240c01e8 */ addiu $t4,$zero,0x1e8 -/* 34298: adac0024 */ sw $t4,0x24($t5) -/* 3429c: 8fae0038 */ lw $t6,0x38($sp) -/* 342a0: adc00028 */ sw $zero,0x28($t6) -/* 342a4: 8faf0038 */ lw $t7,0x38($sp) -/* 342a8: ade0002c */ sw $zero,0x2c($t7) -/* 342ac: 8fb90038 */ lw $t9,0x38($sp) -/* 342b0: 24187fff */ addiu $t8,$zero,0x7fff -/* 342b4: a7380032 */ sh $t8,0x32($t9) -/* 342b8: 8fa8003c */ lw $t0,0x3c($sp) -/* 342bc: 8faa0038 */ lw $t2,0x38($sp) -/* 342c0: 91090009 */ lbu $t1,0x9($t0) -/* 342c4: a1490035 */ sb $t1,0x35($t2) -/* 342c8: 8fac0038 */ lw $t4,0x38($sp) -/* 342cc: 240b3e80 */ addiu $t3,$zero,0x4e20 -/* 342d0: ad8b005c */ sw $t3,0x5c($t4) -/* 342d4: 8fad0038 */ lw $t5,0x38($sp) -/* 342d8: ada0001c */ sw $zero,0x1c($t5) -/* 342dc: 8fae003c */ lw $t6,0x3c($sp) -/* 342e0: 8fb80038 */ lw $t8,0x38($sp) -/* 342e4: 8dcf0010 */ lw $t7,0x10($t6) -/* 342e8: af0f0070 */ sw $t7,0x70($t8) -/* 342ec: 8fb9003c */ lw $t9,0x3c($sp) -/* 342f0: 8fa90038 */ lw $t1,0x38($sp) -/* 342f4: 8f280014 */ lw $t0,0x14($t9) -/* 342f8: ad280074 */ sw $t0,0x74($t1) -/* 342fc: 8faa003c */ lw $t2,0x3c($sp) -/* 34300: 8fac0038 */ lw $t4,0x38($sp) -/* 34304: 8d4b0018 */ lw $t3,0x18($t2) -/* 34308: ad8b0078 */ sw $t3,0x78($t4) -/* 3430c: 44802000 */ mtc1 $zero,$f4 -/* 34310: 8fad0038 */ lw $t5,0x38($sp) -/* 34314: e5a4007c */ swc1 $f4,0x7c($t5) -/* 34318: 3c013f80 */ lui $at,0x3f80 -/* 3431c: 44813000 */ mtc1 $at,$f6 -/* 34320: 8fae0038 */ lw $t6,0x38($sp) -/* 34324: e5c60080 */ swc1 $f6,0x80($t6) -/* 34328: 8faf0038 */ lw $t7,0x38($sp) -/* 3432c: ade00084 */ sw $zero,0x84($t7) -/* 34330: 8fb80038 */ lw $t8,0x38($sp) -/* 34334: a3000089 */ sb $zero,0x89($t8) -/* 34338: 8fb9003c */ lw $t9,0x3c($sp) -/* 3433c: 8fa90038 */ lw $t1,0x38($sp) -/* 34340: 8f280000 */ lw $t0,0x0($t9) -/* 34344: a1280088 */ sb $t0,0x88($t1) -/* 34348: 8fab0038 */ lw $t3,0x38($sp) -/* 3434c: 240a0009 */ addiu $t2,$zero,0x9 -/* 34350: a56a0038 */ sh $t2,0x38($t3) -/* 34354: 8fac003c */ lw $t4,0x3c($sp) -/* 34358: 8fae0038 */ lw $t6,0x38($sp) -/* 3435c: 918d0008 */ lbu $t5,0x8($t4) -/* 34360: a1cd0034 */ sb $t5,0x34($t6) -/* 34364: 8faf003c */ lw $t7,0x3c($sp) -/* 34368: 24180034 */ addiu $t8,$zero,0x34 -/* 3436c: 00002025 */ or $a0,$zero,$zero -/* 34370: 91e70008 */ lbu $a3,0x8($t7) -/* 34374: afb80010 */ sw $t8,0x10($sp) -/* 34378: 00002825 */ or $a1,$zero,$zero -/* 3437c: 0c00bec5 */ jal alHeapDBAlloc -/* 34380: 8fa60024 */ lw $a2,0x24($sp) -/* 34384: 8fb90038 */ lw $t9,0x38($sp) -/* 34388: af220060 */ sw $v0,0x60($t9) -/* 3438c: 0c00f722 */ jal func0003dc88 -/* 34390: 8fa40038 */ lw $a0,0x38($sp) -/* 34394: 8fa8003c */ lw $t0,0x3c($sp) -/* 34398: 24090040 */ addiu $t1,$zero,0x40 -/* 3439c: 00002025 */ or $a0,$zero,$zero -/* 343a0: 8d070000 */ lw $a3,0x0($t0) -/* 343a4: afa90010 */ sw $t1,0x10($sp) -/* 343a8: 00002825 */ or $a1,$zero,$zero -/* 343ac: 0c00bec5 */ jal alHeapDBAlloc -/* 343b0: 8fa60024 */ lw $a2,0x24($sp) -/* 343b4: afa20028 */ sw $v0,0x28($sp) -/* 343b8: 8faa0038 */ lw $t2,0x38($sp) -/* 343bc: ad40006c */ sw $zero,0x6c($t2) -/* 343c0: 8fab003c */ lw $t3,0x3c($sp) -/* 343c4: afa00034 */ sw $zero,0x34($sp) -/* 343c8: 8d6c0000 */ lw $t4,0x0($t3) -/* 343cc: 19800015 */ blez $t4,.L00034424 -/* 343d0: 00000000 */ nop -.L000343d4: -/* 343d4: 8fad0034 */ lw $t5,0x34($sp) -/* 343d8: 8faf0028 */ lw $t7,0x28($sp) -/* 343dc: 000d7180 */ sll $t6,$t5,0x6 -/* 343e0: 01cfc021 */ addu $t8,$t6,$t7 -/* 343e4: afb8002c */ sw $t8,0x2c($sp) -/* 343e8: 8fb90038 */ lw $t9,0x38($sp) -/* 343ec: 8fa9002c */ lw $t1,0x2c($sp) -/* 343f0: 8f28006c */ lw $t0,0x6c($t9) -/* 343f4: ad280000 */ sw $t0,0x0($t1) -/* 343f8: 8faa002c */ lw $t2,0x2c($sp) -/* 343fc: 8fab0038 */ lw $t3,0x38($sp) -/* 34400: ad6a006c */ sw $t2,0x6c($t3) -/* 34404: 8fac0034 */ lw $t4,0x34($sp) -/* 34408: 8fae003c */ lw $t6,0x3c($sp) -/* 3440c: 258d0001 */ addiu $t5,$t4,0x1 -/* 34410: afad0034 */ sw $t5,0x34($sp) -/* 34414: 8dcf0000 */ lw $t7,0x0($t6) -/* 34418: 01af082a */ slt $at,$t5,$t7 -/* 3441c: 1420ffed */ bnez $at,.L000343d4 -/* 34420: 00000000 */ nop -.L00034424: -/* 34424: 8fb80038 */ lw $t8,0x38($sp) -/* 34428: af000064 */ sw $zero,0x64($t8) -/* 3442c: 8fb90038 */ lw $t9,0x38($sp) -/* 34430: af200068 */ sw $zero,0x68($t9) -/* 34434: 8fa8003c */ lw $t0,0x3c($sp) -/* 34438: 2409001c */ addiu $t1,$zero,0x1c -/* 3443c: 00002025 */ or $a0,$zero,$zero -/* 34440: 8d070004 */ lw $a3,0x4($t0) -/* 34444: afa90010 */ sw $t1,0x10($sp) -/* 34448: 00002825 */ or $a1,$zero,$zero -/* 3444c: 0c00bec5 */ jal alHeapDBAlloc -/* 34450: 8fa60024 */ lw $a2,0x24($sp) -/* 34454: afa20030 */ sw $v0,0x30($sp) -/* 34458: 8fa40038 */ lw $a0,0x38($sp) -/* 3445c: 8faa003c */ lw $t2,0x3c($sp) -/* 34460: 8fa50030 */ lw $a1,0x30($sp) -/* 34464: 24840048 */ addiu $a0,$a0,0x48 -/* 34468: 0c00f134 */ jal func0003c4d0 -/* 3446c: 8d460004 */ lw $a2,0x4($t2) -/* 34470: 8fab0038 */ lw $t3,0x38($sp) -/* 34474: ad600000 */ sw $zero,0x0($t3) -/* 34478: 8fae0038 */ lw $t6,0x38($sp) -/* 3447c: 3c0c7003 */ lui $t4,%hi(func000344b0) -/* 34480: 258c44b0 */ addiu $t4,$t4,%lo(func000344b0) -/* 34484: adcc0008 */ sw $t4,0x8($t6) -/* 34488: 8fad0038 */ lw $t5,0x38($sp) -/* 3448c: adad0004 */ sw $t5,0x4($t5) -/* 34490: 0c00f25c */ jal func0003c970 -/* 34494: 8fa40038 */ lw $a0,0x38($sp) -/* 34498: 10000001 */ b .L000344a0 -/* 3449c: 00000000 */ nop -.L000344a0: -/* 344a0: 8fbf001c */ lw $ra,0x1c($sp) -/* 344a4: 27bd0038 */ addiu $sp,$sp,0x38 -/* 344a8: 03e00008 */ jr $ra -/* 344ac: 00000000 */ nop -); -#else -GLOBAL_ASM( -glabel func00034240 -/* 34240: 27bdffc8 */ addiu $sp,$sp,-56 -/* 34244: afbf001c */ sw $ra,0x1c($sp) -/* 34248: afa40038 */ sw $a0,0x38($sp) -/* 3424c: afa5003c */ sw $a1,0x3c($sp) -/* 34250: 8fae003c */ lw $t6,0x3c($sp) -/* 34254: 8dcf000c */ lw $t7,0xc($t6) -/* 34258: afaf0024 */ sw $t7,0x24($sp) -/* 3425c: 8fb80038 */ lw $t8,0x38($sp) -/* 34260: af000020 */ sw $zero,0x20($t8) -/* 34264: 8fb90038 */ lw $t9,0x38($sp) -/* 34268: af200018 */ sw $zero,0x18($t9) -/* 3426c: 3c088006 */ lui $t0,%hi(var8005f114) -/* 34270: 8d08f114 */ lw $t0,%lo(var8005f114)($t0) -/* 34274: 8fa90038 */ lw $t1,0x38($sp) -/* 34278: ad280014 */ sw $t0,0x14($t1) -/* 3427c: 8fab0038 */ lw $t3,0x38($sp) -/* 34280: 340affff */ dli $t2,0xffff -/* 34284: a56a0030 */ sh $t2,0x30($t3) -/* 34288: 0c00e734 */ jal func00039cd0 -/* 3428c: 8fa40038 */ lw $a0,0x38($sp) -/* 34290: 8fad0038 */ lw $t5,0x38($sp) -/* 34294: 240c01e8 */ addiu $t4,$zero,0x1e8 -/* 34298: adac0024 */ sw $t4,0x24($t5) -/* 3429c: 8fae0038 */ lw $t6,0x38($sp) -/* 342a0: adc00028 */ sw $zero,0x28($t6) -/* 342a4: 8faf0038 */ lw $t7,0x38($sp) -/* 342a8: ade0002c */ sw $zero,0x2c($t7) -/* 342ac: 8fb90038 */ lw $t9,0x38($sp) -/* 342b0: 24187fff */ addiu $t8,$zero,0x7fff -/* 342b4: a7380032 */ sh $t8,0x32($t9) -/* 342b8: 8fa8003c */ lw $t0,0x3c($sp) -/* 342bc: 8faa0038 */ lw $t2,0x38($sp) -/* 342c0: 91090009 */ lbu $t1,0x9($t0) -/* 342c4: a1490035 */ sb $t1,0x35($t2) -/* 342c8: 8fac0038 */ lw $t4,0x38($sp) -/* 342cc: 240b3e80 */ addiu $t3,$zero,0x3e80 -/* 342d0: ad8b005c */ sw $t3,0x5c($t4) -/* 342d4: 8fad0038 */ lw $t5,0x38($sp) -/* 342d8: ada0001c */ sw $zero,0x1c($t5) -/* 342dc: 8fae003c */ lw $t6,0x3c($sp) -/* 342e0: 8fb80038 */ lw $t8,0x38($sp) -/* 342e4: 8dcf0010 */ lw $t7,0x10($t6) -/* 342e8: af0f0070 */ sw $t7,0x70($t8) -/* 342ec: 8fb9003c */ lw $t9,0x3c($sp) -/* 342f0: 8fa90038 */ lw $t1,0x38($sp) -/* 342f4: 8f280014 */ lw $t0,0x14($t9) -/* 342f8: ad280074 */ sw $t0,0x74($t1) -/* 342fc: 8faa003c */ lw $t2,0x3c($sp) -/* 34300: 8fac0038 */ lw $t4,0x38($sp) -/* 34304: 8d4b0018 */ lw $t3,0x18($t2) -/* 34308: ad8b0078 */ sw $t3,0x78($t4) -/* 3430c: 44802000 */ mtc1 $zero,$f4 -/* 34310: 8fad0038 */ lw $t5,0x38($sp) -/* 34314: e5a4007c */ swc1 $f4,0x7c($t5) -/* 34318: 3c013f80 */ lui $at,0x3f80 -/* 3431c: 44813000 */ mtc1 $at,$f6 -/* 34320: 8fae0038 */ lw $t6,0x38($sp) -/* 34324: e5c60080 */ swc1 $f6,0x80($t6) -/* 34328: 8faf0038 */ lw $t7,0x38($sp) -/* 3432c: ade00084 */ sw $zero,0x84($t7) -/* 34330: 8fb80038 */ lw $t8,0x38($sp) -/* 34334: a3000089 */ sb $zero,0x89($t8) -/* 34338: 8fb9003c */ lw $t9,0x3c($sp) -/* 3433c: 8fa90038 */ lw $t1,0x38($sp) -/* 34340: 8f280000 */ lw $t0,0x0($t9) -/* 34344: a1280088 */ sb $t0,0x88($t1) -/* 34348: 8fab0038 */ lw $t3,0x38($sp) -/* 3434c: 240a0009 */ addiu $t2,$zero,0x9 -/* 34350: a56a0038 */ sh $t2,0x38($t3) -/* 34354: 8fac003c */ lw $t4,0x3c($sp) -/* 34358: 8fae0038 */ lw $t6,0x38($sp) -/* 3435c: 918d0008 */ lbu $t5,0x8($t4) -/* 34360: a1cd0034 */ sb $t5,0x34($t6) -/* 34364: 8faf003c */ lw $t7,0x3c($sp) -/* 34368: 24180034 */ addiu $t8,$zero,0x34 -/* 3436c: 00002025 */ or $a0,$zero,$zero -/* 34370: 91e70008 */ lbu $a3,0x8($t7) -/* 34374: afb80010 */ sw $t8,0x10($sp) -/* 34378: 00002825 */ or $a1,$zero,$zero -/* 3437c: 0c00bec5 */ jal alHeapDBAlloc -/* 34380: 8fa60024 */ lw $a2,0x24($sp) -/* 34384: 8fb90038 */ lw $t9,0x38($sp) -/* 34388: af220060 */ sw $v0,0x60($t9) -/* 3438c: 0c00f722 */ jal func0003dc88 -/* 34390: 8fa40038 */ lw $a0,0x38($sp) -/* 34394: 8fa8003c */ lw $t0,0x3c($sp) -/* 34398: 24090040 */ addiu $t1,$zero,0x40 -/* 3439c: 00002025 */ or $a0,$zero,$zero -/* 343a0: 8d070000 */ lw $a3,0x0($t0) -/* 343a4: afa90010 */ sw $t1,0x10($sp) -/* 343a8: 00002825 */ or $a1,$zero,$zero -/* 343ac: 0c00bec5 */ jal alHeapDBAlloc -/* 343b0: 8fa60024 */ lw $a2,0x24($sp) -/* 343b4: afa20028 */ sw $v0,0x28($sp) -/* 343b8: 8faa0038 */ lw $t2,0x38($sp) -/* 343bc: ad40006c */ sw $zero,0x6c($t2) -/* 343c0: 8fab003c */ lw $t3,0x3c($sp) -/* 343c4: afa00034 */ sw $zero,0x34($sp) -/* 343c8: 8d6c0000 */ lw $t4,0x0($t3) -/* 343cc: 19800015 */ blez $t4,.L00034424 -/* 343d0: 00000000 */ nop -.L000343d4: -/* 343d4: 8fad0034 */ lw $t5,0x34($sp) -/* 343d8: 8faf0028 */ lw $t7,0x28($sp) -/* 343dc: 000d7180 */ sll $t6,$t5,0x6 -/* 343e0: 01cfc021 */ addu $t8,$t6,$t7 -/* 343e4: afb8002c */ sw $t8,0x2c($sp) -/* 343e8: 8fb90038 */ lw $t9,0x38($sp) -/* 343ec: 8fa9002c */ lw $t1,0x2c($sp) -/* 343f0: 8f28006c */ lw $t0,0x6c($t9) -/* 343f4: ad280000 */ sw $t0,0x0($t1) -/* 343f8: 8faa002c */ lw $t2,0x2c($sp) -/* 343fc: 8fab0038 */ lw $t3,0x38($sp) -/* 34400: ad6a006c */ sw $t2,0x6c($t3) -/* 34404: 8fac0034 */ lw $t4,0x34($sp) -/* 34408: 8fae003c */ lw $t6,0x3c($sp) -/* 3440c: 258d0001 */ addiu $t5,$t4,0x1 -/* 34410: afad0034 */ sw $t5,0x34($sp) -/* 34414: 8dcf0000 */ lw $t7,0x0($t6) -/* 34418: 01af082a */ slt $at,$t5,$t7 -/* 3441c: 1420ffed */ bnez $at,.L000343d4 -/* 34420: 00000000 */ nop -.L00034424: -/* 34424: 8fb80038 */ lw $t8,0x38($sp) -/* 34428: af000064 */ sw $zero,0x64($t8) -/* 3442c: 8fb90038 */ lw $t9,0x38($sp) -/* 34430: af200068 */ sw $zero,0x68($t9) -/* 34434: 8fa8003c */ lw $t0,0x3c($sp) -/* 34438: 2409001c */ addiu $t1,$zero,0x1c -/* 3443c: 00002025 */ or $a0,$zero,$zero -/* 34440: 8d070004 */ lw $a3,0x4($t0) -/* 34444: afa90010 */ sw $t1,0x10($sp) -/* 34448: 00002825 */ or $a1,$zero,$zero -/* 3444c: 0c00bec5 */ jal alHeapDBAlloc -/* 34450: 8fa60024 */ lw $a2,0x24($sp) -/* 34454: afa20030 */ sw $v0,0x30($sp) -/* 34458: 8fa40038 */ lw $a0,0x38($sp) -/* 3445c: 8faa003c */ lw $t2,0x3c($sp) -/* 34460: 8fa50030 */ lw $a1,0x30($sp) -/* 34464: 24840048 */ addiu $a0,$a0,0x48 -/* 34468: 0c00f134 */ jal func0003c4d0 -/* 3446c: 8d460004 */ lw $a2,0x4($t2) -/* 34470: 8fab0038 */ lw $t3,0x38($sp) -/* 34474: ad600000 */ sw $zero,0x0($t3) -/* 34478: 8fae0038 */ lw $t6,0x38($sp) -/* 3447c: 3c0c7003 */ lui $t4,%hi(func000344b0) -/* 34480: 258c44b0 */ addiu $t4,$t4,%lo(func000344b0) -/* 34484: adcc0008 */ sw $t4,0x8($t6) -/* 34488: 8fad0038 */ lw $t5,0x38($sp) -/* 3448c: adad0004 */ sw $t5,0x4($t5) -/* 34490: 0c00f25c */ jal func0003c970 -/* 34494: 8fa40038 */ lw $a0,0x38($sp) -/* 34498: 10000001 */ b .L000344a0 -/* 3449c: 00000000 */ nop -.L000344a0: -/* 344a0: 8fbf001c */ lw $ra,0x1c($sp) -/* 344a4: 27bd0038 */ addiu $sp,$sp,0x38 -/* 344a8: 03e00008 */ jr $ra -/* 344ac: 00000000 */ nop -); -#endif +ALMicroTime __CSPVoiceHandler(void *node); + +void alCSPNew(ALCSPlayer *seqp, ALSeqpConfig *c) +{ + s32 i; + ALEventListItem *items; + ALVoiceState *vs; + ALVoiceState *voices; + + ALHeap *hp = c->heap; + + /* + * initialize member variables + */ + seqp->bank = 0; + seqp->target = NULL; + seqp->drvr = &alGlobals->drvr; + seqp->chanMask = 0xffff; + + func00039cd0(seqp); + + seqp->uspt = 488; + seqp->nextDelta = 0; + seqp->state = AL_STOPPED; + seqp->vol = 0x7fff; /* full volume */ + seqp->debugFlags = c->debugFlags; + seqp->frameTime = AL_USEC_PER_FRAME; /* should get this from driver */ + seqp->curTime = 0; + seqp->initOsc = c->initOsc; + seqp->updateOsc = c->updateOsc; + seqp->stopOsc = c->stopOsc; + + seqp->unk7c = 0; + seqp->unk80 = 1; + seqp->unk84 = 0; + seqp->unk89 = 0; + seqp->unk88 = c->maxVoices; + + seqp->nextEvent.type = AL_SEQP_API_EVT; /* this will start the voice handler "spinning" */ + + /* + * init the channel state + */ + seqp->maxChannels = c->maxChannels; + seqp->chanState = alHeapAlloc(hp, c->maxChannels, sizeof(ALChanState) ); + __initChanState((ALSeqPlayer*)seqp); + + /* + * init the voice state array + */ + voices = alHeapAlloc(hp, c->maxVoices, sizeof(ALVoiceState)); + seqp->vFreeList = 0; + for (i = 0; i < c->maxVoices; i++) { + vs = &voices[i]; + vs->next = seqp->vFreeList; + seqp->vFreeList = vs; + } + + seqp->vAllocHead = 0; + seqp->vAllocTail = 0; + + /* + * init the event queue + */ + items = alHeapAlloc(hp, c->maxEvents, sizeof(ALEventListItem)); + alEvtqNew(&seqp->evtq, items, c->maxEvents); + + + /* + * add ourselves to the driver + */ + seqp->node.next = NULL; + seqp->node.handler = __CSPVoiceHandler; + seqp->node.clientData = seqp; + + func0003c970(seqp); +} GLOBAL_ASM( -glabel func000344b0 +glabel __CSPVoiceHandler /* 344b0: 27bdff88 */ addiu $sp,$sp,-120 /* 344b4: afbf002c */ sw $ra,0x2c($sp) /* 344b8: afa40078 */ sw $a0,0x78($sp) @@ -3556,8 +3307,8 @@ glabel func00035110 /* 366dc: 10000233 */ b .L00036fac /* 366e0: 00000000 */ nop .L000366e4: -/* 366e4: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 366e8: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 366e4: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 366e8: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 366ec: 93ab00bf */ lbu $t3,0xbf($sp) /* 366f0: 8dac003c */ lw $t4,0x3c($t5) /* 366f4: 016c082a */ slt $at,$t3,$t4 @@ -5783,8 +5534,8 @@ glabel func00035110 /* 366dc: 10000233 */ b .L00036fac /* 366e0: 00000000 */ nop .L000366e4: -/* 366e4: 3c0d8006 */ lui $t5,%hi(var8005f114) -/* 366e8: 8dadf114 */ lw $t5,%lo(var8005f114)($t5) +/* 366e4: 3c0d8006 */ lui $t5,%hi(alGlobals) +/* 366e8: 8dadf114 */ lw $t5,%lo(alGlobals)($t5) /* 366ec: 93ab00bf */ lbu $t3,0xbf($sp) /* 366f0: 8dac003c */ lw $t4,0x3c($t5) /* 366f4: 016c082a */ slt $at,$t3,$t4