libsidplayfp 2.15.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
reSIDfp::FilterModelConfig6581 Class Referencefinal

#include <FilterModelConfig6581.h>

Inheritance diagram for reSIDfp::FilterModelConfig6581:
Inheritance graph
[legend]
Collaboration diagram for reSIDfp::FilterModelConfig6581:
Collaboration graph
[legend]

Public Member Functions

void setFilterRange (double adjustment)
 
unsigned short * getDAC (double adjustment) const
 
double getWL_snake () const
 
unsigned short getVcr_nVg (int i) const
 
unsigned short getVcr_n_Ids_term (int i) const
 
double getN16 () const
 
- Public Member Functions inherited from reSIDfp::FilterModelConfig
unsigned short * getVolume ()
 
unsigned short * getResonance ()
 
unsigned short * getSummer ()
 
unsigned short * getMixer ()
 
unsigned short getOpampRev (int i) const
 
double getVddt () const
 
double getVth () const
 
unsigned short getNormalizedValue (double value) const
 
template<int N>
unsigned short getNormalizedCurrentFactor (double wl) const
 
unsigned short getNVmin () const
 
int getNormalizedVoice (float value, unsigned int env) const
 

Static Public Member Functions

static FilterModelConfig6581getInstance ()
 
static constexpr double getUt ()
 

Protected Member Functions

double getVoiceDC (unsigned int env) const override
 
- Protected Member Functions inherited from reSIDfp::FilterModelConfig
 FilterModelConfig (double vvr, double c, double vdd, double vth, double ucox, const Spline::Point *opamp_voltage, int opamp_size)
 
void setUCox (double new_uCox)
 
void buildSummerTable (const OpAmp &opampModel)
 
void buildMixerTable (const OpAmp &opampModel, double nRatio)
 
void buildVolumeTable (const OpAmp &opampModel, double nDivisor)
 
void buildResonanceTable (const OpAmp &opampModel, const double resonance_n[16])
 

Additional Inherited Members

- Static Protected Member Functions inherited from reSIDfp::FilterModelConfig
static unsigned short to_ushort_dither (double x, double d_noise)
 
static unsigned short to_ushort (double x)
 
- Protected Attributes inherited from reSIDfp::FilterModelConfig
const double C
 Capacitor value.
 
const double Vdd
 Positive supply voltage.
 
const double Vth
 Threshold voltage.
 
const double Vddt
 Vdd - Vth.
 
double uCox
 Transconductance coefficient: u*Cox.
 
const double vmin
 
const double vmax
 
const double denorm
 
const double norm
 
const double N16
 Fixed point scaling for 16 bit op-amp output.
 
const double voice_voltage_range
 
double currFactorCoeff
 Current factor coefficient for op-amp integrators.
 
unsigned short * mixer
 Lookup tables for gain and summer op-amps in output stage / filter.
 
unsigned short * summer
 
unsigned short * volume
 
unsigned short * resonance
 
unsigned short opamp_rev [1<< 16]
 Reverse op-amp transfer function.
 
- Static Protected Attributes inherited from reSIDfp::FilterModelConfig
static constexpr double Ut = 26.0e-3
 Transistor parameters.
 

Detailed Description

Calculate parameters for 6581 filter emulation.

Member Function Documentation

◆ getDAC()

unsigned short * reSIDfp::FilterModelConfig6581::getDAC ( double  adjustment) const

Construct an 11 bit cutoff frequency DAC output voltage table. Ownership is transferred to the requester which becomes responsible of freeing the object when done.

Parameters
adjustment
Returns
the DAC table

◆ getVoiceDC()

double reSIDfp::FilterModelConfig6581::getVoiceDC ( unsigned int  env) const
inlineoverrideprotectedvirtual

On 6581 the DC offset varies between ~5.0V and ~5.214V depending on the envelope value.

Implements reSIDfp::FilterModelConfig.


The documentation for this class was generated from the following files: