mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2024-11-28 15:03:01 +00:00
75bb9b7912
* Refresh 13 Co-authored-by: n64 <n64>
48 lines
810 B
C
48 lines
810 B
C
#ifndef _ULTRA64_LIBAUDIO_H_
|
|
#define _ULTRA64_LIBAUDIO_H_
|
|
|
|
#include "abi.h"
|
|
|
|
typedef struct
|
|
{
|
|
u8 *offset;
|
|
s32 len;
|
|
#ifdef VERSION_SH
|
|
s8 magic[2]; // tbl: 0x0204, otherwise: 0x0203
|
|
|
|
// for ctl (else zeros):
|
|
union {
|
|
// unused, just for clarification (big endian)
|
|
struct {
|
|
u8 bank;
|
|
u8 ff;
|
|
u8 numInstruments;
|
|
u8 numDrums;
|
|
} as_u8;
|
|
|
|
// used
|
|
struct {
|
|
s16 bankAndFf;
|
|
s16 numInstrumentsAndDrums;
|
|
} as_s16;
|
|
} ctl;
|
|
#endif
|
|
} ALSeqData;
|
|
|
|
typedef struct
|
|
{
|
|
#ifndef VERSION_SH
|
|
s16 revision;
|
|
#endif
|
|
s16 seqCount;
|
|
#ifdef VERSION_SH
|
|
s16 unk2;
|
|
u8 *data;
|
|
s32 pad[2];
|
|
#endif
|
|
ALSeqData seqArray[1];
|
|
} ALSeqFile;
|
|
|
|
void alSeqFileNew(ALSeqFile *f, u8 *base);
|
|
|
|
#endif
|