Main Page | Class Hierarchy | Compound List | File List | Compound Members | File Members | Related Pages

sidEmu Class Reference

implements MOS-6581 functionality aka 'the SID-chip'! More...

#include <6581_.h>

Collaboration diagram for sidEmu:

Collaboration graph
[legend]
List of all members.

Public Member Functions

sbyte waveCalcMute (struct sidOperator *pVoice)
sbyte waveCalcNormal (struct sidOperator *pVoice)
sbyte waveCalcRangeCheck (struct sidOperator *pVoice)
void sidMode00 (struct sidOperator *pVoice)
void sidMode10 (struct sidOperator *pVoice)
void sidMode20 (struct sidOperator *pVoice)
void sidMode30 (struct sidOperator *pVoice)
void sidMode40 (struct sidOperator *pVoice)
void sidMode50 (struct sidOperator *pVoice)
void sidMode60 (struct sidOperator *pVoice)
void sidMode70 (struct sidOperator *pVoice)
void sidMode80 (struct sidOperator *pVoice)
void sidMode80hp (struct sidOperator *pVoice)
void sidModeLock (struct sidOperator *pVoice)
void sidMode14 (struct sidOperator *pVoice)
void sidMode34 (struct sidOperator *pVoice)
void sidMode54 (struct sidOperator *pVoice)
void sidMode74 (struct sidOperator *pVoice)
 sidEmu (emuEngine *aEmuEngine)
 C'tor.

virtual ~sidEmu ()
 D'tor.

void calcValuesPerCall ()
void sidEmuSetReplayingSpeed (int clockMode, uword callsPerSec)
void sidEmuSet (struct sidOperator *pVoice, uword sidIndex)
void waveCalcFilter (struct sidOperator *pVoice)
void sidEmuSet2 (struct sidOperator *pVoice)
void sidEmuFillBuffer (emuEngine &thisEmu, sidTune &thistune, void *buffer, udword bufferLen)
bool sidEmuFastForwardReplay (int percent)
void sidEmuConfigure (const struct emuConfig &aEmuConfig)
void initWaveformTables (bool isNewSID)
bool sidEmuReset ()
void clearSidOperator (struct sidOperator *pVoice)
void sidEmuResetAutoPanning (int autoPanning)
void sidEmuSetVoiceVolume (int voice, uword leftLevel, uword rightLevel, uword total)
uword sidEmuReturnVoiceVolume (int voice)
void sidEmuUpdateReplayingSpeed ()
void sidEmuChangeReplayingSpeed ()
void sidEmuSetClockSpeed (int clockMode)

Public Attributes

sidOperator optr1 optr2 optr3
uword voice4_gainLeft
uword voice4_gainRight
 Voice 4 does not use a sidOperator structure.

udword splitBufferLen
 shared with Mixer class


Protected Member Functions

void noiseAdvance (struct sidOperator *pVoice)
void noiseAdvanceHp (struct sidOperator *pVoice)

Private Attributes

friend emuEngine
friend Mixer
friend Sample
float filterTable [0x800]
float bandPassParam [0x800]
float filterResTable [16]
ptr2sidVoidFunc sidModeNormalTable [16]
 MOS-8580, MOS-6581 (no 70).

ptr2sidVoidFunc sidModeRingTable [16]
 MOS-8580, MOS-6581 (no 74).

float filterDy
float filterResDy
float C64_fClockSpeed
 we don't need to store the default value here

uword calls
 calls per second (here a default)

uword filterValue
uword apCount
uword fastForwardFactor
 normal speed

uword PCMfreq
udword sidtuneClockSpeed
 Song clock speed (PAL or NTSC). Does not affect pitch.

udword PCMsid
udword PCMsidNoise
udword C64_clockSpeed
 Master clock speed. Affects pitch of SID and CIA samples.

bool filterEnabled
bool updateAutoPanning
bool doAutoPanning
ubyte filterType
ubyte filterCurType
uword VALUES
uword VALUESorg
udword VALUESadd
udword VALUEScomma
uword toFill
uword defaultTimer
uword timer
SampleiTheSampler
 pointer to the sample. We own this.

