Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
alexbevi
GitHub Repository: alexbevi/BizHawk
Path: blob/master/genplus-gx32/core/sound/eq.h
2 views
1
/*---------------------------------------------------------------------------
2
//
3
// 3 Band EQ :)
4
//
5
// EQ.H - Header file for 3 band EQ
6
//
7
// (c) Neil C / Etanza Systems / 2K6
8
//
9
// Shouts / Loves / Moans = etanza at lycos dot co dot uk
10
//
11
// This work is hereby placed in the public domain for all purposes, including
12
// use in commercial applications.
13
//
14
// The author assumes NO RESPONSIBILITY for any problems caused by the use of
15
// this software.
16
//
17
//----------------------------------------------------------------------------*/
18
19
#ifndef __EQ3BAND__
20
#define __EQ3BAND__
21
22
/* ------------
23
//| Structures |
24
// ------------*/
25
26
typedef struct {
27
/* Filter #1 (Low band) */
28
29
double lf; /* Frequency */
30
double f1p0; /* Poles ... */
31
double f1p1;
32
double f1p2;
33
double f1p3;
34
35
/* Filter #2 (High band) */
36
37
double hf; /* Frequency */
38
double f2p0; /* Poles ... */
39
double f2p1;
40
double f2p2;
41
double f2p3;
42
43
/* Sample history buffer */
44
45
double sdm1; /* Sample data minus 1 */
46
double sdm2; /* 2 */
47
double sdm3; /* 3 */
48
49
/* Gain Controls */
50
51
double lg; /* low gain */
52
double mg; /* mid gain */
53
double hg; /* high gain */
54
55
} EQSTATE;
56
57
58
/* ---------
59
//| Exports |
60
// ---------*/
61
62
extern void init_3band_state(EQSTATE * es, int lowfreq, int highfreq,
63
int mixfreq);
64
extern double do_3band(EQSTATE * es, int sample);
65
66
67
#endif /* #ifndef __EQ3BAND__ */
68
69