openMSX
Public Member Functions | Public Attributes | List of all members
openmsx::YM2413Burczynski::Channel Class Reference

#include <YM2413Burczynski.hh>

Collaboration diagram for openmsx::YM2413Burczynski::Channel:
Collaboration graph
[legend]

Public Member Functions

 Channel ()
 
int calcOutput (unsigned eg_cnt, unsigned lfo_pm, unsigned lfo_am, int fm)
 Calculate the value of the current sample produced by this channel. More...
 
void setFrequency (int block_fnum)
 Sets the frequency for this channel. More...
 
void setFrequencyLow (byte value)
 Changes the lower 8 bits of the frequency for this channel. More...
 
void setFrequencyHigh (byte value)
 Changes the higher 4 bits of the frequency for this channel. More...
 
void updateInstrumentPart (int part, byte value)
 Sets some synthesis parameters as specified by the instrument. More...
 
void updateInstrument (const byte *inst)
 Sets all synthesis parameters as specified by the instrument. More...
 
int getBlockFNum () const
 
FreqIndex getFrequencyIncrement () const
 
int getKeyScaleLevelBase () const
 
byte getKeyCode () const
 
bool isSustained () const
 
void setSustain (bool sustained)
 
template<typename Archive >
void serialize (Archive &ar, unsigned version)
 

Public Attributes

Slot mod
 
Slot car
 

Detailed Description

Definition at line 170 of file YM2413Burczynski.hh.

Constructor & Destructor Documentation

◆ Channel()

openmsx::YM2413Burczynski::Channel::Channel ( )

Definition at line 822 of file YM2413Burczynski.cc.

Member Function Documentation

◆ calcOutput()

int openmsx::YM2413Burczynski::Channel::calcOutput ( unsigned  eg_cnt,
unsigned  lfo_pm,
unsigned  lfo_am,
int  fm 
)
inline

Calculate the value of the current sample produced by this channel.

Definition at line 567 of file YM2413Burczynski.cc.

Referenced by openmsx::YM2413Burczynski::YM2413::YM2413().

◆ getBlockFNum()

int openmsx::YM2413Burczynski::Channel::getBlockFNum ( ) const

Definition at line 852 of file YM2413Burczynski.cc.

Referenced by openmsx::YM2413Burczynski::Slot::calc_phase().

◆ getFrequencyIncrement()

FreqIndex openmsx::YM2413Burczynski::Channel::getFrequencyIncrement ( ) const

◆ getKeyCode()

byte openmsx::YM2413Burczynski::Channel::getKeyCode ( ) const

◆ getKeyScaleLevelBase()

int openmsx::YM2413Burczynski::Channel::getKeyScaleLevelBase ( ) const

Definition at line 862 of file YM2413Burczynski.cc.

Referenced by openmsx::YM2413Burczynski::Slot::calc_phase().

◆ isSustained()

bool openmsx::YM2413Burczynski::Channel::isSustained ( ) const

◆ serialize()

template<typename Archive >
void openmsx::YM2413Burczynski::Channel::serialize ( Archive &  ar,
unsigned  version 
)

◆ setFrequency()

void openmsx::YM2413Burczynski::Channel::setFrequency ( int  block_fnum)

Sets the frequency for this channel.

Definition at line 829 of file YM2413Burczynski.cc.

References car, mod, and openmsx::YM2413Burczynski::Slot::updateFrequency().

Referenced by setFrequencyHigh(), and setFrequencyLow().

◆ setFrequencyHigh()

void openmsx::YM2413Burczynski::Channel::setFrequencyHigh ( byte  value)

Changes the higher 4 bits of the frequency for this channel.

Definition at line 847 of file YM2413Burczynski.cc.

References setFrequency().

Referenced by openmsx::YM2413Burczynski::YM2413::YM2413().

◆ setFrequencyLow()

void openmsx::YM2413Burczynski::Channel::setFrequencyLow ( byte  value)

Changes the lower 8 bits of the frequency for this channel.

Definition at line 842 of file YM2413Burczynski.cc.

References setFrequency().

Referenced by openmsx::YM2413Burczynski::YM2413::YM2413().

◆ setSustain()

void openmsx::YM2413Burczynski::Channel::setSustain ( bool  sustained)

Definition at line 878 of file YM2413Burczynski.cc.

Referenced by openmsx::YM2413Burczynski::YM2413::YM2413().

◆ updateInstrument()

void openmsx::YM2413Burczynski::Channel::updateInstrument ( const byte inst)

Sets all synthesis parameters as specified by the instrument.

Parameters
instInstrument data.

Definition at line 931 of file YM2413Burczynski.cc.

References updateInstrumentPart().

Referenced by openmsx::YM2413Burczynski::YM2413::YM2413().

◆ updateInstrumentPart()

void openmsx::YM2413Burczynski::Channel::updateInstrumentPart ( int  part,
byte  value 
)

Member Data Documentation

◆ car

Slot openmsx::YM2413Burczynski::Channel::car

◆ mod

Slot openmsx::YM2413Burczynski::Channel::mod

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