libsidplayfp
1.8.3
|
#include <Filter8580.h>
Public Member Functions | |
int | clock (int voice1, int voice2, int voice3) |
void | updatedCenterFrequency () |
void | updatedResonance () |
void | input (int input) |
void | updatedMixing () |
void | setFilterCurve (double curvePosition) |
![]() | |
void | enable (bool enable) |
void | reset () |
void | writeFC_LO (unsigned char fc_lo) |
void | writeFC_HI (unsigned char fc_hi) |
void | writeRES_FILT (unsigned char res_filt) |
void | writeMODE_VOL (unsigned char mode_vol) |
Additional Inherited Members | |
![]() | |
unsigned int | fc |
Filter cutoff frequency. | |
unsigned char | res |
Filter resonance. | |
unsigned char | vol |
Current volume. | |
bool | filt1 |
Routing to filter or outside filter. | |
bool | filt2 |
bool | filt3 |
bool | filtE |
bool | voice3off |
Switch voice 3 off. | |
bool | hp |
Highpass, bandpass, and lowpass filter modes. | |
bool | bp |
bool | lp |
Filter for 8580 chip based on simple linear approximation of the FC control.
|
virtual |
SID clocking - 1 cycle
v1 | voice 1 in |
v2 | voice 2 in |
v3 | voice 3 in |
Implements reSIDfp::Filter.
|
inline |
Set filter curve type based on single parameter.
curvePosition | filter's center frequency expressed in Hertz, default is 12500 |
|
inlinevirtual |
Set filter cutoff frequency.
Implements reSIDfp::Filter.
|
inlinevirtual |
Mixing configuration modified (offsets change)
Implements reSIDfp::Filter.
|
inlinevirtual |
Set filter resonance.
The following function for 1/Q has been modeled in the MOS 8580:
1/Q = 2^(1/2)*2^(-x/8) = 2^(1/2 - x/8) = 2^((4 - x)/8)
Implements reSIDfp::Filter.