Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
JASDSPInterface.h
Go to the documentation of this file.
1#ifndef JASDSPINTERFACE_H
2#define JASDSPINTERFACE_H
3
4#include "dolphin/types.h"
5
6struct JASWaveInfo;
7
8namespace JASDsp {
20
31
32 struct TChannel {
33 /* 8029DCA4 */ void init();
34 /* 8029DCE0 */ void playStart();
35 /* 8029DD44 */ void playStop();
36 /* 8029DD50 */ void replyFinishRequest();
37 /* 8029DD60 */ void forceStop();
38 /* 8029DD6C */ bool isActive() const;
39 /* 8029DD7C */ bool isFinish() const;
40 /* 8029DD8C */ void setWaveInfo(JASWaveInfo const&, u32, u32);
41 /* 8029DEAC */ void setOscInfo(u32);
42 /* 8029DEC4 */ void initAutoMixer();
43 /* 8029DEF0 */ void setAutoMixer(u16, u8, u8, u8, u8);
44 /* 8029DF1C */ void setPitch(u16);
45 /* 8029DF34 */ void setMixerInitVolume(u8, s16);
46 /* 8029DF54 */ void setMixerVolume(u8, s16);
47 /* 8029DF80 */ void setPauseFlag(u8);
48 /* 8029DF8C */ void flush();
49 /* 8029DFB0 */ void initFilter();
50 /* 8029E00C */ void setFilterMode(u16);
51 /* 8029E044 */ void setIIRFilterParam(s16*);
52 /* 8029E06C */ void setFIR8FilterParam(s16*);
53 /* 8029E094 */ void setDistFilter(s16);
54 /* 8029E09C */ void setBusConnect(u8, u8);
55
56 /* 0x000 */ u16 mIsActive;
57 /* 0x002 */ u16 mIsFinished;
58 /* 0x004 */ u16 mPitch;
59 /* 0x006 */ short field_0x006;
60 /* 0x008 */ u16 field_0x008;
61 /* 0x00A */ u8 field_0x00A[0x00C - 0x00A];
62 /* 0x00C */ s16 mPauseFlag;
63 /* 0x00E */ short field_0x00E;
64 /* 0x010 */ u16 field_0x010[1][4]; // array size unknown
65 /* 0x018 */ u8 field_0x018[0x050 - 0x018];
66 /* 0x050 */ short field_0x050;
67 /* 0x052 */ u16 field_0x052;
68 /* 0x054 */ u16 field_0x054;
69 /* 0x056 */ u16 field_0x056;
70 /* 0x058 */ u16 field_0x058;
71 /* 0x05A */ u8 field_0x05A[0x060 - 0x05A];
72 /* 0x060 */ short field_0x060;
73 /* 0x062 */ u8 field_0x062[0x064 - 0x062];
74 /* 0x064 */ u16 field_0x064;
75 /* 0x066 */ short field_0x066;
76 /* 0x068 */ int field_0x068;
77 /* 0x06C */ u8 field_0x06C[0x070 - 0x06C];
78 /* 0x070 */ int field_0x070;
79 /* 0x074 */ int field_0x074;
80 /* 0x078 */ short field_0x078[4];
81 /* 0x080 */ short field_0x080[20];
82 /* 0x0A8 */ short field_0x0a8[4];
83 /* 0x0B0 */ u16 field_0x0b0[16];
84 /* 0x0D0 */ u8 field_0x0D0[0x100 - 0x0D0];
85 /* 0x100 */ u16 field_0x100;
86 /* 0x102 */ u16 field_0x102;
87 /* 0x104 */ s16 field_0x104;
88 /* 0x106 */ s16 field_0x106;
89 /* 0x108 */ u16 mFilterMode;
90 /* 0x10A */ u16 mForcedStop;
91 /* 0x10C */ int field_0x10c;
92 /* 0x110 */ u32 field_0x110;
93 /* 0x114 */ u32 field_0x114;
94 /* 0x118 */ u32 field_0x118;
95 /* 0x11C */ int field_0x11c;
96 /* 0x120 */ s16 fir_filter_params[8];
97 /* 0x130 */ u8 field_0x130[0x148 - 0x130];
98 /* 0x148 */ s16 iir_filter_params[8];
99 /* 0x158 */ u8 field_0x158[0x180 - 0x158];
100 };
101
102 /* 8029D958 */ void boot(void (*)(void*));
103 /* 8029D9A4 */ void releaseHalt(u32);
104 /* 8029D9C4 */ void finishWork(u16);
105 /* 8029D9E4 */ void syncFrame(u32, u32, u32);
106 /* 8029DA04 */ void setDSPMixerLevel(f32);
107 /* 8029DA30 */ f32 getDSPMixerLevel();
108 /* 8029DA38 */ TChannel* getDSPHandle(int);
109 /* 8029DA48 */ void setFilterTable(s16*, s16*, u32);
110 /* 8029DA6C */ void flushBuffer();
111 /* 8029DAA0 */ void invalChannelAll();
112 /* 8029DAC8 */ void initBuffer();
113 /* 8029DB78 */ int setFXLine(u8, s16*, JASDsp::FxlineConfig_*);
114
115 extern u8 const DSPADPCM_FILTER[64];
116 extern u32 const DSPRES_FILTER[320];
117 extern u16 SEND_TABLE[12 + 12 /* padding */];
118 extern TChannel* CH_BUF;
119 extern FxBuf* FX_BUF;
120 extern f32 sDSPVolume;
121};
122
124
125#endif /* JASDSPINTERFACE_H */
u16 DSP_CreateMap2(u32 msg)
Definition JASDSPInterface.cpp:712
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition JASAramStream.h:10
f32 sDSPVolume
Definition JASDSPInterface.cpp:24
void boot(void(*)(void *))
Definition JASDSPInterface.cpp:27
void setDSPMixerLevel(f32)
Definition JASDSPInterface.cpp:51
TChannel * getDSPHandle(int)
Definition JASDSPInterface.cpp:63
void setFilterTable(s16 *, s16 *, u32)
Definition JASDSPInterface.cpp:68
u16 SEND_TABLE[12+12]
Definition JASDSPInterface.cpp:431
u8 const DSPADPCM_FILTER[64]
Definition JASDSPInterface.cpp:86
int setFXLine(u8, s16 *, JASDsp::FxlineConfig_ *)
Definition JASDSPInterface.cpp:461
void initBuffer()
Definition JASDSPInterface.cpp:418
void finishWork(u16)
Definition JASDSPInterface.cpp:41
void invalChannelAll()
Definition JASDSPInterface.cpp:81
void releaseHalt(u32)
Definition JASDSPInterface.cpp:36
void syncFrame(u32, u32, u32)
Definition JASDSPInterface.cpp:46
TChannel * CH_BUF
Definition JASDSPInterface.cpp:18
f32 getDSPMixerLevel()
Definition JASDSPInterface.cpp:58
void flushBuffer()
Definition JASDSPInterface.cpp:75
u32 const DSPRES_FILTER[320]
Definition JASDSPInterface.cpp:94
FxBuf * FX_BUF
Definition JASDSPInterface.cpp:21
Definition JASDSPInterface.h:21
s16 field_0x8
Definition JASDSPInterface.h:25
s16 field_0xa
Definition JASDSPInterface.h:26
s16 field_0xe
Definition JASDSPInterface.h:28
s16 field_0xc
Definition JASDSPInterface.h:27
s16 field_0x0
Definition JASDSPInterface.h:22
s16 field_0x2
Definition JASDSPInterface.h:23
s16 * field_0x4
Definition JASDSPInterface.h:24
Definition JASDSPInterface.h:9
u32 field_0xc
Definition JASDSPInterface.h:17
u8 field_0x1
Definition JASDSPInterface.h:11
s16 field_0x4
Definition JASDSPInterface.h:13
s16 field_0x10[8]
Definition JASDSPInterface.h:18
s16 field_0x8
Definition JASDSPInterface.h:15
u8 field_0x0
Definition JASDSPInterface.h:10
u16 field_0xa
Definition JASDSPInterface.h:16
u16 field_0x6
Definition JASDSPInterface.h:14
u16 field_0x2
Definition JASDSPInterface.h:12
Definition JASDSPInterface.h:32
u8 field_0x018[0x050 - 0x018]
Definition JASDSPInterface.h:65
u8 field_0x062[0x064 - 0x062]
Definition JASDSPInterface.h:73
u8 field_0x130[0x148 - 0x130]
Definition JASDSPInterface.h:97
u16 field_0x052
Definition JASDSPInterface.h:67
u16 mPitch
Definition JASDSPInterface.h:58
u16 field_0x008
Definition JASDSPInterface.h:60
void initAutoMixer()
Definition JASDSPInterface.cpp:599
u16 mFilterMode
Definition JASDSPInterface.h:89
u16 field_0x064
Definition JASDSPInterface.h:74
bool isActive() const
Definition JASDSPInterface.cpp:536
u16 field_0x010[1][4]
Definition JASDSPInterface.h:64
u16 field_0x100
Definition JASDSPInterface.h:85
void initFilter()
Definition JASDSPInterface.cpp:656
void setFilterMode(u16)
Definition JASDSPInterface.cpp:670
u32 field_0x114
Definition JASDSPInterface.h:93
short field_0x080[20]
Definition JASDSPInterface.h:81
short field_0x060
Definition JASDSPInterface.h:72
void setMixerInitVolume(u8, s16)
Definition JASDSPInterface.cpp:628
u16 mForcedStop
Definition JASDSPInterface.h:90
void playStart()
Definition JASDSPInterface.cpp:503
short field_0x00E
Definition JASDSPInterface.h:63
void setDistFilter(s16)
Definition JASDSPInterface.cpp:697
int field_0x074
Definition JASDSPInterface.h:79
short field_0x0a8[4]
Definition JASDSPInterface.h:82
void setOscInfo(u32)
Definition JASDSPInterface.cpp:591
bool isFinish() const
Definition JASDSPInterface.cpp:541
u16 mIsFinished
Definition JASDSPInterface.h:57
void setPitch(u16)
Definition JASDSPInterface.cpp:619
u8 field_0x158[0x180 - 0x158]
Definition JASDSPInterface.h:99
u16 mIsActive
Definition JASDSPInterface.h:56
void setBusConnect(u8, u8)
Definition JASDSPInterface.cpp:702
u8 field_0x0D0[0x100 - 0x0D0]
Definition JASDSPInterface.h:84
u8 field_0x00A[0x00C - 0x00A]
Definition JASDSPInterface.h:61
void setPauseFlag(u8)
Definition JASDSPInterface.cpp:646
u16 field_0x0b0[16]
Definition JASDSPInterface.h:83
int field_0x10c
Definition JASDSPInterface.h:91
int field_0x068
Definition JASDSPInterface.h:76
u8 field_0x05A[0x060 - 0x05A]
Definition JASDSPInterface.h:71
s16 field_0x104
Definition JASDSPInterface.h:87
void setFIR8FilterParam(s16 *)
Definition JASDSPInterface.cpp:691
u8 field_0x06C[0x070 - 0x06C]
Definition JASDSPInterface.h:77
void setAutoMixer(u16, u8, u8, u8, u8)
Definition JASDSPInterface.cpp:610
short field_0x078[4]
Definition JASDSPInterface.h:80
u16 field_0x054
Definition JASDSPInterface.h:68
void playStop()
Definition JASDSPInterface.cpp:520
void setWaveInfo(JASWaveInfo const &, u32, u32)
Definition JASDSPInterface.cpp:547
s16 mPauseFlag
Definition JASDSPInterface.h:62
short field_0x050
Definition JASDSPInterface.h:66
s16 iir_filter_params[8]
Definition JASDSPInterface.h:98
void init()
Definition JASDSPInterface.cpp:492
void replyFinishRequest()
Definition JASDSPInterface.cpp:525
void setIIRFilterParam(s16 *)
Definition JASDSPInterface.cpp:686
u16 field_0x102
Definition JASDSPInterface.h:86
u16 field_0x058
Definition JASDSPInterface.h:70
void setMixerVolume(u8, s16)
Definition JASDSPInterface.cpp:636
int field_0x11c
Definition JASDSPInterface.h:95
u32 field_0x118
Definition JASDSPInterface.h:94
short field_0x006
Definition JASDSPInterface.h:59
u16 field_0x056
Definition JASDSPInterface.h:69
s16 fir_filter_params[8]
Definition JASDSPInterface.h:96
void flush()
Definition JASDSPInterface.cpp:651
s16 field_0x106
Definition JASDSPInterface.h:88
u32 field_0x110
Definition JASDSPInterface.h:92
int field_0x070
Definition JASDSPInterface.h:78
void forceStop()
Definition JASDSPInterface.cpp:531
short field_0x066
Definition JASDSPInterface.h:75
Definition JASWaveInfo.h:10
unsigned long u32
Definition types.h:10
float f32
Definition types.h:22
signed short s16
Definition types.h:5
unsigned short u16
Definition types.h:9
unsigned char u8
Definition types.h:8