Decompile alCSPNew

This commit is contained in:
Ryan Dwyer 2021-03-27 18:05:22 +10:00
parent 84d55e4155
commit 62b6cb3c0a
26 changed files with 388 additions and 583 deletions

View File

@ -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;
/*

37
src/include/PR/seqp.h Executable file
View File

@ -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 */

View File

@ -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;

View File

@ -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);

View File

@ -5,7 +5,7 @@
#include "types.h"
u32 func00039c80(void);
u32 func00039cd0(void);
void func00039cd0(ALCSPlayer *seqp);
u32 func00039e5c(void);
#endif

View File

@ -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);

View File

@ -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);

View File

@ -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

View File

@ -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)

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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)

View File

@ -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)

View File

@ -1,4 +1,5 @@
#include <ultra64.h>
#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