Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
seq.h
Go to the documentation of this file.
1#ifndef _DOLPHIN_SEQ_H_
2#define _DOLPHIN_SEQ_H_
3
4#ifdef __REVOLUTION_SDK__
5#include <revolution/seq.h>
6#else
7#include <dolphin/syn.h>
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct _SEQTRACK {
14 /* 0x00 */ void* sequence;
15 /* 0x04 */ u8* start;
16 /* 0x08 */ u8* end;
17 /* 0x0C */ u8* current;
18 /* 0x10 */ u8 status;
19 /* 0x14 */ f32 beatsPerSec;
21 /* 0x1C */ u32 ticksPerFrame;
22 /* 0x20 */ u32 delay;
23 /* 0x24 */ u32 state;
25
26typedef struct _SEQSEQUENCE {
27 /* 0x0000 */ void* next;
28 /* 0x0004 */ u32 state;
29 /* 0x0008 */ u16 nTracks;
30 /* 0x000A */ s16 timeFormat;
31 /* 0x000C */ u32 tracksRunning;
32 /* 0x0010 */ u32 end;
33 /* 0x0014 */ SYNSYNTH synth;
34 /* 0x3154 */ void (*callback[128])(void*, u8);
35 /* 0x3354 */ SEQTRACK track[64];
37
38#define SEQ_ALL_TRACKS -1
39
40void SEQInit(void);
41void SEQQuit(void);
42void SEQRunAudioFrame(void);
43void SEQAddSequence(SEQSEQUENCE* sequence, u8* midiStream, void* wt, u32 aramBase, u32 zeroBase, u32 priorityVoiceAlloc, u32 priorityNoteOn, u32 priorityNoteRelease);
44void SEQRemoveSequence(SEQSEQUENCE* sequence);
45void SEQRegisterControllerCallback(SEQSEQUENCE* sequence, u8 controller, void (*callback)(void*, u8));
46void SEQSetState(SEQSEQUENCE* sequence, u32 state);
47u32 SEQGetState(SEQSEQUENCE* sequence);
48void SEQSetTempo(SEQSEQUENCE* sequence, u32 trackIndex, f32 bpm);
49f32 SEQGetTempo(SEQSEQUENCE* sequence, u32 trackIndex);
50void SEQSetVolume(SEQSEQUENCE* sequence, s32 dB);
52
53#ifdef __cplusplus
54}
55#endif
56
57#endif
58#endif // _DOLPHIN_SEQ_H_
s32 SEQGetVolume(SEQSEQUENCE *sequence)
Definition seq.c:465
void SEQInit(void)
Definition seq.c:304
void SEQSetTempo(SEQSEQUENCE *sequence, u32 trackIndex, f32 bpm)
Definition seq.c:438
u32 SEQGetState(SEQSEQUENCE *sequence)
Definition seq.c:433
f32 SEQGetTempo(SEQSEQUENCE *sequence, u32 trackIndex)
Definition seq.c:454
void SEQQuit(void)
Definition seq.c:308
void SEQSetState(SEQSEQUENCE *sequence, u32 state)
Definition seq.c:389
void SEQRegisterControllerCallback(SEQSEQUENCE *sequence, u8 controller, void(*callback)(void *, u8))
Definition seq.c:382
void SEQAddSequence(SEQSEQUENCE *sequence, u8 *midiStream, void *wt, u32 aramBase, u32 zeroBase, u32 priorityVoiceAlloc, u32 priorityNoteOn, u32 priorityNoteRelease)
Definition seq.c:354
void SEQRemoveSequence(SEQSEQUENCE *sequence)
Definition seq.c:376
void SEQSetVolume(SEQSEQUENCE *sequence, s32 dB)
Definition seq.c:460
struct _SEQTRACK SEQTRACK
struct _SEQSEQUENCE SEQSEQUENCE
void SEQRunAudioFrame(void)
Definition seq.c:312
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8
static void callback(u32 param_0)
Definition OSExec.c:308
Definition syn.h:73
Definition seq.h:26
SEQTRACK track[64]
Definition seq.h:35
u32 end
Definition seq.h:32
SYNSYNTH synth
Definition seq.h:33
u32 tracksRunning
Definition seq.h:31
u32 state
Definition seq.h:28
void(* callback[128])(void *, u8)
Definition seq.h:34
void * next
Definition seq.h:27
s16 timeFormat
Definition seq.h:30
u16 nTracks
Definition seq.h:29
Definition seq.h:13
u8 * end
Definition seq.h:16
u8 * current
Definition seq.h:17
u32 delay
Definition seq.h:22
u8 * start
Definition seq.h:15
u32 defaultTicksPerFrame
Definition seq.h:20
void * sequence
Definition seq.h:14
u32 ticksPerFrame
Definition seq.h:21
f32 beatsPerSec
Definition seq.h:19
u32 state
Definition seq.h:23
u8 status
Definition seq.h:18