SSBM Decomp
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#include <dolphin/syn.h>
5
6typedef struct _SEQTRACK {
7 /* 0x00 */ void* sequence;
8 /* 0x04 */ u8* start;
9 /* 0x08 */ u8* end;
10 /* 0x0C */ u8* current;
11 /* 0x10 */ u8 status;
12 /* 0x14 */ float beatsPerSec;
14 /* 0x1C */ u32 ticksPerFrame;
15 /* 0x20 */ u32 delay;
16 /* 0x24 */ u32 state;
17} SEQTRACK;
18
19typedef struct _SEQSEQUENCE {
20 /* 0x0000 */ void* next;
21 /* 0x0004 */ u32 state;
22 /* 0x0008 */ u16 nTracks;
23 /* 0x000A */ s16 timeFormat;
24 /* 0x000C */ u32 tracksRunning;
25 /* 0x0010 */ u32 end;
26 /* 0x0014 */ struct SYNSYNTH synth;
27 /* 0x3148 */ void (*callback[128])(void*, u8);
28 /* 0x3348 */ SEQTRACK track[64];
30
31#define SEQ_ALL_TRACKS -1
32
33// seq.c
34void SEQInit(void);
35void SEQQuit(void);
36void SEQRunAudioFrame(void);
37void SEQAddSequence(SEQSEQUENCE* sequence, u32* midiStream, void* wt,
40void SEQRemoveSequence(SEQSEQUENCE* sequence);
42 void (*callback)(void*, u8));
43void SEQSetState(SEQSEQUENCE* sequence, u32 state);
44u32 SEQGetState(SEQSEQUENCE* sequence);
45void SEQSetTempo(SEQSEQUENCE* sequence, u32 trackIndex, float bpm);
46f32 SEQGetTempo(SEQSEQUENCE* sequence, u32 trackIndex);
47void SEQSetVolume(SEQSEQUENCE* sequence, long dB);
48long SEQGetVolume(SEQSEQUENCE* sequence);
49
50#endif // _DOLPHIN_SEQ_H_
static void callback(HSD_GObj *gobj)
Definition ftdonkeyspeciallw.c:90
state
Definition gm_1BFA.c:18
static VsSceneController controller
Definition gmvs.c:61
unsigned int u32
Definition types.h:13
signed short int s16
Definition types.h:6
float f32
Definition types.h:18
unsigned short int u16
Definition types.h:7
unsigned char u8
Definition types.h:5
void SEQInit(void)
Definition seq.c:291
void SEQSetTempo(SEQSEQUENCE *sequence, u32 trackIndex, float bpm)
Definition seq.c:431
long SEQGetVolume(SEQSEQUENCE *sequence)
Definition seq.c:460
u32 SEQGetState(SEQSEQUENCE *sequence)
Definition seq.c:425
f32 SEQGetTempo(SEQSEQUENCE *sequence, u32 trackIndex)
Definition seq.c:447
void SEQQuit(void)
Definition seq.c:296
void SEQSetState(SEQSEQUENCE *sequence, u32 state)
Definition seq.c:381
void SEQRegisterControllerCallback(SEQSEQUENCE *sequence, u8 controller, void(*callback)(void *, u8))
Definition seq.c:372
void SEQAddSequence(SEQSEQUENCE *sequence, u32 *midiStream, void *wt, u32 aramBase, u32 priorityVoiceAlloc, u32 priorityNoteOn, u32 priorityNoteRelease)
Definition seq.c:342
void SEQRemoveSequence(SEQSEQUENCE *sequence)
Definition seq.c:365
void SEQSetVolume(SEQSEQUENCE *sequence, long dB)
Definition seq.c:454
void SEQRunAudioFrame(void)
Definition seq.c:301
Definition seq.h:19
u16 nTracks
Definition seq.h:22
void(* callback[128])(void *, u8)
Definition seq.h:27
struct SYNSYNTH synth
Definition seq.h:26
void * next
Definition seq.h:20
SEQTRACK track[64]
Definition seq.h:28
u32 state
Definition seq.h:21
s16 timeFormat
Definition seq.h:23
u32 tracksRunning
Definition seq.h:24
u32 end
Definition seq.h:25
Definition seq.h:6
u8 * start
Definition seq.h:8
u8 * current
Definition seq.h:10
u8 * end
Definition seq.h:9
void * sequence
Definition seq.h:7
u32 delay
Definition seq.h:15
u32 defaultTicksPerFrame
Definition seq.h:13
u32 state
Definition seq.h:16
u8 status
Definition seq.h:11
u32 ticksPerFrame
Definition seq.h:14
float beatsPerSec
Definition seq.h:12
Definition syn.h:65
u32 priorityVoiceAlloc
Definition syn.h:76
u32 priorityNoteOn
Definition syn.h:77
u32 priorityNoteRelease
Definition syn.h:78