Match most of the remaining unmatched libultra functions, mostly from the audio library (#239)

* Fix alSynAllocFX

* Match alCSPNew and __CSPVoiceHandler, which had slight differences from libreultra

* WIP __CSPHandleMIDIMsg

* Match alFxPull

* Match func_8006492C and func_8006493C

* Match alFxParamHdl

* Match _loadOutputBuffer:

* Match _doModFunc and with it finish reverb.c

* Match alSynNew and finish synthesizer.c

* Match some unknown funcs cleaner

* Clean up func_80063BA0

* Clean up func_80063A90

* Fix warning

* Add missing header files from previous commits

* Match alBnkfNew.c

* Match alCSPGetState

* Match several more audio lib funcs

* Match alSynDelete, and alSynSetFXMix

* Properly move __osRcpImTable data into osSetIntMask and our of alSynSetPriority

* Kind of match alSynSetPriority, and match alSynSetVol

* Delcare functions as static again to fix the score script regex

* Seperate some al files out like they seem to be in ultralib

* Match event.c

* Match synallocvoice.c

* Match some more audio funcs

* More audio matches

* Yaya more audio, I know

* Couple more matched files

* Match filter.c

* Match resample.c

* Match load.c

* Get env.c closer to a real match

* Fix some code related to an assert in env.c

* Match env.c, which has many differences from later public versions

* Finish matching audio library code

* Deleted unnecessary asm files, and made tweaks to al files to fix score script

* Fix codebreaking formatting error ;)

* Update include/PR/libaudio.h

Co-authored-by: AntonioCastelli <aatcastelli@gmail.com>

* Update include/audio_internal.h

Co-authored-by: AntonioCastelli <aatcastelli@gmail.com>

* Renamed sl.c.c to fix that, and renamed NOPSNEEDED to make it more clear it's not to be used.

