mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-08-16 05:29:02 -04:00
e9415164bb
* Lots of audio decomp * effects and playback are 100% matched * Took some notes from the SM64 Makefile to get the right compiler options for a couple files * Added the audio files to rename_symbol utility Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
39 lines
1.4 KiB
C
39 lines
1.4 KiB
C
#ifndef AUDIO_LOAD_H
|
|
#define AUDIO_LOAD_H
|
|
|
|
#include <PR/ultratypes.h>
|
|
#include "audio/internal.h"
|
|
|
|
#define AUDIO_FRAME_DMA_QUEUE_SIZE 0x40
|
|
|
|
#define PRELOAD_BANKS 2
|
|
#define PRELOAD_SEQUENCE 1
|
|
|
|
#define IS_SEQUENCE_CHANNEL_VALID(ptr) ((uintptr_t)(ptr) != (uintptr_t)&gSequenceChannelNone)
|
|
|
|
void audio_dma_copy_immediate(uintptr_t 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 func_800BB030(s32);
|
|
s32 func_800BB304(struct AudioBankSample*);
|
|
s32 func_800BB388(s32 bankId, s32 instId, s32 arg2);
|
|
void patch_sound(struct AudioBankSound *sound, u8 *memBase, u8 *offsetBase);
|
|
void patch_audio_bank(struct AudioBank *mem, u8 *offset, u32 numInstruments, u32 numDrums);
|
|
|
|
extern struct Note *gNotes;
|
|
extern struct SequencePlayer gSequencePlayers[SEQUENCE_PLAYERS];
|
|
extern struct SequenceChannel gSequenceChannels[SEQUENCE_CHANNELS];
|
|
extern struct SequenceChannelLayer gSequenceLayers[SEQUENCE_LAYERS];
|
|
extern struct SequenceChannel gSequenceChannelNone;
|
|
extern struct AudioListItem gLayerFreeList;
|
|
extern struct NotePool gNoteFreeLists;
|
|
extern u8 *gAlBankSets;
|
|
extern struct CtlEntry *gCtlEntries;
|
|
extern struct AudioBufferParametersEU gAudioBufferParameters;
|
|
extern s32 gMaxSimultaneousNotes;
|
|
extern s8 gAudioUpdatesPerFrame; // = 4
|
|
extern s8 gAudioLibSoundMode;
|
|
|
|
#endif // AUDIO_LOAD_H
|