openMSX
Public Member Functions | Public Attributes | List of all members
openmsx::YM2413Okazaki::Slot Class Reference

#include <YM2413Okazaki.hh>

Collaboration diagram for openmsx::YM2413Okazaki::Slot:
Collaboration graph
[legend]

Public Member Functions

void reset ()
 
void setEnvelopeState (EnvelopeState state)
 
bool isActive () const
 
void slotOn ()
 
void slotOn2 ()
 
void slotOff ()
 
void setPatch (Patch &patch)
 
void setVolume (unsigned volume)
 
unsigned calc_phase (unsigned lfo_pm)
 
template<bool HAS_AM, bool FIXED_ENV>
unsigned calc_envelope (int lfo_am, unsigned fixed_env)
 
template<bool HAS_AM>
unsigned calc_fixed_env () const
 
void calc_envelope_outline (unsigned &out)
 
template<bool HAS_AM, bool FIXED_ENV>
int calc_slot_car (unsigned lfo_pm, int lfo_am, int fm, unsigned fixed_env)
 
template<bool HAS_AM, bool HAS_FB, bool FIXED_ENV>
int calc_slot_mod (unsigned lfo_pm, int lfo_am, unsigned fixed_env)
 
int calc_slot_tom ()
 
int calc_slot_snare (bool noise)
 
int calc_slot_cym (unsigned phase7, unsigned phase8)
 
int calc_slot_hat (unsigned phase7, unsigned phase8, bool noise)
 
void updatePG (unsigned freq)
 
void updateTLL (unsigned freq, bool actAsCarrier)
 
void updateRKS (unsigned freq)
 
void updateEG ()
 
void updateAll (unsigned freq, bool actAsCarrier)
 
template<typename Archive >
void serialize (Archive &ar, unsigned version)
 

Public Attributes

int feedback
 
int output
 
unsigned cphase
 
unsigned dphase [8]
 
unsigned volume
 
unsigned tll
 
int * dphaseDRTableRks
 
EnvelopeState state
 
EnvPhaseIndex eg_phase
 
EnvPhaseIndex eg_dphase
 
EnvPhaseIndex eg_phase_max
 
byte slot_on_flag
 
bool sustain
 
Patch patch
 
Slotsibling
 

Detailed Description

Definition at line 61 of file YM2413Okazaki.hh.

Member Function Documentation

template<bool HAS_AM, bool FIXED_ENV>
unsigned openmsx::YM2413Okazaki::Slot::calc_envelope ( int  lfo_am,
unsigned  fixed_env 
)
inline
void openmsx::YM2413Okazaki::Slot::calc_envelope_outline ( unsigned &  out)
template<bool HAS_AM>
unsigned openmsx::YM2413Okazaki::Slot::calc_fixed_env ( ) const
unsigned openmsx::YM2413Okazaki::Slot::calc_phase ( unsigned  lfo_pm)
inline
template<bool HAS_AM, bool FIXED_ENV>
int openmsx::YM2413Okazaki::Slot::calc_slot_car ( unsigned  lfo_pm,
int  lfo_am,
int  fm,
unsigned  fixed_env 
)
inline
int openmsx::YM2413Okazaki::Slot::calc_slot_cym ( unsigned  phase7,
unsigned  phase8 
)
inline
int openmsx::YM2413Okazaki::Slot::calc_slot_hat ( unsigned  phase7,
unsigned  phase8,
bool  noise 
)
inline
template<bool HAS_AM, bool HAS_FB, bool FIXED_ENV>
int openmsx::YM2413Okazaki::Slot::calc_slot_mod ( unsigned  lfo_pm,
int  lfo_am,
unsigned  fixed_env 
)
inline
int openmsx::YM2413Okazaki::Slot::calc_slot_snare ( bool  noise)
inline
int openmsx::YM2413Okazaki::Slot::calc_slot_tom ( )
inline
bool openmsx::YM2413Okazaki::Slot::isActive ( ) const
inline
void openmsx::YM2413Okazaki::Slot::reset ( )
template<typename Archive >
void openmsx::YM2413Okazaki::Slot::serialize ( Archive &  ar,
unsigned  version 
)

Definition at line 1327 of file YM2413Okazaki.cc.

References cphase, eg_phase, feedback, output, state, and sustain.

void openmsx::YM2413Okazaki::Slot::setEnvelopeState ( EnvelopeState  state)
inline
void openmsx::YM2413Okazaki::Slot::setPatch ( Patch patch)
inline
void openmsx::YM2413Okazaki::Slot::setVolume ( unsigned  volume)
inline
void openmsx::YM2413Okazaki::Slot::slotOff ( )
inline
void openmsx::YM2413Okazaki::Slot::slotOn ( )
inline
void openmsx::YM2413Okazaki::Slot::slotOn2 ( )
inline
void openmsx::YM2413Okazaki::Slot::updateAll ( unsigned  freq,
bool  actAsCarrier 
)
inline
void openmsx::YM2413Okazaki::Slot::updateEG ( )
inline
void openmsx::YM2413Okazaki::Slot::updatePG ( unsigned  freq)
inline
void openmsx::YM2413Okazaki::Slot::updateRKS ( unsigned  freq)
inline
void openmsx::YM2413Okazaki::Slot::updateTLL ( unsigned  freq,
bool  actAsCarrier 
)
inline

Member Data Documentation

unsigned openmsx::YM2413Okazaki::Slot::cphase

Definition at line 102 of file YM2413Okazaki.hh.

Referenced by serialize().

unsigned openmsx::YM2413Okazaki::Slot::dphase[8]

Definition at line 103 of file YM2413Okazaki.hh.

int* openmsx::YM2413Okazaki::Slot::dphaseDRTableRks

Definition at line 108 of file YM2413Okazaki.hh.

EnvPhaseIndex openmsx::YM2413Okazaki::Slot::eg_dphase

Definition at line 111 of file YM2413Okazaki.hh.

EnvPhaseIndex openmsx::YM2413Okazaki::Slot::eg_phase

Definition at line 110 of file YM2413Okazaki.hh.

Referenced by serialize().

EnvPhaseIndex openmsx::YM2413Okazaki::Slot::eg_phase_max

Definition at line 112 of file YM2413Okazaki.hh.

int openmsx::YM2413Okazaki::Slot::feedback

Definition at line 98 of file YM2413Okazaki.hh.

Referenced by serialize().

int openmsx::YM2413Okazaki::Slot::output

Definition at line 99 of file YM2413Okazaki.hh.

Referenced by serialize().

Patch openmsx::YM2413Okazaki::Slot::patch

Definition at line 116 of file YM2413Okazaki.hh.

Slot* openmsx::YM2413Okazaki::Slot::sibling

Definition at line 117 of file YM2413Okazaki.hh.

byte openmsx::YM2413Okazaki::Slot::slot_on_flag

Definition at line 113 of file YM2413Okazaki.hh.

EnvelopeState openmsx::YM2413Okazaki::Slot::state

Definition at line 109 of file YM2413Okazaki.hh.

Referenced by serialize(), and openmsx::YM2413Okazaki::YM2413::serialize().

bool openmsx::YM2413Okazaki::Slot::sustain

Definition at line 114 of file YM2413Okazaki.hh.

Referenced by serialize().

unsigned openmsx::YM2413Okazaki::Slot::tll

Definition at line 107 of file YM2413Okazaki.hh.

unsigned openmsx::YM2413Okazaki::Slot::volume

Definition at line 106 of file YM2413Okazaki.hh.


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