Go to the source code of this file.
|
| void | audio_dma_copy_immediate (u8 *devAddr, void *vAddr, size_t nbytes) |
| |
| void | audio_dma_copy_async (uintptr_t, void *, size_t, OSMesgQueue *, OSIoMesg *) |
| |
| void | audio_dma_partial_copy_async (uintptr_t *, u8 **, ssize_t *, OSMesgQueue *, OSIoMesg *) |
| |
| void | decrease_sample_dma_ttls (void) |
| |
| void * | dma_sample_data (uintptr_t, u32, s32, u8 *) |
| |
| void | func_800BB030 (s32) |
| |
| s32 | func_800BB304 (struct AudioBankSample *) |
| |
| s32 | func_800BB388 (s32 bankId, s32 instId, s32 arg2) |
| |
| void | func_800BB43C (ALSeqFile *, u8 *) |
| |
| void | patch_sound (struct AudioBankSound *sound, u8 *memBase, u8 *offsetBase) |
| |
| void | func_800BB584 (s32) |
| |
| void | patch_audio_bank (struct AudioBank *mem, u8 *offset, u32 numInstruments, u32 numDrums) |
| |
| struct AudioBank * | bank_load_immediate (s32, s32) |
| |
| struct AudioBank * | bank_load_async (s32, s32, struct SequencePlayer *) |
| |
| void * | sequence_dma_immediate (s32, s32) |
| |
| void * | sequence_dma_async (s32, s32, struct SequencePlayer *) |
| |
| u8 | get_missing_bank (u32 seqId, s32 *nonNullCount, s32 *nullCount) |
| |
| struct AudioBank * | load_banks_immediate (s32, u8 *) |
| |
| void | preload_sequence (u32, u8) |
| |
| void | load_sequence (u32, u32, s32) |
| |
| void | load_sequence_internal (u32, u32, s32) |
| |
◆ AUDIO_FRAME_DMA_QUEUE_SIZE
| #define AUDIO_FRAME_DMA_QUEUE_SIZE 0x40 |
◆ IS_SEQUENCE_CHANNEL_VALID
◆ PRELOAD_BANKS
◆ PRELOAD_SEQUENCE
| #define PRELOAD_SEQUENCE 1 |
◆ audio_dma_copy_async()
| void audio_dma_copy_async |
( |
uintptr_t | devAddr, |
|
|
void * | vAddr, |
|
|
size_t | nbytes, |
|
|
OSMesgQueue * | queue, |
|
|
OSIoMesg * | mesg ) |
Performs an asynchronus (normal priority) DMA copy
◆ audio_dma_copy_immediate()
| void audio_dma_copy_immediate |
( |
u8 * | devAddr, |
|
|
void * | vAddr, |
|
|
size_t | nbytes ) |
Performs an immediate DMA copy
◆ audio_dma_partial_copy_async()
| void audio_dma_partial_copy_async |
( |
uintptr_t * | devAddr, |
|
|
u8 ** | vAddr, |
|
|
ssize_t * | remaining, |
|
|
OSMesgQueue * | queue, |
|
|
OSIoMesg * | mesg ) |
Performs a partial asynchronous (normal priority) DMA copy. This is limited to 0x1000 bytes transfer at once.
◆ bank_load_async()
◆ bank_load_immediate()
◆ decrease_sample_dma_ttls()
| void decrease_sample_dma_ttls |
( |
void | | ) |
|
◆ dma_sample_data()
| void * dma_sample_data |
( |
uintptr_t | devAddr, |
|
|
u32 | size, |
|
|
s32 | arg2, |
|
|
u8 * | dmaIndexRef ) |
◆ func_800BB030()
| void func_800BB030 |
( |
s32 | | ) |
|
◆ func_800BB304()
◆ func_800BB388()
◆ func_800BB43C()
◆ func_800BB584()
| void func_800BB584 |
( |
s32 | bankId | ) |
|
◆ get_missing_bank()
| u8 get_missing_bank |
( |
u32 | seqId, |
|
|
s32 * | nonNullCount, |
|
|
s32 * | nullCount ) |
◆ load_banks_immediate()
| struct AudioBank * load_banks_immediate |
( |
s32 | seqId, |
|
|
u8 * | outDefaultBank ) |
◆ load_sequence()
| void load_sequence |
( |
u32 | player, |
|
|
u32 | seqId, |
|
|
s32 | loadAsync ) |
◆ load_sequence_internal()
| void load_sequence_internal |
( |
u32 | player, |
|
|
u32 | seqId, |
|
|
s32 | loadAsync ) |
- Bug
- This should set the last bank (i.e. the first in the JSON) as default, not the missing one. This code path never gets taken, though – all sequence loading is synchronous.
◆ patch_audio_bank()
| void patch_audio_bank |
( |
struct AudioBank * | mem, |
|
|
u8 * | offset, |
|
|
u32 | numInstruments, |
|
|
u32 | numDrums ) |
Doesn't affect EU, but required for US/JP
Doesn't affect EU, but required for US/JP
◆ patch_sound()
◆ preload_sequence()
| void preload_sequence |
( |
u32 | seqId, |
|
|
u8 | preloadMask ) |
- Bug
- should be IS_SEQ_LOAD_COMPLETE
◆ sequence_dma_async()
◆ sequence_dma_immediate()
| void * sequence_dma_immediate |
( |
s32 | seqId, |
|
|
s32 | arg1 ) |
◆ D_803B6720
◆ D_803B6738
◆ D_803B6740
◆ D_803B6E60
◆ D_803B70A8
◆ gAlBankSets
◆ gAlCtlHeader
◆ gAlTbl
◆ gAudioBufferParameters
◆ gAudioFrameCount
| volatile s32 gAudioFrameCount |
|
extern |
◆ gAudioLibSoundMode
◆ gCtlEntries
◆ gCurrAudioFrameDmaCount
| s32 gCurrAudioFrameDmaCount |
|
extern |
◆ gCurrAudioFrameDmaIoMesgBufs
◆ gCurrAudioFrameDmaMesgBufs
◆ gCurrAudioFrameDmaQueue
| OSMesgQueue gCurrAudioFrameDmaQueue |
|
extern |
◆ gLayerFreeList
◆ gMaxAudioCmds
◆ gMaxSimultaneousNotes
| s32 gMaxSimultaneousNotes |
|
extern |
◆ gNoteFreeLists
◆ gSampleDmaNumListItems
| u32 gSampleDmaNumListItems |
|
extern |
◆ gSeqFileHeader
◆ gSequenceChannelNone
◆ gSequenceChannels
◆ gSequenceCount
◆ gSequenceLayers
◆ gSequencePlayers
◆ gTempoInternalToExternal
| s16 gTempoInternalToExternal |
|
extern |
◆ load_bss_pad
◆ sSampleDmaListSize1
◆ sSampleDmaReuseQueue1
| u8 sSampleDmaReuseQueue1[256] |
|
extern |
◆ sSampleDmaReuseQueue2
| u8 sSampleDmaReuseQueue2[256] |
|
extern |
◆ sSampleDmaReuseQueueHead1
| u8 sSampleDmaReuseQueueHead1 |
|
extern |
◆ sSampleDmaReuseQueueHead2
| u8 sSampleDmaReuseQueueHead2 |
|
extern |
◆ sSampleDmaReuseQueueTail1
| u8 sSampleDmaReuseQueueTail1 |
|
extern |
◆ sSampleDmaReuseQueueTail2
| u8 sSampleDmaReuseQueueTail2 |
|
extern |
◆ sSampleDmas