Add support for custom device constructors when replacing devices.

Current syntax: MCFG_DEVICE_REPLACE(tag_or_finder, TYPE, ...)

Next-generation syntax: TYPE(config.replace(), tag_or_finder, ...)

(nw) Kill off some more low-value macros that aren't needed any more,
and get rid of the token-pasting voodoo and casts in the discrete sound
macros.
This commit is contained in:
Vas Crabb 2018-05-08 07:35:22 +10:00
parent 765d625ac7
commit 4ef4464aec
154 changed files with 599 additions and 720 deletions

View File

@ -118,7 +118,7 @@ static const discrete_555_desc abc77_ne556_a =
};
static DISCRETE_SOUND_START( abc77 )
static DISCRETE_SOUND_START( abc77_discrete )
DISCRETE_INPUT_LOGIC(NODE_01)
DISCRETE_555_ASTABLE(NODE_02, NODE_01, (int) RES_K(2.7), (int) RES_K(15), (int) CAP_N(22), &abc77_ne556_a)
DISCRETE_OUTPUT(NODE_02, 5000)
@ -145,8 +145,7 @@ MACHINE_CONFIG_START(abc77_device::device_add_mconfig)
// discrete sound
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, 0)
MCFG_DISCRETE_INTF(abc77)
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc77_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END

View File

@ -4255,16 +4255,8 @@ public:
// INTERFACE CONFIGURATION MACROS
//**************************************************************************
#define MCFG_DISCRETE_ADD(_tag, _clock, _intf) \
MCFG_DEVICE_ADD(_tag, DISCRETE, _clock) \
MCFG_DISCRETE_INTF(_intf)
#define MCFG_DISCRETE_REPLACE(_tag, _clock, _intf) \
MCFG_DEVICE_REPLACE(_tag, DISCRETE, _clock) \
MCFG_DISCRETE_INTF(_intf)
#define MCFG_DISCRETE_INTF(_intf) \
downcast<discrete_device &>(*device).set_intf((const discrete_block *)&(_intf##_discrete_interface));
downcast<discrete_device &>(*device).set_intf(_intf);
//**************************************************************************
// TYPE DEFINITIONS
@ -4377,6 +4369,16 @@ class discrete_sound_device : public discrete_device,
{
public:
// construction/destruction
discrete_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, const discrete_block *intf)
: discrete_sound_device(mconfig, tag, owner, clock)
{
set_intf(intf);
}
discrete_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, const discrete_block *intf)
: discrete_sound_device(mconfig, tag, owner, uint32_t(0))
{
set_intf(intf);
}
discrete_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
virtual ~discrete_sound_device(void) { };
@ -4531,8 +4533,8 @@ discrete_base_node *discrete_create_node(discrete_device * pdev, const discrete_
return discrete_node_factory< C >().Create(pdev, block);
}
#define DISCRETE_SOUND_EXTERN(name) extern const discrete_block name##_discrete_interface[]
#define DISCRETE_SOUND_START(name) const discrete_block name##_discrete_interface[] = {
#define DISCRETE_SOUND_EXTERN(name) extern const discrete_block name[]
#define DISCRETE_SOUND_START(name) const discrete_block name[] = {
//#define DSC_SND_ENTRY(_nod, _class, _dss, _num, _iact, _iinit, _custom, _name) { _nod, new discrete_node_factory< DISCRETE_CLASS_NAME(_class) >, _dss, _num, _iact, _iinit, _custom, _name, # _class }
#define DSC_SND_ENTRY(_nod, _class, _dss, _num, _iact, _iinit, _custom, _name) { _nod, &discrete_create_node< DISCRETE_CLASS_NAME(_class) >, _dss, _num, _iact, _iinit, _custom, _name, # _class }
@ -4716,7 +4718,7 @@ discrete_base_node *discrete_create_node(discrete_device * pdev, const discrete_
#define DISCRETE_WAVLOG2(NODE1,GAIN1,NODE2,GAIN2) DSC_SND_ENTRY( NODE_SPECIAL, dso_wavlog , DSO_WAVLOG , 4, DSE( static_cast<int>(NODE1),NODE_NC,static_cast<int>(NODE2),NODE_NC ), DSE( NODE1,GAIN1,NODE2,GAIN2 ), nullptr, "DISCRETE_WAVLOG2" ),
/* import */
#define DISCRETE_IMPORT(INFO) DSC_SND_ENTRY( NODE_SPECIAL, special , DSO_IMPORT , 0, DSE( 0 ), DSE( 0 ), &(INFO##_discrete_interface), "DISCRETE_IMPORT" ),
#define DISCRETE_IMPORT(INFO) DSC_SND_ENTRY( NODE_SPECIAL, special , DSO_IMPORT , 0, DSE( 0 ), DSE( 0 ), &(INFO), "DISCRETE_IMPORT" ),
#define DISCRETE_DELETE(NODE_FROM, NODE_TO) DSC_SND_ENTRY( NODE_SPECIAL, special , DSO_DELETE , 2, DSE( static_cast<int>(NODE_FROM), static_cast<int>(NODE_TO) ), DSE( NODE_FROM, NODE_TO ), nullptr, "DISCRETE_DELETE" ),
#define DISCRETE_REPLACE DSC_SND_ENTRY( NODE_SPECIAL, special , DSO_REPLACE , 0, DSE( 0 ), DSE( 0 ), nullptr, "DISCRETE_REPLACE" ),

View File

@ -6,17 +6,6 @@
#pragma once
//**************************************************************************
// INTERFACE CONFIGURATION MACROS
//**************************************************************************
#define MCFG_FILTER_VOLUME_ADD(_tag, _clock) \
MCFG_DEVICE_ADD(_tag, FILTER_VOLUME, _clock)
#define MCFG_FILTER_VOLUME_REPLACE(_tag, _clock) \
MCFG_DEVICE_REPLACE(_tag, FILTER_VOLUME, _clock)
//**************************************************************************
// TYPE DEFINITIONS
//**************************************************************************
@ -26,7 +15,7 @@
class filter_volume_device : public device_t, public device_sound_interface
{
public:
filter_volume_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
filter_volume_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
void flt_volume_set_volume(float volume);
@ -44,5 +33,4 @@ private:
DECLARE_DEVICE_TYPE(FILTER_VOLUME, filter_volume_device)
#endif // MAME_SOUND_FLT_VOL_H

View File

@ -203,6 +203,7 @@ void okim6295_device::rom_bank_updated()
void okim6295_device::set_pin7(int pin7)
{
assert(started());
m_pin7_state = pin7 ? 1 : 0;
device_clock_changed();
}

View File

@ -21,10 +21,6 @@
// INTERFACE CONFIGURATION MACROS
//**************************************************************************
#define MCFG_OKIM6295_REPLACE(tag, clock, pin7) \
MCFG_DEVICE_REPLACE((tag), OKIM6295, (clock)) \
MCFG_OKIM6295_PIN7(pin7)
#define MCFG_OKIM6295_PIN7(pin7) \
downcast<okim6295_device &>(*device).config_pin7((okim6295_device::pin7));
@ -56,7 +52,7 @@ public:
okim6295_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// inline configuration helpers
void config_pin7(pin7_state pin7) { m_pin7_state = pin7; }
void config_pin7(pin7_state pin7) { assert(!started()); m_pin7_state = pin7; }
// runtime configuration
void set_pin7(int pin7);

View File

@ -289,6 +289,8 @@ public:
template <typename... Params> DeviceClass &operator()(machine_config &mconfig, char const *tag, Params &&... args) const;
template <typename Exposed, bool Required, typename... Params> DeviceClass &operator()(machine_config &mconfig, device_finder<Exposed, Required> &finder, Params &&... args) const;
template <typename... Params> DeviceClass &operator()(machine_config_replace replace, char const *tag, Params &&... args) const;
template <typename Exposed, bool Required, typename... Params> DeviceClass &operator()(machine_config_replace replace, device_finder<Exposed, Required> &finder, Params &&... args) const;
};

View File

@ -45,6 +45,21 @@ inline DeviceClass &device_type_impl<DeviceClass>::operator()(machine_config &mc
return finder = result;
}
template <class DeviceClass> template <typename... Params>
inline DeviceClass &device_type_impl<DeviceClass>::operator()(machine_config_replace replace, char const *tag, Params &&... args) const
{
return dynamic_cast<DeviceClass &>(*replace.config.device_replace(tag, *this, std::forward<Params>(args)...));
}
template <class DeviceClass> template <typename Exposed, bool Required, typename... Params>
inline DeviceClass &device_type_impl<DeviceClass>::operator()(machine_config_replace replace, device_finder<Exposed, Required> &finder, Params &&... args) const
{
std::pair<device_t &, char const *> const target(finder.finder_target());
assert(&replace.config.current_device() == &target.first);
DeviceClass &result(dynamic_cast<DeviceClass &>(*replace.config.device_replace(target.second, *this, std::forward<Params>(args)...)));
return finder = result;
}
} } // namespace emu::detail

View File

@ -179,6 +179,7 @@ struct ioport_port_live;
class running_machine;
// declared in mconfig.h
namespace emu { namespace detail { struct machine_config_replace; } }
class machine_config;
// declared in natkeyboard.h

View File

