Classes | Public Member Functions | List of all members
openmsx::YM2151 Class Referencefinal

#include <YM2151.hh>

Inheritance diagram for openmsx::YM2151:
Inheritance graph
Collaboration diagram for openmsx::YM2151:
Collaboration graph

Public Member Functions

 YM2151 (const std::string &name, const std::string &desc, const DeviceConfig &config, EmuTime::param time)
 ~YM2151 ()
void reset (EmuTime::param time)
void writeReg (byte r, byte v, EmuTime::param time)
byte readStatus () const
template<typename Archive >
void serialize (Archive &ar, unsigned version)
- Public Member Functions inherited from openmsx::ResampledSoundDevice
bool generateInput (float *buffer, unsigned num)
 Note: To enable various optimizations (like SSE), this method is allowed to generate up to 3 extra sample. More...
DynamicClockgetEmuClock ()
- Public Member Functions inherited from openmsx::SoundDevice
const std::string & getName () const
 Get the unique name that identifies this sound device. More...
const std::string & getDescription () const
 Gets a description of this sound device, to be presented to the user. More...
bool isStereo () const
 Is this a stereo device? This is set in the constructor and cannot be changed anymore. More...
std::pair< float, float > getAmplificationFactor () const
 Gets this device its 'amplification factor'. More...
void setSoftwareVolume (float volume, EmuTime::param time)
 Change the 'software volume' of this sound device. More...
void setSoftwareVolume (float left, float right, EmuTime::param time)
void recordChannel (unsigned channel, const Filename &filename)
void muteChannel (unsigned channel, bool muted)

Additional Inherited Members

- Public Types inherited from openmsx::ResampledSoundDevice
- Static Public Attributes inherited from openmsx::SoundDevice
static constexpr unsigned MAX_CHANNELS = 24
- Protected Member Functions inherited from openmsx::ResampledSoundDevice
 ResampledSoundDevice (MSXMotherBoard &motherBoard, std::string_view name, std::string_view description, unsigned channels, unsigned inputSampleRate, bool stereo)
 ~ResampledSoundDevice ()
void setOutputRate (unsigned sampleRate) override
 When a SoundDevice registers itself with the Mixer, the Mixer sets the required sampleRate through this method. More...
bool updateBuffer (unsigned length, float *buffer, EmuTime::param time) override
 Generate sample data. More...
void update (const Setting &setting) override
void createResampler ()
- Protected Member Functions inherited from openmsx::SoundDevice
 SoundDevice (MSXMixer &mixer, std::string_view name, std::string_view description, unsigned numChannels, unsigned inputRate, bool stereo)
 Constructor. More...
 ~SoundDevice ()
virtual float getAmplificationFactorImpl () const
 Get amplification/attenuation factor for this device. More...
void registerSound (const DeviceConfig &config)
 Registers this sound device with the Mixer. More...
void unregisterSound ()
 Unregisters this sound device with the Mixer. More...
void updateStream (EmuTime::param time)
void setInputRate (unsigned sampleRate)
unsigned getInputRate () const
bool mixChannels (float *dataOut, unsigned samples)
 Calls generateChannels() and combines the output to a single channel. More...
const DynamicClockgetHostSampleClock () const
 See MSXMixer::getHostSampleClock(). More...
double getEffectiveSpeed () const
- Protected Member Functions inherited from openmsx::Observer< Setting >
 ~Observer ()=default
virtual void subjectDeleted (const Setting &)
- Static Protected Member Functions inherited from openmsx::SoundDevice
static void addFill (float *&buffer, float value, unsigned num)
 Adds a number of samples that all have the same value. More...

Detailed Description

Definition at line 47 of file YM2151.hh.

Constructor & Destructor Documentation

◆ YM2151()

openmsx::YM2151::YM2151 ( const std::string &  name,
const std::string &  desc,
const DeviceConfig config,
EmuTime::param  time 

Definition at line 839 of file

◆ ~YM2151()

openmsx::YM2151::~YM2151 ( )

Definition at line 859 of file

References ranges::all_of(), and openmsx::EG_OFF.

Member Function Documentation

◆ readStatus()

byte openmsx::YM2151::readStatus ( ) const

Definition at line 1502 of file

References openmsx::IntHelper< SOURCE >::set().

Referenced by openmsx::MSXYamahaSFG::peekMem().

◆ reset()

void openmsx::YM2151::reset ( EmuTime::param  time)

Definition at line 869 of file

Referenced by openmsx::MSXYamahaSFG::reset().

◆ serialize()

template<typename Archive >
void openmsx::YM2151::serialize ( Archive &  ar,
unsigned  version 

Definition at line 1565 of file

References writeReg().

◆ writeReg()

void openmsx::YM2151::writeReg ( byte  r,
byte  v,
EmuTime::param  time 

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