Audio_Load OK and Documented (#620)

* Copy audio_load progress from main branch

* Fix warning

* fix UB

* cleanup WIP

* Add docs, bss still broken

* bss fix

* bytesRemaining with size_t

* PR Suggestions

* PR Suggestions

* Fix bss

* Fix bss

* PR Suggestions
This commit is contained in:
engineer124 2022-03-24 12:22:13 +11:00 committed by GitHub
parent 92c4d42f44
commit b852a9a930
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 2558 additions and 568 deletions

View File

@ -7,8 +7,8 @@ void bootproc(void);
void Idle_ThreadEntry(void* arg);
void ViConfig_UpdateVi(u32 arg0);
void ViConfig_UpdateBlack(void);
s32 DmaMgr_DMARomToRam(u32 src, void* dst, size_t size);
void DmaMgr_DmaCallback0(OSPiHandle* piHandle, OSIoMesg* mb, s32 direction);
s32 DmaMgr_DmaRomToRam(u32 src, void* dst, size_t size);
s32 DmaMgr_DmaHandler(OSPiHandle* piHandle, OSIoMesg* mb, s32 direction);
DmaEntry* DmaMgr_FindDmaEntry(u32 vromAddr);
u32 DmaMgr_TranslateVromToRom(u32 vromAddr);
s32 DmaMgr_FindDmaIndex(u32 vromAddr);
@ -3304,27 +3304,27 @@ s32 osFlashReadArray(OSIoMesg* mb, s32 priority, u32 pageNum, void* dramAddr, u3
// void func_8018B0F0(void);
// void func_8018B10C(void);
// void func_8018B250(void);
// void func_8018B318(void);
void AudioHeap_DiscardFont(s32 fontId);
// void func_8018B474(void);
// void func_8018B4F8(void);
void* AudioHeap_WritebackDCache(void* mem, size_t size);
// void func_8018B520(void);
// void func_8018B578(void);
void* AudioHeap_AllocAttemptExternal(AudioAllocPool* pool, size_t size);
void* AudioHeap_AllocDmaMemory(AudioAllocPool* pool, u32 size);
// void func_8018B608(void);
// void func_8018B640(void);
void* AudioHeap_AllocZeroed(AudioAllocPool* pool, size_t size);
// void func_8018B69C(void);
// void func_8018B6E8(void);
// void func_8018B740(void);
void* AudioHeap_Alloc(AudioAllocPool* pool, size_t size);
void AudioHeap_AllocPoolInit(AudioAllocPool* pool, void* mem, size_t size);
// void func_8018B768(void);
// void func_8018B77C(void);
// void func_8018B7BC(void);
// void func_8018B8FC(void);
void AudioHeap_InitMainPool(s32 initPoolSize);
// void func_8018B95C(void);
// void func_8018B9E0(void);
// void func_8018BA64(void);
// void func_8018BB28(void);
// void func_8018BBEC(void);
// void func_8018C380(void);
void* AudioHeap_AllocCached(s32 tableType, size_t size, s32 cache, s32 id);
void* AudioHeap_SearchCaches(s32 tableType, s32 cache, s32 id);
// void func_8018C3D8(void);
// void func_8018C8E8(void);
// void func_8018C93C(void);
@ -3332,11 +3332,11 @@ void* AudioHeap_AllocDmaMemory(AudioAllocPool* pool, u32 size);
// void func_8018CB70(void);
// void func_8018CB78(void);
// void func_8018CC3C(void);
// void func_8018CCA8(void);
s32 AudioHeap_ResetStep(void);
// void func_8018CFAC(void);
// void func_8018D57C(void);
// void func_8018D5D4(void);
// void func_8018D658(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
void* AudioHeap_SearchPermanentCache(s32 tableType, s32 id);
void* AudioHeap_AllocPermanent(s32 tableType, s32 id, size_t size);
void* AudioHeap_AllocSampleCache(size_t size, s32 fontId, void* sampleAddr, s8 medium, s32 cache);
// void func_8018D6C8(void);
// void func_8018D760(void);
// void func_8018DA50(void);
@ -3347,84 +3347,39 @@ void* AudioHeap_AllocDmaMemory(AudioAllocPool* pool, u32 size);
// void func_8018DDD4(void);
// void func_8018DF24(void);
// void func_8018DFE0(void);
// void func_8018E00C(void);
void AudioHeap_ApplySampleBankCache(s32 sampleBankId);
// void func_8018E03C(void);
// void func_8018E2A8(void);
// void func_8018E344(void);
// void func_8018E8C8(void);
// void func_8018EB60(void);
// void func_8018EC4C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
// void func_8018EF88(void);
s32 AudioLoad_IsFontLoadComplete(s32 bankId);
// void func_8018F298(void);
// void func_8018F310(void);
// void func_8018F388(void);
// void func_8018F3B8(void);
// void func_8018F3E8(void);
// void func_8018F448(void);
// void func_8018F478(void);
// void func_8018F4D8(void);
// void func_8018F588(void);
// void func_8018F604(void);
// void func_8018F6F0(void);
// void func_8018F7C0(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
// void func_8018F7F8(void);
// void func_8018F83C(void);
// void func_8018F880(void);
// void func_8018F8C4(void);
// void func_8018F908(void);
// void func_8018F9B8(void);
// void func_8018FA60(void);
// void func_8018FAD0(void);
// void func_8018FB20(void);
// void func_8018FB78(void);
// void func_8018FCCC(void);
// void func_8018FD20(void);
// void func_8018FD40(void);
// void func_8018FE5C(void);
// void func_8018FF60(void);
// void func_80190204(void);
// void func_80190240(void);
// void func_80190294(void);
// void func_801902D8(void);
// void func_80190544(void);
// void func_80190668(void);
// void func_8019067C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8);
// void func_8019075C(void);
// void func_8019077C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
// void func_80190B08(void);
void func_80190B38(void* callback);
// void func_80190B50(void);
// void func_80190BB0(void);
// void func_80190F50(void);
// void func_80190F64(void);
// void func_80191134(void);
// void func_801911CC(void);
// void func_80191240(void);
// void func_801913C8(void);
// void func_8019144C(void);
// void func_80191460(void);
// void func_80191568(void);
// void func_80191598(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8);
// void func_8019161C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7);
// void func_80191740(void);
// void func_80191864(void);
// void func_80191870(void);
// void func_801919AC(void);
// void func_80191B40(void);
// void func_80191BD0(void);
// void func_80191C40(void);
// void func_80191C54(void);
// void func_80191D94(void);
// void func_8019218C(void);
// void func_80192340(void);
// void func_80192388(void);
// void func_801924BC(void);
// void func_80192514(void);
// void func_80192990(void);
// void func_80192AE8(void);
// void func_80192B54(void);
// void func_80192BAC(void);
void AudioLoad_DecreaseSampleDmaTtls(void);
void* AudioLoad_DmaSampleData(uintptr_t devAddr, size_t size, s32 arg2, u8* dmaIndexRef, s32 medium);
void AudioLoad_InitSampleDmaBuffers(s32 numNotes);
s32 AudioLoad_IsFontLoadComplete(s32 fontId);
s32 AudioLoad_IsSeqLoadComplete(s32 seqId);
void AudioLoad_SetFontLoadStatus(s32 fontId, s32 status);
void AudioLoad_SetSeqLoadStatus(s32 seqId, s32 status);
void AudioLoad_SyncLoadSeqParts(s32 seqId, s32 arg1, s32 arg2, OSMesgQueue* arg3);
s32 AudioLoad_SyncLoadInstrument(s32 fontId, s32 instId, s32 drumId);
void AudioLoad_AsyncLoadSeq(s32 seqId, s32 arg1, s32 retData, OSMesgQueue* retQueue);
void AudioLoad_AsyncLoadSampleBank(s32 sampleBankId, s32 arg1, s32 retData, OSMesgQueue* retQueue);
void AudioLoad_AsyncLoadFont(s32 fontId, s32 arg1, s32 retData, OSMesgQueue* retQueue);
u8* AudioLoad_GetFontsForSequence(s32 seqId, u32* outNumFonts);
void AudioLoad_DiscardSeqFonts(s32 seqId);
void func_8018FA60(u32 tableType, u32 id, s32 arg2, s32 arg3);
s32 AudioLoad_SyncIniPlayer(s32 playerIdx, s32 seqId, s32 arg2);
s32 AudioLoad_SyncInitSetSeqqPlayerSkipTicks(s32 playerIdx, s32 seqId, s32 skipTicks);
void AudioLoad_ProcessLoads(s32 resetStatus);
void AudioLoad_SetDmaHandler(DmaHandler callback);
void AudioLoad_Init(void* heap, u32 heapSize);
void AudioLoad_InitSlowLoads(void);
s32 AudioLoad_SlowLoadSample(s32 fontId, s32 instId, s8* isDone);
s32 AudioLoad_SlowLoadSeq(s32 seqId, u8* ramAddr, s8* isDone);
void AudioLoad_InitAsyncLoads(void);
void AudioLoad_LoadPermanentSamples(void);
void AudioLoad_ScriptLoad(s32 tableType, s32 id, s8* isDone);
void AudioLoad_ProcessScriptLoads(void);
void AudioLoad_InitScriptLoads(void);
AudioTask* func_80192BE0(void);
// void func_80192C00(void);
// void func_8019319C(void);
@ -3459,7 +3414,7 @@ AudioTask* func_80192BE0(void);
// void func_80194548(void);
// void func_80194568(void);
// void func_80194668(void);
// void func_801946E4(void);
void Audio_InitMesgQueues(void);
void Audio_InvalDCache(void* buf, size_t size);
void Audio_WritebackDCache(void* buf, size_t size);
// void func_80194790(void);
@ -3520,7 +3475,7 @@ void func_80199268(s32* param_1);
// void func_8019A0BC(void);
// void func_8019AA3C(void);
// void func_8019AAF0(void);
// void func_8019AB40(void);
void AudioSeq_ResetSequencePlayer(SequencePlayer* seqPlayer);
// void func_8019AC10(void);
// void func_8019ACEC(void);
// void func_8019ADBC(void);

View File

@ -153,6 +153,7 @@ extern GraphicsContext* __gfxCtx;
#define ALIGN8(val) (((val) + 7) & ~7)
#define ALIGN16(val) (((val) + 0xF) & ~0xF)
#define ALIGN64(val) (((val) + 0x3F) & ~0x3F)
#define ALIGN256(val) (((val) + 0xFF) & ~0xFF)
#define SQ(x) ((x) * (x))
#define ABS(x) ((x) >= 0 ? (x) : -(x))

View File

@ -1656,7 +1656,7 @@ extern f32 gDefaultPanVolume[];
// extern UNK_TYPE1 D_801D5FD4;
extern UNK_PTR D_801D5FE0;
// extern UNK_TYPE1 D_801D5FE4;
// extern UNK_TYPE4 D_801D5FE8;
extern s32 gAudioContextInitalized;
// extern UNK_TYPE4 D_801D5FEC;
// extern UNK_TYPE4 D_801D5FF0;
// extern UNK_TYPE4 D_801D5FF4;
@ -3070,10 +3070,10 @@ extern const s16 gAudioTatumInit[];
extern const AudioContextInitSizes gAudioContextInitSizes;
// extern UNK_TYPE4 D_801E1108;
// extern UNK_TYPE4 D_801E110C;
// extern UNK_TYPE2 gSoundFontTable;
// extern UNK_TYPE1 gSequenceFontTable;
// extern UNK_TYPE2 gSequenceTable;
// extern UNK_TYPE1 gSampleBankTable;
extern u8 gSoundFontTable[];
extern u8 gSequenceFontTable[];
extern u8 gSequenceTable[];
extern u8 gSampleBankTable[];
extern u64 aspMainDataStart[];
// bss
@ -3593,10 +3593,10 @@ extern SoundRequest D_801FE7C0[1];
// extern UNK_TYPE1 D_80200BCE;
// extern UNK_TYPE1 D_80200BD0;
extern AudioContext gAudioContext; // at 0x80200C70
// extern UNK_TYPE4 D_80208E68;
// extern UNK_TYPE4 D_80208E6C;
// extern UNK_TYPE4 D_80208E70;
// extern UNK_TYPE4 D_80208E74;
extern void (*D_80208E68)(void);
extern u32 (*D_80208E6C)(s8 value, SequenceChannel* channel);
extern s32 (*D_80208E70)(SoundFontSample*, s32, s8, s32);
extern Acmd* (*D_80208E74)(Acmd*, s32, s32);
// post-code buffers
extern u8 gGfxSPTaskYieldBuffer[OS_YIELD_DATA_SIZE];

View File

@ -49,11 +49,10 @@ typedef enum {
typedef enum {
/* 0 */ MEDIUM_RAM,
/* 1 */ MEDIUM_UNK1,
/* 1 */ MEDIUM_UNK,
/* 2 */ MEDIUM_CART,
/* 3 */ MEDIUM_DISK_DRIVE,
/* 4 */ MEDIUM_UNK4,
/* 5 */ MEDIUM_UNK5
/* 5 */ MEDIUM_RAM_UNLOADED = 5
} SampleMedium;
typedef enum {
@ -71,6 +70,14 @@ typedef enum {
/* 2 */ SAMPLE_TABLE
} SampleBankTableType;
typedef enum {
/* 0 */ CACHE_LOAD_PERMANENT,
/* 1 */ CACHE_LOAD_PERSISTENT,
/* 2 */ CACHE_LOAD_TEMPORARY,
/* 3 */ CACHE_LOAD_EITHER,
/* 4 */ CACHE_LOAD_EITHER_NOSYNC
} AudioCacheLoadType;
typedef enum {
/* 0 */ CACHE_TEMPORARY,
/* 1 */ CACHE_PERSISTENT,
@ -78,6 +85,15 @@ typedef enum {
/* 3 */ CACHE_PERMANENT
} AudioCacheType;
typedef enum {
/* 0 */ LOAD_STATUS_0,
/* 1 */ LOAD_STATUS_1,
/* 2 */ LOAD_STATUS_2, // Samples/Seqplayer
/* 3 */ LOAD_STATUS_3, // Sequences
/* 4 */ LOAD_STATUS_4, // SoundFonts
/* 5 */ LOAD_STATUS_5 // Permanent
} AudioLoadStatus;
typedef s32 (*DmaHandler)(OSPiHandle* handle, OSIoMesg* mb, s32 direction);
struct Note;
@ -242,9 +258,9 @@ typedef struct {
} SoundFont; // size = 0x14
typedef struct {
/* 0x00 */ u8* pc;
/* 0x00 */ u8* pc; // program counter
/* 0x04 */ u8* stack[4];
/* 0x14 */ u8 remLoopIters[4];
/* 0x14 */ u8 remLoopIters[4]; // remaining loop iterations
/* 0x18 */ u8 depth;
/* 0x19 */ s8 value;
} SeqScriptState; // size = 0x1C
@ -399,7 +415,7 @@ typedef struct SequenceChannel {
/* 0x12 */ VibratoSubStruct vibrato;
/* 0x20 */ u16 delay;
/* 0x22 */ u16 unk_20;
/* 0x24 */ u16 unk_22;
/* 0x24 */ u16 unk_22; // Used for indexing data
/* 0x26 */ s16 instOrWave; // either 0 (none), instrument index + 1, or
// 0x80..0x83 for sawtooth/triangle/sine/square waves.
/* 0x28 */ s16 transposition;
@ -623,32 +639,41 @@ typedef struct {
/* 0x16 */ s16 lowPassFilterCutoffRight;
} ReverbSettings; // size = 0x18
/**
* The high-level audio specifications requested when initializing or resetting the audio heap.
* Most often resets during scene transitions, but will highly depend on game play.
*/
typedef struct {
/* 0x00 */ u32 frequency;
/* 0x00 */ u32 samplingFreq; // Target sampling rate in Hz
/* 0x04 */ u8 unk_04;
/* 0x05 */ u8 numNotes;
/* 0x06 */ u8 numSequencePlayers;
/* 0x07 */ u8 unk_07[0x2]; // unused, set to zero
/* 0x09 */ u8 numReverbs;
/* 0x0A */ u8 unk_0A[0x2];
/* 0x0C */ ReverbSettings* reverbSettings;
/* 0x10 */ u16 sampleDmaBufSize1;
/* 0x12 */ u16 sampleDmaBufSize2;
/* 0x14 */ u16 unk_14;
/* 0x18 */ u32 persistentSeqMem;
/* 0x1C */ u32 persistentFontMem;
/* 0x20 */ u32 persistentSampleMem;
/* 0x24 */ u32 temporarySeqMem;
/* 0x28 */ u32 temporaryFontMem;
/* 0x2C */ u32 temporarySampleMem;
/* 0x30 */ s32 persistentSampleCacheMem;
/* 0x34 */ s32 temporarySampleCacheMem;
/* 0x18 */ size_t persistentSeqCacheSize; // size of cache on audio pool to store sequences persistently
/* 0x1C */ size_t persistentFontCacheSize; // size of cache on audio pool to store soundFonts persistently
/* 0x20 */ size_t persistentSampleBankCacheSize; // size of cache on audio pool to store entire sample banks persistently
/* 0x24 */ size_t temporarySeqCacheSize; // size of cache on audio pool to store sequences temporarily
/* 0x28 */ size_t temporaryFontCacheSize; // size of cache on audio pool to store soundFonts temporarily
/* 0x2C */ size_t temporarySampleBankCacheSize; // size of cache on audio pool to store entire sample banks temporarily
/* 0x30 */ size_t persistentSampleCacheSize; // size of cache on audio pool to store individual samples persistently
/* 0x34 */ size_t temporarySampleCacheSize; // size of cache on audio pool to store individual samples temporarily
} AudioSpec; // size = 0x38
/**
* The audio buffer stores the fully processed digital audio before it is sent to the audio interface (AI), then to the
* digital-analog converter (DAC), then to play on the speakers. The audio buffer is written to by the rsp after
* processing audio commands, and the audio buffer is read by AI which sends the data to the DAC.
* This struct parameterizes that buffer.
*/
typedef struct {
/* 0x00 */ s16 specUnk4;
/* 0x02 */ u16 frequency;
/* 0x04 */ u16 aiFrequency;
/* 0x02 */ u16 samplingFreq; // Target sampling rate in Hz
/* 0x04 */ u16 aiSamplingFreq; // True sampling rate set to the audio interface (AI) for the audio digital-analog converter (DAC)
/* 0x06 */ s16 samplesPerFrameTarget;
/* 0x08 */ s16 maxAiBufferLength;
/* 0x0A */ s16 minAiBufferLength;
@ -663,20 +688,29 @@ typedef struct {
/* 0x24 */ f32 unk_24;
} AudioBufferParameters; // size = 0x28
/**
* Meta-data associated with a pool (contain withing the Audio Heap)
*/
typedef struct {
/* 0x0 */ u8* start;
/* 0x4 */ u8* cur;
/* 0x8 */ s32 size;
/* 0xC */ s32 count;
/* 0x0 */ u8* startAddr; // start addr of the pool
/* 0x4 */ u8* curAddr; // address of the next available memory for allocation
/* 0x8 */ size_t size; // size of the pool
/* 0xC */ s32 count; // number of entries allocated to the pool
} AudioAllocPool; // size = 0x10
/**
* Audio cache entry data to store a single entry containing either a sequence, soundfont, or entire sample banks
*/
typedef struct {
/* 0x0 */ u8* ptr;
/* 0x4 */ u32 size;
/* 0x0 */ u8* addr;
/* 0x4 */ size_t size;
/* 0x8 */ s16 tableType;
/* 0xA */ s16 id;
} AudioCacheEntry; // size = 0xC
/**
* Audio cache entry data to store a single entry containing an individual sample
*/
typedef struct {
/* 0x00 */ s8 inUse;
/* 0x01 */ s8 origMedium;
@ -684,13 +718,16 @@ typedef struct {
/* 0x03 */ char unk_03[0x5];
/* 0x08 */ u8* allocatedAddr;
/* 0x0C */ void* sampleAddr;
/* 0x10 */ u32 size;
/* 0x10 */ size_t size;
} SampleCacheEntry; // size = 0x14
/**
* Audio cache entry data to store individual samples
*/
typedef struct {
/* 0x000 */ AudioAllocPool pool;
/* 0x010 */ SampleCacheEntry entries[128];
/* 0xA10 */ s32 size;
/* 0xA10 */ s32 numEntries;
} AudioSampleCache; // size = 0xA14
typedef struct {
@ -712,22 +749,21 @@ typedef struct {
} AudioCache; // size = 0x110
typedef struct {
/* 0x0 */ u32 wantPersistent;
/* 0x4 */ u32 wantTemporary;
} AudioPoolSplit2; // size = 0x8
/* 0x0 */ size_t persistentCommonPoolSize;
/* 0x4 */ size_t temporaryCommonPoolSize;
} AudioCachePoolSplit; // size = 0x8
typedef struct {
/* 0x0 */ u32 wantSeq;
/* 0x4 */ u32 wantFont;
/* 0x8 */ u32 wantSample;
} AudioPoolSplit3; // size = 0xC
/* 0x0 */ size_t seqCacheSize;
/* 0x4 */ size_t fontCacheSize;
/* 0x8 */ size_t sampleBankCacheSize;
} AudioCommonPoolSplit; // size = 0xC
typedef struct {
/* 0x0 */ u32 wantSeq;
/* 0x4 */ u32 wantFont;
/* 0x8 */ u32 wantSample;
/* 0xC */ u32 wantCustom;
} AudioPoolSplit4; // size = 0x10
/* 0x0 */ size_t miscPoolSize;
/* 0x4 */ u32 unkSizes[2];
/* 0xC */ size_t cachePoolSize;
} AudioSessionPoolSplit; // size = 0x10
typedef struct {
/* 0x00 */ u32 endAndMediumKey;
@ -763,10 +799,10 @@ typedef struct {
/* 0x01 */ s8 delay;
/* 0x02 */ s8 medium;
/* 0x04 */ u8* ramAddr;
/* 0x08 */ u32 curDevAddr;
/* 0x08 */ uintptr_t curDevAddr;
/* 0x0C */ u8* curRamAddr;
/* 0x10 */ u32 bytesRemaining;
/* 0x14 */ u32 chunkSize;
/* 0x10 */ size_t bytesRemaining;
/* 0x14 */ size_t chunkSize;
/* 0x18 */ s32 unkMediumParam;
/* 0x1C */ u32 retMsg;
/* 0x20 */ OSMesgQueue* retQueue;
@ -780,12 +816,12 @@ typedef struct {
/* 0x01 */ u8 seqOrFontId;
/* 0x02 */ u16 instId;
/* 0x04 */ s32 unkMediumParam;
/* 0x08 */ s32 curDevAddr;
/* 0x08 */ uintptr_t curDevAddr;
/* 0x0C */ u8* curRamAddr;
/* 0x10 */ u8* ramAddr;
/* 0x14 */ s32 status;
/* 0x18 */ s32 bytesRemaining;
/* 0x1C */ s8* isDone;
/* 0x18 */ size_t bytesRemaining;
/* 0x1C */ s8* isDone; // TODO: rename in OoT and sync up here. This is an external status while (s32 status) is an internal status
/* 0x20 */ SoundFontSample sample;
/* 0x30 */ OSMesgQueue msgqueue;
/* 0x48 */ OSMesg msg;
@ -793,8 +829,8 @@ typedef struct {
} AudioSlowLoad; // size = 0x64
typedef struct {
/* 0x00 */ u32 romAddr;
/* 0x04 */ u32 size;
/* 0x00 */ uintptr_t romAddr;
/* 0x04 */ size_t size;
/* 0x08 */ s8 medium;
/* 0x09 */ s8 cachePolicy;
/* 0x0A */ s16 shortData1;
@ -805,7 +841,7 @@ typedef struct {
typedef struct {
/* 0x00 */ s16 numEntries;
/* 0x02 */ s16 unkMediumParam;
/* 0x04 */ u32 romAddr;
/* 0x04 */ uintptr_t romAddr;
/* 0x08 */ char pad[0x8];
/* 0x10 */ AudioTableEntry entries[1]; // (dynamic size)
} AudioTable; // size >= 0x20
@ -819,18 +855,18 @@ typedef struct {
typedef struct {
/* 0x00 */ u8* ramAddr;
/* 0x04 */ u32 devAddr;
/* 0x04 */ uintptr_t devAddr;
/* 0x08 */ u16 sizeUnused;
/* 0x0A */ u16 size;
/* 0x0C */ u8 unused;
/* 0x0D */ u8 reuseIndex; // position in sSampleDmaReuseQueue1/2, if ttl == 0
/* 0x0E */ u8 ttl; // duration after which the DMA can be discarded
/* 0x0E */ u8 ttl; // Time To Live: duration after which the DMA can be discarded
} SampleDma; // size = 0x10
typedef struct {
/* 0x0000 */ char unk_0000;
/* 0x0001 */ s8 numSynthesisReverbs;
/* 0x0002 */ u16 unk_2;
/* 0x0002 */ u16 unk_2; // reads from audio spec unk_14, never used, always set to 0x7FFF
/* 0x0004 */ u16 unk_4;
/* 0x0006 */ char unk_0006[0xA];
/* 0x0010 */ s16* curLoadedBook;
@ -862,13 +898,13 @@ typedef struct {
/* 0x263C */ SampleDma* sampleDmas;
/* 0x2640 */ u32 sampleDmaCount;
/* 0x2644 */ u32 sampleDmaListSize1;
/* 0x2648 */ s32 unused2628;
/* 0x2648 */ s32 unused2648;
/* 0x264C */ u8 sampleDmaReuseQueue1[0x100]; // read pos <= write pos, wrapping mod 256
/* 0x274C */ u8 sampleDmaReuseQueue2[0x100];
/* 0x284C */ u8 sampleDmaReuseQueue1RdPos;
/* 0x284D */ u8 sampleDmaReuseQueue2RdPos;
/* 0x284E */ u8 sampleDmaReuseQueue1WrPos;
/* 0x284F */ u8 sampleDmaReuseQueue2WrPos;
/* 0x284C */ u8 sampleDmaReuseQueue1RdPos; // Read position for dma 1
/* 0x284D */ u8 sampleDmaReuseQueue2RdPos; // Read position for dma 2
/* 0x284E */ u8 sampleDmaReuseQueue1WrPos; // Write position for dma 1
/* 0x284F */ u8 sampleDmaReuseQueue2WrPos; // Write position for dma 2
/* 0x2850 */ AudioTable* sequenceTable;
/* 0x2854 */ AudioTable* soundFontTable;
/* 0x2858 */ AudioTable* sampleBankTable;
@ -886,52 +922,52 @@ typedef struct {
/* 0x28B8 */ s32 numNotes;
/* 0x2898 */ s16 tempoInternalToExternal;
/* 0x28BE */ s8 soundMode;
/* 0x28C0 */ s32 totalTaskCnt;
/* 0x28C0 */ s32 totalTaskCount; // The total number of times the top-level function on the audio thread is run since the last audio reset
/* 0x28C4 */ s32 curAudioFrameDmaCount;
/* 0x28C8 */ s32 rspTaskIdx;
/* 0x28CC */ s32 curAIBufIdx;
/* 0x28AC */ Acmd* abiCmdBufs[2];
/* 0x28C8 */ s32 rspTaskIndex;
/* 0x28CC */ s32 curAiBuffferIndex;
/* 0x28AC */ Acmd* abiCmdBufs[2]; // Pointer to audio heap where the audio binary interface command lists are stored. Two lists that alternative every frame
/* 0x28B4 */ Acmd* curAbiCmdBuf;
/* 0x28DC */ AudioTask* currTask;
/* 0x28DC */ AudioTask* curTask;
/* 0x28C0 */ AudioTask rspTask[2];
/* 0x2980 */ f32 unk_2960;
/* 0x2984*/ s32 refreshRate;
/* 0x2988 */ s16* aiBuffers[3];
/* 0x2994 */ s16 aiBufLengths[3];
/* 0x2988 */ s16* aiBuffers[3]; // Pointers to the audio buffer allocated on the initPool contained in the audio heap. Stores fully processed digital audio before transferring to the audio interface (AI)
/* 0x2994 */ s16 aiBufLengths[3]; // Number of bytes to transfer to the audio interface buffer
/* 0x299C */ u32 audioRandom;
/* 0x29A0 */ s32 audioErrorFlags;
/* 0x29A4 */ volatile u32 resetTimer;
/* 0x29A8 */ u32 (*unk_29A8[4])(s8 value, SequenceChannel* channel);
/* 0x29B8 */ s8 unk_29B8;
/* 0x29BC */ s32 unk_29BC; // sMaxAbiCmdCnt
/* 0x29C0 */ AudioAllocPool audioSessionPool;
/* 0x29D0 */ AudioAllocPool externalPool;
/* 0x29E0 */ AudioAllocPool audioInitPool;
/* 0x29F0 */ AudioAllocPool notesAndBuffersPool;
/* 0x29C0 */ AudioAllocPool audioSessionPool; // A sub-pool to main pool, contains all sub-pools and data that changes every audio reset
/* 0x29D0 */ AudioAllocPool externalPool; // pool allocated on an external device. Never used in game
/* 0x29E0 */ AudioAllocPool audioInitPool; // A sub-pool to the main pool, contains all sub-pools and data that persists every audio reset
/* 0x29F0 */ AudioAllocPool miscPool; // A sub-pool to the session pool,
/* 0x2A00 */ char unk_29D0[0x20]; // probably two unused pools
/* 0x2A20 */ AudioAllocPool cachePool;
/* 0x2A30 */ AudioAllocPool persistentCommonPool;
/* 0x2A40 */ AudioAllocPool temporaryCommonPool;
/* 0x2A50 */ AudioCache seqCache;
/* 0x2B60 */ AudioCache fontCache;
/* 0x2C70 */ AudioCache sampleBankCache;
/* 0x2D80 */ AudioAllocPool permanentPool;
/* 0x2D90 */ AudioCacheEntry permanentCache[32];
/* 0x3690 */ AudioSampleCache persistentSampleCache;
/* 0x40A4 */ AudioSampleCache temporarySampleCache;
/* 0x4338 */ AudioPoolSplit4 sessionPoolSplit;
/* 0x4348 */ AudioPoolSplit2 cachePoolSplit;
/* 0x4350 */ AudioPoolSplit3 persistentCommonPoolSplit;
/* 0x435C */ AudioPoolSplit3 temporaryCommonPoolSplit;
/* 0x2A20 */ AudioAllocPool cachePool; // The common pool for all cache entries
/* 0x2A30 */ AudioAllocPool persistentCommonPool; // A sub-pool to the cache pool, contains all caches for data stored persistently
/* 0x2A40 */ AudioAllocPool temporaryCommonPool; // A sub-pool to the cache pool, contains all caches for data stored temporarily
/* 0x2A50 */ AudioCache seqCache; // Cache to store sequences
/* 0x2B60 */ AudioCache fontCache; // Cache to store soundFonts
/* 0x2C70 */ AudioCache sampleBankCache; // Cache for loading entire sample banks
/* 0x2D80 */ AudioAllocPool permanentPool; // Pool to stores audio data that is always loaded in. Primarily used for sfxs
/* 0x2D90 */ AudioCacheEntry permanentEntries[32]; // indificual entries to the permanent pool
/* 0x3690 */ AudioSampleCache persistentSampleCache; // Stores individual samples persistently
/* 0x40A4 */ AudioSampleCache temporarySampleCache; // Stores individual samples temporarily
/* 0x4338 */ AudioSessionPoolSplit sessionPoolSplit; // splits session pool into the cache pool and misc pool
/* 0x4348 */ AudioCachePoolSplit cachePoolSplit; // splits cache pool into the persistent & temporary common pools
/* 0x4350 */ AudioCommonPoolSplit persistentCommonPoolSplit; // splits persistent common pool into caches for sequences, soundFonts, sample banks
/* 0x435C */ AudioCommonPoolSplit temporaryCommonPoolSplit; // splits temporary common pool into caches for sequences, soundFonts, sample banks
/* 0x4368 */ u8 sampleFontLoadStatus[0x30];
/* 0x4398 */ u8 fontLoadStatus[0x30];
/* 0x43C8 */ u8 seqLoadStatus[0x80];
/* 0x4448 */ volatile u8 resetStatus;
/* 0x4449 */ u8 audioResetSpecIdToLoad;
/* 0x444C */ s32 audioResetFadeOutFramesLeft;
/* 0x4450 */ f32* unk_3520;
/* 0x4450 */ f32* unk_3520; // fadeOutVelocities for ADSR
/* 0x4454 */ u8* audioHeap;
/* 0x4458 */ u32 audioHeapSize;
/* 0x4458 */ size_t audioHeapSize;
/* 0x445C */ Note* notes;
/* 0x4460 */ SequencePlayer seqPlayers[5];
/* 0x4B40 */ SequenceLayer sequenceLayers[80];
@ -939,11 +975,10 @@ typedef struct {
/* 0x7924 */ s32 noteSubEuOffset;
/* 0x7928 */ AudioListItem layerFreeList;
/* 0x7938 */ NotePool noteFreeLists;
/* 0x7978 */ u8 cmdWrPos;
/* 0x7979 */ u8 cmdRdPos;
/* 0x7978 */ u8 cmdWritePos;
/* 0x7979 */ u8 cmdReadPos;
/* 0x797A */ u8 cmdQueueFinished;
/* 0x797C */ u16 unk_5BDC[4];
/* 0x7984 */ char unk_7984[4];
/* 0x797C */ u16 activeChannelsFlags[5]; // bitwise flag for 16 channels. Only channels with bit turned on will be processed
/* 0x7988 */ OSMesgQueue* audioResetQueueP;
/* 0x798C */ OSMesgQueue* taskStartQueueP;
/* 0x7990 */ OSMesgQueue* cmdProcQueueP;
@ -953,7 +988,7 @@ typedef struct {
/* 0x79DC */ OSMesg taskStartMsgs[1];
/* 0x79E0 */ OSMesg audioResetMesgs[1];
/* 0x79E4 */ OSMesg cmdProcMsgs[4];
/* 0x79F4 */ AudioCmd cmdBuf[0x100];
/* 0x79F4 */ AudioCmd cmdBuf[0x100]; // Audio commands used to transfer audio requests from the graph thread to the audio thread
/* 0x81F4 */ char unk_81F4[4];
} AudioContext; // size = 0x81F8
@ -972,9 +1007,9 @@ typedef struct {
} NoteSubAttributes; // size = 0x1A
typedef struct {
/* 0x0 */ u32 heapSize;
/* 0x4 */ u32 initPoolSize;
/* 0x8 */ u32 permanentPoolSize;
/* 0x0 */ size_t heapSize; // total number of bytes allocated to the audio heap. Must be <= the size of `gAudioHeap` (ideally about the same size)
/* 0x4 */ size_t mainPoolSplitSize; // The entire audio heap is split into two pools.
/* 0x8 */ size_t permanentPoolSize;
} AudioContextInitSizes; // size = 0xC
typedef struct {

2
spec
View File

@ -623,8 +623,6 @@ beginseg
include "build/src/code/audio/audio_heap.o"
include "build/data/code/audio_heap.bss.o"
include "build/src/code/audio/audio_load.o"
include "build/data/code/audio_load.data.o"
include "build/data/code/audio_load.bss.o"
include "build/src/code/audio/code_80192BE0.o"
include "build/data/code/code_80192BE0.data.o"
include "build/src/code/audio/audio_dcache.o"

View File

@ -18,7 +18,7 @@ void* Yaz0_FirstDMA() {
curSize = (u32)sYaz0CurDataEnd - (u32)sYaz0DataBuffer;
dmaSize = (curSize > sYaz0CurSize) ? sYaz0CurSize : curSize;
DmaMgr_DMARomToRam(sYaz0CurRomStart, sYaz0DataBuffer, dmaSize);
DmaMgr_DmaRomToRam(sYaz0CurRomStart, sYaz0DataBuffer, dmaSize);
sYaz0CurRomStart += dmaSize;
sYaz0CurSize -= dmaSize;
return sYaz0DataBuffer;
@ -41,7 +41,7 @@ void* Yaz0_NextDMA(void* curSrcPos) {
}
if (dmaSize != 0) {
DmaMgr_DMARomToRam(sYaz0CurRomStart, dst + restSize, dmaSize);
DmaMgr_DmaRomToRam(sYaz0CurRomStart, dst + restSize, dmaSize);
sYaz0CurRomStart += dmaSize;
sYaz0CurSize -= dmaSize;
if (!sYaz0CurSize) {

View File

@ -10,7 +10,7 @@ OSMesg sDmaMgrMsgs[32];
OSThread sDmaMgrThread;
u8 sDmaMgrStack[0x500];
s32 DmaMgr_DMARomToRam(uintptr_t rom, void* ram, size_t size) {
s32 DmaMgr_DmaRomToRam(uintptr_t rom, void* ram, size_t size) {
OSIoMesg ioMsg;
OSMesgQueue queue;
OSMesg msg[1];
@ -56,8 +56,8 @@ END:
return ret;
}
void DmaMgr_DmaCallback0(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction) {
osEPiStartDma(pihandle, mb, direction);
s32 DmaMgr_DmaHandler(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction) {
return osEPiStartDma(pihandle, mb, direction);
}
DmaEntry* DmaMgr_FindDmaEntry(u32 vrom) {
@ -130,7 +130,7 @@ void DmaMgr_ProcessMsg(DmaRequest* req) {
if (dmaEntry->vromEnd < (vrom + size)) {
Fault_AddHungupAndCrash("../z_std_dma.c", 499);
}
DmaMgr_DMARomToRam((dmaEntry->romStart + vrom) - dmaEntry->vromStart, (u8*)ram, size);
DmaMgr_DmaRomToRam((dmaEntry->romStart + vrom) - dmaEntry->vromStart, (u8*)ram, size);
return;
}
@ -211,7 +211,7 @@ s32 DmaMgr_SendRequest0(void* vramStart, uintptr_t vromStart, size_t size) {
}
void DmaMgr_Start(void) {
DmaMgr_DMARomToRam(SEGMENT_ROM_START(dmadata), dmadata, SEGMENT_ROM_SIZE(dmadata));
DmaMgr_DmaRomToRam(SEGMENT_ROM_START(dmadata), dmadata, SEGMENT_ROM_SIZE(dmadata));
{
DmaEntry* iter = dmadata;

View File

@ -6,29 +6,29 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B250.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B318.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_DiscardFont.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B3FC.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B474.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B4F8.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_WritebackDCache.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B520.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B578.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_AllocAttemptExternal.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_AllocDmaMemory.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B608.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B640.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_AllocZeroed.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B69C.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B6E8.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_Alloc.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B740.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_AllocPoolInit.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B768.s")
@ -38,7 +38,7 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B7BC.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B8FC.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_InitMainPool.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018B95C.s")
@ -48,9 +48,9 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018BB28.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018BBEC.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_AllocCached.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018C380.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_SearchCaches.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018C3D8.s")
@ -70,15 +70,15 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018CC3C.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018CCA8.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_ResetStep.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018CFAC.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018D57C.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_SearchPermanentCache.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018D5D4.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_AllocPermanent.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018D658.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_AllocSampleCache.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018D6C8.s")
@ -100,7 +100,7 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018DFE0.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018E00C.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/AudioHeap_ApplySampleBankCache.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_heap/func_8018E03C.s")

File diff suppressed because it is too large Load Diff

View File

@ -982,7 +982,7 @@ void AudioPlayback_NoteInitAll(void) {
note->playbackState.portamento.speed = 0;
note->playbackState.stereoHeadsetEffects = false;
note->playbackState.unk_84 = 0;
note->synthesisState.synthesisBuffers = AudioHeap_AllocDmaMemory(&gAudioContext.notesAndBuffersPool, 0x2E0);
note->playbackState.attributes.filterBuf = AudioHeap_AllocDmaMemory(&gAudioContext.notesAndBuffersPool, 0x10);
note->synthesisState.synthesisBuffers = AudioHeap_AllocDmaMemory(&gAudioContext.miscPool, 0x2E0);
note->playbackState.attributes.filterBuf = AudioHeap_AllocDmaMemory(&gAudioContext.miscPool, 0x10);
}
}

View File

@ -64,7 +64,7 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_seqplayer/func_8019AAF0.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_seqplayer/func_8019AB40.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_seqplayer/AudioSeq_ResetSequencePlayer.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_seqplayer/func_8019AC10.s")

View File

@ -78,4 +78,4 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_80194668.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_801946E4.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/Audio_InitMesgQueues.s")

View File

@ -79,7 +79,7 @@ void AudioMgr_ThreadEntry(void* arg) {
s32 exit;
func_801A4C30();
func_80190B38(DmaMgr_DmaCallback0);
AudioLoad_SetDmaHandler(DmaMgr_DmaHandler);
func_801A4D00();
osSendMesg(&audioMgr->lockMsgQ, NULL, OS_MESG_BLOCK);
IrqMgr_AddClient(audioMgr->irqMgr, &irqClient, &audioMgr->interruptMsgQ);

View File

@ -1,3 +1,4 @@
#include "prevent_bss_reordering.h"
#include "global.h"
Vec3f D_801EDE00;

View File

@ -12,8 +12,8 @@
0x80080514:("Idle_ThreadEntry",),
0x800805E0:("ViConfig_UpdateVi",),
0x80080748:("ViConfig_UpdateBlack",),
0x80080790:("DmaMgr_DMARomToRam",),
0x800808D4:("DmaMgr_DmaCallback0",),
0x80080790:("DmaMgr_DmaRomToRam",),
0x800808D4:("DmaMgr_DmaHandler",),
0x800808F4:("DmaMgr_FindDmaEntry",),
0x80080950:("DmaMgr_TranslateVromToRom",),
0x800809BC:("DmaMgr_FindDmaIndex",),
@ -3549,29 +3549,29 @@
0x8018B0F0:("func_8018B0F0",),
0x8018B10C:("func_8018B10C",),
0x8018B250:("func_8018B250",),
0x8018B318:("func_8018B318",),
0x8018B318:("AudioHeap_DiscardFont",),
0x8018B3FC:("func_8018B3FC",),
0x8018B474:("func_8018B474",),
0x8018B4F8:("func_8018B4F8",),
0x8018B4F8:("AudioHeap_WritebackDCache",),
0x8018B520:("func_8018B520",),
0x8018B578:("func_8018B578",),
0x8018B578:("AudioHeap_AllocAttemptExternal",),
0x8018B5D0:("AudioHeap_AllocDmaMemory",),
0x8018B608:("func_8018B608",),
0x8018B640:("func_8018B640",),
0x8018B640:("AudioHeap_AllocZeroed",),
0x8018B69C:("func_8018B69C",),
0x8018B6E8:("func_8018B6E8",),
0x8018B740:("func_8018B740",),
0x8018B6E8:("AudioHeap_Alloc",),
0x8018B740:("AudioHeap_AllocPoolInit",),
0x8018B768:("func_8018B768",),
0x8018B77C:("func_8018B77C",),
0x8018B7AC:("func_8018B7AC",),
0x8018B7BC:("func_8018B7BC",),
0x8018B8FC:("func_8018B8FC",),
0x8018B8FC:("AudioHeap_InitMainPool",),
0x8018B95C:("func_8018B95C",),
0x8018B9E0:("func_8018B9E0",),
0x8018BA64:("func_8018BA64",),
0x8018BB28:("func_8018BB28",),
0x8018BBEC:("func_8018BBEC",),
0x8018C380:("func_8018C380",),
0x8018BBEC:("AudioHeap_AllocCached",),
0x8018C380:("AudioHeap_SearchCaches",),
0x8018C3D8:("func_8018C3D8",),
0x8018C4E4:("func_8018C4E4",),
0x8018C8B8:("func_8018C8B8",),
@ -3581,11 +3581,11 @@
0x8018CB70:("func_8018CB70",),
0x8018CB78:("func_8018CB78",),
0x8018CC3C:("func_8018CC3C",),
0x8018CCA8:("func_8018CCA8",),
0x8018CCA8:("AudioHeap_ResetStep",),
0x8018CFAC:("func_8018CFAC",),
0x8018D57C:("func_8018D57C",),
0x8018D5D4:("func_8018D5D4",),
0x8018D658:("func_8018D658",),
0x8018D57C:("AudioHeap_SearchPermanentCache",),
0x8018D5D4:("AudioHeap_AllocPermanent",),
0x8018D658:("AudioHeap_AllocSampleCache",),
0x8018D6C8:("func_8018D6C8",),
0x8018D760:("func_8018D760",),
0x8018DA50:("func_8018DA50",),
@ -3596,90 +3596,90 @@
0x8018DDD4:("func_8018DDD4",),
0x8018DF24:("func_8018DF24",),
0x8018DFE0:("func_8018DFE0",),
0x8018E00C:("func_8018E00C",),
0x8018E00C:("AudioHeap_ApplySampleBankCache",),
0x8018E03C:("func_8018E03C",),
0x8018E2A8:("func_8018E2A8",),
0x8018E344:("func_8018E344",),
0x8018E8C8:("func_8018E8C8",),
0x8018EB60:("func_8018EB60",),
0x8018EC4C:("func_8018EC4C",),
0x8018EF88:("func_8018EF88",),
0x8018EB60:("AudioLoad_DecreaseSampleDmaTtls",),
0x8018EC4C:("AudioLoad_DmaSampleData",),
0x8018EF88:("AudioLoad_InitSampleDmaBuffers",),
0x8018F220:("AudioLoad_IsFontLoadComplete",),
0x8018F298:("func_8018F298",),
0x8018F310:("func_8018F310",),
0x8018F388:("func_8018F388",),
0x8018F3B8:("func_8018F3B8",),
0x8018F3E8:("func_8018F3E8",),
0x8018F448:("func_8018F448",),
0x8018F478:("func_8018F478",),
0x8018F4D8:("func_8018F4D8",),
0x8018F588:("func_8018F588",),
0x8018F604:("func_8018F604",),
0x8018F6F0:("func_8018F6F0",),
0x8018F7C0:("func_8018F7C0",),
0x8018F7F8:("func_8018F7F8",),
0x8018F83C:("func_8018F83C",),
0x8018F880:("func_8018F880",),
0x8018F8C4:("func_8018F8C4",),
0x8018F908:("func_8018F908",),
0x8018F9B8:("func_8018F9B8",),
0x8018F298:("AudioLoad_IsSeqLoadComplete",),
0x8018F310:("AudioLoad_IsSampleLoadComplete",),
0x8018F388:("AudioLoad_SetFontLoadStatus",),
0x8018F3B8:("AudioLoad_SetSeqLoadStatus",),
0x8018F3E8:("AudioLoad_SetSampleFontLoadStatusAndApplyCaches",),
0x8018F448:("AudioLoad_SetSampleFontLoadStatus",),
0x8018F478:("AudioLoad_InitTable",),
0x8018F4D8:("AudioLoad_SyncLoadSeqFonts",),
0x8018F588:("AudioLoad_SyncLoadSeqParts",),
0x8018F604:("AudioLoad_SyncLoadSample",),
0x8018F6F0:("AudioLoad_SyncLoadInstrument",),
0x8018F7C0:("AudioLoad_AsyncLoad",),
0x8018F7F8:("AudioLoad_AsyncLoadSeq",),
0x8018F83C:("AudioLoad_AsyncLoadSampleBank",),
0x8018F880:("AudioLoad_AsyncLoadFont",),
0x8018F8C4:("AudioLoad_GetFontsForSequence",),
0x8018F908:("AudioLoad_DiscardSeqFonts",),
0x8018F9B8:("AudioLoad_DiscardFont",),
0x8018FA60:("func_8018FA60",),
0x8018FAD0:("func_8018FAD0",),
0x8018FB20:("func_8018FB20",),
0x8018FB78:("func_8018FB78",),
0x8018FCCC:("func_8018FCCC",),
0x8018FD20:("func_8018FD20",),
0x8018FD40:("func_8018FD40",),
0x8018FE5C:("func_8018FE5C",),
0x8018FF60:("func_8018FF60",),
0x80190204:("func_80190204",),
0x80190240:("func_80190240",),
0x80190294:("func_80190294",),
0x801902D8:("func_801902D8",),
0x80190544:("func_80190544",),
0x80190668:("func_80190668",),
0x8019067C:("func_8019067C",),
0x80190754:("func_80190754",),
0x8019075C:("func_8019075C",),
0x8019077C:("func_8019077C",),
0x80190B08:("func_80190B08",),
0x80190B38:("func_80190B38",),
0x80190B44:("func_80190B44",),
0x80190B50:("func_80190B50",),
0x80190BB0:("func_80190BB0",),
0x80190F50:("func_80190F50",),
0x80190F64:("func_80190F64",),
0x80191134:("func_80191134",),
0x801911C4:("func_801911C4",),
0x801911CC:("func_801911CC",),
0x80191240:("func_80191240",),
0x801913C8:("func_801913C8",),
0x8019144C:("func_8019144C",),
0x80191460:("func_80191460",),
0x80191568:("func_80191568",),
0x80191598:("func_80191598",),
0x8019161C:("func_8019161C",),
0x80191740:("func_80191740",),
0x80191864:("func_80191864",),
0x80191870:("func_80191870",),
0x801919AC:("func_801919AC",),
0x80191B40:("func_80191B40",),
0x80191BD0:("func_80191BD0",),
0x80191C40:("func_80191C40",),
0x80191C54:("func_80191C54",),
0x80191D94:("func_80191D94",),
0x8019218C:("func_8019218C",),
0x80192340:("func_80192340",),
0x80192388:("func_80192388",),
0x801924BC:("func_801924BC",),
0x80192514:("func_80192514",),
0x80192990:("func_80192990",),
0x80192AD0:("func_80192AD0",),
0x80192AD8:("func_80192AD8",),
0x80192AE0:("func_80192AE0",),
0x80192AE8:("func_80192AE8",),
0x80192B54:("func_80192B54",),
0x80192BAC:("func_80192BAC",),
0x8018FAD0:("AudioLoad_SyncInitSeqPlayer",),
0x8018FB20:("AudioLoad_SyncInitSeqPlayerSkipTicks",),
0x8018FB78:("AudioLoad_SyncInitSeqPlayerInternal",),
0x8018FCCC:("AudioLoad_SyncLoadSeq",),
0x8018FD20:("AudioLoad_GetSampleBank",),
0x8018FD40:("AudioLoad_TrySyncLoadSampleBank",),
0x8018FE5C:("AudioLoad_SyncLoadFont",),
0x8018FF60:("AudioLoad_SyncLoad",),
0x80190204:("AudioLoad_GetRealTableIndex",),
0x80190240:("AudioLoad_SearchCaches",),
0x80190294:("AudioLoad_GetLoadTable",),
0x801902D8:("AudioLoad_RelocateFont",),
0x80190544:("AudioLoad_SyncDma",),
0x80190668:("AudioLoad_SyncDmaUnkMedium",),
0x8019067C:("AudioLoad_Dma",),
0x80190754:("AudioLoad_Unused1",),
0x8019075C:("AudioLoad_SyncLoadSimple",),
0x8019077C:("AudioLoad_AsyncLoadInner",),
0x80190B08:("AudioLoad_ProcessLoads",),
0x80190B38:("AudioLoad_SetDmaHandler",),
0x80190B44:("AudioLoad_SetUnusedHandler",),
0x80190B50:("AudioLoad_InitSoundFontMeta",),
0x80190BB0:("AudioLoad_Init",),
0x80190F50:("AudioLoad_InitSlowLoads",),
0x80190F64:("AudioLoad_SlowLoadSample",),
0x80191134:("AudioLoad_GetFontSample",),
0x801911C4:("AudioLoad_Unused2",),
0x801911CC:("AudioLoad_FinishSlowLoad",),
0x80191240:("AudioLoad_ProcessSlowLoads",),
0x801913C8:("AudioLoad_DmaSlowCopy",),
0x8019144C:("AudioLoad_DmaSlowCopyUnkMedium",),
0x80191460:("AudioLoad_SlowLoadSeq",),
0x80191568:("AudioLoad_InitAsyncLoads",),
0x80191598:("AudioLoad_StartAsyncLoadUnkMedium",),
0x8019161C:("AudioLoad_StartAsyncLoad",),
0x80191740:("AudioLoad_ProcessAsyncLoads",),
0x80191864:("AudioLoad_ProcessAsyncLoadUnkMedium",),
0x80191870:("AudioLoad_FinishAsyncLoad",),
0x801919AC:("AudioLoad_ProcessAsyncLoad",),
0x80191B40:("AudioLoad_AsyncDma",),
0x80191BD0:("AudioLoad_AsyncDmaRamUnloaded",),
0x80191C40:("AudioLoad_AsyncDmaUnkMedium",),
0x80191C54:("AudioLoad_RelocateSample",),
0x80191D94:("AudioLoad_RelocateFontAndPreloadSamples",),
0x8019218C:("AudioLoad_ProcessSamplePreloads",),
0x80192340:("AudioLoad_AddToSampleSet",),
0x80192388:("AudioLoad_GetSamplesForFont",),
0x801924BC:("AudioLoad_AddUsedSample",),
0x80192514:("AudioLoad_PreloadSamplesForFont",),
0x80192990:("AudioLoad_LoadPermanentSamples",),
0x80192AD0:("AudioLoad_Unused3",),
0x80192AD8:("AudioLoad_Unused4",),
0x80192AE0:("AudioLoad_Unused5",),
0x80192AE8:("AudioLoad_ScriptLoad",),
0x80192B54:("AudioLoad_ProcessScriptLoads",),
0x80192BAC:("AudioLoad_InitScriptLoads",),
0x80192BE0:("func_80192BE0",),
0x80192C00:("func_80192C00",),
0x8019319C:("func_8019319C",),
@ -3719,7 +3719,7 @@
0x80194548:("func_80194548",),
0x80194568:("func_80194568",),
0x80194668:("func_80194668",),
0x801946E4:("func_801946E4",),
0x801946E4:("Audio_InitMesgQueues",),
0x80194710:("Audio_InvalDCache",),
0x80194750:("Audio_WritebackDCache",),
0x80194790:("func_80194790",),
@ -3799,7 +3799,7 @@
0x8019A0BC:("func_8019A0BC",),
0x8019AA3C:("func_8019AA3C",),
0x8019AAF0:("func_8019AAF0",),
0x8019AB40:("func_8019AB40",),
0x8019AB40:("AudioSeq_ResetSequencePlayer",),
0x8019AC10:("func_8019AC10",),
0x8019ACEC:("func_8019ACEC",),
0x8019ADBC:("func_8019ADBC",),

View File

@ -2286,7 +2286,7 @@
0x801D5FD4:("D_801D5FD4","UNK_TYPE1","",0x1),
0x801D5FE0:("D_801D5FE0","UNK_PTR","",0x4),
0x801D5FE4:("D_801D5FE4","UNK_TYPE1","",0x1),
0x801D5FE8:("D_801D5FE8","UNK_TYPE4","",0x4),
0x801D5FE8:("gAudioContextInitalized","UNK_TYPE4","",0x4),
0x801D5FEC:("D_801D5FEC","UNK_TYPE4","",0x4),
0x801D5FF0:("D_801D5FF0","UNK_TYPE4","",0x4),
0x801D5FF4:("D_801D5FF4","UNK_TYPE4","",0x4),

View File

@ -9,8 +9,8 @@ asm/non_matchings/boot/idle/Idle_InitVideo.s,Idle_InitVideo,0x8008038C,0x62
asm/non_matchings/boot/idle/Idle_ThreadEntry.s,Idle_ThreadEntry,0x80080514,0x33
asm/non_matchings/boot/viconfig/ViConfig_UpdateVi.s,ViConfig_UpdateVi,0x800805E0,0x5A
asm/non_matchings/boot/viconfig/ViConfig_UpdateBlack.s,ViConfig_UpdateBlack,0x80080748,0x12
asm/non_matchings/boot/z_std_dma/DmaMgr_DMARomToRam.s,DmaMgr_DMARomToRam,0x80080790,0x51
asm/non_matchings/boot/z_std_dma/DmaMgr_DmaCallback0.s,DmaMgr_DmaCallback0,0x800808D4,0x8
asm/non_matchings/boot/z_std_dma/DmaMgr_DmaRomToRam.s,DmaMgr_DmaRomToRam,0x80080790,0x51
asm/non_matchings/boot/z_std_dma/DmaMgr_DmaHandler.s,DmaMgr_DmaHandler,0x800808D4,0x8
asm/non_matchings/boot/z_std_dma/DmaMgr_FindDmaEntry.s,DmaMgr_FindDmaEntry,0x800808F4,0x17
asm/non_matchings/boot/z_std_dma/DmaMgr_TranslateVromToRom.s,DmaMgr_TranslateVromToRom,0x80080950,0x1B
asm/non_matchings/boot/z_std_dma/DmaMgr_FindDmaIndex.s,DmaMgr_FindDmaIndex,0x800809BC,0xE

1 asm/non_matchings/boot/boot_main/bootproc.s bootproc 0x80080060 0x3C
9 asm/non_matchings/boot/idle/Idle_ThreadEntry.s Idle_ThreadEntry 0x80080514 0x33
10 asm/non_matchings/boot/viconfig/ViConfig_UpdateVi.s ViConfig_UpdateVi 0x800805E0 0x5A
11 asm/non_matchings/boot/viconfig/ViConfig_UpdateBlack.s ViConfig_UpdateBlack 0x80080748 0x12
12 asm/non_matchings/boot/z_std_dma/DmaMgr_DMARomToRam.s asm/non_matchings/boot/z_std_dma/DmaMgr_DmaRomToRam.s DmaMgr_DMARomToRam DmaMgr_DmaRomToRam 0x80080790 0x51
13 asm/non_matchings/boot/z_std_dma/DmaMgr_DmaCallback0.s asm/non_matchings/boot/z_std_dma/DmaMgr_DmaHandler.s DmaMgr_DmaCallback0 DmaMgr_DmaHandler 0x800808D4 0x8
14 asm/non_matchings/boot/z_std_dma/DmaMgr_FindDmaEntry.s DmaMgr_FindDmaEntry 0x800808F4 0x17
15 asm/non_matchings/boot/z_std_dma/DmaMgr_TranslateVromToRom.s DmaMgr_TranslateVromToRom 0x80080950 0x1B
16 asm/non_matchings/boot/z_std_dma/DmaMgr_FindDmaIndex.s DmaMgr_FindDmaIndex 0x800809BC 0xE

View File

@ -3067,29 +3067,29 @@ asm/non_matchings/code/audio_synthesis/func_8018AE34.s,func_8018AE34,0x8018AE34,
asm/non_matchings/code/audio_heap/func_8018B0F0.s,func_8018B0F0,0x8018B0F0,0x7
asm/non_matchings/code/audio_heap/func_8018B10C.s,func_8018B10C,0x8018B10C,0x51
asm/non_matchings/code/audio_heap/func_8018B250.s,func_8018B250,0x8018B250,0x32
asm/non_matchings/code/audio_heap/func_8018B318.s,func_8018B318,0x8018B318,0x39
asm/non_matchings/code/audio_heap/AudioHeap_DiscardFont.s,AudioHeap_DiscardFont,0x8018B318,0x39
asm/non_matchings/code/audio_heap/func_8018B3FC.s,func_8018B3FC,0x8018B3FC,0x1E
asm/non_matchings/code/audio_heap/func_8018B474.s,func_8018B474,0x8018B474,0x21
asm/non_matchings/code/audio_heap/func_8018B4F8.s,func_8018B4F8,0x8018B4F8,0xA
asm/non_matchings/code/audio_heap/AudioHeap_WritebackDCache.s,AudioHeap_WritebackDCache,0x8018B4F8,0xA
asm/non_matchings/code/audio_heap/func_8018B520.s,func_8018B520,0x8018B520,0x16
asm/non_matchings/code/audio_heap/func_8018B578.s,func_8018B578,0x8018B578,0x16
asm/non_matchings/code/audio_heap/AudioHeap_AllocAttemptExternal.s,AudioHeap_AllocAttemptExternal,0x8018B578,0x16
asm/non_matchings/code/audio_heap/AudioHeap_AllocDmaMemory.s,AudioHeap_AllocDmaMemory,0x8018B5D0,0xE
asm/non_matchings/code/audio_heap/func_8018B608.s,func_8018B608,0x8018B608,0xE
asm/non_matchings/code/audio_heap/func_8018B640.s,func_8018B640,0x8018B640,0x17
asm/non_matchings/code/audio_heap/AudioHeap_AllocZeroed.s,AudioHeap_AllocZeroed,0x8018B640,0x17
asm/non_matchings/code/audio_heap/func_8018B69C.s,func_8018B69C,0x8018B69C,0x13
asm/non_matchings/code/audio_heap/func_8018B6E8.s,func_8018B6E8,0x8018B6E8,0x16
asm/non_matchings/code/audio_heap/func_8018B740.s,func_8018B740,0x8018B740,0xA
asm/non_matchings/code/audio_heap/AudioHeap_Alloc.s,AudioHeap_Alloc,0x8018B6E8,0x16
asm/non_matchings/code/audio_heap/AudioHeap_AllocPoolInit.s,AudioHeap_AllocPoolInit,0x8018B740,0xA
asm/non_matchings/code/audio_heap/func_8018B768.s,func_8018B768,0x8018B768,0x5
asm/non_matchings/code/audio_heap/func_8018B77C.s,func_8018B77C,0x8018B77C,0xC
asm/non_matchings/code/audio_heap/func_8018B7AC.s,func_8018B7AC,0x8018B7AC,0x4
asm/non_matchings/code/audio_heap/func_8018B7BC.s,func_8018B7BC,0x8018B7BC,0x50
asm/non_matchings/code/audio_heap/func_8018B8FC.s,func_8018B8FC,0x8018B8FC,0x18
asm/non_matchings/code/audio_heap/AudioHeap_InitMainPool.s,AudioHeap_InitMainPool,0x8018B8FC,0x18
asm/non_matchings/code/audio_heap/func_8018B95C.s,func_8018B95C,0x8018B95C,0x21
asm/non_matchings/code/audio_heap/func_8018B9E0.s,func_8018B9E0,0x8018B9E0,0x21
asm/non_matchings/code/audio_heap/func_8018BA64.s,func_8018BA64,0x8018BA64,0x31
asm/non_matchings/code/audio_heap/func_8018BB28.s,func_8018BB28,0x8018BB28,0x31
asm/non_matchings/code/audio_heap/func_8018BBEC.s,func_8018BBEC,0x8018BBEC,0x1E5
asm/non_matchings/code/audio_heap/func_8018C380.s,func_8018C380,0x8018C380,0x16
asm/non_matchings/code/audio_heap/AudioHeap_AllocCached.s,AudioHeap_AllocCached,0x8018BBEC,0x1E5
asm/non_matchings/code/audio_heap/AudioHeap_SearchCaches.s,AudioHeap_SearchCaches,0x8018C380,0x16
asm/non_matchings/code/audio_heap/func_8018C3D8.s,func_8018C3D8,0x8018C3D8,0x43
asm/non_matchings/code/audio_heap/func_8018C4E4.s,func_8018C4E4,0x8018C4E4,0xF5
asm/non_matchings/code/audio_heap/func_8018C8B8.s,func_8018C8B8,0x8018C8B8,0xC
@ -3099,11 +3099,11 @@ asm/non_matchings/code/audio_heap/func_8018C994.s,func_8018C994,0x8018C994,0x77
asm/non_matchings/code/audio_heap/func_8018CB70.s,func_8018CB70,0x8018CB70,0x2
asm/non_matchings/code/audio_heap/func_8018CB78.s,func_8018CB78,0x8018CB78,0x31
asm/non_matchings/code/audio_heap/func_8018CC3C.s,func_8018CC3C,0x8018CC3C,0x1B
asm/non_matchings/code/audio_heap/func_8018CCA8.s,func_8018CCA8,0x8018CCA8,0xC1
asm/non_matchings/code/audio_heap/AudioHeap_ResetStep.s,AudioHeap_ResetStep,0x8018CCA8,0xC1
asm/non_matchings/code/audio_heap/func_8018CFAC.s,func_8018CFAC,0x8018CFAC,0x174
asm/non_matchings/code/audio_heap/func_8018D57C.s,func_8018D57C,0x8018D57C,0x16
asm/non_matchings/code/audio_heap/func_8018D5D4.s,func_8018D5D4,0x8018D5D4,0x21
asm/non_matchings/code/audio_heap/func_8018D658.s,func_8018D658,0x8018D658,0x1C
asm/non_matchings/code/audio_heap/AudioHeap_SearchPermanentCache.s,AudioHeap_SearchPermanentCache,0x8018D57C,0x16
asm/non_matchings/code/audio_heap/AudioHeap_AllocPermanent.s,AudioHeap_AllocPermanent,0x8018D5D4,0x21
asm/non_matchings/code/audio_heap/AudioHeap_AllocSampleCache.s,AudioHeap_AllocSampleCache,0x8018D658,0x1C
asm/non_matchings/code/audio_heap/func_8018D6C8.s,func_8018D6C8,0x8018D6C8,0x26
asm/non_matchings/code/audio_heap/func_8018D760.s,func_8018D760,0x8018D760,0xBC
asm/non_matchings/code/audio_heap/func_8018DA50.s,func_8018DA50,0x8018DA50,0x5D
@ -3114,90 +3114,90 @@ asm/non_matchings/code/audio_heap/func_8018DD98.s,func_8018DD98,0x8018DD98,0xF
asm/non_matchings/code/audio_heap/func_8018DDD4.s,func_8018DDD4,0x8018DDD4,0x54
asm/non_matchings/code/audio_heap/func_8018DF24.s,func_8018DF24,0x8018DF24,0x2F
asm/non_matchings/code/audio_heap/func_8018DFE0.s,func_8018DFE0,0x8018DFE0,0xB
asm/non_matchings/code/audio_heap/func_8018E00C.s,func_8018E00C,0x8018E00C,0xC
asm/non_matchings/code/audio_heap/AudioHeap_ApplySampleBankCache.s,AudioHeap_ApplySampleBankCache,0x8018E00C,0xC
asm/non_matchings/code/audio_heap/func_8018E03C.s,func_8018E03C,0x8018E03C,0x9B
asm/non_matchings/code/audio_heap/func_8018E2A8.s,func_8018E2A8,0x8018E2A8,0x27
asm/non_matchings/code/audio_heap/func_8018E344.s,func_8018E344,0x8018E344,0x161
asm/non_matchings/code/audio_heap/func_8018E8C8.s,func_8018E8C8,0x8018E8C8,0xA6
asm/non_matchings/code/audio_load/func_8018EB60.s,func_8018EB60,0x8018EB60,0x3B
asm/non_matchings/code/audio_load/func_8018EC4C.s,func_8018EC4C,0x8018EC4C,0xCF
asm/non_matchings/code/audio_load/func_8018EF88.s,func_8018EF88,0x8018EF88,0xA6
asm/non_matchings/code/audio_load/AudioLoad_DecreaseSampleDmaTtls.s,AudioLoad_DecreaseSampleDmaTtls,0x8018EB60,0x3B
asm/non_matchings/code/audio_load/AudioLoad_DmaSampleData.s,AudioLoad_DmaSampleData,0x8018EC4C,0xCF
asm/non_matchings/code/audio_load/AudioLoad_InitSampleDmaBuffers.s,AudioLoad_InitSampleDmaBuffers,0x8018EF88,0xA6
asm/non_matchings/code/audio_load/AudioLoad_IsFontLoadComplete.s,AudioLoad_IsFontLoadComplete,0x8018F220,0x1E
asm/non_matchings/code/audio_load/func_8018F298.s,func_8018F298,0x8018F298,0x1E
asm/non_matchings/code/audio_load/func_8018F310.s,func_8018F310,0x8018F310,0x1E
asm/non_matchings/code/audio_load/func_8018F388.s,func_8018F388,0x8018F388,0xC
asm/non_matchings/code/audio_load/func_8018F3B8.s,func_8018F3B8,0x8018F3B8,0xC
asm/non_matchings/code/audio_load/func_8018F3E8.s,func_8018F3E8,0x8018F3E8,0x18
asm/non_matchings/code/audio_load/func_8018F448.s,func_8018F448,0x8018F448,0xC
asm/non_matchings/code/audio_load/func_8018F478.s,func_8018F478,0x8018F478,0x18
asm/non_matchings/code/audio_load/func_8018F4D8.s,func_8018F4D8,0x8018F4D8,0x2C
asm/non_matchings/code/audio_load/func_8018F588.s,func_8018F588,0x8018F588,0x1F
asm/non_matchings/code/audio_load/func_8018F604.s,func_8018F604,0x8018F604,0x3B
asm/non_matchings/code/audio_load/func_8018F6F0.s,func_8018F6F0,0x8018F6F0,0x34
asm/non_matchings/code/audio_load/func_8018F7C0.s,func_8018F7C0,0x8018F7C0,0xE
asm/non_matchings/code/audio_load/func_8018F7F8.s,func_8018F7F8,0x8018F7F8,0x11
asm/non_matchings/code/audio_load/func_8018F83C.s,func_8018F83C,0x8018F83C,0x11
asm/non_matchings/code/audio_load/func_8018F880.s,func_8018F880,0x8018F880,0x11
asm/non_matchings/code/audio_load/func_8018F8C4.s,func_8018F8C4,0x8018F8C4,0x11
asm/non_matchings/code/audio_load/func_8018F908.s,func_8018F908,0x8018F908,0x2C
asm/non_matchings/code/audio_load/func_8018F9B8.s,func_8018F9B8,0x8018F9B8,0x2A
asm/non_matchings/code/audio_load/AudioLoad_IsSeqLoadComplete.s,AudioLoad_IsSeqLoadComplete,0x8018F298,0x1E
asm/non_matchings/code/audio_load/AudioLoad_IsSampleLoadComplete.s,AudioLoad_IsSampleLoadComplete,0x8018F310,0x1E
asm/non_matchings/code/audio_load/AudioLoad_SetFontLoadStatus.s,AudioLoad_SetFontLoadStatus,0x8018F388,0xC
asm/non_matchings/code/audio_load/AudioLoad_SetSeqLoadStatus.s,AudioLoad_SetSeqLoadStatus,0x8018F3B8,0xC
asm/non_matchings/code/audio_load/AudioLoad_SetSampleFontLoadStatusAndApplyCaches.s,AudioLoad_SetSampleFontLoadStatusAndApplyCaches,0x8018F3E8,0x18
asm/non_matchings/code/audio_load/AudioLoad_SetSampleFontLoadStatus.s,AudioLoad_SetSampleFontLoadStatus,0x8018F448,0xC
asm/non_matchings/code/audio_load/AudioLoad_InitTable.s,AudioLoad_InitTable,0x8018F478,0x18
asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSeqFonts.s,AudioLoad_SyncLoadSeqFonts,0x8018F4D8,0x2C
asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSeqParts.s,AudioLoad_SyncLoadSeqParts,0x8018F588,0x1F
asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSample.s,AudioLoad_SyncLoadSample,0x8018F604,0x3B
asm/non_matchings/code/audio_load/AudioLoad_SyncLoadInstrument.s,AudioLoad_SyncLoadInstrument,0x8018F6F0,0x34
asm/non_matchings/code/audio_load/AudioLoad_AsyncLoad.s,AudioLoad_AsyncLoad,0x8018F7C0,0xE
asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadSeq.s,AudioLoad_AsyncLoadSeq,0x8018F7F8,0x11
asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadSampleBank.s,AudioLoad_AsyncLoadSampleBank,0x8018F83C,0x11
asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadFont.s,AudioLoad_AsyncLoadFont,0x8018F880,0x11
asm/non_matchings/code/audio_load/AudioLoad_GetFontsForSequence.s,AudioLoad_GetFontsForSequence,0x8018F8C4,0x11
asm/non_matchings/code/audio_load/AudioLoad_DiscardSeqFonts.s,AudioLoad_DiscardSeqFonts,0x8018F908,0x2C
asm/non_matchings/code/audio_load/AudioLoad_DiscardFont.s,AudioLoad_DiscardFont,0x8018F9B8,0x2A
asm/non_matchings/code/audio_load/func_8018FA60.s,func_8018FA60,0x8018FA60,0x1C
asm/non_matchings/code/audio_load/func_8018FAD0.s,func_8018FAD0,0x8018FAD0,0x14
asm/non_matchings/code/audio_load/func_8018FB20.s,func_8018FB20,0x8018FB20,0x16
asm/non_matchings/code/audio_load/func_8018FB78.s,func_8018FB78,0x8018FB78,0x55
asm/non_matchings/code/audio_load/func_8018FCCC.s,func_8018FCCC,0x8018FCCC,0x15
asm/non_matchings/code/audio_load/func_8018FD20.s,func_8018FD20,0x8018FD20,0x8
asm/non_matchings/code/audio_load/func_8018FD40.s,func_8018FD40,0x8018FD40,0x47
asm/non_matchings/code/audio_load/func_8018FE5C.s,func_8018FE5C,0x8018FE5C,0x41
asm/non_matchings/code/audio_load/func_8018FF60.s,func_8018FF60,0x8018FF60,0xA9
asm/non_matchings/code/audio_load/func_80190204.s,func_80190204,0x80190204,0xF
asm/non_matchings/code/audio_load/func_80190240.s,func_80190240,0x80190240,0x15
asm/non_matchings/code/audio_load/func_80190294.s,func_80190294,0x80190294,0x11
asm/non_matchings/code/audio_load/func_801902D8.s,func_801902D8,0x801902D8,0x9B
asm/non_matchings/code/audio_load/func_80190544.s,func_80190544,0x80190544,0x49
asm/non_matchings/code/audio_load/func_80190668.s,func_80190668,0x80190668,0x5
asm/non_matchings/code/audio_load/func_8019067C.s,func_8019067C,0x8019067C,0x36
asm/non_matchings/code/audio_load/func_80190754.s,func_80190754,0x80190754,0x2
asm/non_matchings/code/audio_load/func_8019075C.s,func_8019075C,0x8019075C,0x8
asm/non_matchings/code/audio_load/func_8019077C.s,func_8019077C,0x8019077C,0xE3
asm/non_matchings/code/audio_load/func_80190B08.s,func_80190B08,0x80190B08,0xC
asm/non_matchings/code/audio_load/func_80190B38.s,func_80190B38,0x80190B38,0x3
asm/non_matchings/code/audio_load/func_80190B44.s,func_80190B44,0x80190B44,0x3
asm/non_matchings/code/audio_load/func_80190B50.s,func_80190B50,0x80190B50,0x18
asm/non_matchings/code/audio_load/func_80190BB0.s,func_80190BB0,0x80190BB0,0xE8
asm/non_matchings/code/audio_load/func_80190F50.s,func_80190F50,0x80190F50,0x5
asm/non_matchings/code/audio_load/func_80190F64.s,func_80190F64,0x80190F64,0x74
asm/non_matchings/code/audio_load/func_80191134.s,func_80191134,0x80191134,0x24
asm/non_matchings/code/audio_load/func_801911C4.s,func_801911C4,0x801911C4,0x2
asm/non_matchings/code/audio_load/func_801911CC.s,func_801911CC,0x801911CC,0x1D
asm/non_matchings/code/audio_load/func_80191240.s,func_80191240,0x80191240,0x62
asm/non_matchings/code/audio_load/func_801913C8.s,func_801913C8,0x801913C8,0x21
asm/non_matchings/code/audio_load/func_8019144C.s,func_8019144C,0x8019144C,0x5
asm/non_matchings/code/audio_load/func_80191460.s,func_80191460,0x80191460,0x42
asm/non_matchings/code/audio_load/func_80191568.s,func_80191568,0x80191568,0xC
asm/non_matchings/code/audio_load/func_80191598.s,func_80191598,0x80191598,0x21
asm/non_matchings/code/audio_load/func_8019161C.s,func_8019161C,0x8019161C,0x49
asm/non_matchings/code/audio_load/func_80191740.s,func_80191740,0x80191740,0x49
asm/non_matchings/code/audio_load/func_80191864.s,func_80191864,0x80191864,0x3
asm/non_matchings/code/audio_load/func_80191870.s,func_80191870,0x80191870,0x4F
asm/non_matchings/code/audio_load/func_801919AC.s,func_801919AC,0x801919AC,0x65
asm/non_matchings/code/audio_load/func_80191B40.s,func_80191B40,0x80191B40,0x24
asm/non_matchings/code/audio_load/func_80191BD0.s,func_80191BD0,0x80191BD0,0x1C
asm/non_matchings/code/audio_load/func_80191C40.s,func_80191C40,0x80191C40,0x5
asm/non_matchings/code/audio_load/func_80191C54.s,func_80191C54,0x80191C54,0x50
asm/non_matchings/code/audio_load/func_80191D94.s,func_80191D94,0x80191D94,0xFE
asm/non_matchings/code/audio_load/func_8019218C.s,func_8019218C,0x8019218C,0x6D
asm/non_matchings/code/audio_load/func_80192340.s,func_80192340,0x80192340,0x12
asm/non_matchings/code/audio_load/func_80192388.s,func_80192388,0x80192388,0x4D
asm/non_matchings/code/audio_load/func_801924BC.s,func_801924BC,0x801924BC,0x16
asm/non_matchings/code/audio_load/func_80192514.s,func_80192514,0x80192514,0x11F
asm/non_matchings/code/audio_load/func_80192990.s,func_80192990,0x80192990,0x50
asm/non_matchings/code/audio_load/func_80192AD0.s,func_80192AD0,0x80192AD0,0x2
asm/non_matchings/code/audio_load/func_80192AD8.s,func_80192AD8,0x80192AD8,0x2
asm/non_matchings/code/audio_load/func_80192AE0.s,func_80192AE0,0x80192AE0,0x2
asm/non_matchings/code/audio_load/func_80192AE8.s,func_80192AE8,0x80192AE8,0x1B
asm/non_matchings/code/audio_load/func_80192B54.s,func_80192B54,0x80192B54,0x16
asm/non_matchings/code/audio_load/func_80192BAC.s,func_80192BAC,0x80192BAC,0xD
asm/non_matchings/code/audio_load/AudioLoad_SyncInitSeqPlayer.s,AudioLoad_SyncInitSeqPlayer,0x8018FAD0,0x14
asm/non_matchings/code/audio_load/AudioLoad_SyncInitSeqPlayerSkipTicks.s,AudioLoad_SyncInitSeqPlayerSkipTicks,0x8018FB20,0x16
asm/non_matchings/code/audio_load/AudioLoad_SyncInitSeqPlayerInternal.s,AudioLoad_SyncInitSeqPlayerInternal,0x8018FB78,0x55
asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSeq.s,AudioLoad_SyncLoadSeq,0x8018FCCC,0x15
asm/non_matchings/code/audio_load/AudioLoad_GetSampleBank.s,AudioLoad_GetSampleBank,0x8018FD20,0x8
asm/non_matchings/code/audio_load/AudioLoad_TrySyncLoadSampleBank.s,AudioLoad_TrySyncLoadSampleBank,0x8018FD40,0x47
asm/non_matchings/code/audio_load/AudioLoad_SyncLoadFont.s,AudioLoad_SyncLoadFont,0x8018FE5C,0x41
asm/non_matchings/code/audio_load/AudioLoad_SyncLoad.s,AudioLoad_SyncLoad,0x8018FF60,0xA9
asm/non_matchings/code/audio_load/AudioLoad_GetRealTableIndex.s,AudioLoad_GetRealTableIndex,0x80190204,0xF
asm/non_matchings/code/audio_load/AudioLoad_SearchCaches.s,AudioLoad_SearchCaches,0x80190240,0x15
asm/non_matchings/code/audio_load/AudioLoad_GetLoadTable.s,AudioLoad_GetLoadTable,0x80190294,0x11
asm/non_matchings/code/audio_load/AudioLoad_RelocateFont.s,AudioLoad_RelocateFont,0x801902D8,0x9B
asm/non_matchings/code/audio_load/AudioLoad_SyncDma.s,AudioLoad_SyncDma,0x80190544,0x49
asm/non_matchings/code/audio_load/AudioLoad_SyncDmaUnkMedium.s,AudioLoad_SyncDmaUnkMedium,0x80190668,0x5
asm/non_matchings/code/audio_load/AudioLoad_Dma.s,AudioLoad_Dma,0x8019067C,0x36
asm/non_matchings/code/audio_load/AudioLoad_Unused1.s,AudioLoad_Unused1,0x80190754,0x2
asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSimple.s,AudioLoad_SyncLoadSimple,0x8019075C,0x8
asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadInner.s,AudioLoad_AsyncLoadInner,0x8019077C,0xE3
asm/non_matchings/code/audio_load/AudioLoad_ProcessLoads.s,AudioLoad_ProcessLoads,0x80190B08,0xC
asm/non_matchings/code/audio_load/AudioLoad_SetDmaHandler.s,AudioLoad_SetDmaHandler,0x80190B38,0x3
asm/non_matchings/code/audio_load/AudioLoad_SetUnusedHandler.s,AudioLoad_SetUnusedHandler,0x80190B44,0x3
asm/non_matchings/code/audio_load/AudioLoad_InitSoundFontMeta.s,AudioLoad_InitSoundFontMeta,0x80190B50,0x18
asm/non_matchings/code/audio_load/AudioLoad_Init.s,AudioLoad_Init,0x80190BB0,0xE8
asm/non_matchings/code/audio_load/AudioLoad_InitSlowLoads.s,AudioLoad_InitSlowLoads,0x80190F50,0x5
asm/non_matchings/code/audio_load/AudioLoad_SlowLoadSample.s,AudioLoad_SlowLoadSample,0x80190F64,0x74
asm/non_matchings/code/audio_load/AudioLoad_GetFontSample.s,AudioLoad_GetFontSample,0x80191134,0x24
asm/non_matchings/code/audio_load/AudioLoad_Unused2.s,AudioLoad_Unused2,0x801911C4,0x2
asm/non_matchings/code/audio_load/AudioLoad_FinishSlowLoad.s,AudioLoad_FinishSlowLoad,0x801911CC,0x1D
asm/non_matchings/code/audio_load/AudioLoad_ProcessSlowLoads.s,AudioLoad_ProcessSlowLoads,0x80191240,0x62
asm/non_matchings/code/audio_load/AudioLoad_DmaSlowCopy.s,AudioLoad_DmaSlowCopy,0x801913C8,0x21
asm/non_matchings/code/audio_load/AudioLoad_DmaSlowCopyUnkMedium.s,AudioLoad_DmaSlowCopyUnkMedium,0x8019144C,0x5
asm/non_matchings/code/audio_load/AudioLoad_SlowLoadSeq.s,AudioLoad_SlowLoadSeq,0x80191460,0x42
asm/non_matchings/code/audio_load/AudioLoad_InitAsyncLoads.s,AudioLoad_InitAsyncLoads,0x80191568,0xC
asm/non_matchings/code/audio_load/AudioLoad_StartAsyncLoadUnkMedium.s,AudioLoad_StartAsyncLoadUnkMedium,0x80191598,0x21
asm/non_matchings/code/audio_load/AudioLoad_StartAsyncLoad.s,AudioLoad_StartAsyncLoad,0x8019161C,0x49
asm/non_matchings/code/audio_load/AudioLoad_ProcessAsyncLoads.s,AudioLoad_ProcessAsyncLoads,0x80191740,0x49
asm/non_matchings/code/audio_load/AudioLoad_ProcessAsyncLoadUnkMedium.s,AudioLoad_ProcessAsyncLoadUnkMedium,0x80191864,0x3
asm/non_matchings/code/audio_load/AudioLoad_FinishAsyncLoad.s,AudioLoad_FinishAsyncLoad,0x80191870,0x4F
asm/non_matchings/code/audio_load/AudioLoad_ProcessAsyncLoad.s,AudioLoad_ProcessAsyncLoad,0x801919AC,0x65
asm/non_matchings/code/audio_load/AudioLoad_AsyncDma.s,AudioLoad_AsyncDma,0x80191B40,0x24
asm/non_matchings/code/audio_load/AudioLoad_AsyncDmaRamUnloaded.s,AudioLoad_AsyncDmaRamUnloaded,0x80191BD0,0x1C
asm/non_matchings/code/audio_load/AudioLoad_AsyncDmaUnkMedium.s,AudioLoad_AsyncDmaUnkMedium,0x80191C40,0x5
asm/non_matchings/code/audio_load/AudioLoad_RelocateSample.s,AudioLoad_RelocateSample,0x80191C54,0x50
asm/non_matchings/code/audio_load/AudioLoad_RelocateFontAndPreloadSamples.s,AudioLoad_RelocateFontAndPreloadSamples,0x80191D94,0xFE
asm/non_matchings/code/audio_load/AudioLoad_ProcessSamplePreloads.s,AudioLoad_ProcessSamplePreloads,0x8019218C,0x6D
asm/non_matchings/code/audio_load/AudioLoad_AddToSampleSet.s,AudioLoad_AddToSampleSet,0x80192340,0x12
asm/non_matchings/code/audio_load/AudioLoad_GetSamplesForFont.s,AudioLoad_GetSamplesForFont,0x80192388,0x4D
asm/non_matchings/code/audio_load/AudioLoad_AddUsedSample.s,AudioLoad_AddUsedSample,0x801924BC,0x16
asm/non_matchings/code/audio_load/AudioLoad_PreloadSamplesForFont.s,AudioLoad_PreloadSamplesForFont,0x80192514,0x11F
asm/non_matchings/code/audio_load/AudioLoad_LoadPermanentSamples.s,AudioLoad_LoadPermanentSamples,0x80192990,0x50
asm/non_matchings/code/audio_load/AudioLoad_Unused3.s,AudioLoad_Unused3,0x80192AD0,0x2
asm/non_matchings/code/audio_load/AudioLoad_Unused4.s,AudioLoad_Unused4,0x80192AD8,0x2
asm/non_matchings/code/audio_load/AudioLoad_Unused5.s,AudioLoad_Unused5,0x80192AE0,0x2
asm/non_matchings/code/audio_load/AudioLoad_ScriptLoad.s,AudioLoad_ScriptLoad,0x80192AE8,0x1B
asm/non_matchings/code/audio_load/AudioLoad_ProcessScriptLoads.s,AudioLoad_ProcessScriptLoads,0x80192B54,0x16
asm/non_matchings/code/audio_load/AudioLoad_InitScriptLoads.s,AudioLoad_InitScriptLoads,0x80192BAC,0xD
asm/non_matchings/code/code_80192BE0/func_80192BE0.s,func_80192BE0,0x80192BE0,0x8
asm/non_matchings/code/code_80192BE0/func_80192C00.s,func_80192C00,0x80192C00,0x167
asm/non_matchings/code/code_80192BE0/func_8019319C.s,func_8019319C,0x8019319C,0x14F
@ -3237,7 +3237,7 @@ asm/non_matchings/code/code_80192BE0/func_80194528.s,func_80194528,0x80194528,0x
asm/non_matchings/code/code_80192BE0/func_80194548.s,func_80194548,0x80194548,0x8
asm/non_matchings/code/code_80192BE0/func_80194568.s,func_80194568,0x80194568,0x40
asm/non_matchings/code/code_80192BE0/func_80194668.s,func_80194668,0x80194668,0x1F
asm/non_matchings/code/code_80192BE0/func_801946E4.s,func_801946E4,0x801946E4,0xB
asm/non_matchings/code/code_80192BE0/Audio_InitMesgQueues.s,Audio_InitMesgQueues,0x801946E4,0xB
asm/non_matchings/code/code_80194710/Audio_InvalDCache.s,Audio_InvalDCache,0x80194710,0x10
asm/non_matchings/code/code_80194710/Audio_WritebackDCache.s,Audio_WritebackDCache,0x80194750,0x10
asm/non_matchings/code/code_80194710/func_80194790.s,func_80194790,0x80194790,0x1D
@ -3317,7 +3317,7 @@ asm/non_matchings/code/audio_seqplayer/func_80199268.s,func_80199268,0x80199268,
asm/non_matchings/code/audio_seqplayer/func_8019A0BC.s,func_8019A0BC,0x8019A0BC,0x260
asm/non_matchings/code/audio_seqplayer/func_8019AA3C.s,func_8019AA3C,0x8019AA3C,0x2D
asm/non_matchings/code/audio_seqplayer/func_8019AAF0.s,func_8019AAF0,0x8019AAF0,0x14
asm/non_matchings/code/audio_seqplayer/func_8019AB40.s,func_8019AB40,0x8019AB40,0x34
asm/non_matchings/code/audio_seqplayer/AudioSeq_ResetSequencePlayer.s,AudioSeq_ResetSequencePlayer,0x8019AB40,0x34
asm/non_matchings/code/audio_seqplayer/func_8019AC10.s,func_8019AC10,0x8019AC10,0x37
asm/non_matchings/code/audio_seqplayer/func_8019ACEC.s,func_8019ACEC,0x8019ACEC,0x34
asm/non_matchings/code/audio_seqplayer/func_8019ADBC.s,func_8019ADBC,0x8019ADBC,0x21

1 asm/non_matchings/code/z_en_a_keep/EnAObj_Init.s EnAObj_Init 0x800A5AC0 0x2B
3067 asm/non_matchings/code/audio_heap/func_8018B0F0.s func_8018B0F0 0x8018B0F0 0x7
3068 asm/non_matchings/code/audio_heap/func_8018B10C.s func_8018B10C 0x8018B10C 0x51
3069 asm/non_matchings/code/audio_heap/func_8018B250.s func_8018B250 0x8018B250 0x32
3070 asm/non_matchings/code/audio_heap/func_8018B318.s asm/non_matchings/code/audio_heap/AudioHeap_DiscardFont.s func_8018B318 AudioHeap_DiscardFont 0x8018B318 0x39
3071 asm/non_matchings/code/audio_heap/func_8018B3FC.s func_8018B3FC 0x8018B3FC 0x1E
3072 asm/non_matchings/code/audio_heap/func_8018B474.s func_8018B474 0x8018B474 0x21
3073 asm/non_matchings/code/audio_heap/func_8018B4F8.s asm/non_matchings/code/audio_heap/AudioHeap_WritebackDCache.s func_8018B4F8 AudioHeap_WritebackDCache 0x8018B4F8 0xA
3074 asm/non_matchings/code/audio_heap/func_8018B520.s func_8018B520 0x8018B520 0x16
3075 asm/non_matchings/code/audio_heap/func_8018B578.s asm/non_matchings/code/audio_heap/AudioHeap_AllocAttemptExternal.s func_8018B578 AudioHeap_AllocAttemptExternal 0x8018B578 0x16
3076 asm/non_matchings/code/audio_heap/AudioHeap_AllocDmaMemory.s AudioHeap_AllocDmaMemory 0x8018B5D0 0xE
3077 asm/non_matchings/code/audio_heap/func_8018B608.s func_8018B608 0x8018B608 0xE
3078 asm/non_matchings/code/audio_heap/func_8018B640.s asm/non_matchings/code/audio_heap/AudioHeap_AllocZeroed.s func_8018B640 AudioHeap_AllocZeroed 0x8018B640 0x17
3079 asm/non_matchings/code/audio_heap/func_8018B69C.s func_8018B69C 0x8018B69C 0x13
3080 asm/non_matchings/code/audio_heap/func_8018B6E8.s asm/non_matchings/code/audio_heap/AudioHeap_Alloc.s func_8018B6E8 AudioHeap_Alloc 0x8018B6E8 0x16
3081 asm/non_matchings/code/audio_heap/func_8018B740.s asm/non_matchings/code/audio_heap/AudioHeap_AllocPoolInit.s func_8018B740 AudioHeap_AllocPoolInit 0x8018B740 0xA
3082 asm/non_matchings/code/audio_heap/func_8018B768.s func_8018B768 0x8018B768 0x5
3083 asm/non_matchings/code/audio_heap/func_8018B77C.s func_8018B77C 0x8018B77C 0xC
3084 asm/non_matchings/code/audio_heap/func_8018B7AC.s func_8018B7AC 0x8018B7AC 0x4
3085 asm/non_matchings/code/audio_heap/func_8018B7BC.s func_8018B7BC 0x8018B7BC 0x50
3086 asm/non_matchings/code/audio_heap/func_8018B8FC.s asm/non_matchings/code/audio_heap/AudioHeap_InitMainPool.s func_8018B8FC AudioHeap_InitMainPool 0x8018B8FC 0x18
3087 asm/non_matchings/code/audio_heap/func_8018B95C.s func_8018B95C 0x8018B95C 0x21
3088 asm/non_matchings/code/audio_heap/func_8018B9E0.s func_8018B9E0 0x8018B9E0 0x21
3089 asm/non_matchings/code/audio_heap/func_8018BA64.s func_8018BA64 0x8018BA64 0x31
3090 asm/non_matchings/code/audio_heap/func_8018BB28.s func_8018BB28 0x8018BB28 0x31
3091 asm/non_matchings/code/audio_heap/func_8018BBEC.s asm/non_matchings/code/audio_heap/AudioHeap_AllocCached.s func_8018BBEC AudioHeap_AllocCached 0x8018BBEC 0x1E5
3092 asm/non_matchings/code/audio_heap/func_8018C380.s asm/non_matchings/code/audio_heap/AudioHeap_SearchCaches.s func_8018C380 AudioHeap_SearchCaches 0x8018C380 0x16
3093 asm/non_matchings/code/audio_heap/func_8018C3D8.s func_8018C3D8 0x8018C3D8 0x43
3094 asm/non_matchings/code/audio_heap/func_8018C4E4.s func_8018C4E4 0x8018C4E4 0xF5
3095 asm/non_matchings/code/audio_heap/func_8018C8B8.s func_8018C8B8 0x8018C8B8 0xC
3099 asm/non_matchings/code/audio_heap/func_8018CB70.s func_8018CB70 0x8018CB70 0x2
3100 asm/non_matchings/code/audio_heap/func_8018CB78.s func_8018CB78 0x8018CB78 0x31
3101 asm/non_matchings/code/audio_heap/func_8018CC3C.s func_8018CC3C 0x8018CC3C 0x1B
3102 asm/non_matchings/code/audio_heap/func_8018CCA8.s asm/non_matchings/code/audio_heap/AudioHeap_ResetStep.s func_8018CCA8 AudioHeap_ResetStep 0x8018CCA8 0xC1
3103 asm/non_matchings/code/audio_heap/func_8018CFAC.s func_8018CFAC 0x8018CFAC 0x174
3104 asm/non_matchings/code/audio_heap/func_8018D57C.s asm/non_matchings/code/audio_heap/AudioHeap_SearchPermanentCache.s func_8018D57C AudioHeap_SearchPermanentCache 0x8018D57C 0x16
3105 asm/non_matchings/code/audio_heap/func_8018D5D4.s asm/non_matchings/code/audio_heap/AudioHeap_AllocPermanent.s func_8018D5D4 AudioHeap_AllocPermanent 0x8018D5D4 0x21
3106 asm/non_matchings/code/audio_heap/func_8018D658.s asm/non_matchings/code/audio_heap/AudioHeap_AllocSampleCache.s func_8018D658 AudioHeap_AllocSampleCache 0x8018D658 0x1C
3107 asm/non_matchings/code/audio_heap/func_8018D6C8.s func_8018D6C8 0x8018D6C8 0x26
3108 asm/non_matchings/code/audio_heap/func_8018D760.s func_8018D760 0x8018D760 0xBC
3109 asm/non_matchings/code/audio_heap/func_8018DA50.s func_8018DA50 0x8018DA50 0x5D
3114 asm/non_matchings/code/audio_heap/func_8018DDD4.s func_8018DDD4 0x8018DDD4 0x54
3115 asm/non_matchings/code/audio_heap/func_8018DF24.s func_8018DF24 0x8018DF24 0x2F
3116 asm/non_matchings/code/audio_heap/func_8018DFE0.s func_8018DFE0 0x8018DFE0 0xB
3117 asm/non_matchings/code/audio_heap/func_8018E00C.s asm/non_matchings/code/audio_heap/AudioHeap_ApplySampleBankCache.s func_8018E00C AudioHeap_ApplySampleBankCache 0x8018E00C 0xC
3118 asm/non_matchings/code/audio_heap/func_8018E03C.s func_8018E03C 0x8018E03C 0x9B
3119 asm/non_matchings/code/audio_heap/func_8018E2A8.s func_8018E2A8 0x8018E2A8 0x27
3120 asm/non_matchings/code/audio_heap/func_8018E344.s func_8018E344 0x8018E344 0x161
3121 asm/non_matchings/code/audio_heap/func_8018E8C8.s func_8018E8C8 0x8018E8C8 0xA6
3122 asm/non_matchings/code/audio_load/func_8018EB60.s asm/non_matchings/code/audio_load/AudioLoad_DecreaseSampleDmaTtls.s func_8018EB60 AudioLoad_DecreaseSampleDmaTtls 0x8018EB60 0x3B
3123 asm/non_matchings/code/audio_load/func_8018EC4C.s asm/non_matchings/code/audio_load/AudioLoad_DmaSampleData.s func_8018EC4C AudioLoad_DmaSampleData 0x8018EC4C 0xCF
3124 asm/non_matchings/code/audio_load/func_8018EF88.s asm/non_matchings/code/audio_load/AudioLoad_InitSampleDmaBuffers.s func_8018EF88 AudioLoad_InitSampleDmaBuffers 0x8018EF88 0xA6
3125 asm/non_matchings/code/audio_load/AudioLoad_IsFontLoadComplete.s AudioLoad_IsFontLoadComplete 0x8018F220 0x1E
3126 asm/non_matchings/code/audio_load/func_8018F298.s asm/non_matchings/code/audio_load/AudioLoad_IsSeqLoadComplete.s func_8018F298 AudioLoad_IsSeqLoadComplete 0x8018F298 0x1E
3127 asm/non_matchings/code/audio_load/func_8018F310.s asm/non_matchings/code/audio_load/AudioLoad_IsSampleLoadComplete.s func_8018F310 AudioLoad_IsSampleLoadComplete 0x8018F310 0x1E
3128 asm/non_matchings/code/audio_load/func_8018F388.s asm/non_matchings/code/audio_load/AudioLoad_SetFontLoadStatus.s func_8018F388 AudioLoad_SetFontLoadStatus 0x8018F388 0xC
3129 asm/non_matchings/code/audio_load/func_8018F3B8.s asm/non_matchings/code/audio_load/AudioLoad_SetSeqLoadStatus.s func_8018F3B8 AudioLoad_SetSeqLoadStatus 0x8018F3B8 0xC
3130 asm/non_matchings/code/audio_load/func_8018F3E8.s asm/non_matchings/code/audio_load/AudioLoad_SetSampleFontLoadStatusAndApplyCaches.s func_8018F3E8 AudioLoad_SetSampleFontLoadStatusAndApplyCaches 0x8018F3E8 0x18
3131 asm/non_matchings/code/audio_load/func_8018F448.s asm/non_matchings/code/audio_load/AudioLoad_SetSampleFontLoadStatus.s func_8018F448 AudioLoad_SetSampleFontLoadStatus 0x8018F448 0xC
3132 asm/non_matchings/code/audio_load/func_8018F478.s asm/non_matchings/code/audio_load/AudioLoad_InitTable.s func_8018F478 AudioLoad_InitTable 0x8018F478 0x18
3133 asm/non_matchings/code/audio_load/func_8018F4D8.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSeqFonts.s func_8018F4D8 AudioLoad_SyncLoadSeqFonts 0x8018F4D8 0x2C
3134 asm/non_matchings/code/audio_load/func_8018F588.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSeqParts.s func_8018F588 AudioLoad_SyncLoadSeqParts 0x8018F588 0x1F
3135 asm/non_matchings/code/audio_load/func_8018F604.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSample.s func_8018F604 AudioLoad_SyncLoadSample 0x8018F604 0x3B
3136 asm/non_matchings/code/audio_load/func_8018F6F0.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoadInstrument.s func_8018F6F0 AudioLoad_SyncLoadInstrument 0x8018F6F0 0x34
3137 asm/non_matchings/code/audio_load/func_8018F7C0.s asm/non_matchings/code/audio_load/AudioLoad_AsyncLoad.s func_8018F7C0 AudioLoad_AsyncLoad 0x8018F7C0 0xE
3138 asm/non_matchings/code/audio_load/func_8018F7F8.s asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadSeq.s func_8018F7F8 AudioLoad_AsyncLoadSeq 0x8018F7F8 0x11
3139 asm/non_matchings/code/audio_load/func_8018F83C.s asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadSampleBank.s func_8018F83C AudioLoad_AsyncLoadSampleBank 0x8018F83C 0x11
3140 asm/non_matchings/code/audio_load/func_8018F880.s asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadFont.s func_8018F880 AudioLoad_AsyncLoadFont 0x8018F880 0x11
3141 asm/non_matchings/code/audio_load/func_8018F8C4.s asm/non_matchings/code/audio_load/AudioLoad_GetFontsForSequence.s func_8018F8C4 AudioLoad_GetFontsForSequence 0x8018F8C4 0x11
3142 asm/non_matchings/code/audio_load/func_8018F908.s asm/non_matchings/code/audio_load/AudioLoad_DiscardSeqFonts.s func_8018F908 AudioLoad_DiscardSeqFonts 0x8018F908 0x2C
3143 asm/non_matchings/code/audio_load/func_8018F9B8.s asm/non_matchings/code/audio_load/AudioLoad_DiscardFont.s func_8018F9B8 AudioLoad_DiscardFont 0x8018F9B8 0x2A
3144 asm/non_matchings/code/audio_load/func_8018FA60.s func_8018FA60 0x8018FA60 0x1C
3145 asm/non_matchings/code/audio_load/func_8018FAD0.s asm/non_matchings/code/audio_load/AudioLoad_SyncInitSeqPlayer.s func_8018FAD0 AudioLoad_SyncInitSeqPlayer 0x8018FAD0 0x14
3146 asm/non_matchings/code/audio_load/func_8018FB20.s asm/non_matchings/code/audio_load/AudioLoad_SyncInitSeqPlayerSkipTicks.s func_8018FB20 AudioLoad_SyncInitSeqPlayerSkipTicks 0x8018FB20 0x16
3147 asm/non_matchings/code/audio_load/func_8018FB78.s asm/non_matchings/code/audio_load/AudioLoad_SyncInitSeqPlayerInternal.s func_8018FB78 AudioLoad_SyncInitSeqPlayerInternal 0x8018FB78 0x55
3148 asm/non_matchings/code/audio_load/func_8018FCCC.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSeq.s func_8018FCCC AudioLoad_SyncLoadSeq 0x8018FCCC 0x15
3149 asm/non_matchings/code/audio_load/func_8018FD20.s asm/non_matchings/code/audio_load/AudioLoad_GetSampleBank.s func_8018FD20 AudioLoad_GetSampleBank 0x8018FD20 0x8
3150 asm/non_matchings/code/audio_load/func_8018FD40.s asm/non_matchings/code/audio_load/AudioLoad_TrySyncLoadSampleBank.s func_8018FD40 AudioLoad_TrySyncLoadSampleBank 0x8018FD40 0x47
3151 asm/non_matchings/code/audio_load/func_8018FE5C.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoadFont.s func_8018FE5C AudioLoad_SyncLoadFont 0x8018FE5C 0x41
3152 asm/non_matchings/code/audio_load/func_8018FF60.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoad.s func_8018FF60 AudioLoad_SyncLoad 0x8018FF60 0xA9
3153 asm/non_matchings/code/audio_load/func_80190204.s asm/non_matchings/code/audio_load/AudioLoad_GetRealTableIndex.s func_80190204 AudioLoad_GetRealTableIndex 0x80190204 0xF
3154 asm/non_matchings/code/audio_load/func_80190240.s asm/non_matchings/code/audio_load/AudioLoad_SearchCaches.s func_80190240 AudioLoad_SearchCaches 0x80190240 0x15
3155 asm/non_matchings/code/audio_load/func_80190294.s asm/non_matchings/code/audio_load/AudioLoad_GetLoadTable.s func_80190294 AudioLoad_GetLoadTable 0x80190294 0x11
3156 asm/non_matchings/code/audio_load/func_801902D8.s asm/non_matchings/code/audio_load/AudioLoad_RelocateFont.s func_801902D8 AudioLoad_RelocateFont 0x801902D8 0x9B
3157 asm/non_matchings/code/audio_load/func_80190544.s asm/non_matchings/code/audio_load/AudioLoad_SyncDma.s func_80190544 AudioLoad_SyncDma 0x80190544 0x49
3158 asm/non_matchings/code/audio_load/func_80190668.s asm/non_matchings/code/audio_load/AudioLoad_SyncDmaUnkMedium.s func_80190668 AudioLoad_SyncDmaUnkMedium 0x80190668 0x5
3159 asm/non_matchings/code/audio_load/func_8019067C.s asm/non_matchings/code/audio_load/AudioLoad_Dma.s func_8019067C AudioLoad_Dma 0x8019067C 0x36
3160 asm/non_matchings/code/audio_load/func_80190754.s asm/non_matchings/code/audio_load/AudioLoad_Unused1.s func_80190754 AudioLoad_Unused1 0x80190754 0x2
3161 asm/non_matchings/code/audio_load/func_8019075C.s asm/non_matchings/code/audio_load/AudioLoad_SyncLoadSimple.s func_8019075C AudioLoad_SyncLoadSimple 0x8019075C 0x8
3162 asm/non_matchings/code/audio_load/func_8019077C.s asm/non_matchings/code/audio_load/AudioLoad_AsyncLoadInner.s func_8019077C AudioLoad_AsyncLoadInner 0x8019077C 0xE3
3163 asm/non_matchings/code/audio_load/func_80190B08.s asm/non_matchings/code/audio_load/AudioLoad_ProcessLoads.s func_80190B08 AudioLoad_ProcessLoads 0x80190B08 0xC
3164 asm/non_matchings/code/audio_load/func_80190B38.s asm/non_matchings/code/audio_load/AudioLoad_SetDmaHandler.s func_80190B38 AudioLoad_SetDmaHandler 0x80190B38 0x3
3165 asm/non_matchings/code/audio_load/func_80190B44.s asm/non_matchings/code/audio_load/AudioLoad_SetUnusedHandler.s func_80190B44 AudioLoad_SetUnusedHandler 0x80190B44 0x3
3166 asm/non_matchings/code/audio_load/func_80190B50.s asm/non_matchings/code/audio_load/AudioLoad_InitSoundFontMeta.s func_80190B50 AudioLoad_InitSoundFontMeta 0x80190B50 0x18
3167 asm/non_matchings/code/audio_load/func_80190BB0.s asm/non_matchings/code/audio_load/AudioLoad_Init.s func_80190BB0 AudioLoad_Init 0x80190BB0 0xE8
3168 asm/non_matchings/code/audio_load/func_80190F50.s asm/non_matchings/code/audio_load/AudioLoad_InitSlowLoads.s func_80190F50 AudioLoad_InitSlowLoads 0x80190F50 0x5
3169 asm/non_matchings/code/audio_load/func_80190F64.s asm/non_matchings/code/audio_load/AudioLoad_SlowLoadSample.s func_80190F64 AudioLoad_SlowLoadSample 0x80190F64 0x74
3170 asm/non_matchings/code/audio_load/func_80191134.s asm/non_matchings/code/audio_load/AudioLoad_GetFontSample.s func_80191134 AudioLoad_GetFontSample 0x80191134 0x24
3171 asm/non_matchings/code/audio_load/func_801911C4.s asm/non_matchings/code/audio_load/AudioLoad_Unused2.s func_801911C4 AudioLoad_Unused2 0x801911C4 0x2
3172 asm/non_matchings/code/audio_load/func_801911CC.s asm/non_matchings/code/audio_load/AudioLoad_FinishSlowLoad.s func_801911CC AudioLoad_FinishSlowLoad 0x801911CC 0x1D
3173 asm/non_matchings/code/audio_load/func_80191240.s asm/non_matchings/code/audio_load/AudioLoad_ProcessSlowLoads.s func_80191240 AudioLoad_ProcessSlowLoads 0x80191240 0x62
3174 asm/non_matchings/code/audio_load/func_801913C8.s asm/non_matchings/code/audio_load/AudioLoad_DmaSlowCopy.s func_801913C8 AudioLoad_DmaSlowCopy 0x801913C8 0x21
3175 asm/non_matchings/code/audio_load/func_8019144C.s asm/non_matchings/code/audio_load/AudioLoad_DmaSlowCopyUnkMedium.s func_8019144C AudioLoad_DmaSlowCopyUnkMedium 0x8019144C 0x5
3176 asm/non_matchings/code/audio_load/func_80191460.s asm/non_matchings/code/audio_load/AudioLoad_SlowLoadSeq.s func_80191460 AudioLoad_SlowLoadSeq 0x80191460 0x42
3177 asm/non_matchings/code/audio_load/func_80191568.s asm/non_matchings/code/audio_load/AudioLoad_InitAsyncLoads.s func_80191568 AudioLoad_InitAsyncLoads 0x80191568 0xC
3178 asm/non_matchings/code/audio_load/func_80191598.s asm/non_matchings/code/audio_load/AudioLoad_StartAsyncLoadUnkMedium.s func_80191598 AudioLoad_StartAsyncLoadUnkMedium 0x80191598 0x21
3179 asm/non_matchings/code/audio_load/func_8019161C.s asm/non_matchings/code/audio_load/AudioLoad_StartAsyncLoad.s func_8019161C AudioLoad_StartAsyncLoad 0x8019161C 0x49
3180 asm/non_matchings/code/audio_load/func_80191740.s asm/non_matchings/code/audio_load/AudioLoad_ProcessAsyncLoads.s func_80191740 AudioLoad_ProcessAsyncLoads 0x80191740 0x49
3181 asm/non_matchings/code/audio_load/func_80191864.s asm/non_matchings/code/audio_load/AudioLoad_ProcessAsyncLoadUnkMedium.s func_80191864 AudioLoad_ProcessAsyncLoadUnkMedium 0x80191864 0x3
3182 asm/non_matchings/code/audio_load/func_80191870.s asm/non_matchings/code/audio_load/AudioLoad_FinishAsyncLoad.s func_80191870 AudioLoad_FinishAsyncLoad 0x80191870 0x4F
3183 asm/non_matchings/code/audio_load/func_801919AC.s asm/non_matchings/code/audio_load/AudioLoad_ProcessAsyncLoad.s func_801919AC AudioLoad_ProcessAsyncLoad 0x801919AC 0x65
3184 asm/non_matchings/code/audio_load/func_80191B40.s asm/non_matchings/code/audio_load/AudioLoad_AsyncDma.s func_80191B40 AudioLoad_AsyncDma 0x80191B40 0x24
3185 asm/non_matchings/code/audio_load/func_80191BD0.s asm/non_matchings/code/audio_load/AudioLoad_AsyncDmaRamUnloaded.s func_80191BD0 AudioLoad_AsyncDmaRamUnloaded 0x80191BD0 0x1C
3186 asm/non_matchings/code/audio_load/func_80191C40.s asm/non_matchings/code/audio_load/AudioLoad_AsyncDmaUnkMedium.s func_80191C40 AudioLoad_AsyncDmaUnkMedium 0x80191C40 0x5
3187 asm/non_matchings/code/audio_load/func_80191C54.s asm/non_matchings/code/audio_load/AudioLoad_RelocateSample.s func_80191C54 AudioLoad_RelocateSample 0x80191C54 0x50
3188 asm/non_matchings/code/audio_load/func_80191D94.s asm/non_matchings/code/audio_load/AudioLoad_RelocateFontAndPreloadSamples.s func_80191D94 AudioLoad_RelocateFontAndPreloadSamples 0x80191D94 0xFE
3189 asm/non_matchings/code/audio_load/func_8019218C.s asm/non_matchings/code/audio_load/AudioLoad_ProcessSamplePreloads.s func_8019218C AudioLoad_ProcessSamplePreloads 0x8019218C 0x6D
3190 asm/non_matchings/code/audio_load/func_80192340.s asm/non_matchings/code/audio_load/AudioLoad_AddToSampleSet.s func_80192340 AudioLoad_AddToSampleSet 0x80192340 0x12
3191 asm/non_matchings/code/audio_load/func_80192388.s asm/non_matchings/code/audio_load/AudioLoad_GetSamplesForFont.s func_80192388 AudioLoad_GetSamplesForFont 0x80192388 0x4D
3192 asm/non_matchings/code/audio_load/func_801924BC.s asm/non_matchings/code/audio_load/AudioLoad_AddUsedSample.s func_801924BC AudioLoad_AddUsedSample 0x801924BC 0x16
3193 asm/non_matchings/code/audio_load/func_80192514.s asm/non_matchings/code/audio_load/AudioLoad_PreloadSamplesForFont.s func_80192514 AudioLoad_PreloadSamplesForFont 0x80192514 0x11F
3194 asm/non_matchings/code/audio_load/func_80192990.s asm/non_matchings/code/audio_load/AudioLoad_LoadPermanentSamples.s func_80192990 AudioLoad_LoadPermanentSamples 0x80192990 0x50
3195 asm/non_matchings/code/audio_load/func_80192AD0.s asm/non_matchings/code/audio_load/AudioLoad_Unused3.s func_80192AD0 AudioLoad_Unused3 0x80192AD0 0x2
3196 asm/non_matchings/code/audio_load/func_80192AD8.s asm/non_matchings/code/audio_load/AudioLoad_Unused4.s func_80192AD8 AudioLoad_Unused4 0x80192AD8 0x2
3197 asm/non_matchings/code/audio_load/func_80192AE0.s asm/non_matchings/code/audio_load/AudioLoad_Unused5.s func_80192AE0 AudioLoad_Unused5 0x80192AE0 0x2
3198 asm/non_matchings/code/audio_load/func_80192AE8.s asm/non_matchings/code/audio_load/AudioLoad_ScriptLoad.s func_80192AE8 AudioLoad_ScriptLoad 0x80192AE8 0x1B
3199 asm/non_matchings/code/audio_load/func_80192B54.s asm/non_matchings/code/audio_load/AudioLoad_ProcessScriptLoads.s func_80192B54 AudioLoad_ProcessScriptLoads 0x80192B54 0x16
3200 asm/non_matchings/code/audio_load/func_80192BAC.s asm/non_matchings/code/audio_load/AudioLoad_InitScriptLoads.s func_80192BAC AudioLoad_InitScriptLoads 0x80192BAC 0xD
3201 asm/non_matchings/code/code_80192BE0/func_80192BE0.s func_80192BE0 0x80192BE0 0x8
3202 asm/non_matchings/code/code_80192BE0/func_80192C00.s func_80192C00 0x80192C00 0x167
3203 asm/non_matchings/code/code_80192BE0/func_8019319C.s func_8019319C 0x8019319C 0x14F
3237 asm/non_matchings/code/code_80192BE0/func_80194548.s func_80194548 0x80194548 0x8
3238 asm/non_matchings/code/code_80192BE0/func_80194568.s func_80194568 0x80194568 0x40
3239 asm/non_matchings/code/code_80192BE0/func_80194668.s func_80194668 0x80194668 0x1F
3240 asm/non_matchings/code/code_80192BE0/func_801946E4.s asm/non_matchings/code/code_80192BE0/Audio_InitMesgQueues.s func_801946E4 Audio_InitMesgQueues 0x801946E4 0xB
3241 asm/non_matchings/code/code_80194710/Audio_InvalDCache.s Audio_InvalDCache 0x80194710 0x10
3242 asm/non_matchings/code/code_80194710/Audio_WritebackDCache.s Audio_WritebackDCache 0x80194750 0x10
3243 asm/non_matchings/code/code_80194710/func_80194790.s func_80194790 0x80194790 0x1D
3317 asm/non_matchings/code/audio_seqplayer/func_8019A0BC.s func_8019A0BC 0x8019A0BC 0x260
3318 asm/non_matchings/code/audio_seqplayer/func_8019AA3C.s func_8019AA3C 0x8019AA3C 0x2D
3319 asm/non_matchings/code/audio_seqplayer/func_8019AAF0.s func_8019AAF0 0x8019AAF0 0x14
3320 asm/non_matchings/code/audio_seqplayer/func_8019AB40.s asm/non_matchings/code/audio_seqplayer/AudioSeq_ResetSequencePlayer.s func_8019AB40 AudioSeq_ResetSequencePlayer 0x8019AB40 0x34
3321 asm/non_matchings/code/audio_seqplayer/func_8019AC10.s func_8019AC10 0x8019AC10 0x37
3322 asm/non_matchings/code/audio_seqplayer/func_8019ACEC.s func_8019ACEC 0x8019ACEC 0x34
3323 asm/non_matchings/code/audio_seqplayer/func_8019ADBC.s func_8019ADBC 0x8019ADBC 0x21