@ -115,70 +115,6 @@ machine_config::~machine_config()
}
//-------------------------------------------------
// resolve_owner - get the actual owner and base
// tag given tag relative to current context
//-------------------------------------------------
std::pair<const char *, device_t *> machine_config::resolve_owner(const char *tag) const
{
assert(bool(m_current_device) == bool(m_root_device));
char const *const orig_tag = tag;
device_t *owner(m_current_device);
// if the device path is absolute, start from the root
if (tag[0] == ':')
{
tag++;
owner = m_root_device.get();
}
// go down the path until we're done with it
while (strchr(tag, ':'))
{
const char *next = strchr(tag, ':');
assert(next != tag);
std::string part(tag, next-tag);
owner = owner->subdevices().find(part);
if (!owner)
throw emu_fatalerror("Could not find %s when looking up path for device %s\n", part.c_str(), orig_tag);
tag = next+1;
}
assert(tag[0] != '\0');
return std::make_pair(tag, owner);
}
//-------------------------------------------------
// add_device - add a new device at the correct
// point in the hierarchy
//-------------------------------------------------
device_t *machine_config::add_device(std::unique_ptr<device_t> &&device, device_t *owner)
{
current_device_stack context(*this);
if (owner)
{
// allocate the new device and append it to the owner's list
device_t *const result = &owner->subdevices().m_list.append(*device.release());
result->add_machine_configuration(*this);
return result;
}
else
{
// allocate the root device directly
assert(!m_root_device);
m_root_device = std::move(device);
driver_device *driver = dynamic_cast<driver_device *>(m_root_device.get());
if (driver)
driver->set_game_driver(m_gamedrv);
m_root_device->add_machine_configuration(*this);
return m_root_device.get();
}
}
//-------------------------------------------------
// device_add - configuration helper to add a
// new device
@ -187,7 +123,7 @@ device_t *machine_config::add_device(std::unique_ptr<device_t> &&device, device_
device_t *machine_config::device_add(const char *tag, device_type type, u32 clock)
{
std::pair<const char *, device_t *> const owner(resolve_owner(tag));
return add_device(type.create(*this, owner.first, owner.second, clock), owner.second);
return &add_device(type.create(*this, owner.first, owner.second, clock), owner.second);
}
@ -198,37 +134,9 @@ device_t *machine_config::device_add(const char *tag, device_type type, u32 cloc
device_t *machine_config::device_replace(const char *tag, device_type type, u32 clock)
{
// find the original device by relative tag (must exist)
assert(m_current_device);
device_t *old_device = m_current_device->subdevice(tag);
if (!old_device)
{
osd_printf_warning("Warning: attempting to replace non-existent device '%s'\n", tag);
return device_add(tag, type, clock);
}
else
{
// make sure we have the old device's actual owner
device_t *const owner = old_device->owner();
assert(owner);
// remove references to the old device
remove_references(*old_device);
// allocate the new device and substitute it for the old one in the owner's list
device_t *const new_device = &owner->subdevices().m_list.replace_and_remove(*type.create(*this, tag, owner, clock).release(), *old_device);
current_device_stack context(*this);
new_device->add_machine_configuration(*this);
return new_device;
}
}
device_t *machine_config::device_replace(const char *tag, device_type type, const XTAL &clock)
{
std::string msg = std::string("Replacing device ") + tag;
clock.validate(msg);
return device_replace(tag, type, clock.value());
std::tuple<const char *, device_t *, device_t *> const existing(prepare_replace(tag));
std::unique_ptr<device_t> device(type.create(*this, std::get<0>(existing), std::get<1>(existing), clock));
return &replace_device(std::move(device), *std::get<1>(existing), std::get<2>(existing));
}
@ -262,6 +170,109 @@ device_t *machine_config::device_remove(const char *tag)
}
//-------------------------------------------------
// resolve_owner - get the actual owner and base
// tag given tag relative to current context
//-------------------------------------------------
std::pair<const char *, device_t *> machine_config::resolve_owner(const char *tag) const
{
assert(bool(m_current_device) == bool(m_root_device));
char const *const orig_tag = tag;
device_t *owner(m_current_device);
// if the device path is absolute, start from the root
if (tag[0] == ':')
{
tag++;
owner = m_root_device.get();
}
// go down the path until we're done with it
std::string part;
while (strchr(tag, ':'))
{
const char *next = strchr(tag, ':');
assert(next != tag);
part.assign(tag, next - tag);
owner = owner->subdevices().find(part);
if (!owner)
throw emu_fatalerror("Could not find %s when looking up path for device %s\n", part.c_str(), orig_tag);
tag = next+1;
}
assert(tag[0] != '\0');
return std::make_pair(tag, owner);
}
//-------------------------------------------------
// prepare_replace - ensure owner is present and
// existing device is removed if necessary
//-------------------------------------------------
std::tuple<const char *, device_t *, device_t *> machine_config::prepare_replace(const char *tag)
{
// make sure we have the old device's actual owner
std::pair<const char *, device_t *> const owner(resolve_owner(tag));
assert(owner.second);
// remove references to the old device
device_t *const old_device(owner.second->subdevice(owner.first));
if (old_device)
remove_references(*old_device);
else
osd_printf_warning("Warning: attempting to replace non-existent device '%s'\n", tag);
return std::make_tuple(owner.first, owner.second, old_device);
}
//-------------------------------------------------
// add_device - add a new device at the correct
// point in the hierarchy
//-------------------------------------------------
device_t &machine_config::add_device(std::unique_ptr<device_t> &&device, device_t *owner)
{
current_device_stack const context(*this);
if (owner)
{
// allocate the new device and append it to the owner's list
device_t &result(owner->subdevices().m_list.append(*device.release()));
result.add_machine_configuration(*this);
return result;
}
else
{
// allocate the root device directly
assert(!m_root_device);
m_root_device = std::move(device);
driver_device *driver = dynamic_cast<driver_device *>(m_root_device.get());
if (driver)
driver->set_game_driver(m_gamedrv);
m_root_device->add_machine_configuration(*this);
return *m_root_device;
}
}
//-------------------------------------------------
// replace_device - substitute the new device for
// the old one in the owner's list
//-------------------------------------------------
device_t &machine_config::replace_device(std::unique_ptr<device_t> &&device, device_t &owner, device_t *existing)
{
current_device_stack const context(*this);
device_t &result(existing
? owner.subdevices().m_list.replace_and_remove(*device.release(), *existing)
: owner.subdevices().m_list.append(*device.release()));
result.add_machine_configuration(*this);
return result;
}
//-------------------------------------------------
// device_find - configuration helper to
// locate a device

View File

@ -20,6 +20,7 @@
#include <cassert>
#include <memory>
#include <tuple>
#include <type_traits>
#include <typeinfo>
#include <utility>
@ -36,6 +37,13 @@
// TYPE DEFINITIONS
//**************************************************************************
namespace emu { namespace detail {
struct machine_config_replace { machine_config &config; };
} } // namesapce emu::detail
struct internal_layout
{
size_t decompressed_size;
@ -109,6 +117,7 @@ public:
m_current_device = &device;
return token(*this, device);
}
emu::detail::machine_config_replace replace() { return emu::detail::machine_config_replace{ *this }; };
device_t *device_add(const char *tag, device_type type, u32 clock);
template <typename Creator>
device_t *device_add(const char *tag, Creator &&type, u32 clock)
@ -132,7 +141,27 @@ public:
return device_add(tag, std::forward<Creator>(type), clock.value(), std::forward<Params>(args)...);
}
device_t *device_replace(const char *tag, device_type type, u32 clock);
device_t *device_replace(const char *tag, device_type type, const XTAL &xtal);
template <typename Creator>
device_t *device_replace(const char *tag, Creator &&type, u32 clock)
{
return device_add(tag, device_type(type), clock);
}
template <typename Creator, typename... Params>
auto device_replace(const char *tag, Creator &&type, Params &&... args)
{
std::tuple<const char *, device_t *, device_t *> const existing(prepare_replace(tag));
auto device(type.create(*this, std::get<0>(existing), std::get<1>(existing), std::forward<Params>(args)...));
auto &result(*device);
assert(type.type() == typeid(result));
replace_device(std::move(device), *std::get<1>(existing), std::get<2>(existing));
return &result;
}
template <typename Creator, typename... Params>
auto device_replace(const char *tag, Creator &&type, XTAL clock, Params &&... args)
{
clock.validate(std::string("Replacing device ") + tag);
return device_replace(tag, std::forward<Creator>(type), clock.value(), std::forward<Params>(args)...);
}
device_t *device_remove(const char *tag);
device_t *device_find(device_t *owner, const char *tag);
@ -141,7 +170,9 @@ private:
// internal helpers
std::pair<const char *, device_t *> resolve_owner(const char *tag) const;
device_t *add_device(std::unique_ptr<device_t> &&device, device_t *owner);
std::tuple<const char *, device_t *, device_t *> prepare_replace(const char *tag);
device_t &add_device(std::unique_ptr<device_t> &&device, device_t *owner);
device_t &replace_device(std::unique_ptr<device_t> &&device, device_t &owner, device_t *existing);
void remove_references(ATTR_UNUSED device_t &device);
// internal state
@ -164,6 +195,16 @@ inline std::enable_if_t<emu::detail::is_device_interface<typename std::remove_re
{
return &type(mconfig, std::forward<Tag>(tag), std::forward<Params>(args)...).device();
}
template <typename Tag, typename Creator, typename... Params>
inline std::enable_if_t<emu::detail::is_device_implementation<typename std::remove_reference_t<Creator>::exposed_type>::value, typename std::remove_reference_t<Creator>::exposed_type *> device_replace_impl(machine_config &mconfig, Tag &&tag, Creator &&type, Params &&... args)
{
return &type(mconfig.replace(), std::forward<Tag>(tag), std::forward<Params>(args)...);
}
template <typename Tag, typename Creator, typename... Params>
inline std::enable_if_t<emu::detail::is_device_interface<typename std::remove_reference_t<Creator>::exposed_type>::value, device_t *> device_replace_impl(machine_config &mconfig, Tag &&tag, Creator &&type, Params &&... args)
{
return &type(mconfig.replace(), std::forward<Tag>(tag), std::forward<Params>(args)...).device();
}
} } // namespace emu::detail
@ -211,8 +252,8 @@ Ends a machine_config.
// add/remove devices
#define MCFG_DEVICE_ADD(_tag, ...) \
device = emu::detail::device_add_impl(config, _tag, __VA_ARGS__);
#define MCFG_DEVICE_REPLACE(_tag, _type, _clock) \
device = config.device_replace(_tag, _type, _clock);
#define MCFG_DEVICE_REPLACE(_tag, ...) \
device = emu::detail::device_replace_impl(config, _tag, __VA_ARGS__);
#define MCFG_DEVICE_REMOVE(_tag) \
device = config.device_remove(_tag);
#define MCFG_DEVICE_MODIFY(_tag) \

View File

@ -213,7 +213,7 @@ static const discrete_dac_r1_ladder ballbomb_music_dac =
/* Nodes - Sounds */
#define BALLBOMB_MUSIC NODE_11
DISCRETE_SOUND_START(ballbomb)
DISCRETE_SOUND_START(ballbomb_discrete)
DISCRETE_INPUT_DATA (BALLBOMB_MUSIC_DATA)
@ -293,7 +293,7 @@ static const discrete_dac_r1_ladder indianbt_music_dac =
/* Nodes - Sounds */
#define INDIANBT_MUSIC NODE_11
DISCRETE_SOUND_START(indianbt)
DISCRETE_SOUND_START(indianbt_discrete)
DISCRETE_INPUT_DATA (INDIANBT_MUSIC_DATA)
@ -504,7 +504,7 @@ static const discrete_mixer_desc polaris_mixer_vr4_desc =
#define POLARIS_ADJ_VR2 NODE_24
#define POLARIS_ADJ_VR3 NODE_25
DISCRETE_SOUND_START(polaris)
DISCRETE_SOUND_START(polaris_discrete)
/************************************************/
/* Polaris sound system: 8 Sound Sources */
@ -781,7 +781,7 @@ WRITE8_MEMBER(_8080bw_state::polaris_sh_port_3_w)
#define SCHASER_EXP_SND NODE_11
#define SCHASER_MUSIC_SND NODE_12
DISCRETE_SOUND_START(schaser)
DISCRETE_SOUND_START(schaser_discrete)
/************************************************/
/* Input register mapping for schaser */
/************************************************/

View File