Co-authored-by: AntonioCastelli <aatcastelli@gmail.com>
This commit is contained in:
Ryan Myers
2022-08-08 07:35:44 -04:00
committed by GitHub
co-authored by AntonioCastelli
parent dd92c90fc1
commit 924b89cc80
156 changed files with 4607 additions and 8447 deletions
+2 -4
View File
@@ -299,16 +299,14 @@ $(BUILD_DIR)/lib/src/os/osViMgr.o: OPT_FLAGS := -O2 -Xfullwarn
$(BUILD_DIR)/lib/src/os/osCreatePiManager.o: OPT_FLAGS := -O2 -Xfullwarn
$(BUILD_DIR)/lib/src/os/osMotor.o: OPT_FLAGS := -O2 -Xfullwarn
$(BUILD_DIR)/lib/src/libc/xprintf.o : OPT_FLAGS := -O3
$(BUILD_DIR)/lib/src/al/unknown_0C9C90.o: OPT_FLAGS := -O2 -Xfullwarn -Wo,-loopunroll,0
$(BUILD_DIR)/lib/src/al/env.o: OPT_FLAGS := -g
#$(BUILD_DIR)/lib/src/libc/llcvt.o: OPT_FLAGS :=
#$(BUILD_DIR)/lib/src/libc/llcvt.o: MIPSISET := -mips3 32
$(BUILD_DIR)/lib/%.o: MIPSISET := -mips2
$(BUILD_DIR)/lib/src/mips1/%.o: MIPSISET := -mips1
$(BUILD_DIR)/lib/src/os/osMotor.o: MIPSISET := -mips1
# asm-processor currently does not support -O3, so this is my workaround.
$(BUILD_DIR)/lib/src/al/global_asm/%.o: OPT_FLAGS := -O2 -Xfullwarn
$(BUILD_DIR)/lib/src/al/env.o: MIPSISET := -mips1
######################## Targets #############################
+3 -1
View File
@@ -242,7 +242,9 @@ typedef union {
/*
* ADPCM State
*/
typedef short ADPCM_STATE[16];
#define ADPCMVSIZE 8
#define ADPCMFSIZE 16
typedef short ADPCM_STATE[ADPCMFSIZE];
/*
* Pole filter state
+168 -50
View File
@@ -89,9 +89,13 @@ typedef struct ALLink_s {
} ALLink;
void alUnlink(ALLink *element);
void alLink(ALLink *element, ALLink *after);
typedef s32 (*ALDMAproc)(s32 addr, s32 len, void *state);
typedef ALDMAproc (*ALDMANew)(void *state);
void alCopy(void *src, void *dest, s32 len);
typedef struct {
u8 *base;
@@ -104,7 +108,7 @@ typedef struct {
#define AL_HEAP_MAGIC 0x20736a73
#define AL_HEAP_INIT 0
void *alHeapDBAlloc(u8 *file, s32 line, ALHeap *hp, s32 num, s32 size);
#ifdef _DEBUG
#define alHeapAlloc(hp, elem ,size) alHeapDBAlloc((u8 *) __FILE__,__LINE__,(hp),(elem),(size))
#else
@@ -319,6 +323,33 @@ typedef struct {
at one time at output rate */
} ALSynth;
void alSynNew(ALSynth *s, ALSynConfig *config);
void alSynDelete(ALSynth *s);
void alSynAddPlayer(ALSynth *s, ALPlayer *client);
void alSynRemovePlayer(ALSynth *s, ALPlayer *client);
s32 alSynAllocVoice(ALSynth *s, ALVoice *v, ALVoiceConfig *vc);
void alSynFreeVoice(ALSynth *s, ALVoice *voice);
void alSynStartVoice(ALSynth *s, ALVoice *voice, ALWaveTable *w);
void alSynStartVoiceParams(ALSynth *s, ALVoice *voice, ALWaveTable *w,
f32 pitch, s16 vol, ALPan pan, u8 fxmix,
ALMicroTime t);
void alSynStopVoice(ALSynth *s, ALVoice *voice);
void alSynSetVol(ALSynth *s, ALVoice *v, s16 vol, ALMicroTime delta);
void alSynSetPitch(ALSynth *s, ALVoice *voice, f32 ratio);
void alSynSetPan(ALSynth *s, ALVoice *voice, ALPan pan);
void alSynSetFXMix(ALSynth *s, ALVoice *voice, u8 fxmix);
void alSynSetPriority(ALSynth *s, ALVoice *voice, s16 priority);
s16 alSynGetPriority(ALSynth *s, ALVoice *voice);
ALFxRef *alSynAllocFX(ALSynth *s, s16 bus, ALSynConfig *c, ALHeap *hp);
ALFxRef alSynGetFXRef(ALSynth *s, s16 bus, s16 index);
void alSynFreeFX(ALSynth *s, ALFxRef *fx);
void alSynSetFXParam(ALSynth *s, ALFxRef fx, s16 paramID, void *param);
/***********************************************************************
* Audio Library (AL) stuff
@@ -556,6 +587,13 @@ typedef struct {
s32 eventCount;
} ALEventQueue;
void alEvtqNew(ALEventQueue *evtq, ALEventListItem *items,
s32 itemCount);
ALMicroTime alEvtqNextEvent(ALEventQueue *evtq, ALEvent *evt);
void alEvtqPostEvent(ALEventQueue *evtq, ALEvent *evt,
ALMicroTime delta);
void alEvtqFlush(ALEventQueue *evtq);
void alEvtqFlushType(ALEventQueue *evtq, s16 type);
#define AL_PHASE_ATTACK 0
#define AL_PHASE_NOTEON 0
@@ -606,6 +644,7 @@ typedef struct {
u8 sustain; /* current sustain pedal state */
f32 pitchBend; /* current pitch bend val in cents */
u8 unk10;
u8 unk11;
} ALChanState_Custom;
/* Size: 0x1C bytes */
@@ -625,6 +664,7 @@ typedef struct {
u32 division;
} ALCMidiHdr;
/* size 0x20 */
typedef struct ALCSeq_s {
ALCMidiHdr *base; /* ptr to start of sequence file */
u32 validTracks; /* set of flags, showing valid tracks */
@@ -708,37 +748,7 @@ typedef struct {
} ALSeqPlayer;
/**
* This has an extra padded 4 bytes at the end for some reason.
* Size: 0x80 bytes */
typedef struct {
ALPlayer node; /* note: must be first in structure */
ALSynth *drvr; /* reference to the client driver */
ALCSeq *target; /* current sequence */
ALMicroTime curTime;
ALBank *bank; /* current ALBank */
s32 uspt; /* microseconds per tick */
s32 nextDelta; /* microseconds to next callback */
s32 state;
u16 chanMask; /* active channels */
s16 vol; /* overall sequence volume */
u8 maxChannels; /* number of MIDI channels */
u8 debugFlags; /* control which error get reported */
ALEvent nextEvent;
ALEventQueue evtq;
ALMicroTime frameTime;
ALChanState *chanState; /* 16 channels for MIDI */
ALVoiceState *vAllocHead; /* list head for allocated voices */
ALVoiceState *vAllocTail; /* list tail for allocated voices */
ALVoiceState *vFreeList; /* list of free voice state structs */
ALOscInit initOsc;
ALOscUpdate updateOsc;
ALOscStop stopOsc;
s32 unk7C; /* Padded to match ALCSPlayer_Custom */
} ALCSPlayer;
/**
* This custom struct has a unk36 byte that is set to 0x7F in func_80002224.
* It is otherwise identical to the ALCSPlayer above, but we need to pad it's size to match
* This struct was modified by Rare with a few new fields
* Size: 0x80 bytes */
typedef struct {
/* 0x00 */ ALPlayer node; /* note: must be first in structure */
@@ -754,30 +764,139 @@ typedef struct {
/* 0x34 */ u8 maxChannels; /* number of MIDI channels */
/* 0x35 */ u8 debugFlags; /* control which error get reported */
/* 0x36 */ u8 unk36;
/* 0x37 */ u8 unk37[3]; /* Padded to match ALCSPlayer */
/* 0x40 */ ALEvent nextEvent;
/* 0x4C */ ALEventQueue evtq;
/* 0x60 */ ALMicroTime frameTime;
/* 0x64 */ ALChanState *chanState; /* 16 channels for MIDI */
/* 0x68 */ ALVoiceState *vAllocHead; /* list head for allocated voices */
/* 0x6C */ ALVoiceState *vAllocTail; /* list tail for allocated voices */
/* 0x70 */ ALVoiceState *vFreeList; /* list of free voice state structs */
/* 0x37 */ u8 unk37;
/* 0x38 */ ALEvent nextEvent;
/* 0x48 */ ALEventQueue evtq;
/* 0x5C */ ALMicroTime frameTime;
/* 0x60 */ ALChanState *chanState; /* 16 channels for MIDI */
/* 0x64 */ ALVoiceState *vAllocHead; /* list head for allocated voices */
/* 0x68 */ ALVoiceState *vAllocTail; /* list tail for allocated voices */
/* 0x6C */ ALVoiceState *vFreeList; /* list of free voice state structs */
/* 0x70 */ s8 unk70;
/* 0x71 */ s8 unk71;
/* 0x72 */ s8 unk72;
/* 0x73 */ s8 unk73;
/* 0x74 */ ALOscInit initOsc;
/* 0x78 */ ALOscUpdate updateOsc;
/* 0x7C */ ALOscStop stopOsc;
} ALCSPlayer;
/**
* Same as above, but the chanState is the new custom one.
* Size: 0x80 bytes */
typedef struct {
/* 0x00 */ ALPlayer node; /* note: must be first in structure */
/* 0x14 */ ALSynth *drvr; /* reference to the client driver */
/* 0x18 */ ALCSeq *target; /* current sequence */
/* 0x1C */ ALMicroTime curTime;
/* 0x20 */ ALBank *bank; /* current ALBank */
/* 0x24 */ s32 uspt; /* microseconds per tick */
/* 0x28 */ s32 nextDelta; /* microseconds to next callback */
/* 0x2C */ s32 state;
/* 0x30 */ u16 chanMask; /* active channels */
/* 0x32 */ s16 vol; /* overall sequence volume */
/* 0x34 */ u8 maxChannels; /* number of MIDI channels */
/* 0x35 */ u8 debugFlags; /* control which error get reported */
/* 0x36 */ u8 unk36;
/* 0x37 */ u8 unk37;
/* 0x38 */ ALEvent nextEvent;
/* 0x48 */ ALEventQueue evtq;
/* 0x5C */ ALMicroTime frameTime;
/* 0x60 */ ALChanState_Custom *chanState; /* 16 channels for MIDI */
/* 0x64 */ ALVoiceState *vAllocHead; /* list head for allocated voices */
/* 0x68 */ ALVoiceState *vAllocTail; /* list tail for allocated voices */
/* 0x6C */ ALVoiceState *vFreeList; /* list of free voice state structs */
/* 0x70 */ s8 unk70;
/* 0x71 */ s8 unk71;
/* 0x72 */ s8 unk72;
/* 0x73 */ s8 unk73;
/* 0x74 */ ALOscInit initOsc;
/* 0x78 */ ALOscUpdate updateOsc;
/* 0x7C */ ALOscStop stopOsc;
} ALCSPlayer_Custom;
/* Maintain backwards compatibility with old routine names. */
#define alSeqpSetProgram alSeqpSetChlProgram
#define alSeqpGetProgram alSeqpGetChlProgram
#define alSeqpSetFXMix alSeqpSetChlFXMix
#define alSeqpGetFXMix alSeqpGetChlFXMix
#define alSeqpSetPan alSeqpSetChlPan
#define alSeqpGetPan alSeqpGetChlPan
#define alSeqpSetChannelPriority alSeqpSetChlPriority
#define alSeqpGetChannelPriority alSeqpGetChlPriority
/*
* Compressed Sequence Player routines
*/
void alCSPNew(ALCSPlayer *seqp, ALSeqpConfig *config);
void alCSPDelete(ALCSPlayer *seqp);
void alCSPSetSeq(ALCSPlayer *seqp, ALCSeq *seq);
ALCSeq *alCSPGetSeq(ALCSPlayer *seqp);
void alCSPPlay(ALCSPlayer *seqp);
void alCSPStop(ALCSPlayer *seqp);
s32 alCSPGetState(ALCSPlayer *seqp);
void alCSPSetBank(ALCSPlayer *seqp, ALBank *b);
void alCSPSetTempo(ALCSPlayer *seqp, s32 tempo);
s32 alCSPGetTempo(ALCSPlayer *seqp);
s16 alCSPGetVol(ALCSPlayer *seqp);
void alCSPSetVol(ALCSPlayer *seqp, s16 vol);
void alCSPSetChlProgram(ALCSPlayer *seqp, u8 chan, u8 prog);
s32 alCSPGetChlProgram(ALCSPlayer *seqp, u8 chan);
void alCSPSetChlFXMix(ALCSPlayer *seqp, u8 chan, u8 fxmix);
u8 alCSPGetChlFXMix(ALCSPlayer *seqp, u8 chan);
void alCSPSetChlPan(ALCSPlayer *seqp, u8 chan, ALPan pan);
ALPan alCSPGetChlPan(ALCSPlayer *seqp, u8 chan);
void alCSPSetChlVol(ALCSPlayer *seqp, u8 chan, u8 vol);
u8 alCSPGetChlVol(ALCSPlayer *seqp, u8 chan);
void alCSPSetChlPriority(ALCSPlayer *seqp, u8 chan, u8 priority);
u8 alCSPGetChlPriority(ALCSPlayer *seqp, u8 chan);
void alCSPSendMidi(ALCSPlayer *seqp, s32 ticks, u8 status,
u8 byte1, u8 byte2);
/*
* Sequence data representation routines
*/
void alSeqNew(ALSeq *seq, u8 *ptr, s32 len);
void alSeqNextEvent(ALSeq *seq, ALEvent *event);
s32 alSeqGetTicks(ALSeq *seq);
f32 alSeqTicksToSec(ALSeq *seq, s32 ticks, u32 tempo);
u32 alSeqSecToTicks(ALSeq *seq, f32 sec, u32 tempo);
void alSeqNewMarker(ALSeq *seq, ALSeqMarker *m, u32 ticks);
void alSeqSetLoc(ALSeq *seq, ALSeqMarker *marker);
void alSeqGetLoc(ALSeq *seq, ALSeqMarker *marker);
/*
* Compact Sequence data representation routines
*/
void alCSeqNew(ALCSeq *seq, u8 *ptr);
void alCSeqNextEvent(ALCSeq *seq,ALEvent *evt);
s32 alCSeqGetTicks(ALCSeq *seq);
f32 alCSeqTicksToSec(ALCSeq *seq, s32 ticks, u32 tempo);
u32 alCSeqSecToTicks(ALCSeq *seq, f32 sec, u32 tempo);
void alCSeqNewMarker(ALCSeq *seq, ALCSeqMarker *m, u32 ticks);
void alCSeqSetLoc(ALCSeq *seq, ALCSeqMarker *marker);
void alCSeqGetLoc(ALCSeq *seq, ALCSeqMarker *marker);
/*
* Sequence Player routines
*/
f32 alCents2Ratio(s32 cents);
void alSeqpNew(ALSeqPlayer *seqp, ALSeqpConfig *config);
void alSeqpDelete(ALSeqPlayer *seqp);
void alSeqpSetSeq(ALSeqPlayer *seqp, ALSeq *seq);
ALSeq *alSeqpGetSeq(ALSeqPlayer *seqp);
void alSeqpPlay(ALSeqPlayer *seqp);
void alSeqpStop(ALSeqPlayer *seqp);
s32 alSeqpGetState(ALSeqPlayer *seqp);
void alSeqpSetBank(ALSeqPlayer *seqp, ALBank *b);
void alSeqpSetTempo(ALSeqPlayer *seqp, s32 tempo);
s32 alSeqpGetTempo(ALSeqPlayer *seqp);
s16 alSeqpGetVol(ALSeqPlayer *seqp); /* Master volume control */
void alSeqpSetVol(ALSeqPlayer *seqp, s16 vol);
void alSeqpLoop(ALSeqPlayer *seqp, ALSeqMarker *start, ALSeqMarker *end, s32 count);
void alSeqpSetChlProgram(ALSeqPlayer *seqp, u8 chan, u8 prog);
s32 alSeqpGetChlProgram(ALSeqPlayer *seqp, u8 chan);
void alSeqpSetChlFXMix(ALSeqPlayer *seqp, u8 chan, u8 fxmix);
u8 alSeqpGetChlFXMix(ALSeqPlayer *seqp, u8 chan);
void alSeqpSetChlVol(ALSeqPlayer *seqp, u8 chan, u8 vol);
u8 alSeqpGetChlVol(ALSeqPlayer *seqp, u8 chan);
void alSeqpSetChlPan(ALSeqPlayer *seqp, u8 chan, ALPan pan);
ALPan alSeqpGetChlPan(ALSeqPlayer *seqp, u8 chan);
void alSeqpSetChlPriority(ALSeqPlayer *seqp, u8 chan, u8 priority);
u8 alSeqpGetChlPriority(ALSeqPlayer *seqp, u8 chan);
void alSeqpSendMidi(ALSeqPlayer *seqp, s32 ticks, u8 status, u8 byte1, u8 byte2);
/* Maintain backwards compatibility with old routine names. */
#define alCSPSetProgram alCSPSetChlProgram
@@ -790,7 +909,6 @@ typedef struct {
#define alCSPGetChannelPriority alCSPGetChlPriority
/***********************************************************************
* Sound Player stuff
***********************************************************************/
+14 -1
View File
@@ -296,7 +296,20 @@ typedef struct PVoice_s {
ALResampler resampler;
ALEnvMixer envmixer;
s32 offset;
s32 unkDC;
u8 unkDC;
} PVoice;
/*
* prototypes for private driver functions
*/
ALParam *__allocParam(void);
void __freeParam(ALParam *param);
void __freePVoices(ALSynth *drvr, PVoice *pvoice);
void _collectPVoices(ALSynth *drvr);
s32 __timeToSamples(ALSynth *ALSynth, s32 micros);
ALMicroTime _samplesToTime(ALSynth *synth, s32 samples);
void _init_lpfilter(ALLowPass *lp);
#endif
+72
View File
@@ -0,0 +1,72 @@
/************************************************************************
Copyright (C) 1998,1999 NINTENDO Co,Ltd,
Copyright (C) 1998,1999 MONEGI CORPORATION,
All Rights Reserved
This program is a trade secret of NINTENDO Co,Ltd and MONEGI Corp.
and it is not to be reproduced, published, disclosed to others, copied,
adapted, distributed, or displayed without the prior authorization of
NINTENDO Co,Ltd. and MONEGI Corp. Licensee agrees to attach or embed
this Notice on all copies of the program, including partial copies or
modified versions thereof.
*************************************************************************/
/************************************************************************
$Date: 1999/07/06 13:21:13 $
$Revision: 1.1 $
$Author: doseki $
************************************************************************/
#ifndef __ASM_H__
#define __ASM_H__
#ifdef __cplusplus
extern "C" {
#endif
#define _MIPS_ISA_MIPS1 1 /* R2/3K */
#define _MIPS_ISA_MIPS2 2 /* R4K/6K */
#define _MIPS_ISA_MIPS3 3 /* R4K */
#define _MIPS_ISA_MIPS4 4 /* TFP */
#define _MIPS_SIM_ABI32 1 /* MIPS MSIG calling convention */
#define _MIPS_SIM_NABI32 2 /* MIPS new 32-bit abi */
/* NABI32 is 64bit calling convention but 32bit type sizes) */
#define _MIPS_SIM_ABI64 3 /* MIPS 64 calling convention */
#define LEAF(x) \
.globl x; \
.ent x,0; \
x:; \
.frame sp,0,ra
#define XLEAF(x) \
.global x;
#define END(proc) \
.end proc
#define ABS(x, y) \
.globl x; \
x = y
#define EXPORT(x) \
.globl x; \
x:
/*
#define WEAK(x, y) \
.weak x; \
.set x,y;
*/
#define WEAK(x, y)
#define STAY1(stmnt) .set noreorder; stmnt; .set reorder;
#define STAY2(stmnt, arg1) .set noreorder; stmnt, arg1; .set reorder;
#define STAY3(stmnt, arg1, arg2) .set noreorder; stmnt, arg1, arg2; .set reorder;
#define NOP .set noreorder; nop; .set reorder;
#define CACHE(op, reg) .set noreorder; cache op, reg; .set reorder;
#ifdef __cplusplus
}
#endif
#endif /* !__ASM_H__ */
+187
View File
@@ -0,0 +1,187 @@
/************************************************************************
Copyright (C) 1998,1999 NINTENDO Co,Ltd,
Copyright (C) 1998,1999 MONEGI CORPORATION,
All Rights Reserved
This program is a trade secret of NINTENDO Co,Ltd and MONEGI Corp.
and it is not to be reproduced, published, disclosed to others, copied,
adapted, distributed, or displayed without the prior authorization of
NINTENDO Co,Ltd. and MONEGI Corp. Licensee agrees to attach or embed
this Notice on all copies of the program, including partial copies or
modified versions thereof.
*************************************************************************/
/************************************************************************
$Date: 1999/07/06 13:21:13 $
$Revision: 1.1 $
$Author: doseki $
************************************************************************/
#ifndef __REGDEF_H__
#define __REGDEF_H__
#ifdef __cplusplus
extern "C" {
#endif
#ifdef mips
#if (_MIPS_SIM == _MIPS_SIM_ABI32)
#define zero $0
#define AT $at
#define v0 $2
#define v1 $3
#define a0 $4
#define a1 $5
#define a2 $6
#define a3 $7
#define t0 $8
#define t1 $9
#define t2 $10
#define t3 $11
#define t4 $12
#define ta0 $12
#define t5 $13
#define ta1 $13
#define t6 $14
#define ta2 $14
#define t7 $15
#define ta3 $15
#define s0 $16
#define s1 $17
#define s2 $18
#define s3 $19
#define s4 $20
#define s5 $21
#define s6 $22
#define s7 $23
#define t8 $24
#define t9 $25
#define jp $25
#define k0 $26
#define k1 $27
#define gp $28
#define sp $29
#define fp $30
#define s8 $30
#define ra $31
#endif
#if (_MIPS_SIM == _MIPS_SIM_ABI64)
#define zero $0
#define AT $at
#define v0 $2
#define v1 $3
#define a0 $4
#define a1 $5
#define a2 $6
#define a3 $7
#define a4 $8
#define ta0 $8
#define a5 $9
#define ta1 $9
#define a6 $10
#define ta2 $10
#define a7 $11
#define ta3 $11
#define t0 $12
#define t1 $13
#define t2 $14
#define t3 $15
#define s0 $16
#define s1 $17
#define s2 $18
#define s3 $19
#define s4 $20
#define s5 $21
#define s6 $22
#define s7 $23
#define t8 $24
#define t9 $25
#define jp $25
#define k0 $26
#define k1 $27
#define gp $28
#define sp $29
#define fp $30
#define s8 $30
#define ra $31
#endif
#if (_MIPS_SIM == _MIPS_SIM_ABI32)
#define fv0 $f0
#define fv0f $f1
#define fv1 $f2
#define fv1f $f3
#define fa0 $f12
#define fa0f $f13
#define fa1 $f14
#define fa1f $f15
#define ft0 $f4
#define ft0f $f5
#define ft1 $f6
#define ft1f $f7
#define ft2 $f8
#define ft2f $f9
#define ft3 $f10
#define ft3f $f11
#define ft4 $f16
#define ft4f $f17
#define ft5 $f18
#define ft5f $f19
#define fs0 $f20
#define fs0f $f21
#define fs1 $f22
#define fs1f $f23
#define fs2 $f24
#define fs2f $f25
#define fs3 $f26
#define fs3f $f27
#define fs4 $f28
#define fs4f $f29
#define fs5 $f30
#define fs5f $f31
#endif
#if (_MIPS_SIM == _MIPS_SIM_ABI64)
#define fv0 $f0
#define fv1 $f2
#define fa0 $f12
#define fa1 $f13
#define fa2 $f14
#define fa3 $f15
#define fa4 $f16
#define fa5 $f17
#define fa6 $f18
#define fa7 $f19
#define ft0 $f4
#define ft1 $f5
#define ft2 $f6
#define ft3 $f7
#define ft4 $f8
#define ft5 $f9
#define ft6 $f10
#define ft7 $f11
#define ft8 $f20
#define ft9 $f21
#define ft10 $f22
#define ft11 $f23
#define ft12 $f1
#define ft13 $f3
#define fs0 $f24
#define fs1 $f25
#define fs2 $f26
#define fs3 $f27
#define fs4 $f28
#define fs5 $f29
#define fs6 $f30
#define fs7 $f31
#endif
#define fcr31 $31
#endif /* mips */
#ifdef __cplusplus
}
#endif
#endif /* !__REGDEF_H__ */
+2 -2
View File
@@ -83,8 +83,8 @@ glabel __osDispatchThread
/* 0D4164 800D3564 001AD402 */ srl $k0, $k0, 0x10
/* 0D4168 800D3568 037AD824 */ and $k1, $k1, $k0
/* 0D416C 800D356C 001BD840 */ sll $k1, $k1, 1
/* 0D4170 800D3570 3C1A800F */ lui $k0, %hi(D_800E94D0) # $k0, 0x800f
/* 0D4174 800D3574 275A94D0 */ addiu $k0, %lo(D_800E94D0) # addiu $k0, $k0, -0x6b30
/* 0D4170 800D3570 3C1A800F */ lui $k0, %hi(__osRcpImTable) # $k0, 0x800f
/* 0D4174 800D3574 275A94D0 */ addiu $k0, %lo(__osRcpImTable) # addiu $k0, $k0, -0x6b30
/* 0D4178 800D3578 037AD821 */ addu $k1, $k1, $k0
/* 0D417C 800D357C 977B0000 */ lhu $k1, ($k1)
/* 0D4180 800D3580 3C1AA430 */ lui $k0, %hi(MI_INTR_MASK_REG) # $k0, 0xa430
@@ -1,69 +0,0 @@
glabel _bnkfPatchBank
/* 0C81B0 800C75B0 908E0003 */ lbu $t6, 3($a0)
/* 0C81B4 800C75B4 15C00037 */ bnez $t6, .L800C7694
/* 0C81B8 800C75B8 00000000 */ nop
/* 0C81BC 800C75BC 848F000E */ lh $t7, 0xe($a0)
/* 0C81C0 800C75C0 24090001 */ li $t1, 1
/* 0C81C4 800C75C4 A0890003 */ sb $t1, 3($a0)
/* 0C81C8 800C75C8 19E00032 */ blez $t7, .L800C7694
/* 0C81CC 800C75CC 00001025 */ move $v0, $zero
/* 0C81D0 800C75D0 00801825 */ move $v1, $a0
/* 0C81D4 800C75D4 240A0001 */ li $t2, 1
/* 0C81D8 800C75D8 8C780010 */ lw $t8, 0x10($v1)
.L800C75DC:
/* 0C81DC 800C75DC 0305C821 */ addu $t9, $t8, $a1
/* 0C81E0 800C75E0 AC790010 */ sw $t9, 0x10($v1)
/* 0C81E4 800C75E4 932E000E */ lbu $t6, 0xe($t9)
/* 0C81E8 800C75E8 03203025 */ move $a2, $t9
/* 0C81EC 800C75EC 55C00024 */ bnezl $t6, .L800C7680
/* 0C81F0 800C75F0 8498000E */ lh $t8, 0xe($a0)
/* 0C81F4 800C75F4 8F2F0000 */ lw $t7, ($t9)
/* 0C81F8 800C75F8 A329000E */ sb $t1, 0xe($t9)
/* 0C81FC 800C75FC 01E5C021 */ addu $t8, $t7, $a1
/* 0C8200 800C7600 AF380000 */ sw $t8, ($t9)
/* 0C8204 800C7604 8F390004 */ lw $t9, 4($t9)
/* 0C8208 800C7608 8CCF0008 */ lw $t7, 8($a2)
/* 0C820C 800C760C 03257021 */ addu $t6, $t9, $a1
/* 0C8210 800C7610 01E5C021 */ addu $t8, $t7, $a1
/* 0C8214 800C7614 ACCE0004 */ sw $t6, 4($a2)
/* 0C8218 800C7618 ACD80008 */ sw $t8, 8($a2)
/* 0C821C 800C761C 93190009 */ lbu $t9, 9($t8)
/* 0C8220 800C7620 03004025 */ move $t0, $t8
/* 0C8224 800C7624 57200016 */ bnezl $t9, .L800C7680
/* 0C8228 800C7628 8498000E */ lh $t8, 0xe($a0)
/* 0C822C 800C762C 8F0E0000 */ lw $t6, ($t8)
/* 0C8230 800C7630 93060008 */ lbu $a2, 8($t8)
/* 0C8234 800C7634 A3090009 */ sb $t1, 9($t8)
/* 0C8238 800C7638 01C77821 */ addu $t7, $t6, $a3
/* 0C823C 800C763C 14C00009 */ bnez $a2, .L800C7664
/* 0C8240 800C7640 AF0F0000 */ sw $t7, ($t8)
/* 0C8244 800C7644 8F180010 */ lw $t8, 0x10($t8)
/* 0C8248 800C7648 8D06000C */ lw $a2, 0xc($t0)
/* 0C824C 800C764C 0305C821 */ addu $t9, $t8, $a1
/* 0C8250 800C7650 10C0000A */ beqz $a2, .L800C767C
/* 0C8254 800C7654 AD190010 */ sw $t9, 0x10($t0)
/* 0C8258 800C7658 00C57021 */ addu $t6, $a2, $a1
/* 0C825C 800C765C 10000007 */ b .L800C767C
/* 0C8260 800C7660 AD0E000C */ sw $t6, 0xc($t0)
.L800C7664:
/* 0C8264 800C7664 55460006 */ bnel $t2, $a2, .L800C7680
/* 0C8268 800C7668 8498000E */ lh $t8, 0xe($a0)
/* 0C826C 800C766C 8D06000C */ lw $a2, 0xc($t0)
/* 0C8270 800C7670 10C00002 */ beqz $a2, .L800C767C
/* 0C8274 800C7674 00C57821 */ addu $t7, $a2, $a1
/* 0C8278 800C7678 AD0F000C */ sw $t7, 0xc($t0)
.L800C767C:
/* 0C827C 800C767C 8498000E */ lh $t8, 0xe($a0)
.L800C7680:
/* 0C8280 800C7680 24420001 */ addiu $v0, $v0, 1
/* 0C8284 800C7684 24630004 */ addiu $v1, $v1, 4
/* 0C8288 800C7688 0058082A */ slt $at, $v0, $t8
/* 0C828C 800C768C 5420FFD3 */ bnezl $at, .L800C75DC
/* 0C8290 800C7690 8C780010 */ lw $t8, 0x10($v1)
.L800C7694:
/* 0C8294 800C7694 03E00008 */ jr $ra
/* 0C8298 800C7698 00000000 */ nop
/* 0C829C 800C769C 03E00008 */ jr $ra
/* 0C82A0 800C76A0 00000000 */ nop
@@ -1,74 +0,0 @@
glabel alBnkfNew
/* 0C82A4 800C76A4 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 0C82A8 800C76A8 AFBF002C */ sw $ra, 0x2c($sp)
/* 0C82AC 800C76AC AFB40028 */ sw $s4, 0x28($sp)
/* 0C82B0 800C76B0 AFB30024 */ sw $s3, 0x24($sp)
/* 0C82B4 800C76B4 AFB20020 */ sw $s2, 0x20($sp)
/* 0C82B8 800C76B8 AFB1001C */ sw $s1, 0x1c($sp)
/* 0C82BC 800C76BC AFB00018 */ sw $s0, 0x18($sp)
/* 0C82C0 800C76C0 848E0000 */ lh $t6, ($a0)
/* 0C82C4 800C76C4 24014231 */ li $at, 16945
/* 0C82C8 800C76C8 00808025 */ move $s0, $a0
/* 0C82CC 800C76CC 15C1002E */ bne $t6, $at, .L800C7788
/* 0C82D0 800C76D0 00A08825 */ move $s1, $a1
/* 0C82D4 800C76D4 848F0002 */ lh $t7, 2($a0)
/* 0C82D8 800C76D8 00009825 */ move $s3, $zero
/* 0C82DC 800C76DC 00809025 */ move $s2, $a0
/* 0C82E0 800C76E0 19E00029 */ blez $t7, .L800C7788
/* 0C82E4 800C76E4 24140001 */ li $s4, 1
/* 0C82E8 800C76E8 8E580004 */ lw $t8, 4($s2)
.L800C76EC:
/* 0C82EC 800C76EC 0310C821 */ addu $t9, $t8, $s0
/* 0C82F0 800C76F0 1320001F */ beqz $t9, .L800C7770
/* 0C82F4 800C76F4 AE590004 */ sw $t9, 4($s2)
/* 0C82F8 800C76F8 932E0002 */ lbu $t6, 2($t9)
/* 0C82FC 800C76FC 03206825 */ move $t5, $t9
/* 0C8300 800C7700 55C0001C */ bnezl $t6, .L800C7774
/* 0C8304 800C7704 86180002 */ lh $t8, 2($s0)
/* 0C8308 800C7708 8F220008 */ lw $v0, 8($t9)
/* 0C830C 800C770C A3340002 */ sb $s4, 2($t9)
/* 0C8310 800C7710 00006025 */ move $t4, $zero
/* 0C8314 800C7714 10400005 */ beqz $v0, .L800C772C
/* 0C8318 800C7718 00502021 */ addu $a0, $v0, $s0
/* 0C831C 800C771C AF240008 */ sw $a0, 8($t9)
/* 0C8320 800C7720 02002825 */ move $a1, $s0
/* 0C8324 800C7724 0C031D6C */ jal _bnkfPatchBank
/* 0C8328 800C7728 02203825 */ move $a3, $s1
.L800C772C:
/* 0C832C 800C772C 85B80000 */ lh $t8, ($t5)
/* 0C8330 800C7730 01A05825 */ move $t3, $t5
/* 0C8334 800C7734 5B00000F */ blezl $t8, .L800C7774
/* 0C8338 800C7738 86180002 */ lh $t8, 2($s0)
/* 0C833C 800C773C 8D79000C */ lw $t9, 0xc($t3)
.L800C7740:
/* 0C8340 800C7740 02002825 */ move $a1, $s0
/* 0C8344 800C7744 03302021 */ addu $a0, $t9, $s0
/* 0C8348 800C7748 10800003 */ beqz $a0, .L800C7758
/* 0C834C 800C774C AD64000C */ sw $a0, 0xc($t3)
/* 0C8350 800C7750 0C031D6C */ jal _bnkfPatchBank
/* 0C8354 800C7754 02203825 */ move $a3, $s1
.L800C7758:
/* 0C8358 800C7758 85AF0000 */ lh $t7, ($t5)
/* 0C835C 800C775C 258C0001 */ addiu $t4, $t4, 1
/* 0C8360 800C7760 256B0004 */ addiu $t3, $t3, 4
/* 0C8364 800C7764 018F082A */ slt $at, $t4, $t7
/* 0C8368 800C7768 5420FFF5 */ bnezl $at, .L800C7740
/* 0C836C 800C776C 8D79000C */ lw $t9, 0xc($t3)
.L800C7770:
/* 0C8370 800C7770 86180002 */ lh $t8, 2($s0)
.L800C7774:
/* 0C8374 800C7774 26730001 */ addiu $s3, $s3, 1
/* 0C8378 800C7778 26520004 */ addiu $s2, $s2, 4
/* 0C837C 800C777C 0278082A */ slt $at, $s3, $t8
/* 0C8380 800C7780 5420FFDA */ bnezl $at, .L800C76EC
/* 0C8384 800C7784 8E580004 */ lw $t8, 4($s2)
.L800C7788:
/* 0C8388 800C7788 8FBF002C */ lw $ra, 0x2c($sp)
/* 0C838C 800C778C 8FB00018 */ lw $s0, 0x18($sp)
/* 0C8390 800C7790 8FB1001C */ lw $s1, 0x1c($sp)
/* 0C8394 800C7794 8FB20020 */ lw $s2, 0x20($sp)
/* 0C8398 800C7798 8FB30024 */ lw $s3, 0x24($sp)
/* 0C839C 800C779C 8FB40028 */ lw $s4, 0x28($sp)
/* 0C83A0 800C77A0 03E00008 */ jr $ra
/* 0C83A4 800C77A4 27BD0030 */ addiu $sp, $sp, 0x30
@@ -1,23 +0,0 @@
glabel alSeqFileNew
/* 0C83A8 800C77A8 848E0002 */ lh $t6, 2($a0)
/* 0C83AC 800C77AC 00001025 */ move $v0, $zero
/* 0C83B0 800C77B0 00801825 */ move $v1, $a0
/* 0C83B4 800C77B4 19C0000A */ blez $t6, .L800C77E0
/* 0C83B8 800C77B8 00000000 */ nop
/* 0C83BC 800C77BC 8C6F0004 */ lw $t7, 4($v1)
.L800C77C0:
/* 0C83C0 800C77C0 24420001 */ addiu $v0, $v0, 1
/* 0C83C4 800C77C4 24630008 */ addiu $v1, $v1, 8
/* 0C83C8 800C77C8 01E5C021 */ addu $t8, $t7, $a1
/* 0C83CC 800C77CC AC78FFFC */ sw $t8, -4($v1)
/* 0C83D0 800C77D0 84990002 */ lh $t9, 2($a0)
/* 0C83D4 800C77D4 0059082A */ slt $at, $v0, $t9
/* 0C83D8 800C77D8 5420FFF9 */ bnezl $at, .L800C77C0
/* 0C83DC 800C77DC 8C6F0004 */ lw $t7, 4($v1)
.L800C77E0:
/* 0C83E0 800C77E0 03E00008 */ jr $ra
/* 0C83E4 800C77E4 00000000 */ nop
/* 0C83E8 800C77E8 00000000 */ nop
/* 0C83EC 800C77EC 00000000 */ nop
@@ -1,43 +0,0 @@
glabel alSynAllocFX
/* 066460 80065860 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 066464 80065864 AFA50024 */ sw $a1, 0x24($sp)
/* 066468 80065868 AFA60028 */ sw $a2, 0x28($sp)
/* 06646C 8006586C 87A60026 */ lh $a2, 0x26($sp)
/* 066470 80065870 AFB10018 */ sw $s1, 0x18($sp)
/* 066474 80065874 00068880 */ sll $s1, $a2, 2
/* 066478 80065878 02268821 */ addu $s1, $s1, $a2
/* 06647C 8006587C AFBF001C */ sw $ra, 0x1c($sp)
/* 066480 80065880 AFB00014 */ sw $s0, 0x14($sp)
/* 066484 80065884 00118880 */ sll $s1, $s1, 2
/* 066488 80065888 8C8E0034 */ lw $t6, 0x34($a0)
/* 06648C 8006588C 02268823 */ subu $s1, $s1, $a2
/* 066490 80065890 00808025 */ move $s0, $a0
/* 066494 80065894 00118880 */ sll $s1, $s1, 2
/* 066498 80065898 8FA50028 */ lw $a1, 0x28($sp)
/* 06649C 8006589C 01D12021 */ addu $a0, $t6, $s1
/* 0664A0 800658A0 0C019282 */ jal alFxNew
/* 0664A4 800658A4 24840020 */ addiu $a0, $a0, 0x20
/* 0664A8 800658A8 8E0F0034 */ lw $t7, 0x34($s0)
/* 0664AC 800658AC 24050001 */ li $a1, 1
/* 0664B0 800658B0 01F13021 */ addu $a2, $t7, $s1
/* 0664B4 800658B4 0C018FE5 */ jal alFxParam
/* 0664B8 800658B8 24C40020 */ addiu $a0, $a2, 0x20
/* 0664BC 800658BC 8E180034 */ lw $t8, 0x34($s0)
/* 0664C0 800658C0 8E040030 */ lw $a0, 0x30($s0)
/* 0664C4 800658C4 03113021 */ addu $a2, $t8, $s1
/* 0664C8 800658C8 24C60020 */ addiu $a2, $a2, 0x20
/* 0664CC 800658CC 0C0330E4 */ jal alMainBusParam
/* 0664D0 800658D0 24050002 */ li $a1, 2
/* 0664D4 800658D4 8E190034 */ lw $t9, 0x34($s0)
/* 0664D8 800658D8 8FBF001C */ lw $ra, 0x1c($sp)
/* 0664DC 800658DC 03311021 */ addu $v0, $t9, $s1
/* 0664E0 800658E0 8FB10018 */ lw $s1, 0x18($sp)
/* 0664E4 800658E4 8FB00014 */ lw $s0, 0x14($sp)
/* 0664E8 800658E8 27BD0020 */ addiu $sp, $sp, 0x20
/* 0664EC 800658EC 03E00008 */ jr $ra
/* 0664F0 800658F0 24420020 */ addiu $v0, $v0, 0x20
/* 0664F4 800658F4 00000000 */ nop
/* 0664F8 800658F8 00000000 */ nop
/* 0664FC 800658FC 00000000 */ nop
@@ -1,409 +0,0 @@
.late_rodata
glabel jpt_800E6C30
.word L8006247C, L80062978, L800626F8, L80062978, L80062978, L800624AC, L800624FC, L8006270C, L80062978, L8006248C, L80062720, L80062978, L80062924, L80062944, L80062968, L80062788, L800627AC, L80062880, L80062978, L80062978, L80062978, L800626F8, L80062564, L80062668
.text
glabel __CSPVoiceHandler
/* 063008 80062408 27BDFF80 */ addiu $sp, $sp, -0x80
/* 06300C 8006240C AFBE0038 */ sw $fp, 0x38($sp)
/* 063010 80062410 AFB70034 */ sw $s7, 0x34($sp)
/* 063014 80062414 AFB60030 */ sw $s6, 0x30($sp)
/* 063018 80062418 AFB5002C */ sw $s5, 0x2c($sp)
/* 06301C 8006241C AFB20020 */ sw $s2, 0x20($sp)
/* 063020 80062420 248E0038 */ addiu $t6, $a0, 0x38
/* 063024 80062424 00809025 */ move $s2, $a0
/* 063028 80062428 AFBF003C */ sw $ra, 0x3c($sp)
/* 06302C 8006242C AFB40028 */ sw $s4, 0x28($sp)
/* 063030 80062430 AFB30024 */ sw $s3, 0x24($sp)
/* 063034 80062434 AFB1001C */ sw $s1, 0x1c($sp)
/* 063038 80062438 AFB00018 */ sw $s0, 0x18($sp)
/* 06303C 8006243C AFAE0048 */ sw $t6, 0x48($sp)
/* 063040 80062440 24150014 */ li $s5, 20
/* 063044 80062444 2416007F */ li $s6, 127
/* 063048 80062448 24970048 */ addiu $s7, $a0, 0x48
/* 06304C 8006244C 27BE006C */ addiu $fp, $sp, 0x6c
.L80062450:
/* 063050 80062450 964F0038 */ lhu $t7, 0x38($s2)
/* 063054 80062454 00000000 */ nop
/* 063058 80062458 2DE10018 */ sltiu $at, $t7, 0x18
/* 06305C 8006245C 10200146 */ beqz $at, .L80062978
/* 063060 80062460 000F7880 */ sll $t7, $t7, 2
/* 063064 80062464 3C01800E */ lui $at, %hi(jpt_800E6C30) # $at, 0x800e
/* 063068 80062468 002F0821 */ addu $at, $at, $t7
/* 06306C 8006246C 8C2F6C30 */ lw $t7, %lo(jpt_800E6C30)($at)
/* 063070 80062470 00000000 */ nop
/* 063074 80062474 01E00008 */ jr $t7
/* 063078 80062478 00000000 */ nop
glabel L8006247C
/* 06307C 8006247C 0C018A8F */ jal __CSPHandleNextSeqEvent
/* 063080 80062480 02402025 */ move $a0, $s2
/* 063084 80062484 1000013D */ b .L8006297C
/* 063088 80062488 8FA50048 */ lw $a1, 0x48($sp)
glabel L8006248C
/* 06308C 8006248C 24180009 */ li $t8, 9
/* 063090 80062490 A7B8006C */ sh $t8, 0x6c($sp)
/* 063094 80062494 8E46005C */ lw $a2, 0x5c($s2)
/* 063098 80062498 02E02025 */ move $a0, $s7
/* 06309C 8006249C 0C03246B */ jal alEvtqPostEvent
/* 0630A0 800624A0 03C02825 */ move $a1, $fp
/* 0630A4 800624A4 10000135 */ b .L8006297C
/* 0630A8 800624A8 8FA50048 */ lw $a1, 0x48($sp)
glabel L800624AC
/* 0630AC 800624AC 8E50003C */ lw $s0, 0x3c($s2)
/* 0630B0 800624B0 8E440014 */ lw $a0, 0x14($s2)
/* 0630B4 800624B4 0C03262C */ jal alSynStopVoice
/* 0630B8 800624B8 02002825 */ move $a1, $s0
/* 0630BC 800624BC 8E440014 */ lw $a0, 0x14($s2)
/* 0630C0 800624C0 0C03264C */ jal alSynFreeVoice
/* 0630C4 800624C4 02002825 */ move $a1, $s0
/* 0630C8 800624C8 8E110010 */ lw $s1, 0x10($s0)
/* 0630CC 800624CC 02402025 */ move $a0, $s2
/* 0630D0 800624D0 92390037 */ lbu $t9, 0x37($s1)
/* 0630D4 800624D4 00000000 */ nop
/* 0630D8 800624D8 13200003 */ beqz $t9, .L800624E8
/* 0630DC 800624DC 00000000 */ nop
/* 0630E0 800624E0 0C002BBF */ jal __seqpStopOsc
/* 0630E4 800624E4 02202825 */ move $a1, $s1
.L800624E8:
/* 0630E8 800624E8 02402025 */ move $a0, $s2
/* 0630EC 800624EC 0C0029F1 */ jal __unmapVoice
/* 0630F0 800624F0 02002825 */ move $a1, $s0
/* 0630F4 800624F4 10000121 */ b .L8006297C
/* 0630F8 800624F8 8FA50048 */ lw $a1, 0x48($sp)
glabel L800624FC
/* 0630FC 800624FC 8E50003C */ lw $s0, 0x3c($s2)
/* 063100 80062500 24090001 */ li $t1, 1
/* 063104 80062504 8E110010 */ lw $s1, 0x10($s0)
/* 063108 80062508 00000000 */ nop
/* 06310C 8006250C 92280034 */ lbu $t0, 0x34($s1)
/* 063110 80062510 02202025 */ move $a0, $s1
/* 063114 80062514 15000002 */ bnez $t0, .L80062520
/* 063118 80062518 00000000 */ nop
/* 06311C 8006251C A2290034 */ sb $t1, 0x34($s1)
.L80062520:
/* 063120 80062520 8E530040 */ lw $s3, 0x40($s2)
/* 063124 80062524 8E4A001C */ lw $t2, 0x1c($s2)
/* 063128 80062528 02402825 */ move $a1, $s2
/* 06312C 8006252C 01535821 */ addu $t3, $t2, $s3
/* 063130 80062530 AE2B0024 */ sw $t3, 0x24($s1)
/* 063134 80062534 924C0044 */ lbu $t4, 0x44($s2)
/* 063138 80062538 0C002A7E */ jal __vsVol
/* 06313C 8006253C A22C0030 */ sb $t4, 0x30($s1)
/* 063140 80062540 00023400 */ sll $a2, $v0, 0x10
/* 063144 80062544 00066C03 */ sra $t5, $a2, 0x10
/* 063148 80062548 8E440014 */ lw $a0, 0x14($s2)
/* 06314C 8006254C 01A03025 */ move $a2, $t5
/* 063150 80062550 02002825 */ move $a1, $s0
/* 063154 80062554 0C032594 */ jal alSynSetVol
/* 063158 80062558 02603825 */ move $a3, $s3
/* 06315C 8006255C 10000107 */ b .L8006297C
/* 063160 80062560 8FA50048 */ lw $a1, 0x48($sp)
glabel L80062564
/* 063164 80062564 8E540040 */ lw $s4, 0x40($s2)
/* 063168 80062568 8E590078 */ lw $t9, 0x78($s2)
/* 06316C 8006256C 8E51003C */ lw $s1, 0x3c($s2)
/* 063170 80062570 27A50058 */ addiu $a1, $sp, 0x58
/* 063174 80062574 0320F809 */ jalr $t9
/* 063178 80062578 02802025 */ move $a0, $s4
/* 06317C 8006257C 444EF800 */ cfc1 $t6, $31
/* 063180 80062580 240F0001 */ li $t7, 1
/* 063184 80062584 44CFF800 */ ctc1 $t7, $31
/* 063188 80062588 C7A40058 */ lwc1 $f4, 0x58($sp)
/* 06318C 8006258C 00409825 */ move $s3, $v0
/* 063190 80062590 460021A4 */ cvt.w.s $f6, $f4
/* 063194 80062594 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 063198 80062598 444FF800 */ cfc1 $t7, $31
/* 06319C 8006259C 02202025 */ move $a0, $s1
/* 0631A0 800625A0 31EF0078 */ andi $t7, $t7, 0x78
/* 0631A4 800625A4 11E00012 */ beqz $t7, .L800625F0
/* 0631A8 800625A8 02402825 */ move $a1, $s2
/* 0631AC 800625AC 44813000 */ mtc1 $at, $f6
/* 0631B0 800625B0 240F0001 */ li $t7, 1
/* 0631B4 800625B4 46062181 */ sub.s $f6, $f4, $f6
/* 0631B8 800625B8 3C018000 */ lui $at, 0x8000
/* 0631BC 800625BC 44CFF800 */ ctc1 $t7, $31
/* 0631C0 800625C0 00000000 */ nop
/* 0631C4 800625C4 460031A4 */ cvt.w.s $f6, $f6
/* 0631C8 800625C8 444FF800 */ cfc1 $t7, $31
/* 0631CC 800625CC 00000000 */ nop
/* 0631D0 800625D0 31EF0078 */ andi $t7, $t7, 0x78
/* 0631D4 800625D4 15E00004 */ bnez $t7, .L800625E8
/* 0631D8 800625D8 00000000 */ nop
/* 0631DC 800625DC 440F3000 */ mfc1 $t7, $f6
/* 0631E0 800625E0 10000007 */ b .L80062600
/* 0631E4 800625E4 01E17825 */ or $t7, $t7, $at
.L800625E8:
/* 0631E8 800625E8 10000005 */ b .L80062600
/* 0631EC 800625EC 240FFFFF */ li $t7, -1
.L800625F0:
/* 0631F0 800625F0 440F3000 */ mfc1 $t7, $f6
/* 0631F4 800625F4 00000000 */ nop
/* 0631F8 800625F8 05E0FFFB */ bltz $t7, .L800625E8
/* 0631FC 800625FC 00000000 */ nop
.L80062600:
/* 063200 80062600 44CEF800 */ ctc1 $t6, $31
/* 063204 80062604 0C002A7E */ jal __vsVol
/* 063208 80062608 A22F0036 */ sb $t7, 0x36($s1)
/* 06320C 8006260C 00028400 */ sll $s0, $v0, 0x10
/* 063210 80062610 0010C403 */ sra $t8, $s0, 0x10
/* 063214 80062614 8E45001C */ lw $a1, 0x1c($s2)
/* 063218 80062618 03008025 */ move $s0, $t8
/* 06321C 8006261C 0C002AA2 */ jal __vsDelta
/* 063220 80062620 02202025 */ move $a0, $s1
/* 063224 80062624 00103400 */ sll $a2, $s0, 0x10
/* 063228 80062628 00064403 */ sra $t0, $a2, 0x10
/* 06322C 8006262C 8E440014 */ lw $a0, 0x14($s2)
/* 063230 80062630 01003025 */ move $a2, $t0
/* 063234 80062634 26250004 */ addiu $a1, $s1, 4
/* 063238 80062638 0C032594 */ jal alSynSetVol
/* 06323C 8006263C 00403825 */ move $a3, $v0
/* 063240 80062640 24090016 */ li $t1, 22
/* 063244 80062644 A7A9006C */ sh $t1, 0x6c($sp)
/* 063248 80062648 AFB10070 */ sw $s1, 0x70($sp)
/* 06324C 8006264C AFB40074 */ sw $s4, 0x74($sp)
/* 063250 80062650 02E02025 */ move $a0, $s7
/* 063254 80062654 03C02825 */ move $a1, $fp
/* 063258 80062658 0C03246B */ jal alEvtqPostEvent
/* 06325C 8006265C 02603025 */ move $a2, $s3
/* 063260 80062660 100000C6 */ b .L8006297C
/* 063264 80062664 8FA50048 */ lw $a1, 0x48($sp)
glabel L80062668
/* 063268 80062668 8E540040 */ lw $s4, 0x40($s2)
/* 06326C 8006266C 8E590078 */ lw $t9, 0x78($s2)
/* 063270 80062670 8E51003C */ lw $s1, 0x3c($s2)
/* 063274 80062674 92500044 */ lbu $s0, 0x44($s2)
/* 063278 80062678 27A50058 */ addiu $a1, $sp, 0x58
/* 06327C 8006267C 0320F809 */ jalr $t9
/* 063280 80062680 02802025 */ move $a0, $s4
/* 063284 80062684 02150019 */ multu $s0, $s5
/* 063288 80062688 C7A80058 */ lwc1 $f8, 0x58($sp)
/* 06328C 8006268C C6300028 */ lwc1 $f16, 0x28($s1)
/* 063290 80062690 E628002C */ swc1 $f8, 0x2c($s1)
/* 063294 80062694 C632002C */ lwc1 $f18, 0x2c($s1)
/* 063298 80062698 8E4A0060 */ lw $t2, 0x60($s2)
/* 06329C 8006269C 46128102 */ mul.s $f4, $f16, $f18
/* 0632A0 800626A0 8E440014 */ lw $a0, 0x14($s2)
/* 0632A4 800626A4 00409825 */ move $s3, $v0
/* 0632A8 800626A8 26250004 */ addiu $a1, $s1, 4
/* 0632AC 800626AC 00005812 */ mflo $t3
/* 0632B0 800626B0 014B6021 */ addu $t4, $t2, $t3
/* 0632B4 800626B4 C58A000C */ lwc1 $f10, 0xc($t4)
/* 0632B8 800626B8 00000000 */ nop
/* 0632BC 800626BC 46045182 */ mul.s $f6, $f10, $f4
/* 0632C0 800626C0 44063000 */ mfc1 $a2, $f6
/* 0632C4 800626C4 0C0325E0 */ jal alSynSetPitch
/* 0632C8 800626C8 00000000 */ nop
/* 0632CC 800626CC 240D0017 */ li $t5, 23
/* 0632D0 800626D0 A7AD006C */ sh $t5, 0x6c($sp)
/* 0632D4 800626D4 AFB10070 */ sw $s1, 0x70($sp)
/* 0632D8 800626D8 AFB40074 */ sw $s4, 0x74($sp)
/* 0632DC 800626DC A3B00078 */ sb $s0, 0x78($sp)
/* 0632E0 800626E0 02E02025 */ move $a0, $s7
/* 0632E4 800626E4 03C02825 */ move $a1, $fp
/* 0632E8 800626E8 0C03246B */ jal alEvtqPostEvent
/* 0632EC 800626EC 02603025 */ move $a2, $s3
/* 0632F0 800626F0 100000A2 */ b .L8006297C
/* 0632F4 800626F4 8FA50048 */ lw $a1, 0x48($sp)
glabel L800626F8
/* 0632F8 800626F8 8FA50048 */ lw $a1, 0x48($sp)
/* 0632FC 800626FC 0C018AC0 */ jal __CSPHandleMIDIMsg
/* 063300 80062700 02402025 */ move $a0, $s2
/* 063304 80062704 1000009D */ b .L8006297C
/* 063308 80062708 8FA50048 */ lw $a1, 0x48($sp)
glabel L8006270C
/* 06330C 8006270C 8FA50048 */ lw $a1, 0x48($sp)
/* 063310 80062710 0C018DFB */ jal __CSPHandleMetaMsg
/* 063314 80062714 02402025 */ move $a0, $s2
/* 063318 80062718 10000098 */ b .L8006297C
/* 06331C 8006271C 8FA50048 */ lw $a1, 0x48($sp)
glabel L80062720
/* 063320 80062720 864E003C */ lh $t6, 0x3c($s2)
/* 063324 80062724 8E510064 */ lw $s1, 0x64($s2)
/* 063328 80062728 A64E0032 */ sh $t6, 0x32($s2)
/* 06332C 8006272C 12200092 */ beqz $s1, .L80062978
/* 063330 80062730 02202025 */ move $a0, $s1
.L80062734:
/* 063334 80062734 0C002A7E */ jal __vsVol
/* 063338 80062738 02402825 */ move $a1, $s2
/* 06333C 8006273C 00028400 */ sll $s0, $v0, 0x10
/* 063340 80062740 00107C03 */ sra $t7, $s0, 0x10
/* 063344 80062744 8E45001C */ lw $a1, 0x1c($s2)
/* 063348 80062748 01E08025 */ move $s0, $t7
/* 06334C 8006274C 0C002AA2 */ jal __vsDelta
/* 063350 80062750 02202025 */ move $a0, $s1
/* 063354 80062754 00103400 */ sll $a2, $s0, 0x10
/* 063358 80062758 0006C403 */ sra $t8, $a2, 0x10
/* 06335C 8006275C 8E440014 */ lw $a0, 0x14($s2)
/* 063360 80062760 03003025 */ move $a2, $t8
/* 063364 80062764 26250004 */ addiu $a1, $s1, 4
/* 063368 80062768 0C032594 */ jal alSynSetVol
/* 06336C 8006276C 00403825 */ move $a3, $v0
/* 063370 80062770 8E310000 */ lw $s1, ($s1)
/* 063374 80062774 00000000 */ nop
/* 063378 80062778 1620FFEE */ bnez $s1, .L80062734
/* 06337C 8006277C 02202025 */ move $a0, $s1
/* 063380 80062780 1000007E */ b .L8006297C
/* 063384 80062784 8FA50048 */ lw $a1, 0x48($sp)
glabel L80062788
/* 063388 80062788 8E48002C */ lw $t0, 0x2c($s2)
/* 06338C 8006278C 24010001 */ li $at, 1
/* 063390 80062790 11010079 */ beq $t0, $at, .L80062978
/* 063394 80062794 24090001 */ li $t1, 1
/* 063398 80062798 AE49002C */ sw $t1, 0x2c($s2)
/* 06339C 8006279C 0C018A73 */ jal __CSPPostNextSeqEvent
/* 0633A0 800627A0 02402025 */ move $a0, $s2
/* 0633A4 800627A4 10000075 */ b .L8006297C
/* 0633A8 800627A8 8FA50048 */ lw $a1, 0x48($sp)
glabel L800627AC
/* 0633AC 800627AC 8E59002C */ lw $t9, 0x2c($s2)
/* 0633B0 800627B0 24010002 */ li $at, 2
/* 0633B4 800627B4 17210070 */ bne $t9, $at, .L80062978
/* 0633B8 800627B8 340AFFFF */ li $t2, 65535
/* 0633BC 800627BC 924B0034 */ lbu $t3, 0x34($s2)
/* 0633C0 800627C0 A64A0030 */ sh $t2, 0x30($s2)
/* 0633C4 800627C4 19600014 */ blez $t3, .L80062818
/* 0633C8 800627C8 00008025 */ move $s0, $zero
.L800627CC:
/* 0633CC 800627CC 02150019 */ multu $s0, $s5
/* 0633D0 800627D0 8E4C0060 */ lw $t4, 0x60($s2)
/* 0633D4 800627D4 26100001 */ addiu $s0, $s0, 1
/* 0633D8 800627D8 321800FF */ andi $t8, $s0, 0xff
/* 0633DC 800627DC 03008025 */ move $s0, $t8
/* 0633E0 800627E0 00001012 */ mflo $v0
/* 0633E4 800627E4 01826821 */ addu $t5, $t4, $v0
/* 0633E8 800627E8 A1B60010 */ sb $s6, 0x10($t5)
/* 0633EC 800627EC 8E4E0060 */ lw $t6, 0x60($s2)
/* 0633F0 800627F0 00000000 */ nop
/* 0633F4 800627F4 01C21821 */ addu $v1, $t6, $v0
/* 0633F8 800627F8 906F0011 */ lbu $t7, 0x11($v1)
/* 0633FC 800627FC 00000000 */ nop
/* 063400 80062800 A06F0009 */ sb $t7, 9($v1)
/* 063404 80062804 92480034 */ lbu $t0, 0x34($s2)
/* 063408 80062808 00000000 */ nop
/* 06340C 8006280C 0308082A */ slt $at, $t8, $t0
/* 063410 80062810 1420FFEE */ bnez $at, .L800627CC
/* 063414 80062814 00000000 */ nop
.L80062818:
/* 063418 80062818 8E510064 */ lw $s1, 0x64($s2)
/* 06341C 8006281C 00000000 */ nop
/* 063420 80062820 12200015 */ beqz $s1, .L80062878
/* 063424 80062824 00000000 */ nop
.L80062828:
/* 063428 80062828 8E440014 */ lw $a0, 0x14($s2)
/* 06342C 8006282C 26300004 */ addiu $s0, $s1, 4
/* 063430 80062830 0C03262C */ jal alSynStopVoice
/* 063434 80062834 02002825 */ move $a1, $s0
/* 063438 80062838 8E440014 */ lw $a0, 0x14($s2)
/* 06343C 8006283C 0C03264C */ jal alSynFreeVoice
/* 063440 80062840 02002825 */ move $a1, $s0
/* 063444 80062844 92290037 */ lbu $t1, 0x37($s1)
/* 063448 80062848 02402025 */ move $a0, $s2
/* 06344C 8006284C 11200003 */ beqz $t1, .L8006285C
/* 063450 80062850 00000000 */ nop
/* 063454 80062854 0C002BBF */ jal __seqpStopOsc
/* 063458 80062858 02202825 */ move $a1, $s1
.L8006285C:
/* 06345C 8006285C 02402025 */ move $a0, $s2
/* 063460 80062860 0C0029F1 */ jal __unmapVoice
/* 063464 80062864 02002825 */ move $a1, $s0
/* 063468 80062868 8E510064 */ lw $s1, 0x64($s2)
/* 06346C 8006286C 00000000 */ nop
/* 063470 80062870 1620FFED */ bnez $s1, .L80062828
/* 063474 80062874 00000000 */ nop
.L80062878:
/* 063478 80062878 1000003F */ b .L80062978
/* 06347C 8006287C AE40002C */ sw $zero, 0x2c($s2)
glabel L80062880
/* 063480 80062880 8E59002C */ lw $t9, 0x2c($s2)
/* 063484 80062884 24010001 */ li $at, 1
/* 063488 80062888 1721003B */ bne $t9, $at, .L80062978
/* 06348C 8006288C 02E02025 */ move $a0, $s7
/* 063490 80062890 0C032424 */ jal alEvtqFlushType
/* 063494 80062894 00002825 */ move $a1, $zero
/* 063498 80062898 02E02025 */ move $a0, $s7
/* 06349C 8006289C 0C032424 */ jal alEvtqFlushType
/* 0634A0 800628A0 24050015 */ li $a1, 21
/* 0634A4 800628A4 02E02025 */ move $a0, $s7
/* 0634A8 800628A8 0C032424 */ jal alEvtqFlushType
/* 0634AC 800628AC 24050002 */ li $a1, 2
/* 0634B0 800628B0 8E510064 */ lw $s1, 0x64($s2)
/* 0634B4 800628B4 00000000 */ nop
/* 0634B8 800628B8 12200010 */ beqz $s1, .L800628FC
/* 0634BC 800628BC 240A0002 */ li $t2, 2
.L800628C0:
/* 0634C0 800628C0 26300004 */ addiu $s0, $s1, 4
/* 0634C4 800628C4 02002825 */ move $a1, $s0
/* 0634C8 800628C8 02402025 */ move $a0, $s2
/* 0634CC 800628CC 0C002B0D */ jal __voiceNeedsNoteKill
/* 0634D0 800628D0 3406C350 */ li $a2, 50000
/* 0634D4 800628D4 10400004 */ beqz $v0, .L800628E8
/* 0634D8 800628D8 02402025 */ move $a0, $s2
/* 0634DC 800628DC 02002825 */ move $a1, $s0
/* 0634E0 800628E0 0C002AC0 */ jal __seqpReleaseVoice
/* 0634E4 800628E4 3406C350 */ li $a2, 50000
.L800628E8:
/* 0634E8 800628E8 8E310000 */ lw $s1, ($s1)
/* 0634EC 800628EC 00000000 */ nop
/* 0634F0 800628F0 1620FFF3 */ bnez $s1, .L800628C0
/* 0634F4 800628F4 00000000 */ nop
/* 0634F8 800628F8 240A0002 */ li $t2, 2
.L800628FC:
/* 0634FC 800628FC AE4A002C */ sw $t2, 0x2c($s2)
/* 063500 80062900 240B0010 */ li $t3, 16
/* 063504 80062904 3C067FFF */ lui $a2, (0x7FFFFFFF >> 16) # lui $a2, 0x7fff
/* 063508 80062908 A7AB006C */ sh $t3, 0x6c($sp)
/* 06350C 8006290C 34C6FFFF */ ori $a2, (0x7FFFFFFF & 0xFFFF) # ori $a2, $a2, 0xffff
/* 063510 80062910 02E02025 */ move $a0, $s7
/* 063514 80062914 0C03246B */ jal alEvtqPostEvent
/* 063518 80062918 03C02825 */ move $a1, $fp
/* 06351C 8006291C 10000017 */ b .L8006297C
/* 063520 80062920 8FA50048 */ lw $a1, 0x48($sp)
glabel L80062924
/* 063524 80062924 9250003C */ lbu $s0, 0x3c($s2)
/* 063528 80062928 8E4D0060 */ lw $t5, 0x60($s2)
/* 06352C 8006292C 02150019 */ multu $s0, $s5
/* 063530 80062930 924C003D */ lbu $t4, 0x3d($s2)
/* 063534 80062934 00007012 */ mflo $t6
/* 063538 80062938 01AE7821 */ addu $t7, $t5, $t6
/* 06353C 8006293C 1000000E */ b .L80062978
/* 063540 80062940 A1EC0008 */ sb $t4, 8($t7)
glabel L80062944
/* 063544 80062944 8E58003C */ lw $t8, 0x3c($s2)
/* 063548 80062948 8E450020 */ lw $a1, 0x20($s2)
/* 06354C 8006294C AE580018 */ sw $t8, 0x18($s2)
/* 063550 80062950 10A00009 */ beqz $a1, .L80062978
/* 063554 80062954 00000000 */ nop
/* 063558 80062958 0C002B38 */ jal __initFromBank
/* 06355C 8006295C 02402025 */ move $a0, $s2
/* 063560 80062960 10000006 */ b .L8006297C
/* 063564 80062964 8FA50048 */ lw $a1, 0x48($sp)
glabel L80062968
/* 063568 80062968 8E45003C */ lw $a1, 0x3c($s2)
/* 06356C 8006296C 02402025 */ move $a0, $s2
/* 063570 80062970 0C002B38 */ jal __initFromBank
/* 063574 80062974 AE450020 */ sw $a1, 0x20($s2)
.L80062978:
glabel L80062978
/* 063578 80062978 8FA50048 */ lw $a1, 0x48($sp)
.L8006297C:
/* 06357C 8006297C 0C0324B4 */ jal alEvtqNextEvent
/* 063580 80062980 02E02025 */ move $a0, $s7
/* 063584 80062984 1040FEB2 */ beqz $v0, .L80062450
/* 063588 80062988 AE420028 */ sw $v0, 0x28($s2)
/* 06358C 8006298C 8E48001C */ lw $t0, 0x1c($s2)
/* 063590 80062990 00000000 */ nop
/* 063594 80062994 01024821 */ addu $t1, $t0, $v0
/* 063598 80062998 AE49001C */ sw $t1, 0x1c($s2)
/* 06359C 8006299C 8FBF003C */ lw $ra, 0x3c($sp)
/* 0635A0 800629A0 8FBE0038 */ lw $fp, 0x38($sp)
/* 0635A4 800629A4 8FB70034 */ lw $s7, 0x34($sp)
/* 0635A8 800629A8 8FB60030 */ lw $s6, 0x30($sp)
/* 0635AC 800629AC 8FB5002C */ lw $s5, 0x2c($sp)
/* 0635B0 800629B0 8FB40028 */ lw $s4, 0x28($sp)
/* 0635B4 800629B4 8FB30024 */ lw $s3, 0x24($sp)
/* 0635B8 800629B8 8FB20020 */ lw $s2, 0x20($sp)
/* 0635BC 800629BC 8FB1001C */ lw $s1, 0x1c($sp)
/* 0635C0 800629C0 8FB00018 */ lw $s0, 0x18($sp)
/* 0635C4 800629C4 03E00008 */ jr $ra
/* 0635C8 800629C8 27BD0080 */ addiu $sp, $sp, 0x80
-98
View File
@@ -1,98 +0,0 @@
glabel alCSPNew
/* 062E90 80062290 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 062E94 80062294 AFBF0024 */ sw $ra, 0x24($sp)
/* 062E98 80062298 AFB10020 */ sw $s1, 0x20($sp)
/* 062E9C 8006229C AFB0001C */ sw $s0, 0x1c($sp)
/* 062EA0 800622A0 8CA6000C */ lw $a2, 0xc($a1)
/* 062EA4 800622A4 AC800020 */ sw $zero, 0x20($a0)
/* 062EA8 800622A8 AC800018 */ sw $zero, 0x18($a0)
/* 062EAC 800622AC 3C0E800E */ lui $t6, %hi(alGlobals) # $t6, 0x800e
/* 062EB0 800622B0 8DCE3780 */ lw $t6, %lo(alGlobals)($t6)
/* 062EB4 800622B4 340FFFFF */ li $t7, 65535
/* 062EB8 800622B8 241801E8 */ li $t8, 488
/* 062EBC 800622BC 24197FFF */ li $t9, 32767
/* 062EC0 800622C0 24083E80 */ li $t0, 16000
/* 062EC4 800622C4 A48F0030 */ sh $t7, 0x30($a0)
/* 062EC8 800622C8 AC980024 */ sw $t8, 0x24($a0)
/* 062ECC 800622CC AC800028 */ sw $zero, 0x28($a0)
/* 062ED0 800622D0 AC80002C */ sw $zero, 0x2c($a0)
/* 062ED4 800622D4 A4990032 */ sh $t9, 0x32($a0)
/* 062ED8 800622D8 AC88005C */ sw $t0, 0x5c($a0)
/* 062EDC 800622DC AC80001C */ sw $zero, 0x1c($a0)
/* 062EE0 800622E0 AC8E0014 */ sw $t6, 0x14($a0)
/* 062EE4 800622E4 8CA90014 */ lw $t1, 0x14($a1)
/* 062EE8 800622E8 240D0009 */ li $t5, 9
/* 062EEC 800622EC AC890074 */ sw $t1, 0x74($a0)
/* 062EF0 800622F0 8CAA0018 */ lw $t2, 0x18($a1)
/* 062EF4 800622F4 00A08825 */ move $s1, $a1
/* 062EF8 800622F8 AC8A0078 */ sw $t2, 0x78($a0)
/* 062EFC 800622FC 8CAB001C */ lw $t3, 0x1c($a1)
/* 062F00 80062300 A0800071 */ sb $zero, 0x71($a0)
/* 062F04 80062304 AC8B007C */ sw $t3, 0x7c($a0)
/* 062F08 80062308 90AC0010 */ lbu $t4, 0x10($a1)
/* 062F0C 8006230C A48D0038 */ sh $t5, 0x38($a0)
/* 062F10 80062310 A08C0070 */ sb $t4, 0x70($a0)
/* 062F14 80062314 90AE0008 */ lbu $t6, 8($a1)
/* 062F18 80062318 00808025 */ move $s0, $a0
/* 062F1C 8006231C A08E0034 */ sb $t6, 0x34($a0)
/* 062F20 80062320 92270008 */ lbu $a3, 8($s1)
/* 062F24 80062324 240F0014 */ li $t7, 20
/* 062F28 80062328 AFAF0010 */ sw $t7, 0x10($sp)
/* 062F2C 8006232C 00002025 */ move $a0, $zero
/* 062F30 80062330 00002825 */ move $a1, $zero
/* 062F34 80062334 0C031DFC */ jal alHeapDBAlloc
/* 062F38 80062338 AFA6002C */ sw $a2, 0x2c($sp)
/* 062F3C 8006233C AE020060 */ sw $v0, 0x60($s0)
/* 062F40 80062340 0C002BA4 */ jal __initChanState
/* 062F44 80062344 02002025 */ move $a0, $s0
/* 062F48 80062348 8FA6002C */ lw $a2, 0x2c($sp)
/* 062F4C 8006234C 8E270000 */ lw $a3, ($s1)
/* 062F50 80062350 24180038 */ li $t8, 56
/* 062F54 80062354 AFB80010 */ sw $t8, 0x10($sp)
/* 062F58 80062358 00002025 */ move $a0, $zero
/* 062F5C 8006235C 0C031DFC */ jal alHeapDBAlloc
/* 062F60 80062360 00002825 */ move $a1, $zero
/* 062F64 80062364 AE00006C */ sw $zero, 0x6c($s0)
/* 062F68 80062368 8E390000 */ lw $t9, ($s1)
/* 062F6C 8006236C 00002025 */ move $a0, $zero
/* 062F70 80062370 1B20000B */ blez $t9, .L800623A0
/* 062F74 80062374 00002825 */ move $a1, $zero
/* 062F78 80062378 00401825 */ move $v1, $v0
.L8006237C:
/* 062F7C 8006237C 8E08006C */ lw $t0, 0x6c($s0)
/* 062F80 80062380 24840001 */ addiu $a0, $a0, 1
/* 062F84 80062384 AC680000 */ sw $t0, ($v1)
/* 062F88 80062388 AE03006C */ sw $v1, 0x6c($s0)
/* 062F8C 8006238C 8E290000 */ lw $t1, ($s1)
/* 062F90 80062390 24630038 */ addiu $v1, $v1, 0x38
/* 062F94 80062394 0089082A */ slt $at, $a0, $t1
/* 062F98 80062398 1420FFF8 */ bnez $at, .L8006237C
/* 062F9C 8006239C 00000000 */ nop
.L800623A0:
/* 062FA0 800623A0 AE000064 */ sw $zero, 0x64($s0)
/* 062FA4 800623A4 AE000068 */ sw $zero, 0x68($s0)
/* 062FA8 800623A8 8E270004 */ lw $a3, 4($s1)
/* 062FAC 800623AC 8FA6002C */ lw $a2, 0x2c($sp)
/* 062FB0 800623B0 240A001C */ li $t2, 28
/* 062FB4 800623B4 AFAA0010 */ sw $t2, 0x10($sp)
/* 062FB8 800623B8 0C031DFC */ jal alHeapDBAlloc
/* 062FBC 800623BC 00002025 */ move $a0, $zero
/* 062FC0 800623C0 8E260004 */ lw $a2, 4($s1)
/* 062FC4 800623C4 26040048 */ addiu $a0, $s0, 0x48
/* 062FC8 800623C8 0C0324D7 */ jal alEvtqNew
/* 062FCC 800623CC 00402825 */ move $a1, $v0
/* 062FD0 800623D0 3C0B8006 */ lui $t3, %hi(__CSPVoiceHandler) # $t3, 0x8006
/* 062FD4 800623D4 256B2408 */ addiu $t3, %lo(__CSPVoiceHandler) # addiu $t3, $t3, 0x2408
/* 062FD8 800623D8 AE000000 */ sw $zero, ($s0)
/* 062FDC 800623DC AE0B0008 */ sw $t3, 8($s0)
/* 062FE0 800623E0 AE100004 */ sw $s0, 4($s0)
/* 062FE4 800623E4 3C04800E */ lui $a0, %hi(alGlobals) # $a0, 0x800e
/* 062FE8 800623E8 8C843780 */ lw $a0, %lo(alGlobals)($a0)
/* 062FEC 800623EC 0C0324F4 */ jal alSynAddPlayer
/* 062FF0 800623F0 02002825 */ move $a1, $s0
/* 062FF4 800623F4 8FBF0024 */ lw $ra, 0x24($sp)
/* 062FF8 800623F8 8FB0001C */ lw $s0, 0x1c($sp)
/* 062FFC 800623FC 8FB10020 */ lw $s1, 0x20($sp)
/* 063000 80062400 03E00008 */ jr $ra
/* 063004 80062404 27BD0040 */ addiu $sp, $sp, 0x40
-47
View File
@@ -1,47 +0,0 @@
glabel _doModFunc
/* 065484 80064884 44853000 */ mtc1 $a1, $f6
/* 065488 80064888 C4840010 */ lwc1 $f4, 0x10($a0)
/* 06548C 8006488C 46803220 */ cvt.s.w $f8, $f6
/* 065490 80064890 C4900014 */ lwc1 $f16, 0x14($a0)
/* 065494 80064894 3C014000 */ li $at, 0x40000000 # 2.000000
/* 065498 80064898 46082282 */ mul.s $f10, $f4, $f8
/* 06549C 8006489C 44802000 */ mtc1 $zero, $f4
/* 0654A0 800648A0 44812800 */ mtc1 $at, $f5
/* 0654A4 800648A4 3C014010 */ li $at, 0x40100000 # 2.250000
/* 0654A8 800648A8 460A8480 */ add.s $f18, $f16, $f10
/* 0654AC 800648AC E4920014 */ swc1 $f18, 0x14($a0)
/* 0654B0 800648B0 C4860014 */ lwc1 $f6, 0x14($a0)
/* 0654B4 800648B4 00000000 */ nop
/* 0654B8 800648B8 46003021 */ cvt.d.s $f0, $f6
/* 0654BC 800648BC 4620203C */ c.lt.d $f4, $f0
/* 0654C0 800648C0 44803000 */ mtc1 $zero, $f6
/* 0654C4 800648C4 45000008 */ bc1f .L800648E8
/* 0654C8 800648C8 00000000 */ nop
/* 0654CC 800648CC 44814800 */ mtc1 $at, $f9
/* 0654D0 800648D0 44804000 */ mtc1 $zero, $f8
/* 0654D4 800648D4 00000000 */ nop
/* 0654D8 800648D8 46280401 */ sub.d $f16, $f0, $f8
/* 0654DC 800648DC 462082A0 */ cvt.s.d $f10, $f16
/* 0654E0 800648E0 10000003 */ b .L800648F0
/* 0654E4 800648E4 E48A0014 */ swc1 $f10, 0x14($a0)
.L800648E8:
/* 0654E8 800648E8 462004A0 */ cvt.s.d $f18, $f0
/* 0654EC 800648EC E4920014 */ swc1 $f18, 0x14($a0)
.L800648F0:
/* 0654F0 800648F0 C4820014 */ lwc1 $f2, 0x14($a0)
/* 0654F4 800648F4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000
/* 0654F8 800648F8 4606103C */ c.lt.s $f2, $f6
/* 0654FC 800648FC 44814800 */ mtc1 $at, $f9
/* 065500 80064900 45000002 */ bc1f .L8006490C
/* 065504 80064904 00000000 */ nop
/* 065508 80064908 46001087 */ neg.s $f2, $f2
.L8006490C:
/* 06550C 8006490C 44804000 */ mtc1 $zero, $f8
/* 065510 80064910 46001121 */ cvt.d.s $f4, $f2
/* 065514 80064914 46282401 */ sub.d $f16, $f4, $f8
/* 065518 80064918 C48A001C */ lwc1 $f10, 0x1c($a0)
/* 06551C 8006491C 462080A0 */ cvt.s.d $f2, $f16
/* 065520 80064920 46025002 */ mul.s $f0, $f10, $f2
/* 065524 80064924 03E00008 */ jr $ra
/* 065528 80064928 00000000 */ nop
@@ -1,163 +0,0 @@
glabel _loadOutputBuffer
/* 064E24 80064224 27BDFF98 */ addiu $sp, $sp, -0x68
/* 064E28 80064228 AFBF002C */ sw $ra, 0x2c($sp)
/* 064E2C 8006422C AFB20028 */ sw $s2, 0x28($sp)
/* 064E30 80064230 AFB10024 */ sw $s1, 0x24($sp)
/* 064E34 80064234 AFB00020 */ sw $s0, 0x20($sp)
/* 064E38 80064238 AFA40068 */ sw $a0, 0x68($sp)
/* 064E3C 8006423C AFA60070 */ sw $a2, 0x70($sp)
/* 064E40 80064240 8CAE0024 */ lw $t6, 0x24($a1)
/* 064E44 80064244 00A08025 */ move $s0, $a1
/* 064E48 80064248 11C00082 */ beqz $t6, .L80064454
/* 064E4C 8006424C 00E09025 */ move $s2, $a3
/* 064E50 80064250 8CAF0004 */ lw $t7, 4($a1)
/* 064E54 80064254 8CB80000 */ lw $t8, ($a1)
/* 064E58 80064258 00A02025 */ move $a0, $a1
/* 064E5C 8006425C 01F8C823 */ subu $t9, $t7, $t8
/* 064E60 80064260 AFB90040 */ sw $t9, 0x40($sp)
/* 064E64 80064264 0C019221 */ jal _doModFunc
/* 064E68 80064268 00E02825 */ move $a1, $a3
/* 064E6C 8006426C 8FAA0040 */ lw $t2, 0x40($sp)
/* 064E70 80064270 3C014700 */ li $at, 0x47000000 # 32768.000000
/* 064E74 80064274 448A3000 */ mtc1 $t2, $f6
/* 064E78 80064278 44817000 */ mtc1 $at, $f14
/* 064E7C 8006427C 46803220 */ cvt.s.w $f8, $f6
/* 064E80 80064280 3C013FF0 */ li $at, 0x3FF00000 # 1.875000
/* 064E84 80064284 44812800 */ mtc1 $at, $f5
/* 064E88 80064288 46080283 */ div.s $f10, $f0, $f8
/* 064E8C 8006428C 44802000 */ mtc1 $zero, $f4
/* 064E90 80064290 8FA40068 */ lw $a0, 0x68($sp)
/* 064E94 80064294 24060280 */ li $a2, 640
/* 064E98 80064298 460E5402 */ mul.s $f16, $f10, $f14
/* 064E9C 8006429C 444BF800 */ cfc1 $t3, $31
/* 064EA0 800642A0 00000000 */ nop
/* 064EA4 800642A4 35610003 */ ori $at, $t3, 3
/* 064EA8 800642A8 38210002 */ xori $at, $at, 2
/* 064EAC 800642AC 44C1F800 */ ctc1 $at, $31
/* 064EB0 800642B0 00000000 */ nop
/* 064EB4 800642B4 460084A4 */ cvt.w.s $f18, $f16
/* 064EB8 800642B8 440C9000 */ mfc1 $t4, $f18
/* 064EBC 800642BC 44CBF800 */ ctc1 $t3, $31
/* 064EC0 800642C0 448C3000 */ mtc1 $t4, $f6
/* 064EC4 800642C4 00000000 */ nop
/* 064EC8 800642C8 46803220 */ cvt.s.w $f8, $f6
/* 064ECC 800642CC 00000000 */ nop
/* 064ED0 800642D0 460E4283 */ div.s $f10, $f8, $f14
/* 064ED4 800642D4 44924000 */ mtc1 $s2, $f8
/* 064ED8 800642D8 46005421 */ cvt.d.s $f16, $f10
/* 064EDC 800642DC 46302481 */ sub.d $f18, $f4, $f16
/* 064EE0 800642E0 468042A0 */ cvt.s.w $f10, $f8
/* 064EE4 800642E4 462090A0 */ cvt.s.d $f2, $f18
/* 064EE8 800642E8 E7A2004C */ swc1 $f2, 0x4c($sp)
/* 064EEC 800642EC 460A1102 */ mul.s $f4, $f2, $f10
/* 064EF0 800642F0 8E020024 */ lw $v0, 0x24($s0)
/* 064EF4 800642F4 00000000 */ nop
/* 064EF8 800642F8 C4460020 */ lwc1 $f6, 0x20($v0)
/* 064EFC 800642FC 00000000 */ nop
/* 064F00 80064300 46043300 */ add.s $f12, $f6, $f4
/* 064F04 80064304 444DF800 */ cfc1 $t5, $31
/* 064F08 80064308 00000000 */ nop
/* 064F0C 8006430C 35A10003 */ ori $at, $t5, 3
/* 064F10 80064310 38210002 */ xori $at, $at, 2
/* 064F14 80064314 44C1F800 */ ctc1 $at, $31
/* 064F18 80064318 00000000 */ nop
/* 064F1C 8006431C 46006424 */ cvt.w.s $f16, $f12
/* 064F20 80064320 44088000 */ mfc1 $t0, $f16
/* 064F24 80064324 44CDF800 */ ctc1 $t5, $31
/* 064F28 80064328 44889000 */ mtc1 $t0, $f18
/* 064F2C 8006432C 00000000 */ nop
/* 064F30 80064330 46809220 */ cvt.s.w $f8, $f18
/* 064F34 80064334 46086281 */ sub.s $f10, $f12, $f8
/* 064F38 80064338 E44A0020 */ swc1 $f10, 0x20($v0)
/* 064F3C 8006433C 8E0F0018 */ lw $t7, 0x18($s0)
/* 064F40 80064340 8E0E0004 */ lw $t6, 4($s0)
/* 064F44 80064344 8C8B0018 */ lw $t3, 0x18($a0)
/* 064F48 80064348 01CFC023 */ subu $t8, $t6, $t7
/* 064F4C 8006434C 0018C823 */ negu $t9, $t8
/* 064F50 80064350 00195040 */ sll $t2, $t9, 1
/* 064F54 80064354 016A8821 */ addu $s1, $t3, $t2
/* 064F58 80064358 32230007 */ andi $v1, $s1, 7
/* 064F5C 8006435C 8FAD0078 */ lw $t5, 0x78($sp)
/* 064F60 80064360 00036043 */ sra $t4, $v1, 1
/* 064F64 80064364 000C4840 */ sll $t1, $t4, 1
/* 064F68 80064368 02292823 */ subu $a1, $s1, $t1
/* 064F6C 8006436C AFA90030 */ sw $t1, 0x30($sp)
/* 064F70 80064370 01801825 */ move $v1, $t4
/* 064F74 80064374 010C3821 */ addu $a3, $t0, $t4
/* 064F78 80064378 AFA80034 */ sw $t0, 0x34($sp)
/* 064F7C 8006437C 0C019128 */ jal _loadBuffer
/* 064F80 80064380 AFAD0010 */ sw $t5, 0x10($sp)
/* 064F84 80064384 8FA90030 */ lw $t1, 0x30($sp)
/* 064F88 80064388 3C010800 */ lui $at, 0x800
/* 064F8C 8006438C 252E0280 */ addiu $t6, $t1, 0x280
/* 064F90 80064390 31CFFFFF */ andi $t7, $t6, 0xffff
/* 064F94 80064394 01E1C025 */ or $t8, $t7, $at
/* 064F98 80064398 AC580000 */ sw $t8, ($v0)
/* 064F9C 8006439C 8FAB0070 */ lw $t3, 0x70($sp)
/* 064FA0 800643A0 00126040 */ sll $t4, $s2, 1
/* 064FA4 800643A4 318DFFFF */ andi $t5, $t4, 0xffff
/* 064FA8 800643A8 000B5400 */ sll $t2, $t3, 0x10
/* 064FAC 800643AC 014D7025 */ or $t6, $t2, $t5
/* 064FB0 800643B0 AC4E0004 */ sw $t6, 4($v0)
/* 064FB4 800643B4 3C014700 */ li $at, 0x47000000 # 32768.000000
/* 064FB8 800643B8 44812000 */ mtc1 $at, $f4
/* 064FBC 800643BC C7A6004C */ lwc1 $f6, 0x4c($sp)
/* 064FC0 800643C0 244F0008 */ addiu $t7, $v0, 8
/* 064FC4 800643C4 46043402 */ mul.s $f16, $f6, $f4
/* 064FC8 800643C8 AFAF0038 */ sw $t7, 0x38($sp)
/* 064FCC 800643CC 8E0C0024 */ lw $t4, 0x24($s0)
/* 064FD0 800643D0 24510010 */ addiu $s1, $v0, 0x10
/* 064FD4 800643D4 4458F800 */ cfc1 $t8, $31
/* 064FD8 800643D8 8D8A0024 */ lw $t2, 0x24($t4)
/* 064FDC 800643DC 37010003 */ ori $at, $t8, 3
/* 064FE0 800643E0 38210002 */ xori $at, $at, 2
/* 064FE4 800643E4 44C1F800 */ ctc1 $at, $31
/* 064FE8 800643E8 314D00FF */ andi $t5, $t2, 0xff
/* 064FEC 800643EC 460084A4 */ cvt.w.s $f18, $f16
/* 064FF0 800643F0 000D7400 */ sll $t6, $t5, 0x10
/* 064FF4 800643F4 44199000 */ mfc1 $t9, $f18
/* 064FF8 800643F8 3C010500 */ lui $at, 0x500
/* 064FFC 800643FC 01C17825 */ or $t7, $t6, $at
/* 065000 80064400 44D8F800 */ ctc1 $t8, $31
/* 065004 80064404 332BFFFF */ andi $t3, $t9, 0xffff
/* 065008 80064408 01EBC025 */ or $t8, $t7, $t3
/* 06500C 8006440C AC580008 */ sw $t8, 8($v0)
/* 065010 80064410 8E190024 */ lw $t9, 0x24($s0)
/* 065014 80064414 00000000 */ nop
/* 065018 80064418 8F240014 */ lw $a0, 0x14($t9)
/* 06501C 8006441C 0C03233C */ jal osVirtualToPhysical
/* 065020 80064420 00000000 */ nop
/* 065024 80064424 8FAC0038 */ lw $t4, 0x38($sp)
/* 065028 80064428 8FA80034 */ lw $t0, 0x34($sp)
/* 06502C 8006442C AD820004 */ sw $v0, 4($t4)
/* 065030 80064430 8E0A0024 */ lw $t2, 0x24($s0)
/* 065034 80064434 00000000 */ nop
/* 065038 80064438 AD400024 */ sw $zero, 0x24($t2)
/* 06503C 8006443C 8E0D0018 */ lw $t5, 0x18($s0)
/* 065040 80064440 00000000 */ nop
/* 065044 80064444 01A87021 */ addu $t6, $t5, $t0
/* 065048 80064448 01D27823 */ subu $t7, $t6, $s2
/* 06504C 8006444C 1000000D */ b .L80064484
/* 065050 80064450 AE0F0018 */ sw $t7, 0x18($s0)
.L80064454:
/* 065054 80064454 8FA40068 */ lw $a0, 0x68($sp)
/* 065058 80064458 8E190004 */ lw $t9, 4($s0)
/* 06505C 8006445C 8FAD0078 */ lw $t5, 0x78($sp)
/* 065060 80064460 8C980018 */ lw $t8, 0x18($a0)
/* 065064 80064464 00196023 */ negu $t4, $t9
/* 065068 80064468 000C5040 */ sll $t2, $t4, 1
/* 06506C 8006446C 8FA60070 */ lw $a2, 0x70($sp)
/* 065070 80064470 02403825 */ move $a3, $s2
/* 065074 80064474 AFAD0010 */ sw $t5, 0x10($sp)
/* 065078 80064478 0C019128 */ jal _loadBuffer
/* 06507C 8006447C 030A2821 */ addu $a1, $t8, $t2
/* 065080 80064480 00408825 */ move $s1, $v0
.L80064484:
/* 065084 80064484 8FBF002C */ lw $ra, 0x2c($sp)
/* 065088 80064488 02201025 */ move $v0, $s1
/* 06508C 8006448C 8FB10024 */ lw $s1, 0x24($sp)
/* 065090 80064490 8FB00020 */ lw $s0, 0x20($sp)
/* 065094 80064494 8FB20028 */ lw $s2, 0x28($sp)
/* 065098 80064498 03E00008 */ jr $ra
/* 06509C 8006449C 27BD0068 */ addiu $sp, $sp, 0x68
-188
View File
@@ -1,188 +0,0 @@
.late_rodata
glabel jpt_800E6E70
.word L80063FE8, L8006401C, L8006407C, L80064050, L800640A8, L800640D4, L80064144, L800641C4
glabel D_800E6E90
.float 8.320827
glabel D_800E6E94
.float 0.04680453
.text
glabel alFxParamHdl
/* 064BAC 80063FAC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 064BB0 80063FB0 24A3FFFE */ addiu $v1, $a1, -2
/* 064BB4 80063FB4 AFBF0014 */ sw $ra, 0x14($sp)
/* 064BB8 80063FB8 306E0007 */ andi $t6, $v1, 7
/* 064BBC 80063FBC 8CC80000 */ lw $t0, ($a2)
/* 064BC0 80063FC0 2DC10008 */ sltiu $at, $t6, 8
/* 064BC4 80063FC4 10200093 */ beqz $at, .L80064214
/* 064BC8 80063FC8 00803825 */ move $a3, $a0
/* 064BCC 80063FCC 000E7080 */ sll $t6, $t6, 2
/* 064BD0 80063FD0 3C01800E */ lui $at, %hi(jpt_800E6E70) # $at, 0x800e
/* 064BD4 80063FD4 002E0821 */ addu $at, $at, $t6
/* 064BD8 80063FD8 8C2E6E70 */ lw $t6, %lo(jpt_800E6E70)($at)
/* 064BDC 80063FDC 00000000 */ nop
/* 064BE0 80063FE0 01C00008 */ jr $t6
/* 064BE4 80063FE4 00000000 */ nop
glabel L80063FE8
/* 064BE8 80063FE8 2401FFF8 */ li $at, -8
/* 064BEC 80063FEC 01017824 */ and $t7, $t0, $at
/* 064BF0 80063FF0 8CF80020 */ lw $t8, 0x20($a3)
/* 064BF4 80063FF4 04610003 */ bgez $v1, .L80064004
/* 064BF8 80063FF8 0003C8C3 */ sra $t9, $v1, 3
/* 064BFC 80063FFC 24610007 */ addiu $at, $v1, 7
/* 064C00 80064000 0001C8C3 */ sra $t9, $at, 3
.L80064004:
/* 064C04 80064004 00194880 */ sll $t1, $t9, 2
/* 064C08 80064008 01394821 */ addu $t1, $t1, $t9
/* 064C0C 8006400C 000948C0 */ sll $t1, $t1, 3
/* 064C10 80064010 03095021 */ addu $t2, $t8, $t1
/* 064C14 80064014 1000007F */ b .L80064214
/* 064C18 80064018 AD4F0000 */ sw $t7, ($t2)
glabel L8006401C
/* 064C1C 8006401C 2401FFF8 */ li $at, -8
/* 064C20 80064020 01015824 */ and $t3, $t0, $at
/* 064C24 80064024 8CEC0020 */ lw $t4, 0x20($a3)
/* 064C28 80064028 04610003 */ bgez $v1, .L80064038
/* 064C2C 8006402C 000368C3 */ sra $t5, $v1, 3
/* 064C30 80064030 24610007 */ addiu $at, $v1, 7
/* 064C34 80064034 000168C3 */ sra $t5, $at, 3
.L80064038:
/* 064C38 80064038 000D7080 */ sll $t6, $t5, 2
/* 064C3C 8006403C 01CD7021 */ addu $t6, $t6, $t5
/* 064C40 80064040 000E70C0 */ sll $t6, $t6, 3
/* 064C44 80064044 018EC821 */ addu $t9, $t4, $t6
/* 064C48 80064048 10000072 */ b .L80064214
/* 064C4C 8006404C AF2B0004 */ sw $t3, 4($t9)
glabel L80064050
/* 064C50 80064050 8CF80020 */ lw $t8, 0x20($a3)
/* 064C54 80064054 04610003 */ bgez $v1, .L80064064
/* 064C58 80064058 000348C3 */ sra $t1, $v1, 3
/* 064C5C 8006405C 24610007 */ addiu $at, $v1, 7
/* 064C60 80064060 000148C3 */ sra $t1, $at, 3
.L80064064:
/* 064C64 80064064 00097880 */ sll $t7, $t1, 2
/* 064C68 80064068 01E97821 */ addu $t7, $t7, $t1
/* 064C6C 8006406C 000F78C0 */ sll $t7, $t7, 3
/* 064C70 80064070 030F5021 */ addu $t2, $t8, $t7
/* 064C74 80064074 10000067 */ b .L80064214
/* 064C78 80064078 A5480008 */ sh $t0, 8($t2)
glabel L8006407C
/* 064C7C 8006407C 8CED0020 */ lw $t5, 0x20($a3)
/* 064C80 80064080 04610003 */ bgez $v1, .L80064090
/* 064C84 80064084 000360C3 */ sra $t4, $v1, 3
/* 064C88 80064088 24610007 */ addiu $at, $v1, 7
/* 064C8C 8006408C 000160C3 */ sra $t4, $at, 3
.L80064090:
/* 064C90 80064090 000C7080 */ sll $t6, $t4, 2
/* 064C94 80064094 01CC7021 */ addu $t6, $t6, $t4
/* 064C98 80064098 000E70C0 */ sll $t6, $t6, 3
/* 064C9C 8006409C 01AE5821 */ addu $t3, $t5, $t6
/* 064CA0 800640A0 1000005C */ b .L80064214
/* 064CA4 800640A4 A568000A */ sh $t0, 0xa($t3)
glabel L800640A8
/* 064CA8 800640A8 8CF90020 */ lw $t9, 0x20($a3)
/* 064CAC 800640AC 04610003 */ bgez $v1, .L800640BC
/* 064CB0 800640B0 000348C3 */ sra $t1, $v1, 3
/* 064CB4 800640B4 24610007 */ addiu $at, $v1, 7
/* 064CB8 800640B8 000148C3 */ sra $t1, $at, 3
.L800640BC:
/* 064CBC 800640BC 0009C080 */ sll $t8, $t1, 2
/* 064CC0 800640C0 0309C021 */ addu $t8, $t8, $t1
/* 064CC4 800640C4 0018C0C0 */ sll $t8, $t8, 3
/* 064CC8 800640C8 03387821 */ addu $t7, $t9, $t8
/* 064CCC 800640CC 10000051 */ b .L80064214
/* 064CD0 800640D0 A5E8000C */ sh $t0, 0xc($t7)
glabel L800640D4
/* 064CD4 800640D4 44882000 */ mtc1 $t0, $f4
/* 064CD8 800640D8 3C01447A */ li $at, 0x447A0000 # 1000.000000
/* 064CDC 800640DC 468021A0 */ cvt.s.w $f6, $f4
/* 064CE0 800640E0 44814000 */ mtc1 $at, $f8
/* 064CE4 800640E4 3C0A800E */ lui $t2, %hi(alGlobals) # $t2, 0x800e
/* 064CE8 800640E8 46083283 */ div.s $f10, $f6, $f8
/* 064CEC 800640EC 8D4A3780 */ lw $t2, %lo(alGlobals)($t2)
/* 064CF0 800640F0 8CED0020 */ lw $t5, 0x20($a3)
/* 064CF4 800640F4 8D4C0044 */ lw $t4, 0x44($t2)
/* 064CF8 800640F8 00000000 */ nop
/* 064CFC 800640FC 448C9000 */ mtc1 $t4, $f18
/* 064D00 80064100 00000000 */ nop
/* 064D04 80064104 46809121 */ cvt.d.w $f4, $f18
/* 064D08 80064108 46005021 */ cvt.d.s $f0, $f10
/* 064D0C 8006410C 46200400 */ add.d $f16, $f0, $f0
/* 064D10 80064110 00000000 */ nop
/* 064D14 80064114 46248183 */ div.d $f6, $f16, $f4
/* 064D18 80064118 46203220 */ cvt.s.d $f8, $f6
/* 064D1C 8006411C 04610003 */ bgez $v1, .L8006412C
/* 064D20 80064120 000370C3 */ sra $t6, $v1, 3
/* 064D24 80064124 24610007 */ addiu $at, $v1, 7
/* 064D28 80064128 000170C3 */ sra $t6, $at, 3
.L8006412C:
/* 064D2C 8006412C 000E5880 */ sll $t3, $t6, 2
/* 064D30 80064130 016E5821 */ addu $t3, $t3, $t6
/* 064D34 80064134 000B58C0 */ sll $t3, $t3, 3
/* 064D38 80064138 01AB4821 */ addu $t1, $t5, $t3
/* 064D3C 8006413C 10000035 */ b .L80064214
/* 064D40 80064140 E5280010 */ swc1 $f8, 0x10($t1)
glabel L80064144
/* 064D44 80064144 8CF90020 */ lw $t9, 0x20($a3)
/* 064D48 80064148 04610003 */ bgez $v1, .L80064158
/* 064D4C 8006414C 0003C0C3 */ sra $t8, $v1, 3
/* 064D50 80064150 24610007 */ addiu $at, $v1, 7
/* 064D54 80064154 0001C0C3 */ sra $t8, $at, 3
.L80064158:
/* 064D58 80064158 00187880 */ sll $t7, $t8, 2
/* 064D5C 8006415C 01F87821 */ addu $t7, $t7, $t8
/* 064D60 80064160 000F78C0 */ sll $t7, $t7, 3
/* 064D64 80064164 032F1021 */ addu $v0, $t9, $t7
/* 064D68 80064168 8C4A0004 */ lw $t2, 4($v0)
/* 064D6C 8006416C 8C4C0000 */ lw $t4, ($v0)
/* 064D70 80064170 44882000 */ mtc1 $t0, $f4
/* 064D74 80064174 014C7023 */ subu $t6, $t2, $t4
/* 064D78 80064178 448E5000 */ mtc1 $t6, $f10
/* 064D7C 8006417C 05C10006 */ bgez $t6, .L80064198
/* 064D80 80064180 468054A1 */ cvt.d.w $f18, $f10
/* 064D84 80064184 3C0141F0 */ li $at, 0x41F00000 # 30.000000
/* 064D88 80064188 44818800 */ mtc1 $at, $f17
/* 064D8C 8006418C 44808000 */ mtc1 $zero, $f16
/* 064D90 80064190 00000000 */ nop
/* 064D94 80064194 46309480 */ add.d $f18, $f18, $f16
.L80064198:
/* 064D98 80064198 468021A0 */ cvt.s.w $f6, $f4
/* 064D9C 8006419C 3C01800E */ lui $at, %hi(D_800E6E94) # $at, 0x800e
/* 064DA0 800641A0 C42B6E90 */ lwc1 $f11, %lo(D_800E6E90)($at)
/* 064DA4 800641A4 C42A6E94 */ lwc1 $f10, %lo(D_800E6E94)($at)
/* 064DA8 800641A8 46003221 */ cvt.d.s $f8, $f6
/* 064DAC 800641AC 00000000 */ nop
/* 064DB0 800641B0 462A4403 */ div.d $f16, $f8, $f10
/* 064DB4 800641B4 46309102 */ mul.d $f4, $f18, $f16
/* 064DB8 800641B8 462021A0 */ cvt.s.d $f6, $f4
/* 064DBC 800641BC 10000015 */ b .L80064214
/* 064DC0 800641C0 E446001C */ swc1 $f6, 0x1c($v0)
glabel L800641C4
/* 064DC4 800641C4 04610003 */ bgez $v1, .L800641D4
/* 064DC8 800641C8 000310C3 */ sra $v0, $v1, 3
/* 064DCC 800641CC 24610007 */ addiu $at, $v1, 7
/* 064DD0 800641D0 000110C3 */ sra $v0, $at, 3
.L800641D4:
/* 064DD4 800641D4 00026880 */ sll $t5, $v0, 2
/* 064DD8 800641D8 8CEB0020 */ lw $t3, 0x20($a3)
/* 064DDC 800641DC 01A26821 */ addu $t5, $t5, $v0
/* 064DE0 800641E0 000D68C0 */ sll $t5, $t5, 3
/* 064DE4 800641E4 016D4821 */ addu $t1, $t3, $t5
/* 064DE8 800641E8 8D250020 */ lw $a1, 0x20($t1)
/* 064DEC 800641EC 00000000 */ nop
/* 064DF0 800641F0 10A00009 */ beqz $a1, .L80064218
/* 064DF4 800641F4 8FBF0014 */ lw $ra, 0x14($sp)
/* 064DF8 800641F8 A4A80000 */ sh $t0, ($a1)
/* 064DFC 800641FC 8CF80020 */ lw $t8, 0x20($a3)
/* 064E00 80064200 00000000 */ nop
/* 064E04 80064204 030DC821 */ addu $t9, $t8, $t5
/* 064E08 80064208 8F240020 */ lw $a0, 0x20($t9)
/* 064E0C 8006420C 0C019254 */ jal init_lpfilter
/* 064E10 80064210 00000000 */ nop
.L80064214:
/* 064E14 80064214 8FBF0014 */ lw $ra, 0x14($sp)
.L80064218:
/* 064E18 80064218 27BD0018 */ addiu $sp, $sp, 0x18
/* 064E1C 8006421C 03E00008 */ jr $ra
/* 064E20 80064220 00001025 */ move $v0, $zero
-231
View File
@@ -1,231 +0,0 @@
glabel alFxPull
/* 064830 80063C30 27BDFF60 */ addiu $sp, $sp, -0xa0
/* 064834 80063C34 AFB3002C */ sw $s3, 0x2c($sp)
/* 064838 80063C38 00809825 */ move $s3, $a0
/* 06483C 80063C3C AFBF0044 */ sw $ra, 0x44($sp)
/* 064840 80063C40 AFBE0040 */ sw $fp, 0x40($sp)
/* 064844 80063C44 AFB7003C */ sw $s7, 0x3c($sp)
/* 064848 80063C48 AFB60038 */ sw $s6, 0x38($sp)
/* 06484C 80063C4C AFB50034 */ sw $s5, 0x34($sp)
/* 064850 80063C50 AFB40030 */ sw $s4, 0x30($sp)
/* 064854 80063C54 AFB20028 */ sw $s2, 0x28($sp)
/* 064858 80063C58 AFB10024 */ sw $s1, 0x24($sp)
/* 06485C 80063C5C AFB00020 */ sw $s0, 0x20($sp)
/* 064860 80063C60 8C840000 */ lw $a0, ($a0)
/* 064864 80063C64 8FAE00B0 */ lw $t6, 0xb0($sp)
/* 064868 80063C68 AFA0007C */ sw $zero, 0x7c($sp)
/* 06486C 80063C6C AFAE0010 */ sw $t6, 0x10($sp)
/* 064870 80063C70 8C990004 */ lw $t9, 4($a0)
/* 064874 80063C74 00C0B025 */ move $s6, $a2
/* 064878 80063C78 0320F809 */ jalr $t9
/* 06487C 80063C7C 00000000 */ nop
/* 064880 80063C80 3C0F800E */ lui $t7, %hi(D_800DCEB0) # $t7, 0x800e
/* 064884 80063C84 91EFCEB0 */ lbu $t7, %lo(D_800DCEB0)($t7)
/* 064888 80063C88 8FA3007C */ lw $v1, 0x7c($sp)
/* 06488C 80063C8C 15E00003 */ bnez $t7, .L80063C9C
/* 064890 80063C90 00408025 */ move $s0, $v0
/* 064894 80063C94 100000B4 */ b .L80063F68
/* 064898 80063C98 8FBF0044 */ lw $ra, 0x44($sp)
.L80063C9C:
/* 06489C 80063C9C 02001025 */ move $v0, $s0
/* 0648A0 80063CA0 00168840 */ sll $s1, $s6, 1
/* 0648A4 80063CA4 322BFFFF */ andi $t3, $s1, 0xffff
/* 0648A8 80063CA8 26080008 */ addiu $t0, $s0, 8
/* 0648AC 80063CAC 3C180800 */ lui $t8, 0x800
/* 0648B0 80063CB0 AC580000 */ sw $t8, ($v0)
/* 0648B4 80063CB4 AC4B0004 */ sw $t3, 4($v0)
/* 0648B8 80063CB8 3C0C0C00 */ lui $t4, (0x0C00DA83 >> 16) # lui $t4, 0xc00
/* 0648BC 80063CBC 3C0D06C0 */ lui $t5, (0x06C006C0 >> 16) # lui $t5, 0x6c0
/* 0648C0 80063CC0 35AD06C0 */ ori $t5, (0x06C006C0 & 0xFFFF) # ori $t5, $t5, 0x6c0
/* 0648C4 80063CC4 358CDA83 */ ori $t4, (0x0C00DA83 & 0xFFFF) # ori $t4, $t4, 0xda83
/* 0648C8 80063CC8 AD0C0000 */ sw $t4, ($t0)
/* 0648CC 80063CCC AD0D0004 */ sw $t5, 4($t0)
/* 0648D0 80063CD0 25090008 */ addiu $t1, $t0, 8
/* 0648D4 80063CD4 3C0E0C00 */ lui $t6, (0x0C005A82 >> 16) # lui $t6, 0xc00
/* 0648D8 80063CD8 3C190800 */ lui $t9, (0x080006C0 >> 16) # lui $t9, 0x800
/* 0648DC 80063CDC 373906C0 */ ori $t9, (0x080006C0 & 0xFFFF) # ori $t9, $t9, 0x6c0
/* 0648E0 80063CE0 35CE5A82 */ ori $t6, (0x0C005A82 & 0xFFFF) # ori $t6, $t6, 0x5a82
/* 0648E4 80063CE4 AD2E0000 */ sw $t6, ($t1)
/* 0648E8 80063CE8 AD390004 */ sw $t9, 4($t1)
/* 0648EC 80063CEC 8E650018 */ lw $a1, 0x18($s3)
/* 0648F0 80063CF0 25300008 */ addiu $s0, $t1, 8
/* 0648F4 80063CF4 0000A825 */ move $s5, $zero
/* 0648F8 80063CF8 24120140 */ li $s2, 320
/* 0648FC 80063CFC AFB00010 */ sw $s0, 0x10($sp)
/* 064900 80063D00 AFAB0048 */ sw $t3, 0x48($sp)
/* 064904 80063D04 AFB10050 */ sw $s1, 0x50($sp)
/* 064908 80063D08 AFA3007C */ sw $v1, 0x7c($sp)
/* 06490C 80063D0C 02602025 */ move $a0, $s3
/* 064910 80063D10 240606C0 */ li $a2, 1728
/* 064914 80063D14 0C01918E */ jal _saveBuffer
/* 064918 80063D18 02C03825 */ move $a3, $s6
/* 06491C 80063D1C 8FA3007C */ lw $v1, 0x7c($sp)
/* 064920 80063D20 3C0F0200 */ lui $t7, (0x02000800 >> 16) # lui $t7, 0x200
/* 064924 80063D24 35EF0800 */ ori $t7, (0x02000800 & 0xFFFF) # ori $t7, $t7, 0x800
/* 064928 80063D28 AC4F0000 */ sw $t7, ($v0)
/* 06492C 80063D2C AC510004 */ sw $s1, 4($v0)
/* 064930 80063D30 92780024 */ lbu $t8, 0x24($s3)
/* 064934 80063D34 24500008 */ addiu $s0, $v0, 8
/* 064938 80063D38 1B000076 */ blez $t8, .L80063F14
/* 06493C 80063D3C 0000B825 */ move $s7, $zero
/* 064940 80063D40 8E620018 */ lw $v0, 0x18($s3)
/* 064944 80063D44 00000000 */ nop
.L80063D48:
/* 064948 80063D48 00176880 */ sll $t5, $s7, 2
/* 06494C 80063D4C 8E6C0020 */ lw $t4, 0x20($s3)
/* 064950 80063D50 01B76821 */ addu $t5, $t5, $s7
/* 064954 80063D54 000D68C0 */ sll $t5, $t5, 3
/* 064958 80063D58 018D8821 */ addu $s1, $t4, $t5
/* 06495C 80063D5C 8E2E0000 */ lw $t6, ($s1)
/* 064960 80063D60 8E380004 */ lw $t8, 4($s1)
/* 064964 80063D64 000EC823 */ negu $t9, $t6
/* 064968 80063D68 00197840 */ sll $t7, $t9, 1
/* 06496C 80063D6C 00186023 */ negu $t4, $t8
/* 064970 80063D70 004FA021 */ addu $s4, $v0, $t7
/* 064974 80063D74 000C6840 */ sll $t5, $t4, 1
/* 064978 80063D78 16830009 */ bne $s4, $v1, .L80063DA0
/* 06497C 80063D7C 004DF021 */ addu $fp, $v0, $t5
/* 064980 80063D80 02407025 */ move $t6, $s2
/* 064984 80063D84 00159400 */ sll $s2, $s5, 0x10
/* 064988 80063D88 000EAC00 */ sll $s5, $t6, 0x10
/* 06498C 80063D8C 00157C03 */ sra $t7, $s5, 0x10
/* 064990 80063D90 0012CC03 */ sra $t9, $s2, 0x10
/* 064994 80063D94 03209025 */ move $s2, $t9
/* 064998 80063D98 10000008 */ b .L80063DBC
/* 06499C 80063D9C 01E0A825 */ move $s5, $t7
.L80063DA0:
/* 0649A0 80063DA0 02602025 */ move $a0, $s3
/* 0649A4 80063DA4 02802825 */ move $a1, $s4
/* 0649A8 80063DA8 02A03025 */ move $a2, $s5
/* 0649AC 80063DAC 02C03825 */ move $a3, $s6
/* 0649B0 80063DB0 0C019128 */ jal _loadBuffer
/* 0649B4 80063DB4 AFB00010 */ sw $s0, 0x10($sp)
/* 0649B8 80063DB8 00408025 */ move $s0, $v0
.L80063DBC:
/* 0649BC 80063DBC 02602025 */ move $a0, $s3
/* 0649C0 80063DC0 02202825 */ move $a1, $s1
/* 0649C4 80063DC4 02403025 */ move $a2, $s2
/* 0649C8 80063DC8 02C03825 */ move $a3, $s6
/* 0649CC 80063DCC 0C019089 */ jal _loadOutputBuffer
/* 0649D0 80063DD0 AFB00010 */ sw $s0, 0x10($sp)
/* 0649D4 80063DD4 86240008 */ lh $a0, 8($s1)
/* 0649D8 80063DD8 00408025 */ move $s0, $v0
/* 0649DC 80063DDC 10800015 */ beqz $a0, .L80063E34
/* 0649E0 80063DE0 308CFFFF */ andi $t4, $a0, 0xffff
/* 0649E4 80063DE4 3C010C00 */ lui $at, 0xc00
/* 0649E8 80063DE8 0015CC00 */ sll $t9, $s5, 0x10
/* 0649EC 80063DEC 324FFFFF */ andi $t7, $s2, 0xffff
/* 0649F0 80063DF0 032FC025 */ or $t8, $t9, $t7
/* 0649F4 80063DF4 01816825 */ or $t5, $t4, $at
/* 0649F8 80063DF8 AC4D0000 */ sw $t5, ($v0)
/* 0649FC 80063DFC AC580004 */ sw $t8, 4($v0)
/* 064A00 80063E00 8E2C0024 */ lw $t4, 0x24($s1)
/* 064A04 80063E04 24500008 */ addiu $s0, $v0, 8
/* 064A08 80063E08 1580000A */ bnez $t4, .L80063E34
/* 064A0C 80063E0C 00000000 */ nop
/* 064A10 80063E10 8E2D0020 */ lw $t5, 0x20($s1)
/* 064A14 80063E14 02602025 */ move $a0, $s3
/* 064A18 80063E18 15A00006 */ bnez $t5, .L80063E34
/* 064A1C 80063E1C 03C02825 */ move $a1, $fp
/* 064A20 80063E20 02403025 */ move $a2, $s2
/* 064A24 80063E24 02C03825 */ move $a3, $s6
/* 064A28 80063E28 0C01918E */ jal _saveBuffer
/* 064A2C 80063E2C AFB00010 */ sw $s0, 0x10($sp)
/* 064A30 80063E30 00408025 */ move $s0, $v0
.L80063E34:
/* 064A34 80063E34 8623000A */ lh $v1, 0xa($s1)
/* 064A38 80063E38 02001025 */ move $v0, $s0
/* 064A3C 80063E3C 10600010 */ beqz $v1, .L80063E80
/* 064A40 80063E40 3079FFFF */ andi $t9, $v1, 0xffff
/* 064A44 80063E44 3C010C00 */ lui $at, 0xc00
/* 064A48 80063E48 00126400 */ sll $t4, $s2, 0x10
/* 064A4C 80063E4C 32ADFFFF */ andi $t5, $s5, 0xffff
/* 064A50 80063E50 018D7025 */ or $t6, $t4, $t5
/* 064A54 80063E54 03217825 */ or $t7, $t9, $at
/* 064A58 80063E58 AC4F0000 */ sw $t7, ($v0)
/* 064A5C 80063E5C AC4E0004 */ sw $t6, 4($v0)
/* 064A60 80063E60 26100008 */ addiu $s0, $s0, 8
/* 064A64 80063E64 AFB00010 */ sw $s0, 0x10($sp)
/* 064A68 80063E68 02602025 */ move $a0, $s3
/* 064A6C 80063E6C 02802825 */ move $a1, $s4
/* 064A70 80063E70 02A03025 */ move $a2, $s5
/* 064A74 80063E74 0C01918E */ jal _saveBuffer
/* 064A78 80063E78 02C03825 */ move $a3, $s6
/* 064A7C 80063E7C 00408025 */ move $s0, $v0
.L80063E80:
/* 064A80 80063E80 8E240020 */ lw $a0, 0x20($s1)
/* 064A84 80063E84 02402825 */ move $a1, $s2
/* 064A88 80063E88 10800004 */ beqz $a0, .L80063E9C
/* 064A8C 80063E8C 02C03025 */ move $a2, $s6
/* 064A90 80063E90 0C0191F4 */ jal _filterBuffer
/* 064A94 80063E94 02003825 */ move $a3, $s0
/* 064A98 80063E98 00408025 */ move $s0, $v0
.L80063E9C:
/* 064A9C 80063E9C 8E390024 */ lw $t9, 0x24($s1)
/* 064AA0 80063EA0 02602025 */ move $a0, $s3
/* 064AA4 80063EA4 17200006 */ bnez $t9, .L80063EC0
/* 064AA8 80063EA8 03C02825 */ move $a1, $fp
/* 064AAC 80063EAC 02403025 */ move $a2, $s2
/* 064AB0 80063EB0 02C03825 */ move $a3, $s6
/* 064AB4 80063EB4 0C01918E */ jal _saveBuffer
/* 064AB8 80063EB8 AFB00010 */ sw $s0, 0x10($sp)
/* 064ABC 80063EBC 00408025 */ move $s0, $v0
.L80063EC0:
/* 064AC0 80063EC0 8623000C */ lh $v1, 0xc($s1)
/* 064AC4 80063EC4 26F70001 */ addiu $s7, $s7, 1
/* 064AC8 80063EC8 10600009 */ beqz $v1, .L80063EF0
/* 064ACC 80063ECC 02001025 */ move $v0, $s0
/* 064AD0 80063ED0 3078FFFF */ andi $t8, $v1, 0xffff
/* 064AD4 80063ED4 3C010C00 */ lui $at, 0xc00
/* 064AD8 80063ED8 00127400 */ sll $t6, $s2, 0x10
/* 064ADC 80063EDC 35D90800 */ ori $t9, $t6, 0x800
/* 064AE0 80063EE0 03016025 */ or $t4, $t8, $at
/* 064AE4 80063EE4 AC4C0000 */ sw $t4, ($v0)
/* 064AE8 80063EE8 AC590004 */ sw $t9, 4($v0)
/* 064AEC 80063EEC 26100008 */ addiu $s0, $s0, 8
.L80063EF0:
/* 064AF0 80063EF0 926E0024 */ lbu $t6, 0x24($s3)
/* 064AF4 80063EF4 8E2F0004 */ lw $t7, 4($s1)
/* 064AF8 80063EF8 00176400 */ sll $t4, $s7, 0x10
/* 064AFC 80063EFC 8E620018 */ lw $v0, 0x18($s3)
/* 064B00 80063F00 000CBC03 */ sra $s7, $t4, 0x10
/* 064B04 80063F04 02EE082A */ slt $at, $s7, $t6
/* 064B08 80063F08 000FC040 */ sll $t8, $t7, 1
/* 064B0C 80063F0C 1420FF8E */ bnez $at, .L80063D48
/* 064B10 80063F10 00581821 */ addu $v1, $v0, $t8
.L80063F14:
/* 064B14 80063F14 8E63001C */ lw $v1, 0x1c($s3)
/* 064B18 80063F18 8E790018 */ lw $t9, 0x18($s3)
/* 064B1C 80063F1C 8FAF0050 */ lw $t7, 0x50($sp)
/* 064B20 80063F20 8E6D0014 */ lw $t5, 0x14($s3)
/* 064B24 80063F24 00036040 */ sll $t4, $v1, 1
/* 064B28 80063F28 032FC021 */ addu $t8, $t9, $t7
/* 064B2C 80063F2C 01AC7021 */ addu $t6, $t5, $t4
/* 064B30 80063F30 01D8082B */ sltu $at, $t6, $t8
/* 064B34 80063F34 10200003 */ beqz $at, .L80063F44
/* 064B38 80063F38 AE780018 */ sw $t8, 0x18($s3)
/* 064B3C 80063F3C 030CC823 */ subu $t9, $t8, $t4
/* 064B40 80063F40 AE790018 */ sw $t9, 0x18($s3)
.L80063F44:
/* 064B44 80063F44 3C0F0A00 */ lui $t7, (0x0A000800 >> 16) # lui $t7, 0xa00
/* 064B48 80063F48 35EF0800 */ ori $t7, (0x0A000800 & 0xFFFF) # ori $t7, $t7, 0x800
/* 064B4C 80063F4C AE0F0000 */ sw $t7, ($s0)
/* 064B50 80063F50 8FB80048 */ lw $t8, 0x48($sp)
/* 064B54 80063F54 3C0106C0 */ lui $at, 0x6c0
/* 064B58 80063F58 03016025 */ or $t4, $t8, $at
/* 064B5C 80063F5C AE0C0004 */ sw $t4, 4($s0)
/* 064B60 80063F60 26020008 */ addiu $v0, $s0, 8
/* 064B64 80063F64 8FBF0044 */ lw $ra, 0x44($sp)
.L80063F68:
/* 064B68 80063F68 8FB00020 */ lw $s0, 0x20($sp)
/* 064B6C 80063F6C 8FB10024 */ lw $s1, 0x24($sp)
/* 064B70 80063F70 8FB20028 */ lw $s2, 0x28($sp)
/* 064B74 80063F74 8FB3002C */ lw $s3, 0x2c($sp)
/* 064B78 80063F78 8FB40030 */ lw $s4, 0x30($sp)
/* 064B7C 80063F7C 8FB50034 */ lw $s5, 0x34($sp)
/* 064B80 80063F80 8FB60038 */ lw $s6, 0x38($sp)
/* 064B84 80063F84 8FB7003C */ lw $s7, 0x3c($sp)
/* 064B88 80063F88 8FBE0040 */ lw $fp, 0x40($sp)
/* 064B8C 80063F8C 03E00008 */ jr $ra
/* 064B90 80063F90 27BD00A0 */ addiu $sp, $sp, 0xa0
@@ -1,12 +0,0 @@
glabel func_8006492C
/* 06552C 8006492C 3C01800E */ lui $at, %hi(D_800DCEB0) # $at, 0x800e
/* 065530 80064930 AFA40000 */ sw $a0, ($sp)
/* 065534 80064934 03E00008 */ jr $ra
/* 065538 80064938 A024CEB0 */ sb $a0, %lo(D_800DCEB0)($at)
/* 06553C 8006493C 3C02800E */ lui $v0, %hi(D_800DCEB0) # $v0, 0x800e
/* 065540 80064940 9042CEB0 */ lbu $v0, %lo(D_800DCEB0)($v0)
/* 065544 80064944 03E00008 */ jr $ra
/* 065548 80064948 00000000 */ nop
/* 06554C 8006494C 00000000 */ nop
-151
View File
@@ -1,151 +0,0 @@
.late_rodata
glabel D_800E796C
.float 468750.0
.text
glabel __scHandleRSP
/* 07A744 80079B44 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 07A748 80079B48 AFBF001C */ sw $ra, 0x1c($sp)
/* 07A74C 80079B4C AFB00018 */ sw $s0, 0x18($sp)
/* 07A750 80079B50 AFA00030 */ sw $zero, 0x30($sp)
/* 07A754 80079B54 AFA0002C */ sw $zero, 0x2c($sp)
/* 07A758 80079B58 8C850274 */ lw $a1, 0x274($a0)
/* 07A75C 80079B5C AC800274 */ sw $zero, 0x274($a0)
/* 07A760 80079B60 8CAE0010 */ lw $t6, 0x10($a1)
/* 07A764 80079B64 24010002 */ li $at, 2
/* 07A768 80079B68 15C10039 */ bne $t6, $at, .L80079C50
/* 07A76C 80079B6C 00808025 */ move $s0, $a0
/* 07A770 80079B70 0C031E34 */ jal osGetCount
/* 07A774 80079B74 AFA50034 */ sw $a1, 0x34($sp)
/* 07A778 80079B78 3C038012 */ lui $v1, %hi(gRSPAudTaskCount) # $v1, 0x8012
/* 07A77C 80079B7C 24636124 */ addiu $v1, %lo(gRSPAudTaskCount) # addiu $v1, $v1, 0x6124
/* 07A780 80079B80 AC620000 */ sw $v0, ($v1)
/* 07A784 80079B84 3C188012 */ lui $t8, %hi(D_80126120) # $t8, 0x8012
/* 07A788 80079B88 8F186120 */ lw $t8, %lo(D_80126120)($t8)
/* 07A78C 80079B8C 3C04800E */ lui $a0, %hi(D_800DE74C) # $a0, 0x800e
/* 07A790 80079B90 0058C823 */ subu $t9, $v0, $t8
/* 07A794 80079B94 44992000 */ mtc1 $t9, $f4
/* 07A798 80079B98 8FA50034 */ lw $a1, 0x34($sp)
/* 07A79C 80079B9C 3C06800E */ lui $a2, %hi(D_800DE744) # $a2, 0x800e
/* 07A7A0 80079BA0 3C07800E */ lui $a3, %hi(D_800DE740) # $a3, 0x800e
/* 07A7A4 80079BA4 24E7E740 */ addiu $a3, %lo(D_800DE740) # addiu $a3, $a3, -0x18c0
/* 07A7A8 80079BA8 24C6E744 */ addiu $a2, %lo(D_800DE744) # addiu $a2, $a2, -0x18bc
/* 07A7AC 80079BAC 2484E74C */ addiu $a0, %lo(D_800DE74C) # addiu $a0, $a0, -0x18b4
/* 07A7B0 80079BB0 07210005 */ bgez $t9, .L80079BC8
/* 07A7B4 80079BB4 468021A0 */ cvt.s.w $f6, $f4
/* 07A7B8 80079BB8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 07A7BC 80079BBC 44814000 */ mtc1 $at, $f8
/* 07A7C0 80079BC0 00000000 */ nop
/* 07A7C4 80079BC4 46083180 */ add.s $f6, $f6, $f8
.L80079BC8:
/* 07A7C8 80079BC8 3C014270 */ li $at, 0x42700000 # 60.000000
/* 07A7CC 80079BCC 44815000 */ mtc1 $at, $f10
/* 07A7D0 80079BD0 3C01800E */ lui $at, %hi(D_800E796C) # $at, 0x800e
/* 07A7D4 80079BD4 460A3402 */ mul.s $f16, $f6, $f10
/* 07A7D8 80079BD8 C432796C */ lwc1 $f18, %lo(D_800E796C)($at)
/* 07A7DC 80079BDC C4EA0000 */ lwc1 $f10, ($a3)
/* 07A7E0 80079BE0 C4C80000 */ lwc1 $f8, ($a2)
/* 07A7E4 80079BE4 46128103 */ div.s $f4, $f16, $f18
/* 07A7E8 80079BE8 3C02800E */ lui $v0, %hi(gRetraceCounter32) # $v0, 0x800e
/* 07A7EC 80079BEC E4840000 */ swc1 $f4, ($a0)
/* 07A7F0 80079BF0 C4800000 */ lwc1 $f0, ($a0)
/* 07A7F4 80079BF4 00000000 */ nop
/* 07A7F8 80079BF8 4600503C */ c.lt.s $f10, $f0
/* 07A7FC 80079BFC 46004180 */ add.s $f6, $f8, $f0
/* 07A800 80079C00 45000002 */ bc1f .L80079C0C
/* 07A804 80079C04 E4C60000 */ swc1 $f6, ($a2)
/* 07A808 80079C08 E4E00000 */ swc1 $f0, ($a3)
.L80079C0C:
/* 07A80C 80079C0C 8C42E750 */ lw $v0, %lo(gRetraceCounter32)($v0)
/* 07A810 80079C10 240103E8 */ li $at, 1000
/* 07A814 80079C14 0041001A */ div $zero, $v0, $at
/* 07A818 80079C18 24010001 */ li $at, 1
/* 07A81C 80079C1C 00004010 */ mfhi $t0
/* 07A820 80079C20 11010002 */ beq $t0, $at, .L80079C2C
/* 07A824 80079C24 24010002 */ li $at, 2
/* 07A828 80079C28 15010009 */ bne $t0, $at, .L80079C50
.L80079C2C:
/* 07A82C 80079C2C 3C0143FA */ li $at, 0x43FA0000 # 500.000000
/* 07A830 80079C30 44819000 */ mtc1 $at, $f18
/* 07A834 80079C34 C4D00000 */ lwc1 $f16, ($a2)
/* 07A838 80079C38 44800000 */ mtc1 $zero, $f0
/* 07A83C 80079C3C 46128103 */ div.s $f4, $f16, $f18
/* 07A840 80079C40 3C01800E */ lui $at, %hi(D_800DE748) # $at, 0x800e
/* 07A844 80079C44 E424E748 */ swc1 $f4, %lo(D_800DE748)($at)
/* 07A848 80079C48 E4C00000 */ swc1 $f0, ($a2)
/* 07A84C 80079C4C E4E00000 */ swc1 $f0, ($a3)
.L80079C50:
/* 07A850 80079C50 8CA20004 */ lw $v0, 4($a1)
/* 07A854 80079C54 2401FFFD */ li $at, -3
/* 07A858 80079C58 30490010 */ andi $t1, $v0, 0x10
/* 07A85C 80079C5C 11200026 */ beqz $t1, .L80079CF8
/* 07A860 80079C60 00415024 */ and $t2, $v0, $at
/* 07A864 80079C64 24A40010 */ addiu $a0, $a1, 0x10
/* 07A868 80079C68 0C03477C */ jal osSpTaskYielded
/* 07A86C 80079C6C AFA50034 */ sw $a1, 0x34($sp)
/* 07A870 80079C70 8FA50034 */ lw $a1, 0x34($sp)
/* 07A874 80079C74 10400015 */ beqz $v0, .L80079CCC
/* 07A878 80079C78 2401FFFD */ li $at, -3
/* 07A87C 80079C7C 8CAA0004 */ lw $t2, 4($a1)
/* 07A880 80079C80 8CAC0008 */ lw $t4, 8($a1)
/* 07A884 80079C84 24010003 */ li $at, 3
/* 07A888 80079C88 354B0020 */ ori $t3, $t2, 0x20
/* 07A88C 80079C8C 318D0007 */ andi $t5, $t4, 7
/* 07A890 80079C90 15A10009 */ bne $t5, $at, .L80079CB8
/* 07A894 80079C94 ACAB0004 */ sw $t3, 4($a1)
/* 07A898 80079C98 8E0E0268 */ lw $t6, 0x268($s0)
/* 07A89C 80079C9C 00000000 */ nop
/* 07A8A0 80079CA0 ACAE0000 */ sw $t6, ($a1)
/* 07A8A4 80079CA4 8E0F0270 */ lw $t7, 0x270($s0)
/* 07A8A8 80079CA8 AE050268 */ sw $a1, 0x268($s0)
/* 07A8AC 80079CAC 15E00002 */ bnez $t7, .L80079CB8
/* 07A8B0 80079CB0 00000000 */ nop
/* 07A8B4 80079CB4 AE050270 */ sw $a1, 0x270($s0)
.L80079CB8:
/* 07A8B8 80079CB8 8CA20008 */ lw $v0, 8($a1)
/* 07A8BC 80079CBC 00000000 */ nop
/* 07A8C0 80079CC0 30580007 */ andi $t8, $v0, 7
/* 07A8C4 80079CC4 10000007 */ b .L80079CE4
/* 07A8C8 80079CC8 03001025 */ move $v0, $t8
.L80079CCC:
/* 07A8CC 80079CCC 8CB90004 */ lw $t9, 4($a1)
/* 07A8D0 80079CD0 8CA20008 */ lw $v0, 8($a1)
/* 07A8D4 80079CD4 03214024 */ and $t0, $t9, $at
/* 07A8D8 80079CD8 30490007 */ andi $t1, $v0, 7
/* 07A8DC 80079CDC ACA80004 */ sw $t0, 4($a1)
/* 07A8E0 80079CE0 01201025 */ move $v0, $t1
.L80079CE4:
/* 07A8E4 80079CE4 24010003 */ li $at, 3
/* 07A8E8 80079CE8 10410006 */ beq $v0, $at, .L80079D04
/* 07A8EC 80079CEC 00000000 */ nop
/* 07A8F0 80079CF0 10000005 */ b .L80079D08
/* 07A8F4 80079CF4 8E0B0274 */ lw $t3, 0x274($s0)
.L80079CF8:
/* 07A8F8 80079CF8 ACAA0004 */ sw $t2, 4($a1)
/* 07A8FC 80079CFC 0C01E790 */ jal __scTaskComplete
/* 07A900 80079D00 02002025 */ move $a0, $s0
.L80079D04:
/* 07A904 80079D04 8E0B0274 */ lw $t3, 0x274($s0)
.L80079D08:
/* 07A908 80079D08 8E0E0278 */ lw $t6, 0x278($s0)
/* 07A90C 80079D0C 2D6C0001 */ sltiu $t4, $t3, 1
/* 07A910 80079D10 000C6840 */ sll $t5, $t4, 1
/* 07A914 80079D14 2DCF0001 */ sltiu $t7, $t6, 1
/* 07A918 80079D18 01AF3825 */ or $a3, $t5, $t7
/* 07A91C 80079D1C AFA70028 */ sw $a3, 0x28($sp)
/* 07A920 80079D20 02002025 */ move $a0, $s0
/* 07A924 80079D24 27A50030 */ addiu $a1, $sp, 0x30
/* 07A928 80079D28 0C01E835 */ jal __scSchedule
/* 07A92C 80079D2C 27A6002C */ addiu $a2, $sp, 0x2c
/* 07A930 80079D30 8FA70028 */ lw $a3, 0x28($sp)
/* 07A934 80079D34 8FA50030 */ lw $a1, 0x30($sp)
/* 07A938 80079D38 10470005 */ beq $v0, $a3, .L80079D50
/* 07A93C 80079D3C 8FBF001C */ lw $ra, 0x1c($sp)
/* 07A940 80079D40 8FA6002C */ lw $a2, 0x2c($sp)
/* 07A944 80079D44 0C01E7EA */ jal __scExec
/* 07A948 80079D48 02002025 */ move $a0, $s0
/* 07A94C 80079D4C 8FBF001C */ lw $ra, 0x1c($sp)
.L80079D50:
/* 07A950 80079D50 8FB00018 */ lw $s0, 0x18($sp)
/* 07A954 80079D54 03E00008 */ jr $ra
/* 07A958 80079D58 27BD0038 */ addiu $sp, $sp, 0x38
@@ -1,226 +0,0 @@
glabel alSynNew
/* 065D30 80065130 27BDFF90 */ addiu $sp, $sp, -0x70
/* 065D34 80065134 AFBF0044 */ sw $ra, 0x44($sp)
/* 065D38 80065138 AFBE0040 */ sw $fp, 0x40($sp)
/* 065D3C 8006513C AFB7003C */ sw $s7, 0x3c($sp)
/* 065D40 80065140 AFB60038 */ sw $s6, 0x38($sp)
/* 065D44 80065144 AFB50034 */ sw $s5, 0x34($sp)
/* 065D48 80065148 AFB40030 */ sw $s4, 0x30($sp)
/* 065D4C 8006514C AFB3002C */ sw $s3, 0x2c($sp)
/* 065D50 80065150 AFB20028 */ sw $s2, 0x28($sp)
/* 065D54 80065154 AFB10024 */ sw $s1, 0x24($sp)
/* 065D58 80065158 AFB00020 */ sw $s0, 0x20($sp)
/* 065D5C 8006515C 8CB70014 */ lw $s7, 0x14($a1)
/* 065D60 80065160 AC800000 */ sw $zero, ($a0)
/* 065D64 80065164 8CAE0004 */ lw $t6, 4($a1)
/* 065D68 80065168 AC800020 */ sw $zero, 0x20($a0)
/* 065D6C 8006516C AC80001C */ sw $zero, 0x1c($a0)
/* 065D70 80065170 AC8E003C */ sw $t6, 0x3c($a0)
/* 065D74 80065174 8CAF0018 */ lw $t7, 0x18($a1)
/* 065D78 80065178 241800A0 */ li $t8, 160
/* 065D7C 8006517C AC980048 */ sw $t8, 0x48($a0)
/* 065D80 80065180 AC8F0044 */ sw $t7, 0x44($a0)
/* 065D84 80065184 8CB90010 */ lw $t9, 0x10($a1)
/* 065D88 80065188 0080B025 */ move $s6, $a0
/* 065D8C 8006518C 00A0F025 */ move $fp, $a1
/* 065D90 80065190 2408001C */ li $t0, 28
/* 065D94 80065194 AC990024 */ sw $t9, 0x24($a0)
/* 065D98 80065198 AFA80010 */ sw $t0, 0x10($sp)
/* 065D9C 8006519C 00002025 */ move $a0, $zero
/* 065DA0 800651A0 00002825 */ move $a1, $zero
/* 065DA4 800651A4 24070001 */ li $a3, 1
/* 065DA8 800651A8 0C031DFC */ jal alHeapDBAlloc
/* 065DAC 800651AC 02E03025 */ move $a2, $s7
/* 065DB0 800651B0 AFA2005C */ sw $v0, 0x5c($sp)
/* 065DB4 800651B4 0C019439 */ jal alSaveNew
/* 065DB8 800651B8 00402025 */ move $a0, $v0
/* 065DBC 800651BC 8FA9005C */ lw $t1, 0x5c($sp)
/* 065DC0 800651C0 240A004C */ li $t2, 76
/* 065DC4 800651C4 AEC90038 */ sw $t1, 0x38($s6)
/* 065DC8 800651C8 AFAA0010 */ sw $t2, 0x10($sp)
/* 065DCC 800651CC 00002025 */ move $a0, $zero
/* 065DD0 800651D0 00002825 */ move $a1, $zero
/* 065DD4 800651D4 02E03025 */ move $a2, $s7
/* 065DD8 800651D8 0C031DFC */ jal alHeapDBAlloc
/* 065DDC 800651DC 24070002 */ li $a3, 2
/* 065DE0 800651E0 240B0002 */ li $t3, 2
/* 065DE4 800651E4 AEC20034 */ sw $v0, 0x34($s6)
/* 065DE8 800651E8 AECB0040 */ sw $t3, 0x40($s6)
/* 065DEC 800651EC 8FC70004 */ lw $a3, 4($fp)
/* 065DF0 800651F0 240C0004 */ li $t4, 4
/* 065DF4 800651F4 AFAC0010 */ sw $t4, 0x10($sp)
/* 065DF8 800651F8 00002025 */ move $a0, $zero
/* 065DFC 800651FC 00002825 */ move $a1, $zero
/* 065E00 80065200 0C031DFC */ jal alHeapDBAlloc
/* 065E04 80065204 02E03025 */ move $a2, $s7
/* 065E08 80065208 8EC40034 */ lw $a0, 0x34($s6)
/* 065E0C 8006520C 8FC60004 */ lw $a2, 4($fp)
/* 065E10 80065210 0C019409 */ jal alAuxBusNew
/* 065E14 80065214 00402825 */ move $a1, $v0
/* 065E18 80065218 8FC70004 */ lw $a3, 4($fp)
/* 065E1C 8006521C 240D0004 */ li $t5, 4
/* 065E20 80065220 AFAD0010 */ sw $t5, 0x10($sp)
/* 065E24 80065224 00002025 */ move $a0, $zero
/* 065E28 80065228 00002825 */ move $a1, $zero
/* 065E2C 8006522C 0C031DFC */ jal alHeapDBAlloc
/* 065E30 80065230 02E03025 */ move $a2, $s7
/* 065E34 80065234 8EC40034 */ lw $a0, 0x34($s6)
/* 065E38 80065238 8FC60004 */ lw $a2, 4($fp)
/* 065E3C 8006523C 00402825 */ move $a1, $v0
/* 065E40 80065240 0C019409 */ jal alAuxBusNew
/* 065E44 80065244 2484004C */ addiu $a0, $a0, 0x4c
/* 065E48 80065248 240E0020 */ li $t6, 32
/* 065E4C 8006524C AFAE0010 */ sw $t6, 0x10($sp)
/* 065E50 80065250 00002025 */ move $a0, $zero
/* 065E54 80065254 00002825 */ move $a1, $zero
/* 065E58 80065258 02E03025 */ move $a2, $s7
/* 065E5C 8006525C 0C031DFC */ jal alHeapDBAlloc
/* 065E60 80065260 24070001 */ li $a3, 1
/* 065E64 80065264 AEC20030 */ sw $v0, 0x30($s6)
/* 065E68 80065268 8FC70004 */ lw $a3, 4($fp)
/* 065E6C 8006526C 240F0004 */ li $t7, 4
/* 065E70 80065270 AFAF0010 */ sw $t7, 0x10($sp)
/* 065E74 80065274 00002025 */ move $a0, $zero
/* 065E78 80065278 00002825 */ move $a1, $zero
/* 065E7C 8006527C 0C031DFC */ jal alHeapDBAlloc
/* 065E80 80065280 02E03025 */ move $a2, $s7
/* 065E84 80065284 8EC40030 */ lw $a0, 0x30($s6)
/* 065E88 80065288 8FC60004 */ lw $a2, 4($fp)
/* 065E8C 8006528C 0C019421 */ jal alMainBusNew
/* 065E90 80065290 00402825 */ move $a1, $v0
/* 065E94 80065294 00008025 */ move $s0, $zero
/* 065E98 80065298 03C08825 */ move $s1, $fp
/* 065E9C 8006529C 2412004C */ li $s2, 76
.L800652A0:
/* 065EA0 800652A0 9238001C */ lbu $t8, 0x1c($s1)
/* 065EA4 800652A4 02C02025 */ move $a0, $s6
/* 065EA8 800652A8 13000008 */ beqz $t8, .L800652CC
/* 065EAC 800652AC 00102C00 */ sll $a1, $s0, 0x10
/* 065EB0 800652B0 0005CC03 */ sra $t9, $a1, 0x10
/* 065EB4 800652B4 03202825 */ move $a1, $t9
/* 065EB8 800652B8 03C03025 */ move $a2, $fp
/* 065EBC 800652BC 0C019618 */ jal alSynAllocFX
/* 065EC0 800652C0 02E03825 */ move $a3, $s7
/* 065EC4 800652C4 1000000A */ b .L800652F0
/* 065EC8 800652C8 26100001 */ addiu $s0, $s0, 1
.L800652CC:
/* 065ECC 800652CC 02120019 */ multu $s0, $s2
/* 065ED0 800652D0 8EC80034 */ lw $t0, 0x34($s6)
/* 065ED4 800652D4 8EC40030 */ lw $a0, 0x30($s6)
/* 065ED8 800652D8 24050002 */ li $a1, 2
/* 065EDC 800652DC 00004812 */ mflo $t1
/* 065EE0 800652E0 01093021 */ addu $a2, $t0, $t1
/* 065EE4 800652E4 0C0330E4 */ jal alMainBusParam
/* 065EE8 800652E8 00000000 */ nop
/* 065EEC 800652EC 26100001 */ addiu $s0, $s0, 1
.L800652F0:
/* 065EF0 800652F0 2A010002 */ slti $at, $s0, 2
/* 065EF4 800652F4 1420FFEA */ bnez $at, .L800652A0
/* 065EF8 800652F8 26310001 */ addiu $s1, $s1, 1
/* 065EFC 800652FC AEC00004 */ sw $zero, 4($s6)
/* 065F00 80065300 AEC00008 */ sw $zero, 8($s6)
/* 065F04 80065304 AEC00014 */ sw $zero, 0x14($s6)
/* 065F08 80065308 AEC00018 */ sw $zero, 0x18($s6)
/* 065F0C 8006530C AEC0000C */ sw $zero, 0xc($s6)
/* 065F10 80065310 AEC00010 */ sw $zero, 0x10($s6)
/* 065F14 80065314 8FC70004 */ lw $a3, 4($fp)
/* 065F18 80065318 240A00E0 */ li $t2, 224
/* 065F1C 8006531C AFAA0010 */ sw $t2, 0x10($sp)
/* 065F20 80065320 00002025 */ move $a0, $zero
/* 065F24 80065324 00002825 */ move $a1, $zero
/* 065F28 80065328 0C031DFC */ jal alHeapDBAlloc
/* 065F2C 8006532C 02E03025 */ move $a2, $s7
/* 065F30 80065330 8FCB0004 */ lw $t3, 4($fp)
/* 065F34 80065334 00008025 */ move $s0, $zero
/* 065F38 80065338 19600030 */ blez $t3, .L800653FC
/* 065F3C 8006533C 00408825 */ move $s1, $v0
/* 065F40 80065340 26C50004 */ addiu $a1, $s6, 4
/* 065F44 80065344 AFA50048 */ sw $a1, 0x48($sp)
/* 065F48 80065348 2452008C */ addiu $s2, $v0, 0x8c
/* 065F4C 8006534C 24530058 */ addiu $s3, $v0, 0x58
/* 065F50 80065350 24540010 */ addiu $s4, $v0, 0x10
.L80065354:
/* 065F54 80065354 8FA50048 */ lw $a1, 0x48($sp)
/* 065F58 80065358 0220A825 */ move $s5, $s1
/* 065F5C 8006535C 0C0321E4 */ jal alLink
/* 065F60 80065360 02202025 */ move $a0, $s1
/* 065F64 80065364 AE200008 */ sw $zero, 8($s1)
/* 065F68 80065368 8EC50024 */ lw $a1, 0x24($s6)
/* 065F6C 8006536C 02802025 */ move $a0, $s4
/* 065F70 80065370 0C0193BE */ jal alLoadNew
/* 065F74 80065374 02E03025 */ move $a2, $s7
/* 065F78 80065378 02802025 */ move $a0, $s4
/* 065F7C 8006537C 24050001 */ li $a1, 1
/* 065F80 80065380 0C032D50 */ jal alLoadParam
/* 065F84 80065384 00003025 */ move $a2, $zero
/* 065F88 80065388 02602025 */ move $a0, $s3
/* 065F8C 8006538C 0C0193E7 */ jal alResampleNew
/* 065F90 80065390 02E02825 */ move $a1, $s7
/* 065F94 80065394 02602025 */ move $a0, $s3
/* 065F98 80065398 24050001 */ li $a1, 1
/* 065F9C 8006539C 0C033024 */ jal alResampleParam
/* 065FA0 800653A0 02803025 */ move $a2, $s4
/* 065FA4 800653A4 02402025 */ move $a0, $s2
/* 065FA8 800653A8 0C019395 */ jal alEnvmixerNew
/* 065FAC 800653AC 02E02825 */ move $a1, $s7
/* 065FB0 800653B0 02402025 */ move $a0, $s2
/* 065FB4 800653B4 24050001 */ li $a1, 1
/* 065FB8 800653B8 0C032A9F */ jal alEnvmixerParam
/* 065FBC 800653BC 02603025 */ move $a2, $s3
/* 065FC0 800653C0 8EC40034 */ lw $a0, 0x34($s6)
/* 065FC4 800653C4 24050002 */ li $a1, 2
/* 065FC8 800653C8 0C019675 */ jal alAuxBusParam
/* 065FCC 800653CC 02403025 */ move $a2, $s2
/* 065FD0 800653D0 26AC008C */ addiu $t4, $s5, 0x8c
/* 065FD4 800653D4 AEAC000C */ sw $t4, 0xc($s5)
/* 065FD8 800653D8 8FCD0004 */ lw $t5, 4($fp)
/* 065FDC 800653DC 26100001 */ addiu $s0, $s0, 1
/* 065FE0 800653E0 020D082A */ slt $at, $s0, $t5
/* 065FE4 800653E4 263100E0 */ addiu $s1, $s1, 0xe0
/* 065FE8 800653E8 265200E0 */ addiu $s2, $s2, 0xe0
/* 065FEC 800653EC 267300E0 */ addiu $s3, $s3, 0xe0
/* 065FF0 800653F0 1420FFD8 */ bnez $at, .L80065354
/* 065FF4 800653F4 269400E0 */ addiu $s4, $s4, 0xe0
/* 065FF8 800653F8 00008025 */ move $s0, $zero
.L800653FC:
/* 065FFC 800653FC 8FA4005C */ lw $a0, 0x5c($sp)
/* 066000 80065400 8EC60030 */ lw $a2, 0x30($s6)
/* 066004 80065404 0C033138 */ jal alSaveParam
/* 066008 80065408 24050001 */ li $a1, 1
/* 06600C 8006540C 8FC70008 */ lw $a3, 8($fp)
/* 066010 80065410 240E001C */ li $t6, 28
/* 066014 80065414 AFAE0010 */ sw $t6, 0x10($sp)
/* 066018 80065418 00002025 */ move $a0, $zero
/* 06601C 8006541C 00002825 */ move $a1, $zero
/* 066020 80065420 0C031DFC */ jal alHeapDBAlloc
/* 066024 80065424 02E03025 */ move $a2, $s7
/* 066028 80065428 AEC0002C */ sw $zero, 0x2c($s6)
/* 06602C 8006542C 8FCF0008 */ lw $t7, 8($fp)
/* 066030 80065430 00401825 */ move $v1, $v0
/* 066034 80065434 19E0000A */ blez $t7, .L80065460
/* 066038 80065438 00000000 */ nop
.L8006543C:
/* 06603C 8006543C 8ED8002C */ lw $t8, 0x2c($s6)
/* 066040 80065440 26100001 */ addiu $s0, $s0, 1
/* 066044 80065444 AC780000 */ sw $t8, ($v1)
/* 066048 80065448 AEC3002C */ sw $v1, 0x2c($s6)
/* 06604C 8006544C 8FD90008 */ lw $t9, 8($fp)
/* 066050 80065450 2463001C */ addiu $v1, $v1, 0x1c
/* 066054 80065454 0219082A */ slt $at, $s0, $t9
/* 066058 80065458 1420FFF8 */ bnez $at, .L8006543C
/* 06605C 8006545C 00000000 */ nop
.L80065460:
/* 066060 80065460 AED70028 */ sw $s7, 0x28($s6)
/* 066064 80065464 8FBF0044 */ lw $ra, 0x44($sp)
/* 066068 80065468 8FBE0040 */ lw $fp, 0x40($sp)
/* 06606C 8006546C 8FB7003C */ lw $s7, 0x3c($sp)
/* 066070 80065470 8FB60038 */ lw $s6, 0x38($sp)
/* 066074 80065474 8FB50034 */ lw $s5, 0x34($sp)
/* 066078 80065478 8FB40030 */ lw $s4, 0x30($sp)
/* 06607C 8006547C 8FB3002C */ lw $s3, 0x2c($sp)
/* 066080 80065480 8FB20028 */ lw $s2, 0x28($sp)
/* 066084 80065484 8FB10024 */ lw $s1, 0x24($sp)
/* 066088 80065488 8FB00020 */ lw $s0, 0x20($sp)
/* 06608C 8006548C 03E00008 */ jr $ra
/* 066090 80065490 27BD0070 */ addiu $sp, $sp, 0x70

Some files were not shown because too many files have changed in this diff Show More