ubytetriangleTable
ubytesawtoothTable
ubytesquareTable
ubytewaveform50
ubytenoiseTableMSB
ubytenoiseTableMID
ubytenoiseTableLSB
EnvelopeiTheEnvelope
emuEngineiTheEmuEngine
C6510iThe6510
ubytec64mem1
 pointer to 64KB C64-RAM owned by C6510

ubytec64mem2
 pointer to Basic-ROM, VIC, SID, I/O, Kernal-ROM owned by C6510


Detailed Description

implements MOS-6581 functionality aka 'the SID-chip'!

Definition at line 25 of file 6581_.h.


Constructor & Destructor Documentation

sidEmu::sidEmu emuEngine aEmuEngine  ) 
 

C'tor.

Definition at line 1504 of file 6581_.cpp.

References C6510::c64mem1, c64mem1, C6510::c64mem2, c64mem2, CTOR, iThe6510, iTheEnvelope, iTheSampler, noiseTableLSB, noiseTableMID, noiseTableMSB, optr1, optr2, optr3, Sample, sawtoothTable, sidMode00(), sidMode10(), sidMode14(), sidMode20(), sidMode30(), sidMode34(), sidMode40(), sidMode50(), sidMode54(), sidMode60(), sidMode70(), sidMode74(), sidMode80(), sidModeLock(), sidModeNormalTable, sidModeRingTable, squareTable, triangleTable, ubyte, and waveform50.

sidEmu::~sidEmu  )  [virtual]
 

D'tor.

Definition at line 1589 of file 6581_.cpp.

References DTOR, iTheEnvelope, iTheSampler, noiseTableLSB, noiseTableMID, noiseTableMSB, sawtoothTable, squareTable, triangleTable, and waveform50.


Member Function Documentation

void sidEmu::calcValuesPerCall  )  [inline]
 

Definition at line 71 of file 6581_.cpp.

References calls, fastForwardFactor, PCMfreq, udword, VALUES, VALUESadd, VALUEScomma, and VALUESorg.

Referenced by sidEmuChangeReplayingSpeed(), sidEmuFastForwardReplay(), sidEmuSetReplayingSpeed(), and sidEmuUpdateReplayingSpeed().

void sidEmu::clearSidOperator struct sidOperator pVoice  ) 
 

Definition at line 1310 of file 6581_.cpp.

References sidOperator::curNoiseFreq, sidOperator::curSIDfreq, sidOperator::cycleAddLenPnt, sidOperator::cycleLen, sidOperator::cycleLenCount, sidOperator::cycleLenPnt, sidOperator::filtEnabled, sidOperator::filtIO, sidOperator::filtLow, sidOperator::filtRef, sw_storage::len, sidOperator::newPulseIndex, sidOperator::noiseIsLocked, sidOperator::noiseOutput, sidOperator::noiseReg, noiseSeed, sidOperator::noiseStep, sidOperator::noiseStepAdd, sidOperator::outProc, sidOperator::output, sw_storage::pnt, sidOperator::pulseIndex, sidOperator::SIDAD, sidOperator::SIDctrl, sidOperator::SIDfreq, sidOperator::SIDpulseWidth, sidOperator::SIDSR, sw_storage::stp, sidOperator::sync, uword, waveCalcMute(), sidOperator::wavePre, sidOperator::waveStep, sidOperator::waveStepAdd, sidOperator::waveStepAddPnt, sidOperator::waveStepOld, and sidOperator::waveStepPnt.

Referenced by sidEmuReset().

void sidEmu::initWaveformTables bool  isNewSID  ) 
 

Definition at line 1066 of file 6581_.cpp.

References noiseTableLSB, noiseTableMID, noiseTableMSB, sawtoothTable, sidMode00(), sidMode30(), sidMode60(), sidMode70(), sidMode74(), sidModeNormalTable, sidModeRingTable, squareTable, triangleTable, ubyte, udword, uword, and waveform50.

Referenced by sidEmuConfigure().

void sidEmu::noiseAdvance struct sidOperator pVoice  )  [inline, protected]
 

Definition at line 189 of file 6581_.cpp.

