libsidplayfp  2.2.2
Public Member Functions | List of all members
reSIDfp::ExternalFilter Class Reference

#include <ExternalFilter.h>

Public Member Functions

int clock (unsigned short input)
 
 ExternalFilter ()
 
void setClockFrequency (double frequency)
 
void reset ()
 

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. To operate properly the 6581 audio output needs a pull-down resistor (1KOhm recommended, not needed on 8580)

9/12V
-----+
audio| 10k |
+---o----R---o--------o-----(K) +-----
out | | | | | |audio
-----+ R 1k C 1000 | | 10 uF |
| | pF +-C----o-----C-----+ 10k
470 | |
GND GND pF R 1K | amp
* * | +-----
GND

The STC networks are connected with a BJT based common collector used as a voltage follower (featuring a 2SC1815 NPN transistor).

Constructor & Destructor Documentation

◆ ExternalFilter()

reSIDfp::ExternalFilter::ExternalFilter ( )

Constructor.

Member Function Documentation

◆ clock()

RESID_INLINE int reSIDfp::ExternalFilter::clock ( unsigned short  input)

SID clocking.

Parameters
input

◆ reset()

void reSIDfp::ExternalFilter::reset ( )

SID reset.

◆ setClockFrequency()

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

Setup of the external filter sampling parameters.

Parameters
frequencythe main system clock frequency

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