diff options
Diffstat (limited to 'src/code/code_800EC960.c')
| -rw-r--r-- | src/code/code_800EC960.c | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/src/code/code_800EC960.c b/src/code/code_800EC960.c index fe071b65a..5d928b539 100644 --- a/src/code/code_800EC960.c +++ b/src/code/code_800EC960.c @@ -1,6 +1,22 @@ #include "ultra64.h" #include "global.h" +// TODO: can these macros be shared between files? code_800F9280 seems to use +// versions without any casts... +#define Audio_DisableSeq(seqIdx, fadeOut) Audio_QueueCmdS32(0x83000000 | ((u8)seqIdx << 16), fadeOut) +#define Audio_StartSeq(seqIdx, fadeTimer, seqId) Audio_QueueSeqCmd(0x00000000 | ((u8)seqIdx << 24) | ((u8)(fadeTimer) << 0x10) | (u16)seqId) +#define Audio_SeqCmd7(seqIdx, a, b) Audio_QueueSeqCmd(0x70000000 | ((u8)seqIdx << 0x18) | ((u8)a << 0x10) | (u8)(b)) +#define Audio_SeqCmdC(seqIdx, a, b, c) Audio_QueueSeqCmd(0xC0000000 | ((u8)seqIdx << 24) | ((u8)a << 16) | ((u8)b << 8) | ((u8)(c))) +#define Audio_SeqCmdA(seqIdx, a) Audio_QueueSeqCmd(0xA0000000 | ((u8)seqIdx << 24) | ((u16)(a))) +#define Audio_SeqCmd1(seqIdx, a) Audio_QueueSeqCmd(0x100000FF | ((u8)seqIdx << 24) | ((u8)(a) << 16)) +#define Audio_SeqCmdB(seqIdx, a, b, c) Audio_QueueSeqCmd(0xB0000000 | ((u8)seqIdx << 24) | ((u8)a << 16) | ((u8)b << 8) | ((u8)c)) +#define Audio_SeqCmdB40(seqIdx, a, b) Audio_QueueSeqCmd(0xB0004000 | ((u8)seqIdx << 24) | ((u8)a << 16) | ((u8)b)) +#define Audio_SeqCmd6(seqIdx, a, b, c) Audio_QueueSeqCmd(0x60000000 | ((u8)seqIdx << 24) | ((u8)(a) << 16) | ((u8)b << 8) | ((u8)c)) +#define Audio_SeqCmdE0(seqIdx, a) Audio_QueueSeqCmd(0xE0000000 | ((u8)seqIdx << 24) | ((u8)a)) +#define Audio_SeqCmdE01(seqIdx, a) Audio_QueueSeqCmd(0xE0000100 | ((u8)seqIdx << 24) | ((u16)a)) +#define Audio_SeqCmd8(seqIdx, a, b, c) Audio_QueueSeqCmd(0x80000000 | ((u8)seqIdx << 24) | ((u8)a << 16) | ((u8)b << 8) | ((u8)c)) +#define Audio_SeqCmdF(seqIdx, a) Audio_QueueSeqCmd(0xF0000000 | ((u8)seqIdx << 24) | ((u8)a)) + typedef struct { /* 0x0 */ f32 unk_00; /* 0x4 */ f32 freqScale; @@ -19,9 +35,9 @@ typedef struct { } FreqLerp; typedef struct { - u16 unk_00; - u16 unk_02; - u8 unk_04[100]; + /* 0x0 */ u16 unk_00; + /* 0x2 */ u16 unk_02; + /* 0x4 */ u8 unk_04[100]; } D_801306DC_s; // size = 0x68 typedef enum { @@ -389,7 +405,6 @@ OcarinaSongInfo gOcarinaSongNotes[14] = { extern u8 D_801333F0; extern u8 gAudioSEFlagSwapOff; extern u8 D_80133408; -extern u8 D_8013340C; extern u8 D_80133418; /** |