References HI, HILO, LO, LOHI, LOLO, sidOperator::noiseOutput, sidOperator::noiseReg, sidOperator::noiseStep, sidOperator::noiseStepAdd, noiseTableLSB, noiseTableMID, and noiseTableMSB.

Referenced by sidMode80().

void sidEmu::noiseAdvanceHp struct sidOperator pVoice  )  [inline, protected]
 

Definition at line 217 of file 6581_.cpp.

References HI, HILO, LO, LOHI, LOLO, sidOperator::noiseOutput, sidOperator::noiseReg, sidOperator::noiseStep, sidOperator::noiseStepAdd, noiseTableLSB, noiseTableMID, noiseTableMSB, and udword.

Referenced by sidMode80hp().

void sidEmu::sidEmuChangeReplayingSpeed  ) 
 

Definition at line 89 of file 6581_.cpp.

References calcValuesPerCall().

Referenced by sidEmuConfigure().

void sidEmu::sidEmuConfigure const struct emuConfig aEmuConfig  ) 
 

Definition at line 1241 of file 6581_.cpp.

References C64_clockSpeed, emuConfig::clockSpeed, emuConfig::emulateFilter, Envelope::enveEmuInit(), filterEnabled, emuConfig::frequency, initWaveformTables(), iTheEnvelope, iTheSampler, emuConfig::measuredVolume, emuConfig::mos8580, PCMfreq, PCMsid, PCMsidNoise, Sample::sampleEmuInit(), sidEmuChangeReplayingSpeed(), sidEmuSetClockSpeed(), and udword.

Referenced by emuEngine::configureSID().

bool sidEmu::sidEmuFastForwardReplay int  percent  ) 
 

Definition at line 1031 of file 6581_.cpp.

References calcValuesPerCall(), fastForwardFactor, HI, VALUES, VALUEScomma, and VALUESorg.

void sidEmu::sidEmuFillBuffer emuEngine thisEmu,
sidTune thistune,
void *  buffer,
udword  bufferLen
 

Definition at line 893 of file 6581_.cpp.

References apCount, apSpeed, bandPassParam, buffer, emuEngine::bufferScale, emuEngine::bytesCount, c64mem1, c64mem2, emuEngine::config, sidOperator::enveVol, fastForwardFactor, Mixer::fillFunc(), filterCurType, filterDy, filterEnabled, filterResDy, filterResTable, filterType, filterValue, sidOperator::filtLow, sidOperator::filtRef, emuConfig::frequency, sidOperator::gateOffCtrl, sidOperator::gateOnCtrl, HI, C6510::interpreter(), emuEngine::isReady, iThe6510, iTheEnvelope, emuEngine::iTheMixer, iTheSampler, lowPassParam, Envelope::masterVolume, Envelope::masterVolumeAmplIndex, optr1, optr2, optr3, C6510::optr3readEnve, C6510::optr3readWave, sidOperator::output, emuEngine::playRamRom, readLEword(), sidTune::returnPlayAddr(), sidTune::returnSongSpeed(), sidTune::returnStatus(), Sample::sampleEmuCheckForInit(), emuEngine::secondsThisSong, emuEngine::secondsTotal, SIDEMU_HWMIXING, sidEmuSet(), sidEmuSet2(), sidEmuUpdateReplayingSpeed(), C6510::sidKeysOff, C6510::sidKeysOn, splitBufferLen, timer, toFill, udword, updateAutoPanning, uword, VALUES, VALUESadd, VALUEScomma, and emuConfig::volumeControl.

Referenced by emuEngine::FillBuffer().

bool sidEmu::sidEmuReset  ) 
 

Definition at line 1265 of file 6581_.cpp.

References sidOperator::carrier, clearSidOperator(), Envelope::enveEmuResetOperator(), filterCurType, filterDy, filterResDy, filterType, filterValue, sidOperator::filtVoiceMask, iThe6510, iTheEnvelope, iTheSampler, sidOperator::modulator, optr1, optr2, optr3, Sample::sampleEmuReset(), C6510::sidKeysOff, C6510::sidKeysOn, and toFill.

Referenced by emuEngine::reset().

