LMMS
Loading...
Searching...
No Matches
reSID::WaveformGenerator Class Reference

#include <wave.h>

Public Member Functions

 WaveformGenerator ()
void set_sync_source (WaveformGenerator *)
void set_chip_model (chip_model model)
void clock ()
void clock (cycle_count delta_t)
void synchronize ()
void reset ()
void writeFREQ_LO (reg8)
void writeFREQ_HI (reg8)
void writePW_LO (reg8)
void writePW_HI (reg8)
void writeCONTROL_REG (reg8)
reg8 readOSC ()
short output ()
void set_waveform_output ()
void set_waveform_output (cycle_count delta_t)

Protected Member Functions

void clock_shift_register ()
void write_shift_register ()
void set_noise_output ()
void wave_bitfade ()
void shiftreg_bitfade ()

Protected Attributes

const WaveformGeneratorsync_source
WaveformGeneratorsync_dest
reg24 accumulator
bool msb_rising
reg24 freq
reg12 pw
reg24 shift_register
cycle_count shift_register_reset
cycle_count shift_pipeline
reg24 ring_msb_mask
unsigned short no_noise
unsigned short noise_output
unsigned short no_noise_or_noise_output
unsigned short no_pulse
unsigned short pulse_output
reg8 waveform
reg12 tri_saw_pipeline
reg12 osc3
reg8 test
reg8 ring_mod
reg8 sync
reg12 waveform_output
cycle_count floating_output_ttl
chip_model sid_model
unsigned short * wave

Static Protected Attributes

static unsigned short model_wave [2][8][1<< 12]
static unsigned short model_dac [2][1<< 12]

Friends

class Voice
class SID

Constructor & Destructor Documentation

◆ WaveformGenerator()

reSID::WaveformGenerator::WaveformGenerator ( )

Member Function Documentation

◆ clock() [1/2]

void reSID::WaveformGenerator::clock ( )

◆ clock() [2/2]

void reSID::WaveformGenerator::clock ( cycle_count delta_t)

◆ clock_shift_register()

void reSID::WaveformGenerator::clock_shift_register ( )
protected

◆ output()

short reSID::WaveformGenerator::output ( )

◆ readOSC()

reg8 reSID::WaveformGenerator::readOSC ( )

◆ reset()

void reSID::WaveformGenerator::reset ( )

◆ set_chip_model()

void reSID::WaveformGenerator::set_chip_model ( chip_model model)

◆ set_noise_output()

void reSID::WaveformGenerator::set_noise_output ( )
protected

◆ set_sync_source()

void reSID::WaveformGenerator::set_sync_source ( WaveformGenerator * )

◆ set_waveform_output() [1/2]

void reSID::WaveformGenerator::set_waveform_output ( )

◆ set_waveform_output() [2/2]

void reSID::WaveformGenerator::set_waveform_output ( cycle_count delta_t)

◆ shiftreg_bitfade()

void reSID::WaveformGenerator::shiftreg_bitfade ( )
protected

◆ synchronize()

void reSID::WaveformGenerator::synchronize ( )

◆ wave_bitfade()

void reSID::WaveformGenerator::wave_bitfade ( )
protected

◆ write_shift_register()

void reSID::WaveformGenerator::write_shift_register ( )
protected

◆ writeCONTROL_REG()

void reSID::WaveformGenerator::writeCONTROL_REG ( reg8 )

◆ writeFREQ_HI()

void reSID::WaveformGenerator::writeFREQ_HI ( reg8 )

◆ writeFREQ_LO()

void reSID::WaveformGenerator::writeFREQ_LO ( reg8 )

◆ writePW_HI()

void reSID::WaveformGenerator::writePW_HI ( reg8 )

◆ writePW_LO()

void reSID::WaveformGenerator::writePW_LO ( reg8 )

◆ SID

friend class SID
friend

◆ Voice

friend class Voice
friend

Member Data Documentation

◆ accumulator

reg24 reSID::WaveformGenerator::accumulator
protected

◆ floating_output_ttl

cycle_count reSID::WaveformGenerator::floating_output_ttl
protected

◆ freq

reg24 reSID::WaveformGenerator::freq
protected

◆ model_dac

unsigned short reSID::WaveformGenerator::model_dac[2][1<< 12]
staticprotected

◆ model_wave

unsigned short reSID::WaveformGenerator::model_wave[2][8][1<< 12]
staticprotected

◆ msb_rising

bool reSID::WaveformGenerator::msb_rising
protected

◆ no_noise

unsigned short reSID::WaveformGenerator::no_noise
protected

◆ no_noise_or_noise_output

unsigned short reSID::WaveformGenerator::no_noise_or_noise_output
protected

◆ no_pulse

unsigned short reSID::WaveformGenerator::no_pulse
protected

◆ noise_output

unsigned short reSID::WaveformGenerator::noise_output
protected

◆ osc3

reg12 reSID::WaveformGenerator::osc3
protected

◆ pulse_output

unsigned short reSID::WaveformGenerator::pulse_output
protected

◆ pw

reg12 reSID::WaveformGenerator::pw
protected

◆ ring_mod

reg8 reSID::WaveformGenerator::ring_mod
protected

◆ ring_msb_mask

reg24 reSID::WaveformGenerator::ring_msb_mask
protected

◆ shift_pipeline

cycle_count reSID::WaveformGenerator::shift_pipeline
protected

◆ shift_register

reg24 reSID::WaveformGenerator::shift_register
protected

◆ shift_register_reset

cycle_count reSID::WaveformGenerator::shift_register_reset
protected

◆ sid_model

chip_model reSID::WaveformGenerator::sid_model
protected

◆ sync

reg8 reSID::WaveformGenerator::sync
protected

◆ sync_dest

WaveformGenerator* reSID::WaveformGenerator::sync_dest
protected

◆ sync_source

const WaveformGenerator* reSID::WaveformGenerator::sync_source
protected

◆ test

reg8 reSID::WaveformGenerator::test
protected

◆ tri_saw_pipeline

reg12 reSID::WaveformGenerator::tri_saw_pipeline
protected

◆ wave

unsigned short* reSID::WaveformGenerator::wave
protected

◆ waveform

reg8 reSID::WaveformGenerator::waveform
protected

◆ waveform_output

reg12 reSID::WaveformGenerator::waveform_output
protected

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