libresidfp  1.2.3
Public Member Functions | Friends | List of all members
reSIDfp::ExternalFilter Class Reference

#include <ExternalFilter.h>

Public Member Functions

int32_t clock (int32_t input)
 
 ExternalFilter ()
 
void setClockFrequency (double frequency)
 
void setExtResistance (double res)
 
void reset ()
 

Friends

class State
 

Detailed Description

The audio output stage in a Commodore 64 consists of two STC networks, a low-pass RC filter with 3 dB frequency 16kHz followed by a DC-blocker which acts as a high-pass filter with a cutoff dependent on the attached audio equipment impedance. Here we suppose an impedance of 10kOhm resulting in a 3 dB attenuation at 1.6Hz. The STC networks are connected with a BJT based common collector used as a voltage follower (featuring a 2SC1815 NPN transistor).

To operate properly the 6581 audio output needs a pull-down resistor, 1KOhm is the recommended value.

Constructor & Destructor Documentation

reSIDfp::ExternalFilter::ExternalFilter ( )

Constructor.

Member Function Documentation

RESIDFP_INLINE int32_t reSIDfp::ExternalFilter::clock ( int32_t  input)

SID clocking.

Parameters
inputinput sample, signed 16 bit
Returns
filtered sample, signed 16 bit
void reSIDfp::ExternalFilter::reset ( )

SID reset.

void reSIDfp::ExternalFilter::setClockFrequency ( double  frequency)

Setup of the external filter sampling parameters.

Parameters
frequencythe main system clock frequency in Hertz
void reSIDfp::ExternalFilter::setExtResistance ( double  res)

Setup of the external filter sampling parameters.

Parameters
resthe resistance value in Ohms

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