@ -71,7 +71,7 @@ static const discrete_555_cc_desc asteroid_thump_555cc =
#define ASTEROID_EXPLODE_SND NODE_26
#define ASTEROID_THRUST_SND NODE_27
static DISCRETE_SOUND_START(asteroid)
static DISCRETE_SOUND_START(asteroid_discrete)
/************************************************/
/* Asteroid Effects Relataive Gain Table */
/* */
@ -217,7 +217,7 @@ static DISCRETE_SOUND_START(asteroid)
DISCRETE_SOUND_END
static DISCRETE_SOUND_START(astdelux)
static DISCRETE_SOUND_START(astdelux_discrete)
/************************************************/
/* Asteroid delux sound hardware is mostly done */
/* in the Pokey chip except for the thrust and */
@ -318,8 +318,7 @@ WRITE8_MEMBER(asteroid_state::asteroid_noise_reset_w)
MACHINE_CONFIG_START(asteroid_state::asteroid_sound)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(asteroid)
MCFG_DEVICE_ADD("discrete", DISCRETE, asteroid_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.4)
MCFG_DEVICE_ADD("audiolatch", LS259, 0) // M10
@ -335,8 +334,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(asteroid_state::astdelux_sound)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(astdelux)
MCFG_DEVICE_ADD("discrete", DISCRETE, astdelux_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_DEVICE_ADD("audiolatch", LS259, 0) // M10

View File

@ -79,7 +79,7 @@ static const discrete_mixer_desc atarifb_mixer =
#define ATARIFB_WHISTLE_SND NODE_12
#define ATARIFB_CROWD_SND NODE_13
DISCRETE_SOUND_START(atarifb)
DISCRETE_SOUND_START(atarifb_discrete)
/************************************************/
/* Input register mapping for atarifb */
/************************************************/
@ -169,7 +169,7 @@ static const discrete_mixer_desc abaseb_mixer =
#define ABASEB_WHISTLE_SND NODE_12
#define ABASEB_CROWD_SND NODE_13
DISCRETE_SOUND_START(abaseb)
DISCRETE_SOUND_START(abaseb_discrete)
/************************************************/
/* Input register mapping for abaseb */
/************************************************/

View File

@ -55,7 +55,7 @@ static const discrete_lfsr_desc avalnche_lfsr={
#define AVALNCHE_AUD2_SND NODE_12
#define AVALNCHE_SOUNDLVL_AUD0_SND NODE_13
static DISCRETE_SOUND_START(avalnche)
static DISCRETE_SOUND_START(avalnche_discrete)
/************************************************/
/* avalnche Effects Relataive Gain Table */
/* */
@ -106,8 +106,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(avalnche_state::avalnche_sound)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(avalnche)
MCFG_DEVICE_ADD("discrete", DISCRETE, avalnche_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_DEVICE_MODIFY("latch")

View File

@ -86,7 +86,7 @@ static const discrete_mixer_desc bsktball_mixer =
#define BSKTBALL_NOTE_SND NODE_12
#define BSKTBALL_CROWD_SND NODE_13
DISCRETE_SOUND_START(bsktball)
DISCRETE_SOUND_START(bsktball_discrete)
/************************************************/
/* Input register mapping for bsktball */
/************************************************/

View File

@ -71,7 +71,7 @@ static discrete_mixer_desc bwidow_mixer = {
1.0 /* gain */
};
static DISCRETE_SOUND_START(bwidow)
static DISCRETE_SOUND_START(bwidow_discrete)
/************************************************/
/* FINAL MIX */
@ -130,7 +130,7 @@ static discrete_mixer_desc gravitar_mixer = {
};
static DISCRETE_SOUND_START(gravitar)
static DISCRETE_SOUND_START(gravitar_discrete)
/************************************************/
/* FINAL MIX */
@ -162,8 +162,7 @@ MACHINE_CONFIG_START(bwidow_state::bwidow_audio)
MCFG_POKEY_OUTPUT_OPAMP(BW_R47, BW_C32, 5.0)
MCFG_SOUND_ROUTE(0, "discrete", 1.0, 1)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(bwidow)
MCFG_DEVICE_ADD("discrete", DISCRETE, bwidow_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
@ -176,5 +175,5 @@ MACHINE_CONFIG_START(bwidow_state::gravitar_audio)
MCFG_POKEY_OUTPUT_OPAMP_LOW_PASS(BW_R51, GRAV_C34, 5.0) /* BW_C31 ignored */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(gravitar)
MCFG_DISCRETE_INTF(gravitar_discrete)
MACHINE_CONFIG_END

View File

@ -277,7 +277,7 @@ DISCRETE_RESET(bzone_custom_filter)
*
*************************************/
static DISCRETE_SOUND_START(bzone)
static DISCRETE_SOUND_START(bzone_discrete)
/************************************************/
/* Input register mapping for Battlezone */
@ -406,8 +406,7 @@ MACHINE_CONFIG_START(bzone_state::bzone_audio)
MCFG_POKEY_OUTPUT_RC(RES_K(10), CAP_U(0.015), 5.0)
MCFG_SOUND_ROUTE(0, "discrete", 1.0, 0)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(bzone)
MCFG_DEVICE_ADD("discrete", DISCRETE, bzone_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -62,7 +62,7 @@ static const discrete_lfsr_desc canyon_lfsr =
#define CANYON_WHISTLESND2 NODE_14
#define CANYON_NOISE NODE_15
DISCRETE_SOUND_START(canyon)
DISCRETE_SOUND_START(canyon_discrete)
/************************************************/
/* Canyon sound system: 5 Sound Sources */
/* Relative Volume */

View File

@ -47,7 +47,7 @@ const char *const robotbwl_sample_names[] =
/* Nodes - Sounds */
#define CIRCUS_MUSIC_SND NODE_10
DISCRETE_SOUND_START(circus)
DISCRETE_SOUND_START(circus_discrete)
/************************************************/
/* Input register mapping for circus */
/************************************************/
@ -94,7 +94,7 @@ static const discrete_555_desc crash_beeper_555a =
#define CRASH_MUSIC_SND NODE_20
#define CRASH_BEEPER_SND NODE_21
DISCRETE_SOUND_START(crash)
DISCRETE_SOUND_START(crash_discrete)
/************************************************/
/* Input register mapping for crash */
/************************************************/
@ -129,7 +129,7 @@ DISCRETE_SOUND_END
/* Nodes - Sounds */
#define ROBOTBWL_MUSIC_SND NODE_10
DISCRETE_SOUND_START(robotbwl)
DISCRETE_SOUND_START(robotbwl_discrete)
/************************************************/
/* Input register mapping for robotbwl */
/************************************************/

View File

@ -28,9 +28,8 @@ static const discrete_mixer_desc desc_cliffhgr_mixer =
8
};
DISCRETE_SOUND_EXTERN(cliffhgr);
DISCRETE_SOUND_START(cliffhgr)
DISCRETE_SOUND_START(cliffhgr_discrete)
DISCRETE_INPUT_LOGIC(CLIFF_ENABLE_SND_1)
DISCRETE_INPUT_LOGIC(CLIFF_ENABLE_SND_2)

View File

@ -7,6 +7,6 @@
#include "sound/discrete.h"
DISCRETE_SOUND_EXTERN( cliffhgr );
DISCRETE_SOUND_EXTERN( cliffhgr_discrete );
#endif // MAME_AUDIO_CLIFFHGR_H

View File

@ -590,7 +590,7 @@ DISCRETE_RESET(copsnrob_zings_555_astable)
************************************************/
static DISCRETE_SOUND_START(copsnrob)
static DISCRETE_SOUND_START(copsnrob_discrete)
/************************************************
* Input register mapping
@ -699,8 +699,7 @@ MACHINE_CONFIG_START(copsnrob_state::copsnrob_audio)
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(copsnrob)
MCFG_DEVICE_ADD("discrete", DISCRETE, copsnrob_discrete)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)

View File

@ -89,7 +89,7 @@ static const discrete_dac_r1_ladder desc_crbaloon_music_dac =
static DISCRETE_SOUND_START(crbaloon)
static DISCRETE_SOUND_START(crbaloon_discrete)
/************************************************
* Input register mapping
@ -158,7 +158,6 @@ MACHINE_CONFIG_START(crbaloon_state::crbaloon_audio)
MCFG_SN76477_ENABLE(0) // enable
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(crbaloon)
MCFG_DEVICE_ADD("discrete", DISCRETE, crbaloon_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -342,7 +342,7 @@ DISCRETE_RESET( dkong_custom_mixer )
#endif
static DISCRETE_SOUND_START(dkong2b)
static DISCRETE_SOUND_START(dkong2b_discrete)
/************************************************/
/* Input register mapping for dkong */
@ -620,7 +620,7 @@ static const discrete_dss_inverter_osc_node::description radarscp_inverter_osc_d
discrete_dss_inverter_osc_node::IS_TYPE3
};
static DISCRETE_SOUND_START(radarscp)
static DISCRETE_SOUND_START(radarscp_discrete)
/************************************************/
/* Input register mapping for radarscp */
@ -853,7 +853,7 @@ static const discrete_lfsr_desc dkongjr_lfsr =
#define DS_SOUND9_EN DS_SOUND9_INV
static DISCRETE_SOUND_START(dkongjr)
static DISCRETE_SOUND_START(dkongjr_discrete)
/************************************************/
/* Input register mapping for dkongjr */
@ -1353,14 +1353,14 @@ MACHINE_CONFIG_START(dkong_state::dkong2b_audio)
MCFG_MCS48_PORT_T1_IN_CB(READLINE("ls259.6h", latch8_device, bit4_q_r))
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DISCRETE_ADD("discrete", 0, dkong2b)
MCFG_DEVICE_ADD("discrete", DISCRETE, dkong2b_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(dkong_state::radarscp_audio)
dkong2b_audio(config);
MCFG_DISCRETE_REPLACE("discrete", 0, radarscp)
MCFG_DEVICE_REPLACE("discrete", DISCRETE, radarscp_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.7)
MACHINE_CONFIG_END
@ -1427,7 +1427,7 @@ MACHINE_CONFIG_START(dkong_state::dkongjr_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DISCRETE_ADD("discrete", 0, dkongjr)
MCFG_DEVICE_ADD("discrete", DISCRETE, dkongjr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -40,7 +40,7 @@ static const discrete_lfsr_desc dragrace_lfsr =
#define DRAGRACE_MOTOR1_SND NODE_18
#define DRAGRACE_MOTOR2_SND NODE_19
DISCRETE_SOUND_START(dragrace)
DISCRETE_SOUND_START(dragrace_discrete)
/************************************************/
/* dragrace Effects Relataive Gain Table */
/* */

View File

@ -180,7 +180,7 @@ static const discrete_mixer_desc firetrk_mixer =
#define FIRETRUCK_BELLSND NODE_17
#define FIRETRUCK_XTNDPLYSND NODE_18
DISCRETE_SOUND_START(firetrk)
DISCRETE_SOUND_START(firetrk_discrete)
/************************************************/
/* Input register mapping for firetruck */
/************************************************/
@ -387,7 +387,7 @@ static const discrete_mixer_desc superbug_mixer =
#define SUPERBUG_SCREECHSND NODE_13
#define SUPERBUG_ASRSND NODE_14
DISCRETE_SOUND_START(superbug)
DISCRETE_SOUND_START(superbug_discrete)
/************************************************/
/* Input register mapping for superbug */
/************************************************/
@ -568,7 +568,7 @@ static const discrete_mixer_desc montecar_mixer =
#define MONTECAR_BANGSND NODE_13
#define MONTECAR_SCREECHSND NODE_14
DISCRETE_SOUND_START(montecar)
DISCRETE_SOUND_START(montecar_discrete)
/************************************************/
/* Input register mapping for montecar */
/************************************************/

View File

@ -127,7 +127,7 @@ static const discrete_mixer_desc bosco_final_mixer =
462000 /* gain */
};
DISCRETE_SOUND_START(bosco)
DISCRETE_SOUND_START(bosco_discrete)
/************************************************
* Input register mapping
@ -307,7 +307,7 @@ static const discrete_mixer_desc galaga_final_mixer =
40800, /* gain */
};
DISCRETE_SOUND_START(galaga)
DISCRETE_SOUND_START(galaga_discrete)
/************************************************
* Input register mapping

View File

@ -244,7 +244,7 @@ static const discrete_op_amp_filt_info galaxian_bandpass_desc =
*************************************/
static DISCRETE_SOUND_START(galaxian)
static DISCRETE_SOUND_START(galaxian_discrete)
/************************************************/
/* Input register mapping for galaxian */
@ -376,8 +376,8 @@ static DISCRETE_SOUND_START(galaxian)
DISCRETE_SOUND_END
static DISCRETE_SOUND_START(mooncrst)
DISCRETE_IMPORT(galaxian)
static DISCRETE_SOUND_START(mooncrst_discrete)
DISCRETE_IMPORT(galaxian_discrete)
/************************************************/
/* Moon Cresta mixing stage */
@ -501,8 +501,7 @@ MACHINE_CONFIG_START(galaxold_state::galaxian_audio)
MCFG_DEVICE_ADD("cust", GALAXIAN, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.4)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE)
MCFG_DISCRETE_INTF(galaxian)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE, galaxian_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MACHINE_CONFIG_END
@ -511,8 +510,7 @@ MACHINE_CONFIG_START(galaxold_state::mooncrst_audio)
MCFG_DEVICE_ADD("cust", GALAXIAN, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.4)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE)
MCFG_DISCRETE_INTF(mooncrst)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE, mooncrst_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MACHINE_CONFIG_END
@ -522,8 +520,7 @@ MACHINE_CONFIG_START(galaxian_state::galaxian_audio)
MCFG_DEVICE_ADD("cust", GALAXIAN, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.4)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE)
MCFG_DISCRETE_INTF(galaxian)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE, galaxian_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MACHINE_CONFIG_END
@ -532,8 +529,6 @@ MACHINE_CONFIG_START(galaxian_state::mooncrst_audio)
MCFG_DEVICE_ADD("cust", GALAXIAN, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.4)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE)
MCFG_DISCRETE_INTF(mooncrst)
MCFG_DEVICE_ADD(GAL_AUDIO, DISCRETE, mooncrst_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MACHINE_CONFIG_END

View File

@ -36,7 +36,7 @@ static const discrete_dac_r1_ladder grchamp_sound_dac2 =
/* Nodes - Sounds */
DISCRETE_SOUND_START(grchamp)
DISCRETE_SOUND_START(grchamp_discrete)
/************************************************/
/* Input register mapping for grand champion */

View File

@ -35,7 +35,7 @@ static const discrete_comp_adder_table desc_hitme_adder =
#define HITME_FINAL_SND NODE_90
DISCRETE_SOUND_START(hitme)
DISCRETE_SOUND_START(hitme_discrete)
/* These are the inputs; PULSE-type inputs are used for oneshot latching signals */
DISCRETE_INPUT_DATA (HITME_DOWNCOUNT_VAL)

View File

@ -321,7 +321,7 @@ static const discrete_mixer_desc m52_sound_c_mix1 =
CAP_U(1), /* cAmp */
0, 1};
static DISCRETE_SOUND_START( m52_sound_c )
static DISCRETE_SOUND_START( m52_sound_c_discrete )
/* Chip AY8910/1 */
DISCRETE_INPUTX_STREAM(NODE_01, 0, 1.0, 0)
@ -502,8 +502,7 @@ MACHINE_CONFIG_START(m52_soundc_audio_device::device_add_mconfig)
MCFG_MSM5205_PRESCALER_SELECTOR(S96_4B) /* default to 4KHz, but can be changed at run time */
MCFG_SOUND_ROUTE(0, "filtermix", 1.0, 2)
MCFG_DEVICE_ADD("filtermix", DISCRETE)
MCFG_DISCRETE_INTF(m52_sound_c)
MCFG_DEVICE_ADD("filtermix", DISCRETE, m52_sound_c_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -41,7 +41,7 @@ static const discrete_lfsr_desc llander_lfsr =
14 /* Output bit */
};
static DISCRETE_SOUND_START(llander)
static DISCRETE_SOUND_START(llander_discrete)
/************************************************/
/* llander Effects Relataive Gain Table */
/* */
@ -101,7 +101,6 @@ WRITE8_MEMBER(asteroid_state::llander_sounds_w)
MACHINE_CONFIG_START(asteroid_state::llander_sound)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(llander)
MCFG_DEVICE_ADD("discrete", DISCRETE, llander_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -136,7 +136,7 @@ static const discrete_mixer_desc m79amb_final_mix =
1 /* gain */
};
DISCRETE_SOUND_START( m79amb )
DISCRETE_SOUND_START( m79amb_discrete )
/************************************************
* Input register mapping
************************************************/

View File

@ -126,7 +126,7 @@ static const discrete_mixer_desc madalien_final_mix =
32768.0/DEFAULT_TTL_V_LOGIC_1 // final gain
};
DISCRETE_SOUND_START( madalien )
DISCRETE_SOUND_START( madalien_discrete )
/************************************************
* Input register mapping
************************************************/

View File

@ -148,7 +148,7 @@
#define LS629_FREQ_R_IN RES_K(90)
static DISCRETE_SOUND_START(mario)
static DISCRETE_SOUND_START(mario_discrete)
/************************************************
* Input register mapping for mario

View File

@ -276,7 +276,7 @@ WRITE8_MEMBER(mw8080bw_state::gunfight_audio_w)
#define TORNBASE_TONE_SND_FILT NODE_11
static DISCRETE_SOUND_START(tornbase)
static DISCRETE_SOUND_START(tornbase_discrete)
/* the 3 enable lines coming out of the 74175 flip-flop at G5 */
DISCRETE_INPUT_LOGIC(TORNBASE_TONE_240_EN) /* pin 2 */
@ -309,8 +309,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::tornbase_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(tornbase)
MCFG_DEVICE_ADD("discrete", DISCRETE, tornbase_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1)
MACHINE_CONFIG_END
@ -462,7 +461,7 @@ static const discrete_op_amp_osc_info maze_op_amp_osc =
};
static DISCRETE_SOUND_START(maze)
static DISCRETE_SOUND_START(maze_discrete)
/************************************************
* Input register mapping
@ -555,8 +554,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::maze_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(maze)
MCFG_DEVICE_ADD("discrete", DISCRETE, maze_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -730,7 +728,7 @@ static const discrete_mixer_desc boothill_r_mixer =
};
static DISCRETE_SOUND_START(boothill)
static DISCRETE_SOUND_START(boothill_discrete)
/************************************************
* Input register mapping
@ -802,8 +800,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::boothill_audio)
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(boothill)
MCFG_DEVICE_ADD("discrete", DISCRETE, boothill_discrete)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
@ -934,7 +931,7 @@ static const discrete_mixer_desc checkmat_mixer =
1 /* gain */
};
static DISCRETE_SOUND_START(checkmat)
static DISCRETE_SOUND_START(checkmat_discrete)
/************************************************
* Input register mapping
@ -1032,8 +1029,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::checkmat_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(checkmat)
MCFG_DEVICE_ADD("discrete", DISCRETE, checkmat_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.4)
MACHINE_CONFIG_END
@ -1173,7 +1169,7 @@ static const discrete_mixer_desc desertgu_mixer =
};
static DISCRETE_SOUND_START(desertgu)
static DISCRETE_SOUND_START(desertgu_discrete)
/************************************************
* Input register mapping
@ -1243,8 +1239,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::desertgu_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(desertgu)
MCFG_DEVICE_ADD("discrete", DISCRETE, desertgu_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.8)
MACHINE_CONFIG_END
@ -1441,7 +1436,7 @@ static const discrete_mixer_desc dplay_mixer =
};
static DISCRETE_SOUND_START(dplay)
static DISCRETE_SOUND_START(dplay_discrete)
/************************************************
* Input register mapping
@ -1508,8 +1503,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::dplay_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(dplay)
MCFG_DEVICE_ADD("discrete", DISCRETE, dplay_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.8)
MACHINE_CONFIG_END
@ -1831,7 +1825,7 @@ static const discrete_mixer_desc clowns_mixer =
};
static DISCRETE_SOUND_START(clowns)
static DISCRETE_SOUND_START(clowns_discrete)
/************************************************
* Input register mapping
@ -1905,8 +1899,7 @@ MACHINE_CONFIG_START(mw8080bw_state::clowns_audio)
MCFG_SAMPLES_NAMES(clowns_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(clowns)
MCFG_DEVICE_ADD("discrete", DISCRETE, clowns_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
@ -2158,7 +2151,7 @@ DISCRETE_FILTER2(NODE_RELATIVE(NODE_37, _num),
DISCRETE_GAIN(NODE_RELATIVE(SPACWALK_SPRINGBOARD_HIT1_SND, _num - 1), \
NODE_RELATIVE(NODE_37, _num), 0.5)
static DISCRETE_SOUND_START(spacwalk)
static DISCRETE_SOUND_START(spacwalk_discrete)
/************************************************
* Input register mapping
@ -2271,8 +2264,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::spacwalk_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(spacwalk)
MCFG_DEVICE_ADD("discrete", DISCRETE, spacwalk_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -2424,7 +2416,7 @@ static const discrete_mixer_desc shuffle_mixer =
};
static DISCRETE_SOUND_START(shuffle)
static DISCRETE_SOUND_START(shuffle_discrete)
DISCRETE_INPUT_LOGIC(SHUFFLE_ROLLING_1_EN)
DISCRETE_INPUT_LOGIC(SHUFFLE_ROLLING_2_EN)
DISCRETE_INPUT_LOGIC(SHUFFLE_ROLLING_3_EN)
@ -2500,8 +2492,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::shuffle_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(shuffle)
MCFG_DEVICE_ADD("discrete", DISCRETE, shuffle_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -2622,7 +2613,7 @@ static const discrete_mixer_desc dogpatch_r_mixer =
};
static DISCRETE_SOUND_START(dogpatch)
static DISCRETE_SOUND_START(dogpatch_discrete)
/************************************************
* Input register mapping
************************************************/
@ -2679,8 +2670,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::dogpatch_audio)
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(dogpatch)
MCFG_DEVICE_ADD("discrete", DISCRETE, dogpatch_discrete)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
@ -2969,7 +2959,7 @@ static const discrete_mixer_desc spcenctr_mixer =
};
static DISCRETE_SOUND_START(spcenctr)
static DISCRETE_SOUND_START(spcenctr_discrete)
/************************************************
* Input register mapping
@ -3201,8 +3191,7 @@ MACHINE_CONFIG_START(mw8080bw_state::spcenctr_audio)
MCFG_SN76477_ENABLE(1) // enable
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(spcenctr)
MCFG_DEVICE_ADD("discrete", DISCRETE, spcenctr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
MACHINE_CONFIG_END
@ -3364,7 +3353,7 @@ static const discrete_op_amp_tvca_info bowler_fowl_tvca =
};
static DISCRETE_SOUND_START(bowler)
static DISCRETE_SOUND_START(bowler_discrete)
/************************************************
* Input register mapping
@ -3401,8 +3390,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::bowler_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(bowler)
MCFG_DEVICE_ADD("discrete", DISCRETE, bowler_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1)
MACHINE_CONFIG_END
@ -4083,7 +4071,7 @@ static const discrete_mixer_desc invaders_mixer =
/* Schematic M051-00739-A005 and M051-00739-B005 */
/* P.C. A084-90700-B000 and A084-90700-C000 */
static DISCRETE_SOUND_START(invaders)
static DISCRETE_SOUND_START(invaders_discrete)
INVADERS_NOISE_GENERATOR
INVADERS_SAUCER_HIT(1)
INVADERS_FLEET(1)
@ -4114,8 +4102,7 @@ MACHINE_CONFIG_START(mw8080bw_state::invaders_audio)
MCFG_SN76477_ENABLE(1) // enable
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(invaders)
MCFG_DEVICE_ADD("discrete", DISCRETE, invaders_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
MACHINE_CONFIG_END
@ -4387,7 +4374,7 @@ static const discrete_mixer_desc blueshrk_mixer =
0, 0, 0, BLUESHRK_C900, 0, 1 /* rI, rF, cF, cAmp, vRef, gain */
};
static DISCRETE_SOUND_START(blueshrk)
static DISCRETE_SOUND_START(blueshrk_discrete)
/************************************************
* Input register mapping
@ -4515,8 +4502,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::blueshrk_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(blueshrk)
MCFG_DEVICE_ADD("discrete", DISCRETE, blueshrk_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
@ -4649,7 +4635,7 @@ static const discrete_mixer_desc invad2ct_mixer =
};
static DISCRETE_SOUND_START(invad2ct)
static DISCRETE_SOUND_START(invad2ct_discrete)
/* sound board 1 */
/* P.C. A082-90700-A000 */
/* Schematic M051-00851-A002 */
@ -4678,8 +4664,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(mw8080bw_state::invad2ct_audio)
MCFG_SPEAKER_STANDARD_STEREO("spk1", "spk2")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(invad2ct)
MCFG_DEVICE_ADD("discrete", DISCRETE, invad2ct_discrete)
MCFG_SOUND_ROUTE(0, "spk1", 0.5)
MCFG_SOUND_ROUTE(1, "spk2", 0.5)

View File

@ -34,7 +34,7 @@ static const discrete_lfsr_desc nitedrvr_lfsr =
#define NITEDRVR_SCREECH1_SND NODE_13
#define NITEDRVR_SCREECH2_SND NODE_14
DISCRETE_SOUND_START(nitedrvr)
DISCRETE_SOUND_START(nitedrvr_discrete)
/************************************************/
/* nitedrvr Effects Relataive Gain Table */
/* */

View File

@ -30,7 +30,7 @@ static const discrete_comp_adder_table desc_##_name##_caps = \
} \
}; \
\
DISCRETE_SOUND_START( _name ) \
DISCRETE_SOUND_START( _name##_discrete ) \
/************************************************ \
* Input register mapping \
************************************************/ \

View File

@ -65,7 +65,7 @@ static const discrete_lfsr_desc orbit_lfsr =
#define ORBIT_ANOTE2_SND NODE_14
#define ORBIT_WARNING_SND NODE_15
DISCRETE_SOUND_START(orbit)
DISCRETE_SOUND_START(orbit_discrete)
/************************************************/
/* orbit Effects Relataive Gain Table */
/* */

View File

@ -341,7 +341,7 @@ static const discrete_mixer_desc phoenix_mixer =
#define PHOENIX_EFFECT_4_SND 0
DISCRETE_SOUND_START(phoenix)
DISCRETE_SOUND_START(phoenix_discrete)
/************************************************/
/* Input register mapping for phoenix */
/************************************************/

View File

@ -57,6 +57,6 @@ private:
DECLARE_DEVICE_TYPE(PHOENIX_SOUND, phoenix_sound_device)
DISCRETE_SOUND_EXTERN(phoenix);
DISCRETE_SOUND_EXTERN(phoenix_discrete);
#endif // MAME_AUDIO_PHOENIX_H

View File

@ -421,7 +421,7 @@ static const discrete_op_amp_filt_info polepos_chanl3_filt =
};
DISCRETE_SOUND_START(polepos)
DISCRETE_SOUND_START(polepos_discrete)
/************************************************
* Input register mapping

View File

@ -52,6 +52,6 @@ private:
DECLARE_DEVICE_TYPE(POLEPOS_SOUND, polepos_sound_device)
DISCRETE_SOUND_EXTERN( polepos );
DISCRETE_SOUND_EXTERN( polepos_discrete );
#endif // MAME_AUDIO_POLEPOS_H

View File

@ -55,7 +55,7 @@ static const discrete_mixer_desc poolshrk_mixer =
#define POOLSHRK_CLICK_SND NODE_12
#define POOLSHRK_SCORE_SND NODE_13
DISCRETE_SOUND_START(poolshrk)
DISCRETE_SOUND_START(poolshrk_discrete)
/************************************************/
/* Input register mapping for poolshrk */
/************************************************/

View File

@ -59,7 +59,7 @@ static const discrete_comp_adder_table qix_attn_table =
{RES_K(22)+250, RES_K(10)+250, RES_K(5.6)+250, RES_K(3.3)+250}
};
static DISCRETE_SOUND_START(qix)
static DISCRETE_SOUND_START(qix_discrete)
/* NODE */
DISCRETE_INPUTX_DATA(QIX_DAC_DATA, 128, -128*128, 128)
DISCRETE_INPUT_DATA (QIX_VOL_DATA)
@ -198,8 +198,7 @@ MACHINE_CONFIG_START(qix_state::qix_audio)
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(qix)
MCFG_DEVICE_ADD("discrete", DISCRETE, qix_discrete)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END

View File

@ -43,7 +43,7 @@ static const discrete_lfsr_desc skydiver_lfsr =
#define SKYDIVER_WHISTLE1_SND NODE_13
#define SKYDIVER_WHISTLE2_SND NODE_14
DISCRETE_SOUND_START(skydiver)
DISCRETE_SOUND_START(skydiver_discrete)
/************************************************/
/* skydiver Effects Relative Gain Table */
/* */

View File

@ -184,7 +184,7 @@ DISCRETE_RESET( skyraid_missle_custom_charge )
DISCRETE_SOUND_START( skyraid )
DISCRETE_SOUND_START( skyraid_discrete )
/************************************************
* Input register mapping
************************************************/

View File

@ -108,7 +108,7 @@ static const discrete_op_amp_filt_info fantasy_filter =
#define FANTASY_NOISE_STREAM_IN NODE_02
#define FANTASY_NOISE_LOGIC NODE_03
DISCRETE_SOUND_START( fantasy )
DISCRETE_SOUND_START( fantasy_discrete )
DISCRETE_INPUT_LOGIC (FANTASY_BOMB_EN)
DISCRETE_INPUT_STREAM(FANTASY_NOISE_STREAM_IN, 0)

View File

@ -77,7 +77,7 @@ private:
DECLARE_DEVICE_TYPE(SNK6502, snk6502_sound_device)
DISCRETE_SOUND_EXTERN( fantasy );
DISCRETE_SOUND_EXTERN( fantasy_discrete );
extern char const *const sasuke_sample_names[];
extern char const *const vanguard_sample_names[];

View File

@ -110,7 +110,7 @@ static const discrete_555_desc spiders_super_web_555a =
#define SPIDERS_SW NODE_13
#define SPIDERS_X NODE_14
static DISCRETE_SOUND_START(spiders)
static DISCRETE_SOUND_START(spiders_discrete)
/************************************************/
/* Input register mapping for spiders */
@ -208,7 +208,6 @@ WRITE8_MEMBER(spiders_state::spiders_audio_ctrl_w)
MACHINE_CONFIG_START(spiders_state::spiders_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(spiders)
MCFG_DEVICE_ADD("discrete", DISCRETE, spiders_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -102,7 +102,7 @@ static const discrete_mixer_desc sprint2_mixer =
#define SPRINT2_1V SPRINT2_HSYNC/2
#define SPRINT2_2V SPRINT2_1V/2
DISCRETE_SOUND_START(sprint2)
DISCRETE_SOUND_START(sprint2_discrete)
/************************************************/
/* Input register mapping for sprint2 */
@ -227,7 +227,7 @@ DISCRETE_SOUND_START(sprint2)
DISCRETE_SOUND_END
DISCRETE_SOUND_START(sprint1)
DISCRETE_SOUND_START(sprint1_discrete)
/************************************************/
/* Input register mapping for sprint1 */
@ -361,7 +361,7 @@ static const discrete_mixer_desc dominos_mixer =
/* Nodes - Adjusters */
#define DOMINOS_R23 NODE_15
DISCRETE_SOUND_START(dominos)
DISCRETE_SOUND_START(dominos_discrete)
/************************************************/
/* Input register mapping for dominos */
/************************************************/

View File

@ -276,7 +276,7 @@ static const discrete_mixer_desc sprint4_mixer =
DISCRETE_SOUND_START(sprint4)
DISCRETE_SOUND_START(sprint4_discrete)
SPRINT4_ATTRACT
SPRINT4_PLAYER_MOTOR(1)
SPRINT4_PLAYER_MOTOR(2)
@ -292,7 +292,7 @@ DISCRETE_SOUND_START(sprint4)
DISCRETE_SOUND_END
DISCRETE_SOUND_START(ultratnk)
DISCRETE_SOUND_START(ultratnk_discrete)
SPRINT4_ATTRACT
SPRINT4_PLAYER_MOTOR(1)
SPRINT4_PLAYER_MOTOR(2)

View File

@ -29,5 +29,5 @@ Atari Sprint 4 + Ultra Tank Audio
/*----------- defined in audio/sprint4.c -----------*/
DISCRETE_SOUND_EXTERN( sprint4 );
DISCRETE_SOUND_EXTERN( ultratnk );
DISCRETE_SOUND_EXTERN( sprint4_discrete );
DISCRETE_SOUND_EXTERN( ultratnk_discrete );

View File

@ -169,7 +169,7 @@ DISCRETE_555_MSTABLE(NODE_RELATIVE(NODE_60, _car - 1), 1, NODE_RELATIVE(NODE_50,
DISCRETE_OP_AMP_FILTER(NODE_RELATIVE(SPRINT8_MOTOR1_SND, _car - 1), 1, NODE_RELATIVE(NODE_60, _car - 1), 0, DISC_OP_AMP_FILTER_IS_BAND_PASS_1M, &sprint8_motor_filter)
DISCRETE_SOUND_START( sprint8 )
DISCRETE_SOUND_START( sprint8_discrete )
/************************************************
* Input register mapping
************************************************/
@ -305,8 +305,7 @@ MACHINE_CONFIG_START(sprint8_state::sprint8_audio)
MCFG_SPEAKER_ADD("speaker_5_6", 0.0, 0.0, -0.5) /* back */
MCFG_SPEAKER_ADD("speaker_4_8", 0.2, 0.0, 1.0) /* right */
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(sprint8)
MCFG_DEVICE_ADD("discrete", DISCRETE, sprint8_discrete)
MCFG_SOUND_ROUTE(0, "speaker_1_2", 1.0)
/* volumes on other channels defaulted to off, */
/* user can turn them up if needed. */

View File

@ -145,7 +145,7 @@ static const discrete_mixer_desc starshp1_final_mix =
};
DISCRETE_SOUND_START( starshp1 )
DISCRETE_SOUND_START( starshp1_discrete )
/************************************************
* Input register mapping
************************************************/

View File

@ -48,7 +48,7 @@ static const discrete_lfsr_desc subs_lfsr =
#define SUBS_CRASH_SND NODE_14
#define SUBS_EXPLODE_SND NODE_15
DISCRETE_SOUND_START(subs)
DISCRETE_SOUND_START(subs_discrete)
/************************************************/
/* subs Effects Relataive Gain Table */
/* */

View File

@ -113,7 +113,7 @@ static const discrete_dac_r1_ladder tank8_dac =
#define TANK8_A2_LINE NODE_26
DISCRETE_SOUND_START(tank8)
DISCRETE_SOUND_START(tank8_discrete)
/************************************************/
/* Tank8 sound system: 10 Sound Sources */
/* Motor 1-8 */

View File

@ -105,7 +105,7 @@ static const discrete_mixer_desc triplhnt_mixer =
#define TRIPLHNT_SCREECH_SND NODE_13
#define POOLSHRK_SCORE_SND NODE_14
DISCRETE_SOUND_START(triplhnt)
DISCRETE_SOUND_START(triplhnt_discrete)
/************************************************/
/* Input register mapping for triplhnt */
/************************************************/

View File

@ -616,7 +616,7 @@ static const discrete_555_desc turbo_alarm_555 =
DEFAULT_555_VALUES,
};
DISCRETE_SOUND_START(turbo)
DISCRETE_SOUND_START(turbo_discrete)
/************************************************/
/* Input register mapping for turbo */
/************************************************/

View File

@ -58,7 +58,7 @@ static const discrete_mixer_desc frogsMixer =
0, RES_K(56), 0, CAP_U(0.1), 0, 10000
};
static DISCRETE_SOUND_START(frogs)
static DISCRETE_SOUND_START(frogs_discrete)
/************************************************
* Input register mapping for frogs
*
@ -117,8 +117,7 @@ MACHINE_CONFIG_START(vicdual_state::frogs_audio)
MCFG_SAMPLES_NAMES(frogs_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(frogs)
MCFG_DEVICE_ADD("discrete", DISCRETE, frogs_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -313,7 +312,7 @@ static const discrete_op_amp_filt_info headon_sallen_key_info =
CAP_N(470), CAP_N(47), 0
};
static DISCRETE_SOUND_START(headon)
static DISCRETE_SOUND_START(headon_discrete)
/************************************************
* Input register mapping for headon
*
@ -447,8 +446,7 @@ DISCRETE_SOUND_END
MACHINE_CONFIG_START(vicdual_state::headon_audio)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(headon)
MCFG_DEVICE_ADD("discrete", DISCRETE, headon_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -507,7 +505,7 @@ WRITE8_MEMBER( vicdual_state::invho2_audio_w )
#define BRDRLINE_WALK_TRG_SND NODE_97
#define BRDRLINE_CRY_TRG_SND NODE_98
DISCRETE_SOUND_START(brdrline)
DISCRETE_SOUND_START(brdrline_discrete)
/************************************************
* Input register mapping
************************************************/

View File

@ -20,7 +20,7 @@
#define VIDEOPIN_BELL_SND NODE_11
#define VIDEOPIN_BONG_SND NODE_12
DISCRETE_SOUND_START(videopin)
DISCRETE_SOUND_START(videopin_discrete)
/************************************************/
/* videopin Effects Relataive Gain Table */
/* */

View File

@ -1584,8 +1584,7 @@ MACHINE_CONFIG_START(_8080bw_state::schaser)
MCFG_SN76477_ENABLE(1) // enable
MCFG_SOUND_ROUTE(0, "discrete", 1.0, 0)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(schaser)
MCFG_DEVICE_ADD("discrete", DISCRETE, schaser_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -1924,8 +1923,7 @@ MACHINE_CONFIG_START(_8080bw_state::lupin3)
MCFG_SAMPLES_NAMES(lupin3_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(indianbt)
MCFG_DEVICE_ADD("discrete", DISCRETE, indianbt_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -2075,8 +2073,7 @@ MACHINE_CONFIG_START(_8080bw_state::polaris)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(polaris)
MCFG_DEVICE_ADD("discrete", DISCRETE, polaris_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -2203,8 +2200,7 @@ MACHINE_CONFIG_START(_8080bw_state::ballbomb)
/* sound hardware */
invaders_samples_audio(config);
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(ballbomb)
MCFG_DEVICE_ADD("discrete", DISCRETE, ballbomb_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -2453,8 +2449,7 @@ MACHINE_CONFIG_START(_8080bw_state::indianbt)
/* sound hardware */
invaders_samples_audio(config);
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(indianbt)
MCFG_DEVICE_ADD("discrete", DISCRETE, indianbt_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END

View File

@ -161,7 +161,7 @@ Notes:
// DISCRETE_SOUND( abc800 )
//-------------------------------------------------
static DISCRETE_SOUND_START( abc800 )
static DISCRETE_SOUND_START( abc800_discrete )
DISCRETE_INPUT_LOGIC(NODE_01)
DISCRETE_OUTPUT(NODE_01, 5000)
DISCRETE_SOUND_END
@ -1162,8 +1162,7 @@ MACHINE_CONFIG_START(abc800c_state::abc800c)
// sound hardware
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE)
MCFG_DISCRETE_INTF(abc800)
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc800_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
// peripheral hardware
@ -1238,8 +1237,7 @@ MACHINE_CONFIG_START(abc800m_state::abc800m)
// sound hardware
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE)
MCFG_DISCRETE_INTF(abc800)
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc800_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
// peripheral hardware
@ -1316,8 +1314,7 @@ MACHINE_CONFIG_START(abc802_state::abc802)
// sound hardware
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE)
MCFG_DISCRETE_INTF(abc800)
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc800_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
// peripheral hardware

View File

@ -62,7 +62,7 @@ static const discrete_dac_r1_ladder alinvade_music_dac =
#define ALINVADE_MUSIC_CLK (75000)
DISCRETE_SOUND_START(alinvade)
DISCRETE_SOUND_START(alinvade_discrete)
DISCRETE_INPUT_DATA (NODE_01)
DISCRETE_NOTE(NODE_20, 1, ALINVADE_MUSIC_CLK, NODE_01, 255, 5, DISC_CLK_IS_FREQ)
@ -222,7 +222,7 @@ MACHINE_CONFIG_START(alinvade_state::alinvade)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DISCRETE_ADD("discrete", 0, alinvade)
MCFG_DEVICE_ADD("discrete", DISCRETE, alinvade_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -579,8 +579,7 @@ MACHINE_CONFIG_START(atarifb_state::atarifb)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(atarifb)
MCFG_DEVICE_ADD("discrete", DISCRETE, atarifb_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.18)
MACHINE_CONFIG_END
@ -606,8 +605,7 @@ MACHINE_CONFIG_START(atarifb_state::abaseb)
MCFG_SCREEN_UPDATE_DRIVER(atarifb_state, screen_update_abaseb)
/* sound hardware */
MCFG_DEVICE_REPLACE("discrete", DISCRETE, 0)
MCFG_DISCRETE_INTF(abaseb)
MCFG_DEVICE_REPLACE("discrete", DISCRETE, abaseb_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.24)
MACHINE_CONFIG_END

View File

@ -387,7 +387,7 @@ TILE_GET_INFO_MEMBER( blockade_state::tile_info )
#define BLOCKADE_NOTE_DATA NODE_01
#define BLOCKADE_NOTE NODE_02
DISCRETE_SOUND_START( blockade )
DISCRETE_SOUND_START( blockade_discrete )
DISCRETE_INPUT_DATA (BLOCKADE_NOTE_DATA)
/************************************************/
@ -489,8 +489,7 @@ MACHINE_CONFIG_START(blockade_state::blockade)
MCFG_SAMPLES_NAMES(blockade_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(blockade)
MCFG_DEVICE_ADD("discrete", DISCRETE, blockade_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -591,7 +591,7 @@ MACHINE_CONFIG_START(bloodbro_state::weststry)
// Bootleg sound hardware is close copy of Seibu, but uses different interrupts
MCFG_OKIM6295_REPLACE("oki", XTAL(20'000'000)/16, PIN7_HIGH) /* 1.25MHz - verified on PCB */
MCFG_DEVICE_REPLACE("oki", OKIM6295, XTAL(20'000'000)/16, okim6295_device::PIN7_HIGH) /* 1.25MHz - verified on PCB */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_DEVICE_REPLACE("ymsnd", YM3812, XTAL(20'000'000)/4) /* ~4.9MHz - see notes at top */

View File

@ -272,8 +272,7 @@ MACHINE_CONFIG_START(bsktball_state::bsktball)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(bsktball)
MCFG_DEVICE_ADD("discrete", DISCRETE, bsktball_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -1188,7 +1188,7 @@ static const discrete_mixer_desc btime_sound_mixer_desc =
static const discrete_op_amp_filt_info btime_opamp_desc =
{BTIME_R51, 0, BTIME_R50, 0, BTIME_R49, CAP_U(0.068), CAP_U(0.068), 0, 0, 5.0, -5.0};
static DISCRETE_SOUND_START( btime_sound )
static DISCRETE_SOUND_START( btime_sound_discrete )
DISCRETE_INPUTX_STREAM(NODE_01, 0, 5.0/32767.0, 0)
DISCRETE_INPUTX_STREAM(NODE_02, 1, 5.0/32767.0, 0)
@ -1326,8 +1326,7 @@ MACHINE_CONFIG_START(btime_state::btime)
MCFG_SOUND_ROUTE(1, "discrete", 1.0, 4)
MCFG_SOUND_ROUTE(2, "discrete", 1.0, 5)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(btime_sound)
MCFG_DEVICE_ADD("discrete", DISCRETE, btime_sound_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -1060,7 +1060,7 @@ static const discrete_op_amp_filt_info as2888_preamp_info = {
};
static DISCRETE_SOUND_START(as2888)
static DISCRETE_SOUND_START(as2888_discrete)
DISCRETE_INPUT_DATA(NODE_08) // Start Sustain Attenuation from 555 circuit
DISCRETE_INPUT_LOGIC(NODE_01) // Binary Counter B output (divide by 1) T2
@ -1138,8 +1138,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(as2888_state::as2888_audio)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(as2888)
MCFG_DEVICE_ADD("discrete", DISCRETE, as2888_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MCFG_DEVICE_MODIFY("pia_u11")

View File

@ -272,8 +272,7 @@ MACHINE_CONFIG_START(canyon_state::canyon)
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(canyon)
MCFG_DEVICE_ADD("discrete", DISCRETE, canyon_discrete)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END

View File

@ -312,8 +312,7 @@ MACHINE_CONFIG_START(circus_state::circus)
MCFG_SAMPLES_NAMES(circus_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(circus)
MCFG_DEVICE_ADD("discrete", DISCRETE, circus_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@ -347,8 +346,7 @@ MACHINE_CONFIG_START(circus_state::robotbwl)
MCFG_SAMPLES_NAMES(robotbwl_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(robotbwl)
MCFG_DEVICE_ADD("discrete", DISCRETE, robotbwl_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -389,8 +387,7 @@ MACHINE_CONFIG_START(circus_state::crash)
MCFG_SAMPLES_NAMES(crash_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(crash)
MCFG_DEVICE_ADD("discrete", DISCRETE, crash_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
@ -423,8 +420,7 @@ MACHINE_CONFIG_START(circus_state::ripcord)
MCFG_SAMPLES_NAMES(ripcord_sample_names)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(circus)
MCFG_DEVICE_ADD("discrete", DISCRETE, circus_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -318,7 +318,7 @@ static const discrete_mixer_desc circusc_mixer_desc =
CAP_U(0.47),
0, 1};
static DISCRETE_SOUND_START( circusc )
static DISCRETE_SOUND_START( circusc_discrete )
DISCRETE_INPUTX_STREAM(NODE_01, 0, 1.0, 0)
DISCRETE_INPUTX_STREAM(NODE_02, 1, 1.0, 0)
@ -395,9 +395,7 @@ MACHINE_CONFIG_START(circusc_state::circusc)
MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0)
MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT)
MCFG_DEVICE_ADD("fltdisc", DISCRETE)
MCFG_DISCRETE_INTF(circusc)
MCFG_DEVICE_ADD("fltdisc", DISCRETE, circusc_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -707,8 +707,7 @@ MACHINE_CONFIG_START(cliffhgr_state::cliffhgr)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(cliffhgr)
MCFG_DEVICE_ADD("discrete", DISCRETE, cliffhgr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MACHINE_CONFIG_END

View File

@ -1007,7 +1007,7 @@ MACHINE_CONFIG_START(cninja_state::cninjabl2)
MCFG_DEVICE_REMOVE("ymsnd")
MCFG_OKIM6295_REPLACE("oki1", XTAL(32'220'000) / 32, PIN7_LOW)
MCFG_DEVICE_REPLACE("oki1", OKIM6295, XTAL(32'220'000) / 32, okim6295_device::PIN7_LOW)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_DEVICE_ADDRESS_MAP(0, cninjabl2_oki_map)
MACHINE_CONFIG_END

View File

@ -797,44 +797,26 @@ MACHINE_CONFIG_START(darius_state::darius)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "msm5205.l", 1.0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "msm5205.r", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.0l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.0r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.1l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.1r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.2l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.2r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.3l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter0.3r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
FILTER_VOLUME(config, "filter0.0l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter0.0r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "filter0.1l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter0.1r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "filter0.2l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter0.2r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "filter0.3l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter0.3r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
MCFG_FILTER_VOLUME_ADD("filter1.0l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter1.0r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter1.1l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter1.1r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter1.2l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter1.2r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter1.3l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("filter1.3r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
FILTER_VOLUME(config, "filter1.0l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter1.0r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "filter1.1l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter1.1r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "filter1.2l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter1.2r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "filter1.3l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "filter1.3r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
MCFG_FILTER_VOLUME_ADD("msm5205.l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("msm5205.r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
FILTER_VOLUME(config, "msm5205.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "msm5205.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
MCFG_DEVICE_ADD("ciu", PC060HA, 0)
MCFG_PC060HA_MASTER_CPU("maincpu")

View File

@ -298,8 +298,7 @@ MACHINE_CONFIG_START(dragrace_state::dragrace)
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(dragrace)
MCFG_DEVICE_ADD("discrete", DISCRETE, dragrace_discrete)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)

View File

@ -693,7 +693,7 @@ MACHINE_CONFIG_START(esd16_state::jumppop)
MCFG_DEVICE_REPLACE("ymsnd", YM3812, XTAL(14'000'000)/4) /* 3.5MHz - Verified */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MCFG_OKIM6295_REPLACE("oki", XTAL(14'000'000)/16, PIN7_HIGH) /* 875kHz - Verified */
MCFG_DEVICE_REPLACE("oki", OKIM6295, XTAL(14'000'000)/16, okim6295_device::PIN7_HIGH) /* 875kHz - Verified */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MACHINE_CONFIG_END

View File

@ -995,7 +995,7 @@ MACHINE_CONFIG_START(expro02_state::supmodel)
comad_noview2(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(supmodel_map)
MCFG_OKIM6295_REPLACE("oki", 1584000, PIN7_HIGH) // clock frequency & pin 7 not verified
MCFG_DEVICE_REPLACE("oki", OKIM6295, 1584000, okim6295_device::PIN7_HIGH) // clock frequency & pin 7 not verified
MCFG_DEVICE_ADDRESS_MAP(0, oki_map)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -1016,7 +1016,7 @@ MACHINE_CONFIG_START(expro02_state::galhustl)
comad_noview2(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(galhustl_map)
MCFG_OKIM6295_REPLACE("oki", 1056000, PIN7_HIGH) // clock frequency & pin 7 not verified
MCFG_DEVICE_REPLACE("oki", OKIM6295, 1056000, okim6295_device::PIN7_HIGH) // clock frequency & pin 7 not verified
MCFG_DEVICE_ADDRESS_MAP(0, oki_map)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
@ -1029,7 +1029,7 @@ MACHINE_CONFIG_START(expro02_state::zipzap)
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(zipzap_map)
MCFG_OKIM6295_REPLACE("oki", 1056000, PIN7_HIGH) // clock frequency & pin 7 not verified
MCFG_DEVICE_REPLACE("oki", OKIM6295, 1056000, okim6295_device::PIN7_HIGH) // clock frequency & pin 7 not verified
MCFG_DEVICE_ADDRESS_MAP(0, oki_map)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)

View File

@ -878,8 +878,7 @@ MACHINE_CONFIG_START(firetrk_state::firetrk)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(firetrk)
MCFG_DEVICE_ADD("discrete", DISCRETE, firetrk_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -903,8 +902,7 @@ MACHINE_CONFIG_START(firetrk_state::superbug)
MCFG_PALETTE_INIT_OWNER(firetrk_state, firetrk)
/* sound hardware */
MCFG_DEVICE_REPLACE("discrete", DISCRETE, 0)
MCFG_DISCRETE_INTF(superbug)
MCFG_DEVICE_REPLACE("discrete", DISCRETE, superbug_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -928,8 +926,7 @@ MACHINE_CONFIG_START(firetrk_state::montecar)
MCFG_PALETTE_INIT_OWNER(firetrk_state,montecar)
/* sound hardware */
MCFG_DEVICE_REPLACE("discrete", DISCRETE, 0)
MCFG_DISCRETE_INTF(montecar)
MCFG_DEVICE_REPLACE("discrete", DISCRETE, montecar_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -1656,8 +1656,7 @@ MACHINE_CONFIG_START(bosco_state::bosco)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90 * 10.0 / 16.0)
/* discrete circuit on the 54XX outputs */
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(bosco)
MCFG_DEVICE_ADD("discrete", DISCRETE, bosco_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
MACHINE_CONFIG_END
@ -1732,8 +1731,7 @@ MACHINE_CONFIG_START(galaga_state::galaga)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90 * 10.0 / 16.0)
/* discrete circuit on the 54XX outputs */
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(galaga)
MCFG_DEVICE_ADD("discrete", DISCRETE, galaga_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
MACHINE_CONFIG_END
@ -1838,8 +1836,7 @@ MACHINE_CONFIG_START(xevious_state::xevious)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90 * 10.0 / 16.0)
/* discrete circuit on the 54XX outputs */
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(galaga)
MCFG_DEVICE_ADD("discrete", DISCRETE, galaga_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
MACHINE_CONFIG_END

View File

@ -5731,7 +5731,7 @@ static const discrete_mixer_desc konami_sound_mixer_desc =
0, /* modelled separately */
0, 1};
static DISCRETE_SOUND_START( konami_sound )
static DISCRETE_SOUND_START( konami_sound_discrete )
DISCRETE_INPUTX_STREAM(NODE_01, 0, 1.0, 0)
DISCRETE_INPUTX_STREAM(NODE_02, 1, 1.0, 0)
@ -5840,8 +5840,7 @@ MACHINE_CONFIG_START(galaxian_state::konami_sound_1x_ay8910)
MCFG_SOUND_ROUTE(1, "konami", 1.0, 1)
MCFG_SOUND_ROUTE(2, "konami", 1.0, 2)
MCFG_DEVICE_ADD("konami", DISCRETE)
MCFG_DISCRETE_INTF(konami_sound)
MCFG_DEVICE_ADD("konami", DISCRETE, konami_sound_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.75)
MACHINE_CONFIG_END
@ -5872,8 +5871,7 @@ MACHINE_CONFIG_START(galaxian_state::konami_sound_2x_ay8910)
MCFG_SOUND_ROUTE(1, "konami", 1.0, 4)
MCFG_SOUND_ROUTE(2, "konami", 1.0, 5)
MCFG_DEVICE_ADD("konami", DISCRETE)
MCFG_DISCRETE_INTF(konami_sound)
MCFG_DEVICE_ADD("konami", DISCRETE, konami_sound_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5)
MACHINE_CONFIG_END

View File

@ -4187,7 +4187,7 @@ static const discrete_dac_r1_ladder dac_goldnpkr_ladder =
// 0, /* resistor tied to ground */
};
static DISCRETE_SOUND_START( goldnpkr )
static DISCRETE_SOUND_START( goldnpkr_discrete )
/*
- bits -
76543210
@ -4250,7 +4250,7 @@ static const discrete_dac_r1_ladder dac_pottnpkr_ladder =
0 /* no filtering cap tied to ground */
};
static DISCRETE_SOUND_START( pottnpkr )
static DISCRETE_SOUND_START( pottnpkr_discrete )
/*
- bits -
76543210
@ -4334,8 +4334,7 @@ MACHINE_CONFIG_START(goldnpkr_state::goldnpkr)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4353,8 +4352,7 @@ MACHINE_CONFIG_START(goldnpkr_state::pottnpkr)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(pottnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, pottnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4376,8 +4374,7 @@ MACHINE_CONFIG_START(goldnpkr_state::witchcrd)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4425,8 +4422,7 @@ MACHINE_CONFIG_START(goldnpkr_state::wildcard)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4450,8 +4446,7 @@ MACHINE_CONFIG_START(goldnpkr_state::wcrdxtnd)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4503,8 +4498,7 @@ MACHINE_CONFIG_START(goldnpkr_state::genie)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4526,8 +4520,7 @@ MACHINE_CONFIG_START(goldnpkr_state::geniea)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4544,8 +4537,7 @@ MACHINE_CONFIG_START(goldnpkr_state::mondial)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4570,8 +4562,7 @@ MACHINE_CONFIG_START(goldnpkr_state::bchancep)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(pottnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, pottnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -4746,8 +4737,7 @@ MACHINE_CONFIG_START(blitz_state::megadpkr)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(goldnpkr)
MCFG_DEVICE_ADD("discrete", DISCRETE, goldnpkr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -789,8 +789,7 @@ MACHINE_CONFIG_START(grchamp_state::grchamp)
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(*this, grchamp_state, portB_2_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.2)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(grchamp)
MCFG_DEVICE_ADD("discrete", DISCRETE, grchamp_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -386,7 +386,7 @@ static const discrete_mixer_desc konami_left_mixer_desc =
CAP_U(1), /* DC - Removal, not in schematics */
0, 1};
static DISCRETE_SOUND_START( gyruss_sound )
static DISCRETE_SOUND_START( gyruss_sound_discrete )
/* Chip 1 right */
DISCRETE_INPUTX_STREAM(NODE_01, 0, 1.0, 0)
@ -557,8 +557,7 @@ MACHINE_CONFIG_START(gyruss_state::gyruss)
MCFG_SOUND_ROUTE(1, "discrete", 1.0, 13)
MCFG_SOUND_ROUTE(2, "discrete", 1.0, 14)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(gyruss_sound)
MCFG_DEVICE_ADD("discrete", DISCRETE, gyruss_sound_discrete)
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
MACHINE_CONFIG_END

View File

@ -336,8 +336,7 @@ MACHINE_CONFIG_START(hitme_state::hitme)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(hitme)
MCFG_DEVICE_ADD("discrete", DISCRETE, hitme_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -319,7 +319,7 @@ static const discrete_mixer_desc ironhors_mixer_desc_final =
0,
0, 1};
static DISCRETE_SOUND_START( ironhors )
static DISCRETE_SOUND_START( ironhors_discrete )
DISCRETE_INPUTX_STREAM(NODE_01, 0, 5.0, 0)
DISCRETE_INPUTX_STREAM(NODE_02, 1, 5.0, 0)
@ -418,8 +418,7 @@ MACHINE_CONFIG_START(ironhors_state::ironhors)
MCFG_SOUND_ROUTE(2, "disc_ih", 1.0, 2)
MCFG_SOUND_ROUTE(3, "disc_ih", 1.0, 3)
MCFG_DEVICE_ADD("disc_ih", DISCRETE)
MCFG_DISCRETE_INTF(ironhors)
MCFG_DEVICE_ADD("disc_ih", DISCRETE, ironhors_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -242,7 +242,7 @@ MACHINE_CONFIG_START(itgamble_state::mnumber)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_CLOCK(MNUMBER_MAIN_CLOCK/2) /* probably the wrong CPU */
MCFG_OKIM6295_REPLACE("oki", MNUMBER_SND_CLOCK/16, PIN7_HIGH) /* clock frequency & pin 7 not verified */
MCFG_DEVICE_REPLACE("oki", OKIM6295, MNUMBER_SND_CLOCK/16, okim6295_device::PIN7_HIGH) /* clock frequency & pin 7 not verified */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -254,7 +254,7 @@ static MACHINE_CONFIG_START( ejollyx5 )
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_CLOCK(EJOLLYX5_MAIN_CLOCK/2) /* up to 10MHz.*/
MCFG_OKIM6295_REPLACE("oki", MNUMBER_SND_CLOCK/16, PIN7_HIGH) /* clock frequency & pin 7 not verified */
MCFG_DEVICE_REPLACE("oki", OKIM6295, MNUMBER_SND_CLOCK/16, okim6295_device::PIN7_HIGH) /* clock frequency & pin 7 not verified */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
#endif

View File

@ -519,18 +519,12 @@ MACHINE_CONFIG_START(lockon_state::lockon)
MCFG_SOUND_ROUTE(3, "f2203.3l", 1.0)
MCFG_SOUND_ROUTE(3, "f2203.3r", 1.0)
MCFG_FILTER_VOLUME_ADD("f2203.1l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("f2203.1r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("f2203.2l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("f2203.2r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("f2203.3l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("f2203.3r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
FILTER_VOLUME(config, "f2203.1l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "f2203.1r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "f2203.2l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "f2203.2r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "f2203.3l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "f2203.3r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
MACHINE_CONFIG_END

View File

@ -212,9 +212,7 @@ MACHINE_CONFIG_START(m79amb_state::m79amb)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(m79amb)
MCFG_DEVICE_ADD("discrete", DISCRETE, m79amb_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -177,9 +177,7 @@ MACHINE_CONFIG_START(madalien_state::madalien)
MCFG_SOUND_ROUTE(1, "discrete", 1.0, 1)
MCFG_SOUND_ROUTE(2, "discrete", 1.0, 2)
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(madalien)
MCFG_DEVICE_ADD("discrete", DISCRETE, madalien_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -1833,11 +1833,11 @@ MACHINE_CONFIG_START(megasys1_state::system_B_hayaosi1)
/* basic machine hardware */
MCFG_OKIM6295_REPLACE("oki1", 2000000, okim6295_device::PIN7_HIGH) /* correct speed, but unknown OSC + divider combo */
MCFG_DEVICE_REPLACE("oki1", OKIM6295, 2000000, okim6295_device::PIN7_HIGH) /* correct speed, but unknown OSC + divider combo */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30)
MCFG_OKIM6295_REPLACE("oki2", 2000000, okim6295_device::PIN7_HIGH) /* correct speed, but unknown OSC + divider combo */
MCFG_DEVICE_REPLACE("oki2", OKIM6295, 2000000, okim6295_device::PIN7_HIGH) /* correct speed, but unknown OSC + divider combo */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30)
MACHINE_CONFIG_END

View File

@ -841,14 +841,10 @@ MACHINE_CONFIG_START(ninjaw_state::ninjaw)
MCFG_SOUND_ROUTE(2, "2610.2.l", 1.0)
MCFG_SOUND_ROUTE(2, "2610.2.r", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.1.l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.1.r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.2.l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.2.r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
// MCFG_DEVICE_ADD("subwoofer", SUBWOOFER, 0)
@ -963,14 +959,10 @@ MACHINE_CONFIG_START(ninjaw_state::darius2)
MCFG_SOUND_ROUTE(2, "2610.2.l", 1.0)
MCFG_SOUND_ROUTE(2, "2610.2.r", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.1.l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.1.r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.2.l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.2.r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
// MCFG_DEVICE_ADD("subwoofer", SUBWOOFER, 0)

View File

@ -168,8 +168,7 @@ MACHINE_CONFIG_START(nitedrvr_state::nitedrvr)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(nitedrvr)
MCFG_DEVICE_ADD("discrete", DISCRETE, nitedrvr_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -1286,8 +1286,7 @@ MACHINE_CONFIG_START(norautp_state::noraut_base)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(norautp)
MCFG_DEVICE_ADD("discrete", DISCRETE, norautp_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -1310,7 +1309,7 @@ MACHINE_CONFIG_START(norautp_state::norautpl)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(kimble)
MCFG_DISCRETE_INTF(kimble_discrete)
MACHINE_CONFIG_END
@ -1366,7 +1365,7 @@ MACHINE_CONFIG_START(norautp_state::kimble)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(kimble)
MCFG_DISCRETE_INTF(kimble_discrete)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(norautp_state::newhilop)
@ -1392,7 +1391,7 @@ MACHINE_CONFIG_START(norautp_state::dphl)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(dphl)
MCFG_DISCRETE_INTF(dphl_discrete)
MACHINE_CONFIG_END
@ -1406,7 +1405,7 @@ MACHINE_CONFIG_START(norautp_state::dphla)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(dphl)
MCFG_DISCRETE_INTF(dphl_discrete)
MACHINE_CONFIG_END
@ -1420,7 +1419,7 @@ MACHINE_CONFIG_START(norautp_state::kimbldhl)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(kimble)
MCFG_DISCRETE_INTF(kimble_discrete)
MACHINE_CONFIG_END
@ -1434,7 +1433,7 @@ MACHINE_CONFIG_START(norautp_state::dphltest)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(dphl)
MCFG_DISCRETE_INTF(dphl_discrete)
MACHINE_CONFIG_END
@ -1448,7 +1447,7 @@ MACHINE_CONFIG_START(norautp_state::drhl)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(dphl)
MCFG_DISCRETE_INTF(dphl_discrete)
MACHINE_CONFIG_END
@ -1462,7 +1461,7 @@ MACHINE_CONFIG_START(norautp_state::ssjkrpkr)
/* sound hardware */
MCFG_DEVICE_MODIFY("discrete")
MCFG_DISCRETE_INTF(dphl)
MCFG_DISCRETE_INTF(dphl_discrete)
MACHINE_CONFIG_END

View File

@ -302,8 +302,7 @@ MACHINE_CONFIG_START(orbit_state::orbit)
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(orbit)
MCFG_DEVICE_ADD("discrete", DISCRETE, orbit_discrete)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END

View File

@ -666,18 +666,12 @@ MACHINE_CONFIG_START(othunder_state::othunder)
MCFG_SOUND_ROUTE(2, "2610.2l", 1.0)
MCFG_SOUND_ROUTE(2, "2610.2r", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.0l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.0r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.1l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.1r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.2l", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MCFG_FILTER_VOLUME_ADD("2610.2r", 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
FILTER_VOLUME(config, "2610.0l").add_route(ALL_OUTPUTS, "speaker", 1.0);
FILTER_VOLUME(config, "2610.0r").add_route(ALL_OUTPUTS, "speaker", 1.0);
FILTER_VOLUME(config, "2610.1l").add_route(ALL_OUTPUTS, "speaker", 1.0);
FILTER_VOLUME(config, "2610.1r").add_route(ALL_OUTPUTS, "speaker", 1.0);
FILTER_VOLUME(config, "2610.2l").add_route(ALL_OUTPUTS, "speaker", 1.0);
FILTER_VOLUME(config, "2610.2r").add_route(ALL_OUTPUTS, "speaker", 1.0);
MCFG_DEVICE_ADD("tc0140syt", TC0140SYT, 0)
MCFG_TC0140SYT_MASTER_CPU("maincpu")

View File

@ -472,8 +472,7 @@ MACHINE_CONFIG_START(phoenix_state::phoenix)
MCFG_DEVICE_ADD("cust", PHOENIX_SOUND)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.4)
MCFG_DEVICE_ADD("discrete", DISCRETE, 120000)
MCFG_DISCRETE_INTF(phoenix)
MCFG_DEVICE_ADD("discrete", DISCRETE, 120000, phoenix_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.6)
MACHINE_CONFIG_END

View File

@ -932,8 +932,7 @@ MACHINE_CONFIG_START(polepos_state::polepos)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.80)
/* discrete circuit on the 54XX outputs */
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(polepos)
MCFG_DEVICE_ADD("discrete", DISCRETE, polepos_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)

View File

@ -240,8 +240,7 @@ MACHINE_CONFIG_START(poolshrk_state::poolshrk)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_DEVICE_ADD("discrete", DISCRETE)
MCFG_DISCRETE_INTF(poolshrk)
MCFG_DEVICE_ADD("discrete", DISCRETE, poolshrk_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

Some files were not shown because too many files have changed in this diff Show More