From 379243808b30e78a94576d82f17b07ee43ed2a3d Mon Sep 17 00:00:00 2001 From: cam900 Date: Fri, 27 Sep 2019 13:56:55 +0900 Subject: ay8910.cpp : Device-fied sunsoft 5B sound hardware - it has Yamaha volume parameter, single sound output and internal divider. - Developed by Yamaha --- src/devices/sound/ay8910.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/devices/sound/ay8910.cpp') diff --git a/src/devices/sound/ay8910.cpp b/src/devices/sound/ay8910.cpp index 6ae9518c29e..82d32585290 100644 --- a/src/devices/sound/ay8910.cpp +++ b/src/devices/sound/ay8910.cpp @@ -1405,7 +1405,7 @@ void ay8910_device::set_volume(int channel,int volume) void ay8910_device::ay_set_clock(int clock) { // FIXME: this doesn't belong here, it should be an input pin exposed via devcb - if ((m_feature & PSG_PIN26_IS_CLKSEL) && (m_flags & YM2149_PIN26_LOW)) + if (((m_feature & PSG_PIN26_IS_CLKSEL) && (m_flags & YM2149_PIN26_LOW)) || (m_feature & PSG_HAS_INTERNAL_DIVIDER)) m_channel->set_sample_rate((m_feature & PSG_HAS_EXPANDED_MODE) ? clock : clock / 16); else m_channel->set_sample_rate((m_feature & PSG_HAS_EXPANDED_MODE) ? clock * 2 : clock / 8); @@ -1742,3 +1742,11 @@ ymz294_device::ymz294_device(const machine_config &mconfig, const char *tag, dev : ay8910_device(mconfig, YMZ294, tag, owner, clock, PSG_TYPE_YM, 1, 0) { } + + +DEFINE_DEVICE_TYPE(SUNSOFT_5B_SOUND, sunsoft_5b_sound_device, "sunsoft_5b_sound", "Sunsoft/Yamaha 5B 6630B (Sound)") + +sunsoft_5b_sound_device::sunsoft_5b_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) + : ay8910_device(mconfig, SUNSOFT_5B_SOUND, tag, owner, clock, PSG_TYPE_YM, 1, 0, PSG_HAS_INTERNAL_DIVIDER) +{ +} -- cgit v1.2.3-70-g09d2