void sidEmu::sidEmuResetAutoPanning int  autoPanning  ) 
 

Definition at line 1366 of file 6581_.cpp.

References apCount, doAutoPanning, sidOperator::gainDest, sidOperator::gainDirec, sidOperator::gainLeft, sidOperator::gainLeftCentered, sidOperator::gainRight, sidOperator::gainRightCentered, sidOperator::gainSource, optr1, optr2, optr3, SIDEMU_NONE, updateAutoPanning, voice4_gainLeft, and voice4_gainRight.

Referenced by emuEngine::emuEngine(), and emuEngine::setConfig().

uword sidEmu::sidEmuReturnVoiceVolume int  voice  ) 
 

Definition at line 1465 of file 6581_.cpp.

References sidOperator::gainLeft, sidOperator::gainRight, optr1, optr2, optr3, uword, voice4_gainLeft, and voice4_gainRight.

Referenced by emuEngine::getVoiceVolume().

void sidEmu::sidEmuSet struct sidOperator pVoice,
uword  sidIndex
[inline]
 

Definition at line 617 of file 6581_.cpp.

References sidOperator::ADSRctrl, sidOperator::ADSRproc, c64mem2, sidOperator::cycleLenCount, doAutoPanning, sidOperator::enveSusVol, sidOperator::enveVol, sidOperator::filtEnabled, filterEnabled, sidOperator::filtVoiceMask, sidOperator::gainDest, sidOperator::gainDirec, sidOperator::gainLeft, sidOperator::gainLeftCentered, sidOperator::gainRight, sidOperator::gainRightCentered, sidOperator::gainSource, sidOperator::gateOffCtrl, Envelope::getEnveModeTable(), HI, iTheEnvelope, masterVolumeLevels, sidOperator::newPulseIndex, sidOperator::pulseIndex, readLEword(), sidOperator::SIDAD, sidOperator::SIDctrl, sidOperator::SIDfreq, sidOperator::SIDpulseWidth, sidOperator::SIDSR, ubyte, updateAutoPanning, uword, and sidOperator::waveStep.

Referenced by sidEmuFillBuffer().

void sidEmu::sidEmuSet2 struct sidOperator pVoice  )  [inline]
 

Definition at line 795 of file 6581_.cpp.

References sidOperator::carrier, sidOperator::curNoiseFreq, sidOperator::curSIDfreq, sidOperator::cycleAddLenPnt, sidOperator::cycleLen, sidOperator::cycleLenCount, sidOperator::cycleLenPnt, sidOperator::modulator, sidOperator::noiseIsLocked, sidOperator::noiseReg, noiseSeed, sidOperator::noiseStepAdd, sidOperator::outProc, PCMsid, PCMsidNoise, sidOperator::SIDctrl, sidOperator::SIDfreq, sidMode80(), sidMode80hp(), sidModeNormalTable, sidModeRingTable, sidOperator::sync, uword, waveCalcCycleLen(), waveCalcMute(), waveCalcNormal(), waveCalcRangeCheck(), sidOperator::waveProc, sidOperator::waveStep, and sidOperator::waveStepPnt.

Referenced by sidEmuFillBuffer().

void sidEmu::sidEmuSetClockSpeed int  clockMode  ) 
 

Definition at line 100 of file 6581_.cpp.

References C64_clockSpeed, and C64_fClockSpeed.

Referenced by sidEmuConfigure().

void sidEmu::sidEmuSetReplayingSpeed int  clockMode,
uword  callsPerSec
 

Definition at line 121 of file 6581_.cpp.

References c64mem2, calcValuesPerCall(), calls, defaultTimer, readLEword(), sidtuneClockSpeed, timer, and uword.

Referenced by sidEmuInitializeSongOld().

void sidEmu::sidEmuSetVoiceVolume int  voice,
uword  leftLevel,
uword  rightLevel,
uword  total
 

Definition at line 1398 of file 6581_.cpp.

References sidOperator::gainDest, sidOperator::gainDirec, sidOperator::gainLeft, sidOperator::gainLeftCentered, sidOperator::gainRight, sidOperator::gainRightCentered, sidOperator::gainSource, optr1, optr2, optr3, uword, voice4_gainLeft, and voice4_gainRight.

