libsidplayfp 2.15.0
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
SidConfig Class Reference

#include <SidConfig.h>

Collaboration diagram for SidConfig:
Collaboration graph
[legend]

Public Types

enum  playback_t { MONO = 1 , STEREO }
 Playback mode. More...
 
enum  sid_model_t { MOS6581 , MOS8580 }
 SID chip model. More...
 
enum  sid_cw_t { AVERAGE , WEAK , STRONG }
 SID combined waveforms strength.
 
enum  cia_model_t { MOS6526 , MOS8521 , MOS6526W4485 }
 CIA chip model. More...
 
enum  c64_model_t {
  PAL , NTSC , OLD_NTSC , DREAN ,
  PAL_M
}
 C64 model. More...
 
enum  sampling_method_t { INTERPOLATE , RESAMPLE_INTERPOLATE }
 Sampling method. More...
 

Public Member Functions

bool compare (const SidConfig &config)
 

Public Attributes

c64_model_t defaultC64Model
 
bool forceC64Model
 
sid_model_t defaultSidModel
 
bool forceSidModel
 
bool digiBoost
 
cia_model_t ciaModel
 
playback_t playback
 
uint_least32_t frequency
 
uint_least16_t secondSidAddress
 
uint_least16_t thirdSidAddress
 
sidbuildersidEmulation
 
uint_least32_t leftVolume
 
uint_least32_t rightVolume
 
uint_least16_t powerOnDelay
 
sampling_method_t samplingMethod
 
bool fastSampling
 

Static Public Attributes

static const uint_least16_t MAX_POWER_ON_DELAY = 0x1FFF
 
static const uint_least16_t DEFAULT_POWER_ON_DELAY = MAX_POWER_ON_DELAY + 1
 
static const uint_least32_t DEFAULT_SAMPLING_FREQ = 44100
 

Detailed Description

SidConfig

An instance of this class is used to transport emulator settings to and from the interface class.

Examples
demo.cpp.

Member Enumeration Documentation

◆ c64_model_t

C64 model.

Enumerator
PAL 

European PAL model (MOS 6569)

NTSC 

American/Japanese NTSC model (MOS 6567 R8)

OLD_NTSC 

Older NTSC model with different video chip revision (MOS 6567 R56A)

DREAN 

Argentinian PAL-N model (MOS 6572)

PAL_M 

Brasilian PAL-M model (MOS 6573)

◆ cia_model_t

CIA chip model.

Enumerator
MOS6526 

Old CIA with interrupts delayed by one cycle (MOS 6526/6526A)

MOS8521 

New CIA (CSG 8521/MOS 6526 216A)

MOS6526W4485 

Old CIA, peculiar batch with different serial port behavior (MOS 6526 4485)

Since
2.2

◆ playback_t

Playback mode.

Enumerator
MONO 

One channel mono playback.

STEREO 

Two channels stereo playback.

◆ sampling_method_t

Sampling method.

Enumerator
INTERPOLATE 

Interpolation.

RESAMPLE_INTERPOLATE 

Resampling.

◆ sid_model_t

SID chip model.

Enumerator
MOS6581 

Old SID (MOS 6581)

MOS8580 

New SID (CSG 8580/MOS 6582)

Member Function Documentation

◆ compare()

bool SidConfig::compare ( const SidConfig config)

Compare two config objects.

Returns
true if different

Member Data Documentation

◆ ciaModel

cia_model_t SidConfig::ciaModel

Intended cia model.

◆ defaultC64Model

c64_model_t SidConfig::defaultC64Model

Intended c64 model when unknown or forced.

◆ defaultSidModel

sid_model_t SidConfig::defaultSidModel

Intended sid model when unknown or forced.

◆ digiBoost

bool SidConfig::digiBoost

Enable digiboost when 8580 SID model is used.

◆ fastSampling

bool SidConfig::fastSampling

Faster low-quality emulation, available only for reSID.

Examples
demo.cpp.

◆ forceC64Model

bool SidConfig::forceC64Model

Force the model to defaultC64Model ignoring tune's clock setting.

◆ forceSidModel

bool SidConfig::forceSidModel

Force the sid model to defaultSidModel.

◆ frequency

uint_least32_t SidConfig::frequency

Sampling frequency.

Examples
demo.cpp.

◆ leftVolume

uint_least32_t SidConfig::leftVolume

Left channel volume.

◆ MAX_POWER_ON_DELAY

const uint_least16_t SidConfig::MAX_POWER_ON_DELAY = 0x1FFF
static

Maximum power on delay.

  • Delays <= MAX produce constant results
  • Delays > MAX produce random results

◆ playback

playback_t SidConfig::playback

Playbak mode.

Examples
demo.cpp.

◆ powerOnDelay

uint_least16_t SidConfig::powerOnDelay

Power on delay cycles.

◆ rightVolume

uint_least32_t SidConfig::rightVolume

Right channel volume.

◆ samplingMethod

sampling_method_t SidConfig::samplingMethod

Sampling method.

Examples
demo.cpp.

◆ secondSidAddress

uint_least16_t SidConfig::secondSidAddress

Extra SID chips addresses.

◆ sidEmulation

sidbuilder* SidConfig::sidEmulation

Pointer to selected emulation, reSIDfp, reSID, hardSID or exSID.

Examples
demo.cpp.

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