Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
synprivate.h
Go to the documentation of this file.
1#ifndef RVL_SDK_HBMSYN_PRIVATE_H
2#define RVL_SDK_HBMSYN_PRIVATE_H
3
4#include "syn.h" // IWYU pragma: export
5
6#include <revolution/ax.h>
7#include <revolution/types.h>
8
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
23
24typedef u32 VoiceType;
29
30// the typedef was declared in syn.h
32 void* next; // size 0x04, offset 0x00
33 AXVPB* axvpb; // size 0x04, offset 0x04
34 HBMSYNSYNTH* synth; // size 0x04, offset 0x08
35 u8 midiChannel; // size 0x01, offset 0x0c
36 u8 keyNum; // size 0x01, offset 0x0d
37 u8 keyVel; // size 0x01, offset 0x0e
38 u8 pan; // size 0x01, offset 0x0f
39 WTREGION* region; // size 0x04, offset 0x10
40 WTART* art; // size 0x04, offset 0x14
41 WTSAMPLE* sample; // size 0x04, offset 0x18
42 WTADPCM* adpcm; // size 0x04, offset 0x1c
43 VoiceType type; // size 0x04, offset 0x20
44 f32 srcRatio; // size 0x04, offset 0x24
45 s32 cents; // size 0x04, offset 0x28
46 s32 attn; // size 0x04, offset 0x2c
47 EnvelopeState veState; // size 0x04, offset 0x30
48 s32 veAttn; // size 0x04, offset 0x34
49 s32 veAttack; // size 0x04, offset 0x38
50 s32 veAttackDelta; // size 0x04, offset 0x3c
51 s32 veDecay; // size 0x04, offset 0x40
52 s32 veSustain; // size 0x04, offset 0x44
53 s32 veRelease; // size 0x04, offset 0x48
54}; // size 0x4c
55
56// TODO: is the definition of HBMSYNVOICE visible at this point?
57
58// syn.c
60
61// TODO: are these declared with their complete type or no?
62
63// synctrl.c
64extern f32 __HBMSYNn128[];
65
66// synmix.c
69
70// synctrl.c
71void __HBMSYNSetController(HBMSYNSYNTH* synth, u8 midiChannel, u8 function, u8 value);
75
76// synenv.c
77s32 __HBMSYNGetEnvelopeTime(s32 scale, s32 mod, u8 key);
80
81// synmix.c
83void __HBMSYNSetupPan(HBMSYNVOICE* voice);
87
88// synpitch.c
91void __HBMSYNSetupSrc(HBMSYNVOICE* voice);
93
94// synsample.c
96
97// synvoice.c
100void __HBMSYNServiceVoice(int i);
101
102#ifdef __cplusplus
103}
104#endif
105
106#endif // RVL_SDK_HBMSYN_PRIVATE_H
p
Definition e_acos.c:103
int i
Definition e_log.c:92
int BOOL
Definition types.h:33
unsigned long u32
Definition types.h:12
float f32
Definition types.h:25
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8
Definition syn.h:80
Definition synprivate.h:31
u8 keyNum
Definition synprivate.h:36
HBMSYNSYNTH * synth
Definition synprivate.h:34
AXVPB * axvpb
Definition synprivate.h:33
s32 veAttackDelta
Definition synprivate.h:50
s32 veDecay
Definition synprivate.h:51
s32 veAttack
Definition synprivate.h:49
WTSAMPLE * sample
Definition synprivate.h:41
WTADPCM * adpcm
Definition synprivate.h:42
u8 pan
Definition synprivate.h:38
WTART * art
Definition synprivate.h:40
u8 midiChannel
Definition synprivate.h:35
s32 veAttn
Definition synprivate.h:48
VoiceType type
Definition synprivate.h:43
s32 cents
Definition synprivate.h:45
s32 veRelease
Definition synprivate.h:53
f32 srcRatio
Definition synprivate.h:44
void * next
Definition synprivate.h:32
s32 veSustain
Definition synprivate.h:52
EnvelopeState veState
Definition synprivate.h:47
u8 keyVel
Definition synprivate.h:37
s32 attn
Definition synprivate.h:46
WTREGION * region
Definition synprivate.h:39
Definition syn.h:22
Definition syn.h:33
Definition syn.h:60
Definition syn.h:71
Definition ax.h:136
s32 __HBMSYNGetVoiceFader(HBMSYNVOICE *voice)
Definition synmix.cpp:99
void __HBMSYNSetController(HBMSYNSYNTH *synth, u8 midiChannel, u8 function, u8 value)
Definition synctrl.cpp:89
void __HBMSYNRunVolumeEnvelope(HBMSYNVOICE *voice)
Definition synenv.cpp:88
void __HBMSYNClearVoiceReferences(void *p)
Definition synvoice.cpp:13
void __HBMSYNSetupPitch(HBMSYNVOICE *voice)
Definition synpitch.cpp:155
void __HBMSYNSetupSrc(HBMSYNVOICE *voice)
Definition synpitch.cpp:164
void __HBMSYNSetupPan(HBMSYNVOICE *voice)
Definition synmix.cpp:87
EnvelopeState_et
Definition synprivate.h:15
@ EnvStateRelease
Definition synprivate.h:19
@ EnvStateAttack
Definition synprivate.h:16
@ EnvStateEnd
Definition synprivate.h:21
@ EnvStateDecay
Definition synprivate.h:17
@ EnvStateSustain
Definition synprivate.h:18
void __HBMSYNServiceVoice(int i)
Definition synvoice.cpp:45
void __HBMSYNResetAllControllers(HBMSYNSYNTH *synth)
Definition synctrl.cpp:128
void __HBMSYNUpdateSrc(HBMSYNVOICE *voice)
Definition synpitch.cpp:187
s32 __HBMSYNAttackAttnTable[]
Definition synmix.cpp:49
f32 __HBMSYNGetRelativePitch(HBMSYNVOICE *voice)
Definition synpitch.cpp:118
u32 EnvelopeState
Definition synprivate.h:14
f32 __HBMSYNn128[]
Definition synctrl.cpp:42
s32 __HBMSYNGetVoiceInput(HBMSYNVOICE *voice)
Definition synmix.cpp:94
HBMSYNVOICE * __HBMSYNVoice
Definition syn.cpp:28
void __HBMSYNSetVoiceToRelease(HBMSYNVOICE *voice)
Definition synvoice.cpp:38
void __HBMSYNRunInputBufferEvents(HBMSYNSYNTH *synth)
Definition synctrl.cpp:280
void __HBMSYNSetupVolumeEnvelope(HBMSYNVOICE *voice)
Definition synenv.cpp:31
void __HBMSYNUpdateMix(HBMSYNVOICE *voice)
Definition synmix.cpp:106
BOOL __HBMSYNGetWavetableData(HBMSYNVOICE *voice)
Definition synctrl.cpp:294
void __HBMSYNSetupSample(HBMSYNVOICE *voice)
Definition synsample.cpp:256
VoiceType_et
Definition synprivate.h:25
@ VoiceTypeNormal
Definition synprivate.h:26
@ VoiceTypeLooping
Definition synprivate.h:27
void __HBMSYNSetupVolume(HBMSYNVOICE *voice)
Definition synmix.cpp:79
s32 __HBMSYNVolumeAttenuation[]
Definition synmix.cpp:12
u32 VoiceType
Definition synprivate.h:24
s32 __HBMSYNGetEnvelopeTime(s32 scale, s32 mod, u8 key)
Definition synenv.cpp:17