Referenced by emuEngine::setVoiceVolume().

void sidEmu::sidEmuUpdateReplayingSpeed  ) 
 

Definition at line 161 of file 6581_.cpp.

References c64mem2, calcValuesPerCall(), calls, defaultTimer, readLEword(), sidtuneClockSpeed, timer, and uword.

Referenced by sidEmuFillBuffer().

void sidEmu::sidMode00 struct sidOperator pVoice  ) 
 

Definition at line 291 of file 6581_.cpp.

References sidOperator::filtIO, sidOperator::output, and waveAdvance().

Referenced by initWaveformTables(), and sidEmu().

void sidEmu::sidMode10 struct sidOperator pVoice  ) 
 

Definition at line 303 of file 6581_.cpp.

References sidOperator::output, triangle, and waveAdvance().

Referenced by sidEmu().

void sidEmu::sidMode14 struct sidOperator pVoice  ) 
 

Definition at line 365 of file 6581_.cpp.

References HI, sidOperator::modulator, sidOperator::output, triangle, waveAdvance(), and sidOperator::waveStep.

Referenced by sidEmu().

void sidEmu::sidMode20 struct sidOperator pVoice  ) 
 

Definition at line 308 of file 6581_.cpp.

References sidOperator::output, sawtooth, and waveAdvance().

Referenced by sidEmu().

void sidEmu::sidMode30 struct sidOperator pVoice  ) 
 

Definition at line 313 of file 6581_.cpp.

References sidOperator::output, sawtooth, triangle, triSaw, and waveAdvance().

Referenced by initWaveformTables(), and sidEmu().

void sidEmu::sidMode34 struct sidOperator pVoice  ) 
 

Definition at line 378 of file 6581_.cpp.

References HI, sidOperator::modulator, sidOperator::output, sawtooth, triangle, triSaw, waveAdvance(), and sidOperator::waveStep.

Referenced by sidEmu().

void sidEmu::sidMode40 struct sidOperator pVoice  ) 
 

Definition at line 322 of file 6581_.cpp.

References sidOperator::output, square, and waveAdvance().

Referenced by sidEmu().

void sidEmu::sidMode50 struct sidOperator pVoice  ) 
 

Definition at line 327 of file 6581_.cpp.

References sidOperator::output, and waveAdvance().

Referenced by sidEmu().

void sidEmu::sidMode54 struct sidOperator pVoice  ) 
 

Definition at line 396 of file 6581_.cpp.

References HI, sidOperator::modulator, sidOperator::output, waveAdvance(), and sidOperator::waveStep.

Referenced by sidEmu().

void sidEmu::sidMode60 struct sidOperator pVoice  ) 
 

Definition at line 332 of file 6581_.cpp.

References sidOperator::output, sawSquare, and waveAdvance().

Referenced by initWaveformTables(), and sidEmu().

void sidEmu::sidMode70 struct sidOperator pVoice  ) 
 

Definition at line 337 of file 6581_.cpp.

References sidOperator::output, triSawSquare, and waveAdvance().

Referenced by initWaveformTables(), and sidEmu().

void sidEmu::sidMode74 struct sidOperator pVoice  ) 
 

Definition at line 408 of file 6581_.cpp.

References HI, sidOperator::modulator, sidOperator::output, triSawSquare, waveAdvance(), and sidOperator::waveStep.

Referenced by initWaveformTables(), and sidEmu().

void sidEmu::sidMode80 struct sidOperator pVoice  ) 
 

Definition at line 342 of file 6581_.cpp.

References noiseAdvance(), sidOperator::noiseOutput, sidOperator::output, and waveAdvance().

Referenced by sidEmu(), and sidEmuSet2().

void sidEmu::sidMode80hp struct sidOperator pVoice  ) 
 

Definition at line 348 of file 6581_.cpp.

References noiseAdvanceHp(), sidOperator::noiseOutput, sidOperator::output, and waveAdvance().

Referenced by sidEmuSet2().

void sidEmu::sidModeLock struct sidOperator pVoice  ) 
 

Definition at line 354 of file 6581_.cpp.

References sidOperator::filtIO, sidOperator::noiseIsLocked, sidOperator::output, and waveAdvance().

Referenced by sidEmu().

void sidEmu::waveCalcFilter struct sidOperator pVoice  )  [inline]
 

Definition at line 475 of file 6581_.cpp.

References sidOperator::filtEnabled, filterDy, filterResDy, filterType, sidOperator::filtIO, sidOperator::filtLow, sidOperator::filtRef, and sbyte.

sbyte sidEmu::waveCalcMute struct sidOperator pVoice  ) 
 

Definition at line 541 of file 6581_.cpp.

References sidOperator::ADSRproc, sidOperator::filtIO, iTheEnvelope, and sbyte.

Referenced by clearSidOperator(), and sidEmuSet2().

sbyte sidEmu::waveCalcNormal struct sidOperator pVoice  ) 
 

Definition at line 550 of file 6581_.cpp.

References sidOperator::ADSRproc, emuEngine::ampMod1x8, sidOperator::cycleLenCount, sidOperator::filtIO, HI, iTheEmuEngine, iTheEnvelope, sidOperator::newPulseIndex, sidOperator::output, sidOperator::pulseIndex, sbyte, sidOperator::SIDctrl, waveCalcCycleLen(), sidOperator::waveProc, and sidOperator::waveStep.

Referenced by sidEmuSet2(), Mixer::syncEm(), and waveCalcRangeCheck().

sbyte sidEmu::waveCalcRangeCheck struct sidOperator pVoice  ) 
 

Definition at line 583 of file 6581_.cpp.

References sidOperator::ADSRproc, emuEngine::ampMod1x8, sidOperator::cycleLenCount, sidOperator::filtIO, HI, iTheEmuEngine, iTheEnvelope, sidOperator::outProc, sidOperator::output, sbyte, waveCalcNormal(), sidOperator::waveProc, sidOperator::waveStep, and sidOperator::waveStepOld.

Referenced by sidEmuSet2().


Member Data Documentation

uword sidEmu::apCount [private]
 

Definition at line 107 of file 6581_.h.

Referenced by sidEmuFillBuffer(), and sidEmuResetAutoPanning().

float sidEmu::bandPassParam[0x800] [private]
 

Definition at line 96 of file 6581_.h.

Referenced by emuEngine::filterTableInit(), and sidEmuFillBuffer().

udword sidEmu::C64_clockSpeed [private]
 

Master clock speed. Affects pitch of SID and CIA samples.

Definition at line 113 of file 6581_.h.

Referenced by Sample::sampleEmuReset(), sidEmuConfigure(), and sidEmuSetClockSpeed().

float sidEmu::C64_fClockSpeed [private]
 

we don't need to store the default value here

Definition at line 103 of file 6581_.h.

Referenced by sidEmuSetClockSpeed().

ubyte* sidEmu::c64mem1 [private]
 

pointer to 64KB C64-RAM owned by C6510

Definition at line 161 of file 6581_.h.

Referenced by sidEmu(), and sidEmuFillBuffer().

ubyte* sidEmu::c64mem2 [private]
 

pointer to Basic-ROM, VIC, SID, I/O, Kernal-ROM owned by C6510

Definition at line 162 of file 6581_.h.

Referenced by sidEmu(), sidEmuFillBuffer(), sidEmuSet(), sidEmuSetReplayingSpeed(), and sidEmuUpdateReplayingSpeed().

uword sidEmu::calls [private]
 

calls per second (here a default)

Definition at line 105 of file 6581_.h.

Referenced by calcValuesPerCall(), sidEmuSetReplayingSpeed(), and sidEmuUpdateReplayingSpeed().

uword sidEmu::defaultTimer [private]
 

Definition at line 136 of file 6581_.h.

Referenced by sidEmuSetReplayingSpeed(), and sidEmuUpdateReplayingSpeed().

bool sidEmu::doAutoPanning [private]
 

Definition at line 117 of file 6581_.h.

Referenced by sidEmuResetAutoPanning(), and sidEmuSet().

friend sidEmu::emuEngine [private]
 

Definition at line 28 of file 6581_.h.

