openMSX
|
#include <YMF262.hh>
Public Types | |
enum class | EnvelopeState { ATTACK , DECAY , SUSTAIN , RELEASE , OFF } |
using | FreqIndex = FixedPoint< 16 > |
16.16 fixed point type for frequency calculations | |
Public Member Functions | |
YMF262 (const std::string &name, const DeviceConfig &config, bool isYMF278) | |
~YMF262 () | |
void | reset (EmuTime::param time) |
void | writeReg (unsigned r, uint8_t v, EmuTime::param time) |
void | writeReg512 (unsigned r, uint8_t v, EmuTime::param time) |
uint8_t | readReg (unsigned reg) const |
uint8_t | peekReg (unsigned reg) const |
uint8_t | readStatus () |
uint8_t | peekStatus () const |
void | setMixLevel (uint8_t x, EmuTime::param time) |
template<typename Archive > | |
void | serialize (Archive &ar, unsigned version) |
Static Public Attributes | |
static constexpr int | SIN_BITS = 10 |
static constexpr int | SIN_LEN = 1 << SIN_BITS |
static constexpr int | SIN_MASK = SIN_LEN - 1 |
using openmsx::YMF262::FreqIndex = FixedPoint<16> |
|
strong |
openmsx::YMF262::YMF262 | ( | const std::string & | name, |
const DeviceConfig & | config, | ||
bool | isYMF278 | ||
) |
Definition at line 1438 of file YMF262.cc.
References openmsx::MSXMotherBoard::getCurrentTime(), openmsx::DeviceConfig::getMotherBoard(), openmsx::SoundDevice::registerSound(), reset(), t, and openmsx::SinTab::tab.
openmsx::YMF262::~YMF262 | ( | ) |
Definition at line 1468 of file YMF262.cc.
References openmsx::SoundDevice::unregisterSound().
uint8_t openmsx::YMF262::peekReg | ( | unsigned | reg | ) | const |
Definition at line 1030 of file YMF262.cc.
Referenced by openmsx::YMF278B::peekIO(), openmsx::MSXOPL3Cartridge::peekIO(), and readReg().
uint8_t openmsx::YMF262::peekStatus | ( | ) | const |
Definition at line 1481 of file YMF262.cc.
Referenced by openmsx::YMF278B::peekIO(), and openmsx::MSXOPL3Cartridge::peekIO().
uint8_t openmsx::YMF262::readReg | ( | unsigned | reg | ) | const |
Definition at line 1024 of file YMF262.cc.
References peekReg().
Referenced by openmsx::YMF278B::readIO(), and openmsx::MSXOPL3Cartridge::readIO().
uint8_t openmsx::YMF262::readStatus | ( | ) |
Definition at line 1473 of file YMF262.cc.
Referenced by openmsx::YMF278B::readIO(), and openmsx::MSXOPL3Cartridge::readIO().
void openmsx::YMF262::reset | ( | EmuTime::param | time | ) |
Definition at line 1397 of file YMF262.cc.
References OFF, and setMixLevel().
Referenced by openmsx::YMF278B::reset(), openmsx::MSXOPL3Cartridge::reset(), and YMF262().
void openmsx::YMF262::serialize | ( | Archive & | ar, |
unsigned | version | ||
) |
void openmsx::YMF262::setMixLevel | ( | uint8_t | x, |
EmuTime::param | time | ||
) |
Definition at line 1501 of file YMF262.cc.
References openmsx::SoundDevice::setSoftwareVolume().
Referenced by reset(), and openmsx::YMF278B::writeIO().
void openmsx::YMF262::writeReg | ( | unsigned | r, |
uint8_t | v, | ||
EmuTime::param | time | ||
) |
Definition at line 1035 of file YMF262.cc.
References writeReg512().
Referenced by openmsx::YMF278B::writeIO(), and openmsx::MSXOPL3Cartridge::writeIO().
void openmsx::YMF262::writeReg512 | ( | unsigned | r, |
uint8_t | v, | ||
EmuTime::param | time | ||
) |
Definition at line 1043 of file YMF262.cc.
References openmsx::SoundDevice::updateStream().
Referenced by writeReg().
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |