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).

- The C64c board additionally includes a bootstrap condenser to increase the input impedance of the common collector.

## 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

  frequency | the main system clock frequency

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

- ExternalFilter.h
- ExternalFilter.cpp