uword sidEmu::fastForwardFactor [private]
 

normal speed

Definition at line 108 of file 6581_.h.

Referenced by calcValuesPerCall(), sidEmuFastForwardReplay(), and sidEmuFillBuffer().

ubyte sidEmu::filterCurType [private]
 

Definition at line 120 of file 6581_.h.

Referenced by sidEmuFillBuffer(), and sidEmuReset().

float sidEmu::filterDy [private]
 

Definition at line 102 of file 6581_.h.

Referenced by sidEmuFillBuffer(), sidEmuReset(), and waveCalcFilter().

bool sidEmu::filterEnabled [private]
 

Definition at line 115 of file 6581_.h.

Referenced by sidEmuConfigure(), sidEmuFillBuffer(), and sidEmuSet().

float sidEmu::filterResDy [private]
 

Definition at line 102 of file 6581_.h.

Referenced by sidEmuFillBuffer(), sidEmuReset(), and waveCalcFilter().

float sidEmu::filterResTable[16] [private]
 

Definition at line 97 of file 6581_.h.

Referenced by emuEngine::filterTableInit(), and sidEmuFillBuffer().

float sidEmu::filterTable[0x800] [private]
 

Definition at line 95 of file 6581_.h.

Referenced by emuEngine::filterTableInit().

ubyte sidEmu::filterType [private]
 

Definition at line 119 of file 6581_.h.

Referenced by sidEmuFillBuffer(), sidEmuReset(), and waveCalcFilter().

uword sidEmu::filterValue [private]
 

Definition at line 106 of file 6581_.h.

Referenced by sidEmuFillBuffer(), and sidEmuReset().

C6510* sidEmu::iThe6510 [private]
 

Definition at line 158 of file 6581_.h.

Referenced by sidEmu(), sidEmuFillBuffer(), and sidEmuReset().

emuEngine* sidEmu::iTheEmuEngine [private]
 

Definition at line 157 of file 6581_.h.

Referenced by waveCalcNormal(), and waveCalcRangeCheck().

Envelope* sidEmu::iTheEnvelope [private]
 

Definition at line 156 of file 6581_.h.

Referenced by sidEmu(), sidEmuConfigure(), sidEmuFillBuffer(), sidEmuReset(), sidEmuSet(), waveCalcMute(), waveCalcNormal(), waveCalcRangeCheck(), and ~sidEmu().

Sample* sidEmu::iTheSampler [private]
 

pointer to the sample. We own this.

Definition at line 139 of file 6581_.h.

Referenced by Mixer::Mixer(), emuEngine::resetSampleEmu(), sidEmu(), sidEmuConfigure(), sidEmuFillBuffer(), sidEmuReset(), and ~sidEmu().

friend sidEmu::Mixer [private]
 

Definition at line 29 of file 6581_.h.

ubyte* sidEmu::noiseTableLSB [private]
 

Definition at line 153 of file 6581_.h.

Referenced by initWaveformTables(), noiseAdvance(), noiseAdvanceHp(), sidEmu(), and ~sidEmu().

ubyte* sidEmu::noiseTableMID [private]
 

Definition at line 152 of file 6581_.h.

Referenced by initWaveformTables(), noiseAdvance(), noiseAdvanceHp(), sidEmu(), and ~sidEmu().

ubyte* sidEmu::noiseTableMSB [private]
 

Definition at line 151 of file 6581_.h.

Referenced by initWaveformTables(), noiseAdvance(), noiseAdvanceHp(), sidEmu(), and ~sidEmu().

struct sidOperator optr1 optr2 sidEmu::optr3
 

Definition at line 88 of file 6581_.h.

Referenced by sidEmu(), sidEmuFillBuffer(), sidEmuReset(), sidEmuResetAutoPanning(), sidEmuReturnVoiceVolume(), and sidEmuSetVoiceVolume().

uword sidEmu::PCMfreq [private]
 

Definition at line 109 of file 6581_.h.

Referenced by calcValuesPerCall(), Sample::sampleEmuReset(), and sidEmuConfigure().

udword sidEmu::PCMsid [private]
 

Definition at line 111 of file 6581_.h.

Referenced by sidEmuConfigure(), and sidEmuSet2().

udword sidEmu::PCMsidNoise [private]
 

Definition at line 112 of file 6581_.h.

Referenced by sidEmuConfigure(), and sidEmuSet2().

friend sidEmu::Sample [private]
 

Definition at line 30 of file 6581_.h.

Referenced by sidEmu().

ubyte* sidEmu::sawtoothTable [private]
 

Definition at line 143 of file 6581_.h.

Referenced by initWaveformTables(), sidEmu(), and ~sidEmu().

ptr2sidVoidFunc sidEmu::sidModeNormalTable[16] [private]
 

MOS-8580, MOS-6581 (no 70).

Definition at line 99 of file 6581_.h.

Referenced by initWaveformTables(), sidEmu(), and sidEmuSet2().

ptr2sidVoidFunc sidEmu::sidModeRingTable[16] [private]
 

MOS-8580, MOS-6581 (no 74).

Definition at line 100 of file 6581_.h.

Referenced by initWaveformTables(), sidEmu(), and sidEmuSet2().

udword sidEmu::sidtuneClockSpeed [private]
 

Song clock speed (PAL or NTSC). Does not affect pitch.

Definition at line 110 of file 6581_.h.

Referenced by sidEmuSetReplayingSpeed(), and sidEmuUpdateReplayingSpeed().

udword sidEmu::splitBufferLen
 

shared with Mixer class

Definition at line 90 of file 6581_.h.

Referenced by Mixer::fill16bitsplit(), Mixer::fill8bitsplit(), and sidEmuFillBuffer().

ubyte* sidEmu::squareTable [private]
 

Definition at line 144 of file 6581_.h.

Referenced by initWaveformTables(), sidEmu(), and ~sidEmu().

uword sidEmu::timer [private]
 

Definition at line 137 of file 6581_.h.

Referenced by sidEmuFillBuffer(), sidEmuSetReplayingSpeed(), and sidEmuUpdateReplayingSpeed().

uword sidEmu::toFill [private]
 

Definition at line 129 of file 6581_.h.

Referenced by sidEmuFillBuffer(), and sidEmuReset().

ubyte* sidEmu::triangleTable [private]
 

Definition at line 142 of file 6581_.h.

Referenced by initWaveformTables(), sidEmu(), and ~sidEmu().

bool sidEmu::updateAutoPanning [private]
 

Definition at line 116 of file 6581_.h.

Referenced by sidEmuFillBuffer(), sidEmuResetAutoPanning(), and sidEmuSet().

uword sidEmu::VALUES [private]
 

Definition at line 125 of file 6581_.h.

Referenced by calcValuesPerCall(), sidEmuFastForwardReplay(), and sidEmuFillBuffer().

udword sidEmu::VALUESadd [private]
 

Definition at line 126 of file 6581_.h.

Referenced by calcValuesPerCall(), and sidEmuFillBuffer().

udword sidEmu::VALUEScomma [private]
 

Definition at line 126 of file 6581_.h.

Referenced by calcValuesPerCall(), sidEmuFastForwardReplay(), and sidEmuFillBuffer().

uword sidEmu::VALUESorg [private]
 

Definition at line 125 of file 6581_.h.

Referenced by calcValuesPerCall(), and sidEmuFastForwardReplay().

uword sidEmu::voice4_gainLeft
 

Definition at line 89 of file 6581_.h.

Referenced by sidEmuResetAutoPanning(), sidEmuReturnVoiceVolume(), and sidEmuSetVoiceVolume().

uword sidEmu::voice4_gainRight
 

Voice 4 does not use a sidOperator structure.

Definition at line 89 of file 6581_.h.

Referenced by sidEmuResetAutoPanning(), sidEmuReturnVoiceVolume(), and sidEmuSetVoiceVolume().

ubyte* sidEmu::waveform50 [private]
 

Definition at line 145 of file 6581_.h.

Referenced by initWaveformTables(), sidEmu(), and ~sidEmu().


The documentation for this class was generated from the following files:
Generated on Tue Feb 8 04:34:13 2005 for Esidplay by doxygen 1.3.3