ay8910_device and extended family: converted to devcb2 (nw)

This is easily the commit I ever did that touches the most drivers. I payed extra attention while doing it, stared at the diff really hard to find any errors and did some testing. Obviously I can't test every single game / system, so please report any regression you might find.
This commit is contained in:
Ivan Vangelista 2014-05-06 17:37:43 +00:00
parent c407543c9f
commit da1252459f
339 changed files with 1076 additions and 5152 deletions

View File

@ -29,13 +29,6 @@
const device_type A2BUS_ARCADEBOARD = &device_creator<a2bus_arcboard_device>;
static const ay8910_interface arcadeboard_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL
};
MACHINE_CONFIG_FRAGMENT( arcadeboard )
MCFG_DEVICE_ADD( TMS_TAG, TMS9918A, XTAL_10_738635MHz / 2 )
MCFG_TMS9928A_VRAM_SIZE(0x4000) // 16k of VRAM
@ -45,7 +38,6 @@ MACHINE_CONFIG_FRAGMENT( arcadeboard )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD(AY_TAG, AY8910, 1022727)
MCFG_SOUND_CONFIG(arcadeboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -31,13 +31,6 @@ const device_type A2BUS_MOCKINGBOARD = &device_creator<a2bus_mockingboard_device
const device_type A2BUS_PHASOR = &device_creator<a2bus_phasor_device>;
const device_type A2BUS_ECHOPLUS = &device_creator<a2bus_echoplus_device>;
static const ay8910_interface mockingboard_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL
};
MACHINE_CONFIG_FRAGMENT( mockingboard )
MCFG_DEVICE_ADD(VIA1_TAG, VIA6522, 1022727)
MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(a2bus_ayboard_device, via1_out_a))
@ -51,10 +44,8 @@ MACHINE_CONFIG_FRAGMENT( mockingboard )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD(AY1_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_SOUND_ADD(AY2_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
@ -72,16 +63,12 @@ MACHINE_CONFIG_FRAGMENT( phasor )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SPEAKER_STANDARD_STEREO("lspeaker2", "rspeaker2")
MCFG_SOUND_ADD(AY1_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_SOUND_ADD(AY2_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker2", 1.0)
MCFG_SOUND_ADD(AY3_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_SOUND_ADD(AY4_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker2", 1.0)
MACHINE_CONFIG_END
@ -98,10 +85,8 @@ MACHINE_CONFIG_FRAGMENT( echoplus )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD(AY1_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_SOUND_ADD(AY2_TAG, AY8913, 1022727)
MCFG_SOUND_CONFIG(mockingboard_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_SPEAKER_STANDARD_MONO("echosp")

View File

@ -596,17 +596,6 @@ WRITE8_MEMBER(nes_sunsoft_5_device::write_h)
}
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
//-------------------------------------------------
// MACHINE_DRIVER( sun_5b )
//-------------------------------------------------
@ -626,7 +615,6 @@ static MACHINE_CONFIG_FRAGMENT( sun_5b )
MCFG_SPEAKER_STANDARD_MONO("addon")
MCFG_SOUND_ADD("ay", YM2149, SUN5_NTSC_CLOCK/2) // divide by 2 for the internal divider
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "addon", 0.50)
MACHINE_CONFIG_END

View File

@ -188,28 +188,6 @@ const device_type YM2203 = &device_creator<ym2203_device>;
ym2203_device::ym2203_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: ay8910_device(mconfig, YM2203, "YM2203", tag, owner, clock, "ym2203", __FILE__),
m_irq_handler(*this),
m_ay8910_config(NULL)
m_irq_handler(*this)
{
}
//-------------------------------------------------
// device_config_complete - perform any
// operations now that the configuration is
// complete
//-------------------------------------------------
void ym2203_device::device_config_complete()
{
static const ay8910_interface default_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
if (m_ay8910_config != NULL)
device_t::static_set_static_config(*this, m_ay8910_config);
else
device_t::static_set_static_config(*this, &(default_ay8910_config));
}

View File

@ -11,9 +11,6 @@ void ym2203_update_request(void *param);
#define MCFG_YM2203_IRQ_HANDLER(_devcb) \
devcb = &ym2203_device::set_irq_handler(*device, DEVCB2_##_devcb);
#define MCFG_YM2203_AY8910_INTF(_ay8910_config) \
ym2203_device::set_ay8910_config(*device, _ay8910_config);
class ym2203_device : public ay8910_device
{
public:
@ -21,7 +18,6 @@ public:
// static configuration helpers
template<class _Object> static devcb2_base &set_irq_handler(device_t &device, _Object object) { return downcast<ym2203_device &>(device).m_irq_handler.set_callback(object); }
static void set_ay8910_config(device_t &device, const ay8910_interface *ay8910_config) { downcast<ym2203_device &>(device).m_ay8910_config = ay8910_config; }
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
@ -34,9 +30,9 @@ public:
void _IRQHandler(int irq);
void _timer_handler(int c,int count,int clock);
void _ym2203_update_request();
protected:
// device-level overrides
virtual void device_config_complete();
virtual void device_start();
virtual void device_post_load();
virtual void device_stop();
@ -50,7 +46,6 @@ private:
emu_timer * m_timer[2];
void * m_chip;
devcb2_write_line m_irq_handler;
const ay8910_interface *m_ay8910_config;
};
extern const device_type YM2203;

View File

@ -187,31 +187,10 @@ const device_type YM2608 = &device_creator<ym2608_device>;
ym2608_device::ym2608_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: ay8910_device(mconfig, YM2608, "YM2608", tag, owner, clock, "ym2608", __FILE__),
m_irq_handler(*this),
m_ay8910_config(NULL)
m_irq_handler(*this)
{
}
//-------------------------------------------------
// device_config_complete - perform any
// operations now that the configuration is
// complete
//-------------------------------------------------
void ym2608_device::device_config_complete()
{
static const ay8910_interface default_ay8910_config =
{
AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
if (m_ay8910_config != NULL)
device_t::static_set_static_config(*this, m_ay8910_config);
else
device_t::static_set_static_config(*this, &(default_ay8910_config));
}
ROM_START( ym2608 )
ROM_REGION( 0x2000, "ym2608", 0 )
/*

View File

@ -11,9 +11,6 @@ void ym2608_update_request(void *param);
#define MCFG_YM2608_IRQ_HANDLER(_devcb) \
devcb = &ym2608_device::set_irq_handler(*device, DEVCB2_##_devcb);
#define MCFG_YM2608_AY8910_INTF(_ay8910_config) \
ym2608_device::set_ay8910_config(*device, _ay8910_config);
class ym2608_device : public ay8910_device
{
public:
@ -21,7 +18,6 @@ public:
// static configuration helpers
template<class _Object> static devcb2_base &set_irq_handler(device_t &device, _Object object) { return downcast<ym2608_device &>(device).m_irq_handler.set_callback(object); }
static void set_ay8910_config(device_t &device, const ay8910_interface *ay8910_config) { downcast<ym2608_device &>(device).m_ay8910_config = ay8910_config; }
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
@ -33,7 +29,6 @@ public:
protected:
// device-level overrides
virtual const rom_entry *device_rom_region() const;
virtual void device_config_complete();
virtual void device_start();
virtual void device_post_load();
virtual void device_stop();
@ -48,7 +43,6 @@ private:
emu_timer * m_timer[2];
void * m_chip;
devcb2_write_line m_irq_handler;
const ay8910_interface *m_ay8910_config;
};
extern const device_type YM2608;

View File

@ -216,23 +216,6 @@ ym2610_device::ym2610_device(const machine_config &mconfig, device_type type, co
{
}
//-------------------------------------------------
// device_config_complete - perform any
// operations now that the configuration is
// complete
//-------------------------------------------------
void ym2610_device::device_config_complete()
{
static const ay8910_interface generic_ay8910 =
{
AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
device_t::static_set_static_config(*this, &(generic_ay8910));
}
const device_type YM2610B = &device_creator<ym2610b_device>;
ym2610b_device::ym2610b_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)

View File

@ -29,7 +29,6 @@ public:
protected:
// device-level overrides
virtual void device_config_complete();
virtual void device_start();
virtual void device_post_load();
virtual void device_stop();

View File

@ -453,14 +453,14 @@ void ay8910_device::ay8910_write_reg(int r, int v)
((m_last_enable & 0x40) != (m_regs[AY_ENABLE] & 0x40)))
{
/* write out 0xff if port set to input */
m_portAwrite(0, (m_regs[AY_ENABLE] & 0x40) ? m_regs[AY_PORTA] : 0xff);
m_port_a_write_cb((offs_t)0, (m_regs[AY_ENABLE] & 0x40) ? m_regs[AY_PORTA] : 0xff);
}
if ((m_last_enable == -1) ||
((m_last_enable & 0x80) != (m_regs[AY_ENABLE] & 0x80)))
{
/* write out 0xff if port set to input */
m_portBwrite(0, (m_regs[AY_ENABLE] & 0x80) ? m_regs[AY_PORTB] : 0xff);
m_port_b_write_cb((offs_t)0, (m_regs[AY_ENABLE] & 0x80) ? m_regs[AY_PORTB] : 0xff);
}
m_last_enable = m_regs[AY_ENABLE];
break;
@ -488,8 +488,8 @@ void ay8910_device::ay8910_write_reg(int r, int v)
case AY_PORTA:
if (m_regs[AY_ENABLE] & 0x40)
{
if (!m_portAwrite.isnull())
m_portAwrite(0, m_regs[AY_PORTA]);
if (!m_port_a_write_cb.isnull())
m_port_a_write_cb((offs_t)0, m_regs[AY_PORTA]);
else
logerror("warning - write %02x to 8910 '%s' Port A\n",m_regs[AY_PORTA],tag());
}
@ -501,8 +501,8 @@ void ay8910_device::ay8910_write_reg(int r, int v)
case AY_PORTB:
if (m_regs[AY_ENABLE] & 0x80)
{
if (!m_portBwrite.isnull())
m_portBwrite(0, m_regs[AY_PORTB]);
if (!m_port_b_write_cb.isnull())
m_port_b_write_cb((offs_t)0, m_regs[AY_PORTB]);
else
logerror("warning - write %02x to 8910 '%s' Port B\n",m_regs[AY_PORTB],tag());
}
@ -656,13 +656,13 @@ void ay8910_device::build_mixer_table()
int normalize = 0;
int chan;
if ((m_intf->flags & AY8910_LEGACY_OUTPUT) != 0)
if ((m_flags & AY8910_LEGACY_OUTPUT) != 0)
{
logerror("AY-3-8910/YM2149 using legacy output levels!\n");
normalize = 1;
}
if ((m_intf->flags & AY8910_RESISTOR_OUTPUT) != 0)
if ((m_flags & AY8910_RESISTOR_OUTPUT) != 0)
{
for (chan=0; chan < AY8910_NUM_CHANNELS; chan++)
{
@ -674,15 +674,15 @@ void ay8910_device::build_mixer_table()
{
for (chan=0; chan < AY8910_NUM_CHANNELS; chan++)
{
build_single_table(m_intf->res_load[chan], m_par, normalize, m_vol_table[chan], m_zero_is_off);
build_single_table(m_intf->res_load[chan], m_par_env, normalize, m_env_table[chan], 0);
build_single_table(m_res_load[chan], m_par, normalize, m_vol_table[chan], m_zero_is_off);
build_single_table(m_res_load[chan], m_par_env, normalize, m_env_table[chan], 0);
}
}
/*
* The previous implementation added all three channels up instead of averaging them.
* The factor of 3 will force the same levels if normalizing is used.
*/
build_3D_table(m_intf->res_load[0], m_par, m_par_env, normalize, 3, m_zero_is_off, m_vol3d_table);
build_3D_table(m_res_load[0], m_par, m_par_env, normalize, 3, m_zero_is_off, m_vol3d_table);
}
void ay8910_device::ay8910_statesave()
@ -717,24 +717,12 @@ void ay8910_device::device_start()
device_type chip_type = type();
int master_clock = clock();
m_intf = (const ay8910_interface *) static_config();
m_port_a_read_cb.resolve_safe(0);
m_port_b_read_cb.resolve_safe(0);
m_port_a_write_cb.resolve_safe();
m_port_b_write_cb.resolve_safe();
static const ay8910_interface default_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
if (m_intf==NULL)
m_intf = &default_ay8910_config;
m_portAread.resolve(m_intf->portAread, *this);
m_portBread.resolve(m_intf->portBread, *this);
m_portAwrite.resolve(m_intf->portAwrite, *this);
m_portBwrite.resolve(m_intf->portBwrite, *this);
if ((m_intf->flags & AY8910_SINGLE_OUTPUT) != 0)
if ((m_flags & AY8910_SINGLE_OUTPUT) != 0)
{
logerror("AY-3-8910/YM2149 using single output!\n");
m_streams = 1;
@ -760,7 +748,7 @@ void ay8910_device::device_start()
m_env_step_mask = 0x1F;
/* YM2149 master clock divider? */
if (m_intf->flags & YM2149_PIN26_LOW)
if (m_flags & YM2149_PIN26_LOW)
master_clock /= 2;
}
@ -867,16 +855,16 @@ int ay8910_device::ay8910_read_ym()
even if the port is set as output, we still need to return the external
data. Some games, like kidniki, need this to work.
*/
if (!m_portAread.isnull())
m_regs[AY_PORTA] = m_portAread(0);
if (!m_port_a_read_cb.isnull())
m_regs[AY_PORTA] = m_port_a_read_cb(0);
else
logerror("%s: warning - read 8910 '%s' Port A\n",machine().describe_context(),tag());
break;
case AY_PORTB:
if ((m_regs[AY_ENABLE] & 0x80) != 0)
logerror("warning: read from 8910 '%s' Port B set as output\n",tag());
if (!m_portBread.isnull())
m_regs[AY_PORTB] = m_portBread(0);
if (!m_port_b_read_cb.isnull())
m_regs[AY_PORTB] = m_port_b_read_cb(0);
else
logerror("%s: warning - read 8910 '%s' Port B\n",machine().describe_context(),tag());
break;
@ -985,7 +973,6 @@ ay8910_device::ay8910_device(const machine_config &mconfig, const char *tag, dev
m_streams(0),
m_ready(0),
m_channel(NULL),
m_intf(NULL),
m_register_latch(0),
m_last_enable(0),
m_prescale_noise(0),
@ -1002,7 +989,12 @@ ay8910_device::ay8910_device(const machine_config &mconfig, const char *tag, dev
m_step(0),
m_zero_is_off(0),
m_par(NULL),
m_par_env(NULL)
m_par_env(NULL),
m_flags(AY8910_LEGACY_OUTPUT),
m_port_a_read_cb(*this),
m_port_b_read_cb(*this),
m_port_a_write_cb(*this),
m_port_b_write_cb(*this)
{
memset(&m_regs,0,sizeof(m_regs));
memset(&m_count,0,sizeof(m_count));
@ -1011,6 +1003,7 @@ ay8910_device::ay8910_device(const machine_config &mconfig, const char *tag, dev
memset(&m_vol_table,0,sizeof(m_vol_table));
memset(&m_env_table,0,sizeof(m_env_table));
memset(&m_vol3d_table,0,sizeof(m_vol3d_table));
m_res_load[0] = m_res_load[1] = m_res_load[2] = 1000; //Default values for resistor loads
}
ay8910_device::ay8910_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source)
@ -1019,7 +1012,6 @@ ay8910_device::ay8910_device(const machine_config &mconfig, device_type type, co
m_streams(0),
m_ready(0),
m_channel(NULL),
m_intf(NULL),
m_register_latch(0),
m_last_enable(0),
m_prescale_noise(0),
@ -1036,7 +1028,12 @@ ay8910_device::ay8910_device(const machine_config &mconfig, device_type type, co
m_step(0),
m_zero_is_off(0),
m_par(NULL),
m_par_env(NULL)
m_par_env(NULL),
m_flags(AY8910_LEGACY_OUTPUT),
m_port_a_read_cb(*this),
m_port_b_read_cb(*this),
m_port_a_write_cb(*this),
m_port_b_write_cb(*this)
{
memset(&m_regs,0,sizeof(m_regs));
memset(&m_count,0,sizeof(m_count));
@ -1045,19 +1042,9 @@ ay8910_device::ay8910_device(const machine_config &mconfig, device_type type, co
memset(&m_vol_table,0,sizeof(m_vol_table));
memset(&m_env_table,0,sizeof(m_env_table));
memset(&m_vol3d_table,0,sizeof(m_vol3d_table));
m_res_load[0] = m_res_load[1] = m_res_load[2] = 1000; //Default values for resistor loads
}
//-------------------------------------------------
// device_config_complete - perform any
// operations now that the configuration is
// complete
//-------------------------------------------------
void ay8910_device::device_config_complete()
{
}
const device_type AY8912 = &device_creator<ay8912_device>;
ay8912_device::ay8912_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)

View File

@ -25,13 +25,6 @@ YMZ294: 0 I/O port
#define AY8910_INTERNAL_RESISTANCE (356)
#define YM2149_INTERNAL_RESISTANCE (353)
/*
* Default values for resistor loads.
* The macro should be used in AY8910interface if
* the real values are unknown.
*/
#define AY8910_DEFAULT_LOADS {1000, 1000, 1000}
/*
* The following is used by all drivers not reviewed yet.
* This will like the old behaviour, output between
@ -75,15 +68,24 @@ YMZ294: 0 I/O port
#define AY8910_NUM_CHANNELS 3
struct ay8910_interface
{
int flags; /* Flags */
int res_load[3]; /* Load on channel in ohms */
devcb_read8 portAread;
devcb_read8 portBread;
devcb_write8 portAwrite;
devcb_write8 portBwrite;
};
#define MCFG_AY8910_OUTPUT_TYPE(_flag) \
ay8910_device::set_flags(*device, _flag);
#define MCFG_AY8910_RES_LOADS(_res0, _res1, _res2) \
ay8910_device::set_resistors_load(*device, _res0, _res1, _res2);
#define MCFG_AY8910_PORT_A_READ_CB(_devcb) \
devcb = &ay8910_device::set_port_a_read_callback(*device, DEVCB2_##_devcb);
#define MCFG_AY8910_PORT_B_READ_CB(_devcb) \
devcb = &ay8910_device::set_port_b_read_callback(*device, DEVCB2_##_devcb);
#define MCFG_AY8910_PORT_A_WRITE_CB(_devcb) \
devcb = &ay8910_device::set_port_a_write_callback(*device, DEVCB2_##_devcb);
#define MCFG_AY8910_PORT_B_WRITE_CB(_devcb) \
devcb = &ay8910_device::set_port_b_write_callback(*device, DEVCB2_##_devcb);
class ay8910_device : public device_t,
public device_sound_interface
@ -92,6 +94,13 @@ public:
ay8910_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
ay8910_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source);
static void set_flags(device_t &device, int flags) { downcast<ay8910_device &>(device).m_flags = flags; }
static void set_resistors_load(device_t &device, int res_load0, int res_load1, int res_load2) { downcast<ay8910_device &>(device).m_res_load[0] = res_load0; downcast<ay8910_device &>(device).m_res_load[1] = res_load1; downcast<ay8910_device &>(device).m_res_load[2] = res_load2; }
template<class _Object> static devcb2_base &set_port_a_read_callback(device_t &device, _Object object) { return downcast<ay8910_device &>(device).m_port_a_read_cb.set_callback(object); }
template<class _Object> static devcb2_base &set_port_b_read_callback(device_t &device, _Object object) { return downcast<ay8910_device &>(device).m_port_b_read_cb.set_callback(object); }
template<class _Object> static devcb2_base &set_port_a_write_callback(device_t &device, _Object object) { return downcast<ay8910_device &>(device).m_port_a_write_cb.set_callback(object); }
template<class _Object> static devcb2_base &set_port_b_write_callback(device_t &device, _Object object) { return downcast<ay8910_device &>(device).m_port_b_write_cb.set_callback(object); }
DECLARE_READ8_MEMBER( data_r );
DECLARE_WRITE8_MEMBER( address_w );
DECLARE_WRITE8_MEMBER( data_w );
@ -119,9 +128,9 @@ public:
void ay8910_write_ym(int addr, int data);
int ay8910_read_ym();
void ay8910_reset_ym();
protected:
// device-level overrides
virtual void device_config_complete();
virtual void device_start();
virtual void device_reset();
@ -138,7 +147,6 @@ protected:
int m_streams;
int m_ready;
sound_stream *m_channel;
const ay8910_interface *m_intf;
INT32 m_register_latch;
UINT8 m_regs[16];
INT32 m_last_enable;
@ -161,10 +169,12 @@ protected:
INT32 m_vol_table[AY8910_NUM_CHANNELS][16];
INT32 m_env_table[AY8910_NUM_CHANNELS][32];
INT32 m_vol3d_table[8*32*32*32];
devcb_resolved_read8 m_portAread;
devcb_resolved_read8 m_portBread;
devcb_resolved_write8 m_portAwrite;
devcb_resolved_write8 m_portBwrite;
int m_flags; /* Flags */
int m_res_load[3]; /* Load on channel in ohms */
devcb2_read8 m_port_a_read_cb;
devcb2_read8 m_port_b_read_cb;
devcb2_write8 m_port_a_write_cb;
devcb2_write8 m_port_b_write_cb;
};
extern const device_type AY8910;

View File

@ -8,16 +8,6 @@
#define SND_CLOCK 3072000 /* 3.072 MHz */
const ay8910_interface cclimber_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER(DEVICE_SELF_OWNER, cclimber_audio_device, sample_select_w),
DEVCB_NULL
};
static INT16 *samplebuf; /* buffer to decode samples at run time */
static SAMPLES_START( cclimber_sh_start )
@ -37,7 +27,7 @@ const samples_interface cclimber_samples_interface =
MACHINE_CONFIG_FRAGMENT( cclimber_audio )
MCFG_SOUND_ADD("aysnd", AY8910, SND_CLOCK/2)
MCFG_SOUND_CONFIG(cclimber_ay8910_interface)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(cclimber_audio_device, sample_select_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, ":mono", 0.50)
MCFG_SAMPLES_ADD("samples", cclimber_samples_interface)

View File

@ -1349,34 +1349,11 @@ WRITE8_MEMBER(cinemat_state::sound_portb_w)
m_last_portb_write = data;
}
WRITE8_MEMBER(cinemat_state::sound_output_w)
{
logerror("sound_output = %02X\n", data);
}
static const ay8910_interface demon_ay8910_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(cinemat_state,sound_porta_r),
DEVCB_DRIVER_MEMBER(cinemat_state,sound_portb_r),
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(cinemat_state,sound_portb_w)
};
static const ay8910_interface demon_ay8910_interface_3 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(cinemat_state,sound_output_w)
};
SOUND_RESET_MEMBER( cinemat_state, demon )
{
/* generic init */
@ -1435,14 +1412,18 @@ MACHINE_CONFIG_FRAGMENT( demon_sound )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 3579545)
MCFG_SOUND_CONFIG(demon_ay8910_interface_1)
MCFG_AY8910_PORT_A_READ_CB(READ8(cinemat_state, sound_porta_r))
MCFG_AY8910_PORT_B_READ_CB(READ8(cinemat_state, sound_portb_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(cinemat_state, sound_portb_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ay2", AY8910, 3579545)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ay3", AY8910, 3579545)
MCFG_SOUND_CONFIG(demon_ay8910_interface_3)
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(cinemat_state, sound_output_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END

View File

@ -226,26 +226,6 @@ void irem_audio_device::adpcm_int(int st)
* it does not take cross-chip mixing effects into account.
*/
static const ay8910_interface irem_ay8910_interface_1 =
{
AY8910_SINGLE_OUTPUT | AY8910_DISCRETE_OUTPUT,
{470, 0, 0},
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER("irem_audio", irem_audio_device, ay8910_0_portb_w)
};
static const ay8910_interface irem_ay8910_interface_2 =
{
AY8910_SINGLE_OUTPUT | AY8910_DISCRETE_OUTPUT,
{470, 0, 0},
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER("irem_audio", irem_audio_device, ay8910_1_porta_w),
DEVCB_NULL
};
/*
* http://newsgroups.derkeiler.com/Archive/Rec/rec.games.video.arcade.collecting/2006-06/msg03108.html
@ -393,11 +373,16 @@ static MACHINE_CONFIG_FRAGMENT( irem_audio_base )
MCFG_SOUND_ADD("irem_audio", IREM_AUDIO, 0)
MCFG_SOUND_ADD("ay1", AY8910, XTAL_3_579545MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(irem_ay8910_interface_1)
MCFG_AY8910_OUTPUT_TYPE(AY8910_SINGLE_OUTPUT | AY8910_DISCRETE_OUTPUT)
MCFG_AY8910_RES_LOADS(470, 0, 0)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_B_WRITE_CB(DEVWRITE8("irem_audio", irem_audio_device, ay8910_0_portb_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("ay2", AY8910, XTAL_3_579545MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(irem_ay8910_interface_2)
MCFG_AY8910_OUTPUT_TYPE(AY8910_SINGLE_OUTPUT | AY8910_DISCRETE_OUTPUT)
MCFG_AY8910_RES_LOADS(470, 0, 0)
MCFG_AY8910_PORT_A_WRITE_CB(DEVWRITE8("irem_audio", irem_audio_device, ay8910_1_porta_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("msm1", MSM5205, XTAL_384kHz) /* verified on pcb */
@ -423,11 +408,16 @@ MACHINE_CONFIG_FRAGMENT( m52_sound_c_audio )
MCFG_SOUND_ADD("irem_audio", IREM_AUDIO, 0)
MCFG_SOUND_ADD("ay1", AY8910, XTAL_3_579545MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(irem_ay8910_interface_1)
MCFG_AY8910_OUTPUT_TYPE(AY8910_SINGLE_OUTPUT | AY8910_DISCRETE_OUTPUT)
MCFG_AY8910_RES_LOADS(470, 0, 0)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_B_WRITE_CB(DEVWRITE8("irem_audio", irem_audio_device, ay8910_0_portb_w))
MCFG_SOUND_ROUTE_EX(0, "filtermix", 1.0, 0)
MCFG_SOUND_ADD("ay2", AY8910, XTAL_3_579545MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(irem_ay8910_interface_2)
MCFG_AY8910_OUTPUT_TYPE(AY8910_SINGLE_OUTPUT | AY8910_DISCRETE_OUTPUT)
MCFG_AY8910_RES_LOADS(470, 0, 0)
MCFG_AY8910_PORT_A_WRITE_CB(DEVWRITE8("irem_audio", irem_audio_device, ay8910_1_porta_w))
MCFG_SOUND_ROUTE_EX(0, "filtermix", 1.0, 1)
MCFG_SOUND_ADD("msm1", MSM5205, XTAL_384kHz) /* verified on pcb */

View File

@ -603,22 +603,6 @@ static ADDRESS_MAP_START( masao_sound_map, AS_PROGRAM, 8, mario_state )
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("aysnd", ay8910_device, address_w)
ADDRESS_MAP_END
/*************************************
*
* Sound Interfaces
*
*************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
/*************************************
*
@ -651,7 +635,7 @@ MACHINE_CONFIG_FRAGMENT( masao_audio )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 14318000/6)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -351,32 +351,6 @@ void midway_ssio_device::update_volumes()
m_ay1->set_volume(2, m_mute ? 0 : m_ayvolume_lookup[m_duty_cycle[1][2]]);
}
//-------------------------------------------------
// AY-8910 interfaces
//-------------------------------------------------
static const ay8910_interface ssio_ay8910_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER(DEVICE_SELF_OWNER, midway_ssio_device, porta0_w),
DEVCB_DEVICE_MEMBER(DEVICE_SELF_OWNER, midway_ssio_device, portb0_w)
};
static const ay8910_interface ssio_ay8910_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER(DEVICE_SELF_OWNER, midway_ssio_device, porta1_w),
DEVCB_DEVICE_MEMBER(DEVICE_SELF_OWNER, midway_ssio_device, portb1_w)
};
//-------------------------------------------------
// audio CPU map
//-------------------------------------------------
@ -410,11 +384,17 @@ static MACHINE_CONFIG_FRAGMENT( midway_ssio )
MCFG_DEVICE_PERIODIC_INT_DEVICE(DEVICE_SELF, midway_ssio_device, clock_14024, SSIO_CLOCK/2/16/10)
MCFG_SOUND_ADD("ay0", AY8910, SSIO_CLOCK/2/4)
MCFG_SOUND_CONFIG(ssio_ay8910_interface_1)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(midway_ssio_device, porta0_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(midway_ssio_device, portb0_w))
MCFG_MIXER_ROUTE(ALL_OUTPUTS, DEVICE_SELF_OWNER, 0.33, 0)
MCFG_SOUND_ADD("ay1", AY8910, SSIO_CLOCK/2/4)
MCFG_SOUND_CONFIG(ssio_ay8910_interface_2)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(midway_ssio_device, porta1_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(midway_ssio_device, portb1_w))
MCFG_MIXER_ROUTE(ALL_OUTPUTS, DEVICE_SELF_OWNER, 0.33, 1)
MACHINE_CONFIG_END

View File

@ -110,18 +110,6 @@ WRITE8_MEMBER(redalert_state::redalert_ay8910_latch_2_w)
m_ay8910_latch_2 = data;
}
static const ay8910_interface redalert_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_NULL, /* port A/B read */
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(redalert_state,redalert_analog_w) /* port A/B write */
};
static ADDRESS_MAP_START( redalert_audio_map, AS_PROGRAM, 8, redalert_state )
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x0c00) AM_RAM
@ -191,7 +179,8 @@ static MACHINE_CONFIG_FRAGMENT( redalert_audio_m37b )
MCFG_CPU_PERIODIC_INT_DRIVER(redalert_state, irq0_line_hold, REDALERT_AUDIO_CPU_IRQ_FREQ)
MCFG_SOUND_ADD("aysnd", AY8910, REDALERT_AY8910_CLOCK)
MCFG_SOUND_CONFIG(redalert_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(redalert_state, redalert_analog_w))
MCFG_SOUND_ROUTE(0, "mono", 0.50)
MCFG_SOUND_ROUTE(1, "mono", 0.50)
/* channel C is used a noise source and is not connected to a speaker */
@ -324,18 +313,6 @@ static ADDRESS_MAP_START( demoneye_audio_map, AS_PROGRAM, 8, redalert_state )
ADDRESS_MAP_END
static const ay8910_interface demoneye_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_NULL, /* port A/B read */
DEVCB_NULL,
DEVCB_NULL /* port A/B write */
};
/*************************************
*
* Demoneye-X audio start
@ -375,6 +352,6 @@ MACHINE_CONFIG_FRAGMENT( demoneye_audio )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("ay2", AY8910, DEMONEYE_AY8910_CLOCK)
MCFG_SOUND_CONFIG(demoneye_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -272,27 +272,6 @@ WRITE8_MEMBER( scramble_state::ad2083_tms5110_ctrl_w )
m_tmsprom->enable_w(1);
}
static const ay8910_interface ad2083_ay8910_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(scramble_state, scramble_portB_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface ad2083_ay8910_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(scramble_state, hotshock_soundlatch_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static ADDRESS_MAP_START( ad2083_sound_map, AS_PROGRAM, 8, scramble_state )
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
@ -330,11 +309,11 @@ MACHINE_CONFIG_FRAGMENT( ad2083_audio )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 14318000/8)
MCFG_SOUND_CONFIG(ad2083_ay8910_interface_1)
MCFG_AY8910_PORT_A_READ_CB(READ8(scramble_state, scramble_portB_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_SOUND_ADD("ay2", AY8910, 14318000/8)
MCFG_SOUND_CONFIG(ad2083_ay8910_interface_2)
MCFG_AY8910_PORT_A_READ_CB(READ8(scramble_state, hotshock_soundlatch_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MCFG_SOUND_ADD("tms", TMS5110A, AD2083_TMS5110_CLOCK)

View File

@ -354,15 +354,6 @@ WRITE16_MEMBER( seibu_sound_device::main_mustb_w )
/***************************************************************************/
const ay8910_interface seibu_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
/***************************************************************************/
ADDRESS_MAP_START( seibu_sound_map, AS_PROGRAM, 8, driver_device )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM

View File

@ -91,8 +91,6 @@ protected:
extern const device_type SEIBU_SOUND;
extern const ay8910_interface seibu_ay8910_config;
// Seibu ADPCM device
@ -247,7 +245,6 @@ extern const seibu_adpcm_interface seibu_adpcm2_intf;
\
MCFG_SOUND_ADD("ym1", YM2203, freq) \
MCFG_YM2203_IRQ_HANDLER(DEVWRITELINE("seibu_sound", seibu_sound_device, ym2203_irqhandler)) \
MCFG_YM2203_AY8910_INTF(&seibu_ay8910_config) \
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15) \
\
MCFG_SOUND_ADD("ym2", YM2203, freq) \

View File

@ -168,25 +168,6 @@ static ADDRESS_MAP_START( locomotn_sound_map, AS_PROGRAM, 8, driver_device )
ADDRESS_MAP_END
/*************************************
*
* Sound chip interfaces
*
*************************************/
static const ay8910_interface timeplt_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_DEVICE_MEMBER("timeplt_audio", timeplt_audio_device, portB_r),
DEVCB_NULL,
DEVCB_NULL
};
/*************************************
*
* Machine drivers
@ -205,7 +186,8 @@ MACHINE_CONFIG_FRAGMENT( timeplt_sound )
MCFG_SOUND_ADD("timeplt_audio", TIMEPLT_AUDIO, 0)
MCFG_SOUND_ADD("ay1", AY8910, MASTER_CLOCK/8)
MCFG_SOUND_CONFIG(timeplt_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_B_READ_CB(DEVREAD8("timeplt_audio", timeplt_audio_device, portB_r))
MCFG_SOUND_ROUTE(0, "filter.0.0", 0.60)
MCFG_SOUND_ROUTE(1, "filter.0.1", 0.60)
MCFG_SOUND_ROUTE(2, "filter.0.2", 0.60)

View File

@ -517,16 +517,6 @@ void _1942_state::machine_reset()
m_scroll[1] = 0;
}
static const ay8910_interface ay8910_config =
{
AY8910_RESISTOR_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static MACHINE_CONFIG_START( 1942, _1942_state )
/* basic machine hardware */
@ -558,12 +548,14 @@ static MACHINE_CONFIG_START( 1942, _1942_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, AUDIO_CLOCK) /* 1.5 MHz */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_OUTPUT_TYPE(AY8910_RESISTOR_OUTPUT)
MCFG_SOUND_ROUTE_EX(0, "snd_nl", 1.0, 0)
MCFG_SOUND_ROUTE_EX(1, "snd_nl", 1.0, 1)
MCFG_SOUND_ROUTE_EX(2, "snd_nl", 1.0, 2)
MCFG_SOUND_ADD("ay2", AY8910, AUDIO_CLOCK) /* 1.5 MHz */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_OUTPUT_TYPE(AY8910_RESISTOR_OUTPUT)
MCFG_SOUND_ROUTE_EX(0, "snd_nl", 1.0, 3)
MCFG_SOUND_ROUTE_EX(1, "snd_nl", 1.0, 4)
MCFG_SOUND_ROUTE_EX(2, "snd_nl", 1.0, 5)

View File

@ -470,6 +470,7 @@ static MACHINE_CONFIG_START( drill, _2mindril_state )
MCFG_SOUND_ADD("ymsnd", YM2610B, 16000000/2)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(_2mindril_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -953,16 +953,6 @@ static GFXDECODE_START( 40love )
GFXDECODE_ENTRY( "gfx1", 0, sprite_layout, 0, 64 )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(fortyl_state,sound_control_2_w),
DEVCB_DRIVER_MEMBER(fortyl_state,sound_control_3_w)
};
/*******************************************************************************/
MACHINE_START_MEMBER(fortyl_state,40love)
@ -1077,7 +1067,8 @@ static MACHINE_CONFIG_START( 40love, fortyl_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 2000000)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(fortyl_state, sound_control_2_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(fortyl_state, sound_control_3_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MCFG_SOUND_ADD("msm", MSM5232, 8000000/4)
@ -1133,7 +1124,8 @@ static MACHINE_CONFIG_START( undoukai, fortyl_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 2000000)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(fortyl_state, sound_control_2_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(fortyl_state, sound_control_3_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MCFG_SOUND_ADD("msm", MSM5232, 8000000/4)

View File

@ -460,28 +460,6 @@ void _4enlinea_state::machine_reset()
{
}
/**********************************
* CRTC Interface *
**********************************/
/***********************************
* Sound Interface *
***********************************/
static const ay8910_interface ay8910_intf =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("IN-P2"),
DEVCB_INPUT_PORT("IN-P1"),
DEVCB_NULL,
DEVCB_NULL
};
/***********************************
* Machine Drivers *
***********************************/
@ -540,7 +518,8 @@ static MACHINE_CONFIG_START( 4enlinea, _4enlinea_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, SND_AY_CLOCK)
MCFG_SOUND_CONFIG(ay8910_intf)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("IN-P2"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("IN-P1"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -343,21 +343,6 @@ static GFXDECODE_START( 4roses )
GFXDECODE_END
/************************
* Sound Interface *
************************/
static const ay8910_interface ay8910_intf =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, /* portA in */
DEVCB_NULL, /* portB in */
DEVCB_NULL, /* portA out */
DEVCB_NULL /* portB out */
};
/**************************
* Machine Drivers *
**************************/
@ -392,7 +377,6 @@ static MACHINE_CONFIG_START( 4roses, _4roses_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay8910", AY8910, MASTER_CLOCK/8) /* 2MHz, guess */
MCFG_SOUND_CONFIG(ay8910_intf)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.5)
MACHINE_CONFIG_END

View File

@ -994,21 +994,6 @@ static GFXDECODE_START( fclown )
GFXDECODE_ENTRY( "gfx2", 0, tilelayout, 0, 16 )
GFXDECODE_END
/*************************
* Sound Interfaces *
*************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
/*************************
* Machine Drivers *
*************************/
@ -1057,7 +1042,6 @@ static MACHINE_CONFIG_START( fclown, _5clown_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay8910", AY8910, MASTER_CLOCK/8) /* guess, seems ok */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MCFG_OKIM6295_ADD("oki6295", MASTER_CLOCK/12, OKIM6295_PIN7_LOW) /* guess, seems ok; pin7 guessed, seems ok */

View File

@ -252,18 +252,6 @@ static INPUT_PORTS_START( aces1 )
INPUT_PORTS_END
// 0xadf0 - Dips, Sound
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSWA"),
DEVCB_INPUT_PORT("DSWB"),
DEVCB_NULL,
DEVCB_NULL
};
static MACHINE_CONFIG_START( aces1, aces1_state )
MCFG_CPU_ADD("maincpu", Z80, 4000000) /* ?? Mhz */
@ -293,8 +281,10 @@ static MACHINE_CONFIG_START( aces1, aces1_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
// 0xadf0 - Dips, Sound
MCFG_SOUND_ADD("aysnd", AY8910, 1500000) /* ?? MHz */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSWA"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSWB"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END

View File

@ -622,15 +622,6 @@ INTERRUPT_GEN_MEMBER(adp_state::adp_int)
device.execute().set_input_line(1, HOLD_LINE); // ??? All irqs have the same vector, and the mask used is 0 or 7
}
*/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("PA"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static ADDRESS_MAP_START( adp_h63484_map, AS_0, 16, adp_state )
AM_RANGE(0x00000, 0x1ffff) AM_MIRROR(0x60000) AM_RAM
@ -680,7 +671,7 @@ static MACHINE_CONFIG_START( quickjac, adp_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 3686400/2)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("PA"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MACHINE_CONFIG_END

View File

@ -207,18 +207,6 @@ static GFXDECODE_START( aeroboto )
GFXDECODE_ENTRY( "gfx3", 0, spritelayout, 0, 8 )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_DRIVER_MEMBER(driver_device, soundlatch2_byte_r),
DEVCB_NULL,
DEVCB_NULL
};
void aeroboto_state::machine_start()
{
m_stars_rom = memregion("gfx2")->base();
@ -270,7 +258,8 @@ static MACHINE_CONFIG_START( formatz, aeroboto_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, XTAL_10MHz/8) /* verified on pcb */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_B_READ_CB(READ8(driver_device, soundlatch2_byte_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ay2", AY8910, XTAL_10MHz/16) /* verified on pcb */

View File

@ -1344,6 +1344,7 @@ static MACHINE_CONFIG_START( pspikes, aerofgt_state )
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1503,6 +1504,7 @@ static MACHINE_CONFIG_START( karatblz, aerofgt_state )
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz ) /* verified on pcb */
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1557,6 +1559,7 @@ static MACHINE_CONFIG_START( spinlbrk, aerofgt_state )
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb */
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1610,6 +1613,7 @@ static MACHINE_CONFIG_START( turbofrc, aerofgt_state )
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb */
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1664,6 +1668,7 @@ static MACHINE_CONFIG_START( aerofgtb, aerofgt_state )
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1712,6 +1717,7 @@ static MACHINE_CONFIG_START( aerofgt, aerofgt_state )
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb */
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -516,17 +516,6 @@ static GFXDECODE_START( airbustr )
GFXDECODE_ENTRY( "gfx2", 0, sprite_gfxlayout, 512, 16 ) // sprites
GFXDECODE_END
/* Sound Interfaces */
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"), // DSW-1 connected to port A
DEVCB_INPUT_PORT("DSW2"), // DSW-2 connected to port B
DEVCB_NULL,
DEVCB_NULL
};
/* Interrupt Generators */
@ -634,7 +623,8 @@ static MACHINE_CONFIG_START( airbustr, airbustr_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2203, 3000000)
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1")) // DSW-1 connected to port A
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW2")) // DSW-2 connected to port B
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 0.25)
MCFG_SOUND_ROUTE(2, "mono", 0.25)

View File

@ -261,17 +261,6 @@ static GFXDECODE_START( hanaroku )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_INPUT_PORT("DSW2"),
DEVCB_NULL,
DEVCB_NULL
};
static MACHINE_CONFIG_START( hanaroku, albazc_state )
MCFG_CPU_ADD("maincpu", Z80,6000000) /* ? MHz */
@ -296,7 +285,8 @@ static MACHINE_CONFIG_START( hanaroku, albazc_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 1500000) /* ? MHz */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -200,16 +200,6 @@ WRITE8_MEMBER(albazg_state::yumefuda_output_w)
flip_screen_set(~data & 0x20);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_INPUT_PORT("DSW2"),
DEVCB_DRIVER_MEMBER(albazg_state,yumefuda_output_w),
DEVCB_NULL
};
/***************************************************************************************/
static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, albazg_state )
@ -392,7 +382,9 @@ static MACHINE_CONFIG_START( yumefuda, albazg_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/16) /* guessed to use the same xtal as the crtc */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW2"))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(albazg_state, yumefuda_output_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -1811,13 +1811,6 @@ GFXDECODE_END
/******************************************************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r)
};
WRITE8_MEMBER(alpha68k_state::porta_w)
{
if(data == 0xff)
@ -1833,16 +1826,6 @@ WRITE8_MEMBER(alpha68k_state::porta_w)
m_sound_pa_latch = data & 1;
}
static const ay8910_interface ym2203_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(alpha68k_state, porta_w),
DEVCB_NULL
};
WRITE_LINE_MEMBER(alpha68k_state::ym3812_irq)
{
m_audiocpu->set_input_line(0, (state) ? HOLD_LINE : CLEAR_LINE);
@ -2069,7 +2052,7 @@ static MACHINE_CONFIG_START( jongbou, alpha68k_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 2000000)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
MACHINE_CONFIG_END
@ -2148,7 +2131,8 @@ static MACHINE_CONFIG_START( alpha68k_II, alpha68k_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ym1", YM2203, 3000000)
MCFG_YM2203_AY8910_INTF(&ym2203_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(alpha68k_state, porta_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
MCFG_SOUND_ADD("ym2", YM2413, 3579545)
@ -2198,7 +2182,8 @@ static MACHINE_CONFIG_START( alpha68k_II_gm, alpha68k_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ym1", YM2203, 3000000)
MCFG_YM2203_AY8910_INTF(&ym2203_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(alpha68k_state, porta_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
MCFG_SOUND_ADD("ym2", YM2413, 3579545)
@ -2242,7 +2227,8 @@ static MACHINE_CONFIG_START( alpha68k_V, alpha68k_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ym1", YM2203, 3000000)
MCFG_YM2203_AY8910_INTF(&ym2203_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(alpha68k_state, porta_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
MCFG_SOUND_ADD("ym2", YM2413, 3579545)
@ -2285,7 +2271,8 @@ static MACHINE_CONFIG_START( alpha68k_V_sb, alpha68k_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ym1", YM2203, 3000000)
MCFG_YM2203_AY8910_INTF(&ym2203_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(alpha68k_state, porta_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
MCFG_SOUND_ADD("ym2", YM2413, 3579545)

View File

@ -193,33 +193,6 @@ static GFXDECODE_START( ambush )
GFXDECODE_END
/*************************************
*
* Sound interfaces
*
*************************************/
static const ay8910_interface ay8912_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("SYSTEM"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface ay8912_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("INPUTS"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
/*************************************
*
* Machine driver
@ -251,11 +224,11 @@ static MACHINE_CONFIG_START( ambush, ambush_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8912, XTAL_18_432MHz/6/2) /* XTAL confirmed, divisor guessed */
MCFG_SOUND_CONFIG(ay8912_interface_1)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("SYSTEM"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
MCFG_SOUND_ADD("ay2", AY8912, XTAL_18_432MHz/6/2) /* XTAL confirmed, divisor guessed */
MCFG_SOUND_CONFIG(ay8912_interface_2)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("INPUTS"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
MACHINE_CONFIG_END

View File

@ -1146,19 +1146,6 @@ static GFXDECODE_START( sigma2k )
GFXDECODE_ENTRY( "gfx1", 0x0000, s2k_charlayout, 0, 16 )
GFXDECODE_END
/*******************
* AY8910 Interfase *
*******************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL /* no ports used */
};
/*************************
* Machine Driver *
*************************/
@ -1192,7 +1179,6 @@ static MACHINE_CONFIG_START( ampoker2, ampoker2_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910,MASTER_CLOCK/4) /* 1.5 MHz, measured */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END

View File

@ -512,13 +512,6 @@ WRITE_LINE_MEMBER(angelkds_state::irqhandler)
m_subcpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
/*** Graphics Decoding
all the 8x8 tiles are in one format, the 16x16 sprites in another
@ -621,7 +614,6 @@ static MACHINE_CONFIG_START( angelkds, angelkds_state )
MCFG_SOUND_ADD("ym1", YM2203, XTAL_4MHz)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(angelkds_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "mono", 0.65)
MCFG_SOUND_ROUTE(1, "mono", 0.65)
MCFG_SOUND_ROUTE(2, "mono", 0.65)

View File

@ -312,25 +312,6 @@ static INPUT_PORTS_START( arabiana )
INPUT_PORTS_END
/*************************************
*
* Sound definitions
*
*************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(arabian_state,ay8910_porta_w),
DEVCB_DRIVER_MEMBER(arabian_state,ay8910_portb_w)
};
/*************************************
*
* Machine driver
@ -379,7 +360,8 @@ static MACHINE_CONFIG_START( arabian, arabian_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, MAIN_OSC/4/2)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(arabian_state, ay8910_porta_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(arabian_state, ay8910_portb_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -157,14 +157,6 @@ WRITE_LINE_MEMBER(argus_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
/***************************************************************************
Memory Handler(s)
@ -569,7 +561,6 @@ static MACHINE_CONFIG_START( argus, argus_state )
MCFG_SOUND_ADD("ym1", YM2203, 6000000 / 4)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(argus_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "mono", 0.15)
MCFG_SOUND_ROUTE(1, "mono", 0.15)
MCFG_SOUND_ROUTE(2, "mono", 0.15)
@ -614,7 +605,6 @@ static MACHINE_CONFIG_START( valtric, argus_state )
MCFG_SOUND_ADD("ym1", YM2203, 6000000 / 4)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(argus_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "mono", 0.15)
MCFG_SOUND_ROUTE(1, "mono", 0.15)
MCFG_SOUND_ROUTE(2, "mono", 0.15)
@ -659,7 +649,6 @@ static MACHINE_CONFIG_START( butasan, argus_state )
MCFG_SOUND_ADD("ym1", YM2203, 6000000 / 4)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(argus_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "mono", 0.30)
MCFG_SOUND_ROUTE(1, "mono", 0.30)
MCFG_SOUND_ROUTE(2, "mono", 0.30)

View File

@ -1548,26 +1548,6 @@ static GFXDECODE_START(aristmk4)
GFXDECODE_ENTRY("tile_gfx",0x0,layout8x8x6, 0, 8 )
GFXDECODE_END
static const ay8910_interface ay8910_config1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(aristmk4_state,zn434_w) // Port write to set Vout of the DA convertors ( 2 x ZN434 )
};
static const ay8910_interface ay8910_config2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, // Port A read
DEVCB_NULL, // Port B read
DEVCB_DRIVER_MEMBER(aristmk4_state,pblp_out), // Port A write - goes to lamps on the buttons x8
DEVCB_DRIVER_MEMBER(aristmk4_state,pbltlp_out) // Port B write - goes to lamps on the buttons x4 and light tower x4
};
/* read m/c number */
READ8_MEMBER(aristmk4_state::pa1_r)
@ -1718,11 +1698,13 @@ static MACHINE_CONFIG_START( aristmk4, aristmk4_state )
// the Mark IV has X 2 AY8910 sound chips which are tied to the VIA
MCFG_SOUND_ADD("ay1", AY8910 , MAIN_CLOCK/8)
MCFG_SOUND_CONFIG(ay8910_config1)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(aristmk4_state, zn434_w)) // Port write to set Vout of the DA convertors ( 2 x ZN434 )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SOUND_ADD("ay2", AY8910 , MAIN_CLOCK/8)
MCFG_SOUND_CONFIG(ay8910_config2)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(aristmk4_state, pblp_out)) // Port A write - goes to lamps on the buttons x8
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(aristmk4_state, pbltlp_out)) // Port B write - goes to lamps on the buttons x4 and light tower x4
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SAMPLES_ADD("samples", meter_samples_interface)

View File

@ -1129,32 +1129,6 @@ static GFXDECODE_START( hexa )
GFXDECODE_ENTRY( "gfx1", 0x0000, charlayout, 0 , 32 )
GFXDECODE_END
/* Sound Interfaces */
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("UNUSED"),
DEVCB_INPUT_PORT("DSW"),
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface hexa_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("INPUTS"),
DEVCB_INPUT_PORT("DSW"),
DEVCB_NULL,
DEVCB_NULL
};
/* Machine Drivers */
MACHINE_START_MEMBER(arkanoid_state,arkanoid)
@ -1228,7 +1202,8 @@ static MACHINE_CONFIG_START( arkanoid, arkanoid_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", YM2149, XTAL_12MHz/4/2) /* YM2149 clock is 3mhz, pin 26 is low so 3mhz/2 */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("UNUSED"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
MACHINE_CONFIG_END
@ -1259,7 +1234,8 @@ static MACHINE_CONFIG_START( hexa, arkanoid_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_12MHz/4/2) /* Imported from arkanoid - correct? */
MCFG_SOUND_CONFIG(hexa_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("INPUTS"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@ -1303,7 +1279,8 @@ static MACHINE_CONFIG_START( brixian, arkanoid_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_12MHz/4/2) /* Imported from arkanoid - correct? */
MCFG_SOUND_CONFIG(hexa_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("INPUTS"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -289,16 +289,6 @@ WRITE8_MEMBER(ashnojoe_state::ym2203_write_b)
membank("bank4")->set_entry(data & 0x0f);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(ashnojoe_state,ym2203_write_a),
DEVCB_DRIVER_MEMBER(ashnojoe_state,ym2203_write_b),
};
WRITE_LINE_MEMBER(ashnojoe_state::ashnojoe_vclk_cb)
{
if (m_msm5205_vclk_toggle == 0)
@ -359,7 +349,8 @@ static MACHINE_CONFIG_START( ashnojoe, ashnojoe_state )
MCFG_SOUND_ADD("ymsnd", YM2203, 4000000)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(ashnojoe_state, ym2203_irq_handler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(ashnojoe_state, ym2203_write_a))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ashnojoe_state, ym2203_write_b))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.1)
MCFG_SOUND_ADD("msm", MSM5205, 384000)

View File

@ -474,17 +474,6 @@ WRITE8_MEMBER(astrocde_state::demndrgn_sound_w)
*
*************************************/
static const ay8910_interface ay8912_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DIPSW"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
WRITE8_MEMBER(astrocde_state::tenpindx_sound_w)
{
soundlatch_byte_w(space, offset, data);
@ -1478,7 +1467,7 @@ static MACHINE_CONFIG_DERIVED( tenpindx, astrocade_16color_base )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8912, ASTROCADE_CLOCK/4) /* real clock unknown */
MCFG_SOUND_CONFIG(ay8912_interface)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DIPSW"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
MACHINE_CONFIG_END

View File

@ -864,6 +864,7 @@ static MACHINE_CONFIG_START( bonzeadv, asuka_state )
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(asuka_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)

View File

@ -846,22 +846,6 @@ static GFXDECODE_START( avt )
GFXDECODE_ENTRY( "gfx1", 0, tilelayout, 0, 16 )
GFXDECODE_END
/********************************************
* Sound Interfaces *
********************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
/*********************************************
* Machine Drivers *
*********************************************/
@ -901,7 +885,6 @@ static MACHINE_CONFIG_START( avt, avt_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, CPU_CLOCK/2) /* 1.25 MHz.?? */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END

View File

@ -359,17 +359,6 @@ static GFXDECODE_START( pickin )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("P1"),
DEVCB_INPUT_PORT("P2"),
DEVCB_NULL,
DEVCB_NULL
};
/* squaitsa doesn't map the dial directly, instead it polls the results of the dial through an external circuitry.
I don't know if the following is correct, there can possbily be multiple solutions for the same problem. */
READ8_MEMBER(bagman_state::dial_input_p1_r)
@ -412,26 +401,6 @@ READ8_MEMBER(bagman_state::dial_input_p2_r)
return (ioport("P2")->read() & 0x9f) | (m_p2_res);
}
static const ay8910_interface ay8910_dial_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(bagman_state,dial_input_p1_r),
DEVCB_DRIVER_MEMBER(bagman_state,dial_input_p2_r),
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface ay8910_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
INTERRUPT_GEN_MEMBER(bagman_state::vblank_irq)
{
if(m_irq_mask)
@ -479,7 +448,8 @@ static MACHINE_CONFIG_START( bagman, bagman_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, BAGMAN_H0 / 2)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("P1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("P2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SOUND_ADD("tms", TMS5110A, 640000)
@ -514,12 +484,12 @@ static MACHINE_CONFIG_START( pickin, bagman_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("P1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("P2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
/* maybe */
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8910_interface_2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@ -567,17 +537,19 @@ static MACHINE_CONFIG_START( botanic, bagman_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("P1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("P2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8910_interface_2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( squaitsa, botanic )
MCFG_SOUND_MODIFY("aysnd")
MCFG_SOUND_CONFIG(ay8910_dial_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(bagman_state, dial_input_p1_r))
MCFG_AY8910_PORT_B_READ_CB(READ8(bagman_state, dial_input_p2_r))
MACHINE_CONFIG_END

View File

@ -214,16 +214,6 @@ GFXDECODE_END
*
*************************************/
static const ay8910_interface battlex_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
void battlex_state::machine_start()
{
/* register for save states */
@ -265,7 +255,6 @@ static MACHINE_CONFIG_START( battlex, battlex_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_10MHz/8) // ?
MCFG_SOUND_CONFIG(battlex_ay8910_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END

View File

@ -645,13 +645,6 @@ WRITE_LINE_MEMBER(bbusters_state::sound_irq)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
/******************************************************************************/
void bbusters_state::screen_eof_bbuster(screen_device &screen, bool state)
@ -696,6 +689,7 @@ static MACHINE_CONFIG_START( bbusters, bbusters_state )
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(bbusters_state, sound_irq))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -735,7 +729,7 @@ static MACHINE_CONFIG_START( mechatt, bbusters_state )
MCFG_SOUND_ADD("ymsnd", YM2608, 8000000)
MCFG_YM2608_IRQ_HANDLER(WRITELINE(bbusters_state, sound_irq))
MCFG_YM2608_AY8910_INTF(&ay8910_config)
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.50)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -226,21 +226,6 @@ static INPUT_PORTS_START( big10 )
INPUT_PORTS_END
/**********************************
* AY-3-8910 Interface *
**********************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW2"),
DEVCB_INPUT_PORT("DSW1"),
DEVCB_DRIVER_MEMBER(big10_state,mux_w),
DEVCB_NULL
};
/**************************************
* Machine Driver *
**************************************/
@ -271,7 +256,9 @@ static MACHINE_CONFIG_START( big10, big10_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/12) /* guess */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW2"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(big10_state, mux_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END

View File

@ -376,16 +376,6 @@ WRITE8_MEMBER(bking_state::port_b_w)
logerror("port_b = %02x\n", data);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER("dac", dac_device, write_signed8),
DEVCB_DRIVER_MEMBER(bking_state,port_b_w)
};
void bking_state::machine_start()
{
/* video */
@ -492,7 +482,8 @@ static MACHINE_CONFIG_START( bking, bking_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ay2", AY8910, XTAL_6MHz/4)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(DEVWRITE8("dac", dac_device, write_signed8))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(bking_state, port_b_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_DAC_ADD("dac")

View File

@ -268,17 +268,6 @@ GFXDECODE_END
*
*************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER("upd", upd775x_device, port_w),
DEVCB_DRIVER_MEMBER(bladestl_state,bladestl_port_B_w)
};
void bladestl_state::machine_start()
{
m_rombank->configure_entries(0, 4, memregion("maincpu")->base(), 0x2000);
@ -349,7 +338,8 @@ static MACHINE_CONFIG_START( bladestl, bladestl_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MCFG_SOUND_ADD("ymsnd", YM2203, 3579545)
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(DEVWRITE8("upd", upd775x_device, port_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(bladestl_state, bladestl_port_B_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
MACHINE_CONFIG_END

View File

@ -264,13 +264,6 @@ WRITE_LINE_MEMBER(blktiger_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL,
};
void blktiger_state::machine_start()
{
/* configure bankswitching */
@ -341,7 +334,6 @@ static MACHINE_CONFIG_START( blktiger, blktiger_state )
MCFG_SOUND_ADD("ym1", YM2203, XTAL_3_579545MHz) /* verified on pcb */
MCFG_YM2203_IRQ_HANDLER(WRITELINE(blktiger_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
MCFG_SOUND_ADD("ym2", YM2203, XTAL_3_579545MHz) /* verified on pcb */

View File

@ -316,33 +316,6 @@ static GFXDECODE_START( blueprnt )
GFXDECODE_END
/*************************************
*
* Sound interfaces
*
*************************************/
static const ay8910_interface ay8910_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_DRIVER_MEMBER(blueprnt_state,dipsw_w),
DEVCB_NULL
};
static const ay8910_interface ay8910_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DILSW1"),
DEVCB_INPUT_PORT("DILSW2"),
DEVCB_NULL,
DEVCB_NULL
};
/*************************************
*
* Machine driver
@ -394,11 +367,13 @@ static MACHINE_CONFIG_START( blueprnt, blueprnt_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 10000000/2/2/2)
MCFG_SOUND_CONFIG(ay8910_interface_1)
MCFG_AY8910_PORT_B_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(blueprnt_state, dipsw_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ay2", AY8910, 10000000/2/2/2/2)
MCFG_SOUND_CONFIG(ay8910_interface_2)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DILSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DILSW2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END

View File

@ -459,18 +459,6 @@ WRITE8_MEMBER(bmcbowl_state::input_mux_w)
m_bmc_input=data;
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(bmcbowl_state,dips1_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(bmcbowl_state,input_mux_w)
};
static MACHINE_CONFIG_START( bmcbowl, bmcbowl_state )
MCFG_CPU_ADD("maincpu", M68000, XTAL_21_4772MHz / 2 )
MCFG_CPU_PROGRAM_MAP(bmcbowl_mem)
@ -495,7 +483,8 @@ static MACHINE_CONFIG_START( bmcbowl, bmcbowl_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_3_579545MHz / 2)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(bmcbowl_state, dips1_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(bmcbowl_state, input_mux_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)

View File

@ -222,16 +222,6 @@ WRITE8_MEMBER(bogeyman_state::bogeyman_colbank_w)
}
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(bogeyman_state,bogeyman_colbank_w),
DEVCB_NULL
};
static MACHINE_CONFIG_START( bogeyman, bogeyman_state )
// basic machine hardware
@ -259,7 +249,7 @@ static MACHINE_CONFIG_START( bogeyman, bogeyman_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 1500000) /* Verified */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(bogeyman_state, bogeyman_colbank_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MCFG_SOUND_ADD("ay2", AY8910, 1500000) /* Verified */

View File

@ -1151,20 +1151,6 @@ GFXDECODE_END
****************************************************************************/
static const ay8910_interface ay1_intf =
{
AY8910_DISCRETE_OUTPUT,
{RES_K(5), RES_K(5), RES_K(5)},
DEVCB_NULL, DEVCB_NULL, DEVCB_DRIVER_MEMBER(btime_state,ay_audio_nmi_enable_w), DEVCB_NULL
};
static const ay8910_interface ay2_intf =
{
AY8910_DISCRETE_OUTPUT,
{RES_K(1), RES_K(5), RES_K(5)},
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
static const discrete_mixer_desc btime_sound_mixer_desc =
{DISC_MIXER_IS_OP_AMP,
{RES_K(100), RES_K(100)},
@ -1328,13 +1314,16 @@ static MACHINE_CONFIG_START( btime, btime_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, HCLK2)
MCFG_SOUND_CONFIG(ay1_intf)
MCFG_AY8910_OUTPUT_TYPE(AY8910_DISCRETE_OUTPUT)
MCFG_AY8910_RES_LOADS(RES_K(5), RES_K(5), RES_K(5))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(btime_state, ay_audio_nmi_enable_w))
MCFG_SOUND_ROUTE_EX(0, "discrete", 1.0, 0)
MCFG_SOUND_ROUTE_EX(1, "discrete", 1.0, 1)
MCFG_SOUND_ROUTE_EX(2, "discrete", 1.0, 2)
MCFG_SOUND_ADD("ay2", AY8910, HCLK2)
MCFG_SOUND_CONFIG(ay2_intf)
MCFG_AY8910_OUTPUT_TYPE(AY8910_DISCRETE_OUTPUT)
MCFG_AY8910_RES_LOADS(RES_K(1), RES_K(5), RES_K(5))
MCFG_SOUND_ROUTE_EX(0, "discrete", 1.0, 3)
MCFG_SOUND_ROUTE_EX(1, "discrete", 1.0, 4)
MCFG_SOUND_ROUTE_EX(2, "discrete", 1.0, 5)
@ -1447,7 +1436,9 @@ static MACHINE_CONFIG_DERIVED( zoar, btime )
/* sound hardware */
MCFG_SOUND_REPLACE("ay1", AY8910, HCLK1)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
MCFG_SOUND_CONFIG(ay1_intf)
MCFG_AY8910_OUTPUT_TYPE(AY8910_DISCRETE_OUTPUT)
MCFG_AY8910_RES_LOADS(RES_K(5), RES_K(5), RES_K(5))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(btime_state, ay_audio_nmi_enable_w))
MCFG_SOUND_REPLACE("ay2", AY8910, HCLK1)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)

View File

@ -701,15 +701,6 @@ WRITE_LINE_MEMBER(bublbobl_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
/*************************************
*
* Machine driver
@ -781,7 +772,6 @@ static MACHINE_CONFIG_START( tokio, bublbobl_state )
MCFG_SOUND_ADD("ymsnd", YM2203, MAIN_XTAL/8)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(bublbobl_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "mono", 0.08)
MCFG_SOUND_ROUTE(1, "mono", 0.08)
MCFG_SOUND_ROUTE(2, "mono", 0.08)
@ -864,7 +854,6 @@ static MACHINE_CONFIG_START( bublbobl, bublbobl_state )
MCFG_SOUND_ADD("ym1", YM2203, MAIN_XTAL/8)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(bublbobl_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ym2", YM3526, MAIN_XTAL/8)

View File

@ -325,28 +325,6 @@ WRITE8_MEMBER(buggychl_state::port_b_1_w)
/* TRBL/BASS for the 7630 on this 8910 output */
}
static const ay8910_interface ay8910_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(buggychl_state,port_a_0_w),
DEVCB_DRIVER_MEMBER(buggychl_state,port_b_0_w)
};
static const ay8910_interface ay8910_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(buggychl_state,port_a_1_w),
DEVCB_DRIVER_MEMBER(buggychl_state,port_b_1_w)
};
void buggychl_state::machine_start()
{
UINT8 *ROM = memregion("maincpu")->base();
@ -413,11 +391,13 @@ static MACHINE_CONFIG_START( buggychl, buggychl_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 8000000/4)
MCFG_SOUND_CONFIG(ay8910_interface_1)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(buggychl_state, port_a_0_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(buggychl_state, port_b_0_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("ay2", AY8910, 8000000/4)
MCFG_SOUND_CONFIG(ay8910_interface_2)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(buggychl_state, port_a_1_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(buggychl_state, port_b_1_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("msm", MSM5232, 2000000)

View File

@ -2564,41 +2564,6 @@ WRITE_LINE_MEMBER(calomega_state::write_acia_clock)
update_aciabaud_scale(0);
}
/*************************************************
* Sound Interfaces *
*************************************************/
static const ay8910_interface sys903_ay8912_intf =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("SW3"), /* from schematics */
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface sys905_ay8912_intf =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface sys906_ay8912_intf =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("SW2"), /* From PCB pic. Value is stored at $0539 */
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(calomega_state,ay_aout_w),
DEVCB_DRIVER_MEMBER(calomega_state,ay_bout_w)
};
/*************************************************
* Machine Drivers *
*************************************************/
@ -2640,7 +2605,7 @@ static MACHINE_CONFIG_START( sys903, calomega_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay8912", AY8912, SND_CLOCK) /* confirmed */
MCFG_SOUND_CONFIG(sys903_ay8912_intf)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("SW3")) /* from schematics */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
/* acia */
@ -2661,7 +2626,7 @@ static MACHINE_CONFIG_DERIVED( s903mod, sys903 )
/* sound hardware */
MCFG_SOUND_MODIFY("ay8912")
MCFG_SOUND_CONFIG(sys905_ay8912_intf)
MCFG_AY8910_PORT_A_READ_CB(NULL)
MCFG_DEVICE_REMOVE("acia6850_0")
@ -2685,7 +2650,7 @@ static MACHINE_CONFIG_DERIVED( sys905, sys903 )
/* sound hardware */
MCFG_SOUND_MODIFY("ay8912")
MCFG_SOUND_CONFIG(sys905_ay8912_intf)
MCFG_AY8910_PORT_A_READ_CB(NULL)
MCFG_DEVICE_REMOVE("acia6850_0")
@ -2717,7 +2682,9 @@ static MACHINE_CONFIG_DERIVED( sys906, sys903 )
/* sound hardware */
MCFG_SOUND_MODIFY("ay8912")
MCFG_SOUND_CONFIG(sys906_ay8912_intf)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("SW2")) /* From PCB pic. Value is stored at $0539 */
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(calomega_state, ay_aout_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(calomega_state, ay_bout_w))
MCFG_DEVICE_REMOVE("acia6850_0")

View File

@ -299,23 +299,6 @@ static INPUT_PORTS_START( capbowl )
INPUT_PORTS_END
/*************************************
*
* Sound definitions
*
*************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DEVICE_MEMBER("ticket", ticket_dispenser_device, read),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER("ticket", ticket_dispenser_device, write), /* Also a status LED. See memory map above */
};
/*************************************
*
* TMS34061 interfacing
@ -383,7 +366,8 @@ static MACHINE_CONFIG_START( capbowl, capbowl_state )
MCFG_SOUND_ADD("ymsnd", YM2203, MASTER_CLOCK/2)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(capbowl_state, firqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(DEVREAD8("ticket", ticket_dispenser_device, read))
MCFG_AY8910_PORT_B_WRITE_CB(DEVWRITE8("ticket", ticket_dispenser_device, write)) /* Also a status LED. See memory map above */
MCFG_SOUND_ROUTE(0, "mono", 0.07)
MCFG_SOUND_ROUTE(1, "mono", 0.07)
MCFG_SOUND_ROUTE(2, "mono", 0.07)

View File

@ -277,17 +277,6 @@ READ8_MEMBER(carrera_state::unknown_r)
return machine().rand();
}
/* these are set as input, but I have no idea which input port it uses is for the AY */
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(carrera_state,unknown_r),
DEVCB_DRIVER_MEMBER(carrera_state,unknown_r),
DEVCB_NULL,
DEVCB_NULL
};
PALETTE_INIT_MEMBER(carrera_state, carrera)
{
const UINT8 *color_prom = memregion("proms")->base();
@ -343,7 +332,9 @@ static MACHINE_CONFIG_START( carrera, carrera_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/12)
MCFG_SOUND_CONFIG(ay8910_config)
/* these are set as input, but I have no idea which input port it uses is for the AY */
MCFG_AY8910_PORT_A_READ_CB(READ8(carrera_state, unknown_r))
MCFG_AY8910_PORT_B_READ_CB(READ8(carrera_state, unknown_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END

View File

@ -290,16 +290,6 @@ static GFXDECODE_START( vvillage )
GFXDECODE_ENTRY( "gfx1", 0, tiles8x8_layout, 0, 16 )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_INPUT_PORT("DSW2"),
DEVCB_NULL,
DEVCB_NULL
};
PALETTE_INIT_MEMBER(caswin_state, caswin)
{
const UINT8 *color_prom = memregion("proms")->base();
@ -352,7 +342,8 @@ static MACHINE_CONFIG_START( vvillage, caswin_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 4000000 / 4)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END

View File

@ -1973,13 +1973,6 @@ WRITE_LINE_MEMBER(cave_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
/***************************************************************************
Dangun Feveron
***************************************************************************/
@ -2273,7 +2266,6 @@ static MACHINE_CONFIG_START( hotdogst, cave_state )
MCFG_SOUND_ADD("ymsnd", YM2203, XTAL_32MHz/8)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(cave_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.20)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.20)
MCFG_SOUND_ROUTE(1, "lspeaker", 0.20)
@ -2380,7 +2372,6 @@ static MACHINE_CONFIG_START( mazinger, cave_state )
MCFG_SOUND_ADD("ymsnd", YM2203, XTAL_4MHz)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(cave_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.20)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.20)
MCFG_SOUND_ROUTE(1, "lspeaker", 0.20)
@ -2612,7 +2603,6 @@ static MACHINE_CONFIG_START( pwrinst2, cave_state )
MCFG_SOUND_ADD("ymsnd", YM2203, XTAL_16MHz / 4)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(cave_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.40)
MCFG_SOUND_ROUTE(1, "lspeaker", 0.40)

View File

@ -803,16 +803,6 @@ PALETTE_INIT_MEMBER(cb2001_state, cb2001)
}
}
static const ay8910_interface cb2001_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW4"),
DEVCB_INPUT_PORT("DSW5"),
DEVCB_NULL,
DEVCB_NULL
};
static MACHINE_CONFIG_START( cb2001, cb2001_state )
MCFG_CPU_ADD("maincpu", V35, 20000000) // CPU91A-011-0016JK004; encrypted cpu like nec v25/35 used in some irem game
MCFG_V25_CONFIG(cb2001_decryption_table)
@ -845,7 +835,8 @@ static MACHINE_CONFIG_START( cb2001, cb2001_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 1500000) // wrong
MCFG_SOUND_CONFIG(cb2001_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW4"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW5"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -183,16 +183,6 @@ static GFXDECODE_START( cchance )
GFXDECODE_ENTRY( "gfx1", 0, cchance_layout, 0x0, 32 )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_INPUT_PORT("DSW2"),
DEVCB_NULL,
DEVCB_NULL
};
MACHINE_START_MEMBER(cchance_state,cchance)
{
save_item(NAME(m_screenflip));
@ -240,7 +230,8 @@ static MACHINE_CONFIG_START( cchance, cchance_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 1500000/2)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END

View File

@ -1692,14 +1692,6 @@ GFXDECODE_END
*
*************************************/
static const ay8910_interface centipdb_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(centiped_state,caterplr_rand_r)
};
static const pokey_interface milliped_pokey_interface_1 =
{
{ DEVCB_NULL },
@ -1796,7 +1788,7 @@ static MACHINE_CONFIG_DERIVED( centipdb, centiped )
/* sound hardware */
MCFG_SOUND_REPLACE("pokey", AY8910, 12096000/8)
MCFG_SOUND_CONFIG(centipdb_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(centiped_state, caterplr_rand_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
MACHINE_CONFIG_END
@ -1812,7 +1804,7 @@ static MACHINE_CONFIG_DERIVED( magworm, centiped_base )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("pokey", AY8910, 12096000/8)
MCFG_SOUND_CONFIG(centipdb_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(centiped_state, caterplr_rand_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
MACHINE_CONFIG_END

View File

@ -161,27 +161,6 @@ static ADDRESS_MAP_START( chaknpop_map, AS_PROGRAM, 8, chaknpop_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank1") // bitmap plane 1-4
ADDRESS_MAP_END
static const ay8910_interface ay8910_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSWA"), // DSW A
DEVCB_INPUT_PORT("DSWB"), // DSW B
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface ay8910_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(chaknpop_state,unknown_port_1_w), // ??
DEVCB_DRIVER_MEMBER(chaknpop_state,unknown_port_2_w) // ??
};
/***************************************************************************
Input Port(s)
@ -394,11 +373,13 @@ static MACHINE_CONFIG_START( chaknpop, chaknpop_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, XTAL_18MHz / 12) /* Verified on PCB */
MCFG_SOUND_CONFIG(ay8910_interface_1)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSWA"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSWB"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
MCFG_SOUND_ADD("ay2", AY8910, XTAL_18MHz / 12) /* Verified on PCB */
MCFG_SOUND_CONFIG(ay8910_interface_2)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(chaknpop_state, unknown_port_1_w)) // ??
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(chaknpop_state, unknown_port_2_w)) // ??
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MACHINE_CONFIG_END

View File

@ -373,18 +373,6 @@ WRITE_LINE_MEMBER(chanbara_state::sound_irq)
m_maincpu->set_input_line(0, state);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(chanbara_state,chanbara_ay_out_0_w),
DEVCB_DRIVER_MEMBER(chanbara_state,chanbara_ay_out_1_w),
};
void chanbara_state::machine_start()
{
save_item(NAME(m_scroll));
@ -421,7 +409,10 @@ static MACHINE_CONFIG_START( chanbara, chanbara_state )
MCFG_SOUND_ADD("ymsnd", YM2203, 12000000/8)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(chanbara_state, sound_irq))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(chanbara_state, chanbara_ay_out_0_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(chanbara_state, chanbara_ay_out_1_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -379,28 +379,6 @@ static INPUT_PORTS_START( changela )
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(50) PORT_KEYDELTA(8) PORT_CONDITION("DSWA", 0x20, EQUALS, 0x00)
INPUT_PORTS_END
static const ay8910_interface ay8910_interface_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSWA"),
DEVCB_INPUT_PORT("DSWB"),
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface ay8910_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSWC"),
DEVCB_INPUT_PORT("DSWD"),
DEVCB_NULL,
DEVCB_NULL
};
TIMER_DEVICE_CALLBACK_MEMBER(changela_state::changela_scanline)
{
int scanline = param;
@ -517,11 +495,13 @@ static MACHINE_CONFIG_START( changela, changela_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 1250000)
MCFG_SOUND_CONFIG(ay8910_interface_1)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSWA"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSWB"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("ay2", AY8910, 1250000)
MCFG_SOUND_CONFIG(ay8910_interface_2)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSWC"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSWD"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -510,15 +510,6 @@ WRITE_LINE_MEMBER(chinagat_state::chinagat_irq_handler)
m_soundcpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE );
}
/* This is only on the second bootleg board */
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
MACHINE_START_MEMBER(chinagat_state,chinagat)
{
/* configure banks */
@ -682,7 +673,6 @@ static MACHINE_CONFIG_START( saiyugoub2, chinagat_state )
MCFG_SOUND_ADD("ym1", YM2203, 3579545)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(chinagat_state, chinagat_irq_handler))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_SOUND_ROUTE(0, "mono", 0.50)
MCFG_SOUND_ROUTE(1, "mono", 0.50)
MCFG_SOUND_ROUTE(2, "mono", 0.50)

View File

@ -150,17 +150,6 @@ WRITE8_MEMBER(chinsan_state::ym_port_w2)
logerror("ym_write port 2 %02x\n", data);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_INPUT_PORT("DSW2"),
DEVCB_DRIVER_MEMBER(chinsan_state,ym_port_w1),
DEVCB_DRIVER_MEMBER(chinsan_state,ym_port_w2)
};
WRITE8_MEMBER(chinsan_state::chinsan_port00_w)
{
m_port_select = data;
@ -618,7 +607,10 @@ static MACHINE_CONFIG_START( chinsan, chinsan_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2203, 1500000) /* ? Mhz */
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW2"))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(chinsan_state, ym_port_w1))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(chinsan_state, ym_port_w2))
MCFG_SOUND_ROUTE(0, "mono", 0.15)
MCFG_SOUND_ROUTE(1, "mono", 0.15)
MCFG_SOUND_ROUTE(2, "mono", 0.15)

View File

@ -169,20 +169,6 @@ static GFXDECODE_START( citycon )
GFXDECODE_ENTRY( "gfx3", 0x0b000, tilelayout, 256, 16 )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_DRIVER_MEMBER(driver_device, soundlatch2_byte_r),
DEVCB_NULL,
DEVCB_NULL
};
void citycon_state::machine_start()
{
save_item(NAME(m_bg_image));
@ -226,7 +212,8 @@ static MACHINE_CONFIG_START( citycon, citycon_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SOUND_ADD("ymsnd", YM2203, 1250000)
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_AY8910_PORT_B_READ_CB(READ8(driver_device, soundlatch2_byte_r))
MCFG_SOUND_ROUTE(0, "mono", 0.40)
MCFG_SOUND_ROUTE(1, "mono", 0.40)
MCFG_SOUND_ROUTE(2, "mono", 0.40)

View File

@ -867,16 +867,6 @@ MACHINE_RESET_MEMBER(cntsteer_state,zerotrgt)
MACHINE_RESET_CALL_MEMBER(cntsteer);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DEVICE_MEMBER("dac", dac_device, write_unsigned8),
DEVCB_NULL
};
static MACHINE_CONFIG_START( cntsteer, cntsteer_state )
/* basic machine hardware */
@ -916,7 +906,7 @@ static MACHINE_CONFIG_START( cntsteer, cntsteer_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(DEVWRITE8("dac", dac_device, write_unsigned8))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("ay2", AY8910, 1500000)

View File

@ -1437,18 +1437,6 @@ UINT32 coinmstr_state::screen_update_coinmstr(screen_device &screen, bitmap_ind1
}
static const ay8910_interface ay8912_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static MACHINE_CONFIG_START( coinmstr, coinmstr_state )
MCFG_CPU_ADD("maincpu", Z80, CPU_CLOCK) // 7 MHz.
MCFG_CPU_PROGRAM_MAP(coinmstr_map)
@ -1486,7 +1474,7 @@ static MACHINE_CONFIG_START( coinmstr, coinmstr_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, SND_CLOCK)
MCFG_SOUND_CONFIG(ay8912_interface)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END

View File

@ -635,26 +635,6 @@ GFXDECODE_END
*
*************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(combatsc_state,combatsc_portA_w),
DEVCB_NULL
};
static const ay8910_interface ay8910_bootleg_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
MACHINE_START_MEMBER(combatsc_state,combatsc)
{
UINT8 *MEM = memregion("maincpu")->base() + 0x38000;
@ -748,7 +728,7 @@ static MACHINE_CONFIG_START( combatsc, combatsc_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2203, 3000000)
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(combatsc_state, combatsc_portA_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
@ -792,7 +772,6 @@ static MACHINE_CONFIG_START( combatscb, combatsc_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2203, 3000000)
MCFG_YM2203_AY8910_INTF(&ay8910_bootleg_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_SOUND_ADD("msm5205", MSM5205, 384000)

View File

@ -204,17 +204,6 @@ WRITE_LINE_MEMBER(compgolf_state::sound_irq)
m_maincpu->set_input_line(0, state);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(compgolf_state,compgolf_scrollx_lo_w),
DEVCB_DRIVER_MEMBER(compgolf_state,compgolf_scrolly_lo_w),
};
/*************************************
*
* Machine driver
@ -265,7 +254,8 @@ static MACHINE_CONFIG_START( compgolf, compgolf_state )
MCFG_SOUND_ADD("ymsnd", YM2203, 1500000)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(compgolf_state, sound_irq))
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(compgolf_state, compgolf_scrollx_lo_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(compgolf_state, compgolf_scrolly_lo_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -1341,20 +1341,6 @@ static INPUT_PORTS_START( luckyrlt )
INPUT_PORTS_END
/*******************************************
* Sound Interface *
*******************************************/
static const ay8910_interface aysnd_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, /* Port A read */
DEVCB_NULL, /* Port B read */
DEVCB_DRIVER_MEMBER(corona_state,ay_port_a_out), /* Port A write */
DEVCB_DRIVER_MEMBER(corona_state,ay_port_b_out) /* Port B write */
};
/*******************************************
* Machine Drivers *
*******************************************/
@ -1388,7 +1374,8 @@ static MACHINE_CONFIG_START( winner81, corona_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8912, AY_CLK1) /* measured */
MCFG_SOUND_CONFIG(aysnd_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(corona_state, ay_port_a_out)) /* Port A write */
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(corona_state, ay_port_b_out)) /* Port B write */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -467,6 +467,7 @@ static MACHINE_CONFIG_START( crshrace, crshrace_state )
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(crshrace_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -759,27 +759,6 @@ WRITE_LINE_MEMBER(darius_state::irqhandler) /* assumes Z80 sandwiched between 68
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, /* portA read */
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(darius_state,darius_write_portA0), /* portA write */
DEVCB_DRIVER_MEMBER(darius_state,darius_write_portB0), /* portB write */
};
static const ay8910_interface ay8910_config_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, /* portA read */
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(darius_state,darius_write_portA1), /* portA write */
DEVCB_DRIVER_MEMBER(darius_state,darius_write_portB1) /* portB write */
};
/***********************************************************
MACHINE DRIVERS
***********************************************************/
@ -898,7 +877,8 @@ static MACHINE_CONFIG_START( darius, darius_state )
MCFG_SOUND_ADD("ym1", YM2203, 4000000)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(darius_state, irqhandler))
MCFG_YM2203_AY8910_INTF(&ay8910_config_1)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(darius_state, darius_write_portA0)) /* portA write */
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(darius_state, darius_write_portB0)) /* portB write */
MCFG_SOUND_ROUTE(0, "filter0.0l", 0.08)
MCFG_SOUND_ROUTE(0, "filter0.0r", 0.08)
MCFG_SOUND_ROUTE(1, "filter0.1l", 0.08)
@ -909,7 +889,8 @@ static MACHINE_CONFIG_START( darius, darius_state )
MCFG_SOUND_ROUTE(3, "filter0.3r", 0.60)
MCFG_SOUND_ADD("ym2", YM2203, 4000000)
MCFG_YM2203_AY8910_INTF(&ay8910_config_2)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(darius_state, darius_write_portA1)) /* portA write */
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(darius_state, darius_write_portB1)) /* portB write */
MCFG_SOUND_ROUTE(0, "filter1.0l", 0.08)
MCFG_SOUND_ROUTE(0, "filter1.0r", 0.08)
MCFG_SOUND_ROUTE(1, "filter1.1l", 0.08)

View File

@ -429,16 +429,6 @@ UINT32 ddayjlc_state::screen_update_ddayjlc(screen_device &screen, bitmap_ind16
return 0;
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
INTERRUPT_GEN_MEMBER(ddayjlc_state::ddayjlc_interrupt)
{
if(m_main_nmi_enable)
@ -542,7 +532,7 @@ static MACHINE_CONFIG_START( ddayjlc, ddayjlc_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, 12000000/6)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(driver_device, soundlatch_byte_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_SOUND_ADD("ay2", AY8910, 12000000/6)

View File

@ -4182,15 +4182,6 @@ ADDRESS_MAP_END
Hanafuda Hana Tengoku
***************************************************************************/
static const ay8910_interface htengoku_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
// A B
DEVCB_DRIVER_MEMBER(ddenlovr_state,htengoku_dsw_r), DEVCB_NULL, // R
DEVCB_NULL, DEVCB_DRIVER_MEMBER(ddenlovr_state,htengoku_dsw_w) // W
};
static ADDRESS_MAP_START( yarunara_mem_map, AS_PROGRAM, 8, dynax_state )
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAM
@ -4231,7 +4222,8 @@ static MACHINE_CONFIG_START( htengoku, ddenlovr_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 20000000 / 16)
MCFG_SOUND_CONFIG(htengoku_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(ddenlovr_state, htengoku_dsw_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, htengoku_dsw_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_SOUND_ADD("ymsnd", YM2413, 3579545)
@ -9475,16 +9467,6 @@ static MACHINE_CONFIG_DERIVED( akamaru, ddenlovr )
MCFG_CPU_PROGRAM_MAP(akamaru_map)
MACHINE_CONFIG_END
static const ay8910_interface quiz365_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
// A B
DEVCB_DRIVER_MEMBER(ddenlovr_state,quiz365_input_r), DEVCB_NULL, // R
DEVCB_NULL, DEVCB_DRIVER_MEMBER(ddenlovr_state,ddenlovr_select_w) // W
};
static MACHINE_CONFIG_DERIVED( quiz365, ddenlovr )
/* basic machine hardware */
@ -9492,7 +9474,8 @@ static MACHINE_CONFIG_DERIVED( quiz365, ddenlovr )
MCFG_CPU_PROGRAM_MAP(quiz365_map)
MCFG_SOUND_MODIFY("aysnd")
MCFG_SOUND_CONFIG(quiz365_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(ddenlovr_state, quiz365_input_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, ddenlovr_select_w))
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( nettoqc, ddenlovr )
@ -9902,15 +9885,6 @@ TIMER_DEVICE_CALLBACK_MEMBER(ddenlovr_state::mjmyster_irq)
m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xfa);
}
static const ay8910_interface mjmyster_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
// A B
DEVCB_NULL, DEVCB_NULL, // R
DEVCB_NULL, DEVCB_DRIVER_MEMBER(ddenlovr_state,ddenlovr_select_w) // W
};
WRITE_LINE_MEMBER(ddenlovr_state::mjmyster_rtc_irq)
{
/* I haven't found a irq ack register, so I need this kludge to
@ -9939,7 +9913,7 @@ static MACHINE_CONFIG_DERIVED( mjmyster, quizchq )
MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,mjmyster)
MCFG_SOUND_ADD("aysnd", AY8910, 3579545)
MCFG_SOUND_CONFIG(mjmyster_ay8910_interface)
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, ddenlovr_select_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
@ -9966,15 +9940,6 @@ INTERRUPT_GEN_MEMBER(ddenlovr_state::hginga_irq)
m_maincpu->set_input_line_and_vector(0, HOLD_LINE, 0xf8);
}
static const ay8910_interface hginga_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
// A B
DEVCB_DRIVER_MEMBER(ddenlovr_state,hginga_dsw_r), DEVCB_NULL, // R
DEVCB_NULL, DEVCB_DRIVER_MEMBER(ddenlovr_state,ddenlovr_select_w) // W
};
WRITE_LINE_MEMBER(ddenlovr_state::hginga_rtc_irq)
{
/* I haven't found a irq ack register, so I need this kludge to
@ -10001,7 +9966,8 @@ static MACHINE_CONFIG_DERIVED( hginga, quizchq )
MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,mjmyster)
MCFG_SOUND_ADD("aysnd", AY8910, 3579545)
MCFG_SOUND_CONFIG(hginga_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(ddenlovr_state, hginga_dsw_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, ddenlovr_select_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
@ -10019,7 +9985,8 @@ static MACHINE_CONFIG_DERIVED( hgokou, quizchq )
MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,mjmyster)
MCFG_SOUND_ADD("aysnd", AY8910, 3579545)
MCFG_SOUND_CONFIG(hginga_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(ddenlovr_state, hginga_dsw_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, ddenlovr_select_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
@ -10055,7 +10022,7 @@ static MACHINE_CONFIG_DERIVED( mjmyuniv, quizchq )
MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(ddenlovr_state, mjmyster_rtc_irq))
MCFG_SOUND_ADD("aysnd", AY8910, 1789772)
MCFG_SOUND_CONFIG(mjmyster_ay8910_interface)
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, ddenlovr_select_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
@ -10075,7 +10042,7 @@ static MACHINE_CONFIG_DERIVED( mjmyornt, quizchq )
MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(ddenlovr_state, mjmyster_rtc_irq))
MCFG_SOUND_ADD("aysnd", AY8910, 1789772)
MCFG_SOUND_CONFIG(mjmyster_ay8910_interface)
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, ddenlovr_select_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
@ -10277,15 +10244,6 @@ MACHINE_CONFIG_END
Return Of Sel Jan II
***************************************************************************/
static const ay8910_interface seljan2_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
// A B
DEVCB_DRIVER_MEMBER(ddenlovr_state,seljan2_dsw_r), DEVCB_NULL, // R
DEVCB_NULL, DEVCB_DRIVER_MEMBER(ddenlovr_state,ddenlovr_select_w) // W
};
MACHINE_START_MEMBER(ddenlovr_state,seljan2)
{
UINT8 *ROM = memregion("maincpu")->base();
@ -10332,7 +10290,8 @@ static MACHINE_CONFIG_START( seljan2, ddenlovr_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_28_63636MHz / 8)
MCFG_SOUND_CONFIG(seljan2_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(ddenlovr_state, seljan2_dsw_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(ddenlovr_state, ddenlovr_select_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MCFG_OKIM6295_ADD("oki", XTAL_28_63636MHz / 28, OKIM6295_PIN7_HIGH) // ?

View File

@ -219,17 +219,6 @@ static GFXDECODE_START( ddribble )
GFXDECODE_ENTRY( "gfx2", 0x40000, spritelayout, 64, 16 ) /* colors 0-15 but using lookup table */
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(ddribble_state,ddribble_vlm5030_busy_r),
DEVCB_DRIVER_MEMBER(ddribble_state,ddribble_vlm5030_ctrl_w),
DEVCB_NULL
};
void ddribble_state::machine_start()
{
@ -296,7 +285,8 @@ static MACHINE_CONFIG_START( ddribble, ddribble_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2203, XTAL_3_579545MHz) /* verified on pcb */
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_B_READ_CB(READ8(ddribble_state, ddribble_vlm5030_busy_r))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(ddribble_state, ddribble_vlm5030_ctrl_w))
MCFG_SOUND_ROUTE(0, "filter1", 0.25)
MCFG_SOUND_ROUTE(1, "filter2", 0.25)
MCFG_SOUND_ROUTE(2, "filter3", 0.25)

View File

@ -360,15 +360,6 @@ TIMER_DEVICE_CALLBACK_MEMBER(dfruit_state::dfruit_irq_scanline)
}
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("IN4"), DEVCB_INPUT_PORT("IN5"), DEVCB_NULL, DEVCB_NULL,
};
#define MASTER_CLOCK XTAL_14MHz
static MACHINE_CONFIG_START( dfruit, dfruit_state )
@ -406,7 +397,8 @@ static MACHINE_CONFIG_START( dfruit, dfruit_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("opn", YM2203, MASTER_CLOCK/4)
MCFG_YM2203_AY8910_INTF(&ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("IN4"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("IN5"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END

View File

@ -687,23 +687,6 @@ static GFXDECODE_START( dlair )
GFXDECODE_END
/*************************************
*
* Sound chip definitions
*
*************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"),
DEVCB_INPUT_PORT("DSW2")
};
/*************************************
*
* Machine drivers
@ -724,7 +707,8 @@ static MACHINE_CONFIG_START( dlair_base, dlair_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK_US/8)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW2"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.33)
MACHINE_CONFIG_END

View File

@ -286,17 +286,6 @@ static GFXDECODE_START( dominob )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_INPUT_PORT("DSW"),
DEVCB_NULL,
DEVCB_NULL
};
static MACHINE_CONFIG_START( dominob, dominob_state )
/* basic machine hardware */
@ -322,7 +311,7 @@ static MACHINE_CONFIG_START( dominob, dominob_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_12MHz/4)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END

View File

@ -789,20 +789,6 @@ WRITE_LINE_MEMBER(dooyong_state::irqhandler_2203_2)
m_audiocpu->set_input_line(0, (m_interrupt_line_1 | m_interrupt_line_2) ? ASSERT_LINE : CLEAR_LINE);
}
static const ay8910_interface ay8910_config_1 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(dooyong_state,unk_r), DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
static const ay8910_interface ay8910_config_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(dooyong_state,unk_r), DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
/***************************************************************************
Machine driver(s)
@ -815,12 +801,12 @@ static MACHINE_CONFIG_FRAGMENT( sound_2203 )
MCFG_SOUND_ADD("ym1", YM2203, 1500000)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(dooyong_state,irqhandler_2203_1))
MCFG_YM2203_AY8910_INTF(&ay8910_config_1)
MCFG_AY8910_PORT_A_READ_CB(READ8(dooyong_state, unk_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SOUND_ADD("ym2", YM2203, 1500000)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(dooyong_state, irqhandler_2203_2))
MCFG_YM2203_AY8910_INTF(&ay8910_config_2)
MCFG_AY8910_PORT_A_READ_CB(READ8(dooyong_state, unk_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@ -885,12 +871,12 @@ static MACHINE_CONFIG_START( lastday, dooyong_state )
MCFG_SOUND_ADD("ym1", YM2203, 4000000)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(dooyong_state,irqhandler_2203_1))
MCFG_YM2203_AY8910_INTF(&ay8910_config_1)
MCFG_AY8910_PORT_A_READ_CB(READ8(dooyong_state, unk_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SOUND_ADD("ym2", YM2203, 4000000)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(dooyong_state, irqhandler_2203_2))
MCFG_YM2203_AY8910_INTF(&ay8910_config_2)
MCFG_AY8910_PORT_A_READ_CB(READ8(dooyong_state, unk_r))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END

View File

@ -761,17 +761,6 @@ GFXDECODE_END
Machine Drivers
***************************************************************************/
static const ay8910_interface dunhuang_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
// A B
DEVCB_NULL, DEVCB_DRIVER_MEMBER(dunhuang_state,dunhuang_dsw_r), // R
DEVCB_DRIVER_MEMBER(dunhuang_state, dunhuang_input_w), DEVCB_NULL // W
};
void dunhuang_state::machine_start()
{
UINT8 *ROM = memregion("maincpu")->base();
@ -850,7 +839,8 @@ static MACHINE_CONFIG_START( dunhuang, dunhuang_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("ay8910", AY8910, 12000000/8)
MCFG_SOUND_CONFIG(dunhuang_ay8910_interface)
MCFG_AY8910_PORT_B_READ_CB(READ8(dunhuang_state, dunhuang_dsw_r))
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(dunhuang_state, dunhuang_input_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MCFG_OKIM6295_ADD("oki", 12000000/8, OKIM6295_PIN7_HIGH)

View File

@ -999,17 +999,6 @@ PALETTE_INIT_MEMBER(dwarfd_state, dwarfd)
palette.set_pen_color(6, rgb_t(255, 0, 0));
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("IN2"),
DEVCB_INPUT_PORT("IN1"),
DEVCB_NULL,
DEVCB_NULL
};
void dwarfd_state::machine_start()
{
save_item(NAME(m_bank));
@ -1077,7 +1066,8 @@ static MACHINE_CONFIG_START( dwarfd, dwarfd_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("IN2"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("IN1"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -4056,17 +4056,6 @@ MACHINE_START_MEMBER(dynax_state,hnoridur)
Hana no Mai
***************************************************************************/
static const ay8910_interface hanamai_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW1"), /* Port A Read: DSW */
DEVCB_INPUT_PORT("DSW0"), /* Port B Read: DSW */
DEVCB_NULL, /* Port A Write */
DEVCB_NULL, /* Port B Write */
};
static MACHINE_CONFIG_START( hanamai, dynax_state )
/* basic machine hardware */
@ -4102,7 +4091,8 @@ static MACHINE_CONFIG_START( hanamai, dynax_state )
MCFG_SOUND_ADD("ymsnd", YM2203, 22000000 / 8)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(dynax_state, sprtmtch_sound_callback))
MCFG_YM2203_AY8910_INTF(&hanamai_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW0"))
MCFG_SOUND_ROUTE(0, "mono", 0.20)
MCFG_SOUND_ROUTE(1, "mono", 0.20)
MCFG_SOUND_ROUTE(2, "mono", 0.20)
@ -4120,13 +4110,6 @@ MACHINE_CONFIG_END
Hana Oriduru
***************************************************************************/
static const ay8910_interface hnoridur_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW0") /* Port A Read: DSW */
};
static MACHINE_CONFIG_START( hnoridur, dynax_state )
/* basic machine hardware */
@ -4157,7 +4140,7 @@ static MACHINE_CONFIG_START( hnoridur, dynax_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 22000000 / 16)
MCFG_SOUND_CONFIG(hnoridur_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW0"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_SOUND_ADD("ymsnd", YM2413, 3579545)
@ -4204,7 +4187,7 @@ static MACHINE_CONFIG_START( hjingi, dynax_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_22MHz / 16)
MCFG_SOUND_CONFIG(hnoridur_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW0"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_3_579545MHz )
@ -4221,16 +4204,6 @@ MACHINE_CONFIG_END
Sports Match
***************************************************************************/
static const ay8910_interface sprtmtch_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("DSW0"), /* Port A Read: DSW */
DEVCB_INPUT_PORT("DSW1"), /* Port B Read: DSW */
DEVCB_NULL, /* Port A Write */
DEVCB_NULL, /* Port B Write */
};
static MACHINE_CONFIG_START( sprtmtch, dynax_state )
/* basic machine hardware */
@ -4263,7 +4236,8 @@ static MACHINE_CONFIG_START( sprtmtch, dynax_state )
MCFG_SOUND_ADD("ymsnd", YM2203, 22000000 / 8)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(dynax_state, sprtmtch_sound_callback))
MCFG_YM2203_AY8910_INTF(&sprtmtch_ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW0"))
MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW1"))
MCFG_SOUND_ROUTE(0, "mono", 0.20)
MCFG_SOUND_ROUTE(1, "mono", 0.20)
MCFG_SOUND_ROUTE(2, "mono", 0.20)
@ -4390,13 +4364,6 @@ MACHINE_CONFIG_END
// dual monitor, 2 CPU's, 2 blitters
static const ay8910_interface jantouki_ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
MACHINE_START_MEMBER(dynax_state,jantouki)
{
UINT8 *MAIN = memregion("maincpu")->base();
@ -4461,7 +4428,6 @@ static MACHINE_CONFIG_START( jantouki, dynax_state )
MCFG_SOUND_ADD("ymsnd", YM2203, 22000000 / 8)
MCFG_YM2203_IRQ_HANDLER(WRITELINE(dynax_state, jantouki_sound_callback))
MCFG_YM2203_AY8910_INTF(&jantouki_ay8910_config)
MCFG_SOUND_ROUTE(0, "mono", 0.20)
MCFG_SOUND_ROUTE(1, "mono", 0.20)
MCFG_SOUND_ROUTE(2, "mono", 0.20)
@ -4594,15 +4560,6 @@ TIMER_DEVICE_CALLBACK_MEMBER(dynax_state::tenkai_interrupt)
m_maincpu->set_input_line(INPUT_LINE_IRQ1, HOLD_LINE);
}
static const ay8910_interface tenkai_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
// A // B
DEVCB_DRIVER_MEMBER(dynax_state,tenkai_dsw_r), DEVCB_NULL, // Read
DEVCB_NULL, DEVCB_DRIVER_MEMBER(dynax_state,tenkai_dswsel_w) // Write
};
MACHINE_START_MEMBER(dynax_state,tenkai)
{
MACHINE_START_CALL_MEMBER(dynax);
@ -4646,7 +4603,8 @@ static MACHINE_CONFIG_START( tenkai, dynax_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 22000000 / 16)
MCFG_SOUND_CONFIG(tenkai_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(dynax_state, tenkai_dsw_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(dynax_state, tenkai_dswsel_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_SOUND_ADD("ymsnd", YM2413, 3579545)
@ -4716,7 +4674,8 @@ static MACHINE_CONFIG_START( gekisha, dynax_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_24MHz / 16) // ?
MCFG_SOUND_CONFIG(tenkai_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(dynax_state, tenkai_dsw_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(dynax_state, tenkai_dswsel_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MCFG_SOUND_ADD("ymsnd", YM2413, XTAL_24MHz / 8) // ?

View File

@ -437,20 +437,6 @@ CUSTOM_INPUT_MEMBER(enigma2_state::p2_controls_r)
return ioport("P1CONTROLS")->read();
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(enigma2_state,sound_latch_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(enigma2_state,protection_data_w)
};
static ADDRESS_MAP_START( engima2_main_cpu_map, AS_PROGRAM, 8, enigma2_state )
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_WRITENOP
@ -628,7 +614,8 @@ static MACHINE_CONFIG_START( enigma2, enigma2_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, AY8910_CLOCK)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(enigma2_state, sound_latch_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(enigma2_state, protection_data_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@ -654,7 +641,8 @@ static MACHINE_CONFIG_START( enigma2a, enigma2_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, AY8910_CLOCK)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(enigma2_state, sound_latch_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(enigma2_state, protection_data_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END

View File

@ -1089,17 +1089,6 @@ GFXDECODE_END
/******************************************************************************/
static const ay8910_interface equites_8910intf =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(equites_state,equites_8910porta_w),
DEVCB_DRIVER_MEMBER(equites_state,equites_8910portb_w)
};
static const char *const alphamc07_sample_names[] =
{
"*equites",
@ -1144,7 +1133,8 @@ static MACHINE_CONFIG_FRAGMENT( common_sound )
MCFG_SOUND_ROUTE(10,"mono", 0.12) // pin 22 Noise Output (this actually feeds an analog section)
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_6_144MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(equites_8910intf)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(equites_state, equites_8910porta_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(equites_state, equites_8910portb_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
MCFG_DAC_ADD("dac1")

View File

@ -273,27 +273,6 @@ UINT32 ettrivia_state::screen_update_ettrivia(screen_device &screen, bitmap_ind1
return 0;
}
static const ay8910_interface ay8912_interface_2 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("IN1"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
static const ay8910_interface ay8912_interface_3 =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_INPUT_PORT("IN0"),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
INTERRUPT_GEN_MEMBER(ettrivia_state::ettrivia_interrupt)
{
if( ioport("COIN")->read() & 0x01 )
@ -330,11 +309,11 @@ static MACHINE_CONFIG_START( ettrivia, ettrivia_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8912_interface_2)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("IN1"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_SOUND_ADD("ay3", AY8910, 1500000)
MCFG_SOUND_CONFIG(ay8912_interface_3)
MCFG_AY8910_PORT_A_READ_CB(IOPORT("IN0"))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END

View File

@ -335,25 +335,6 @@ static GFXDECODE_START( exerion )
GFXDECODE_END
/*************************************
*
* Sound interfaces
*
*************************************/
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(exerion_state,exerion_porta_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(exerion_state,exerion_portb_w)
};
/*************************************
*
* Machine drivers
@ -413,7 +394,8 @@ static MACHINE_CONFIG_START( exerion, exerion_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MCFG_SOUND_ADD("ay2", AY8910, EXERION_AY8910_CLOCK)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_READ_CB(READ8(exerion_state, exerion_porta_r))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(exerion_state, exerion_portb_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END

View File

@ -450,6 +450,7 @@ static MACHINE_CONFIG_START( f1gp, f1gp_state )
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(f1gp_state, irqhandler))
MCFG_AY8910_OUTPUT_TYPE(AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -459,21 +459,6 @@ void fireball_state::machine_reset()
output_set_value("RV", 0);
}
/******************************
* AY 3-8910 *
******************************/
static const ay8910_interface ay8912_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL
};
/*************************
* INT callback *
*************************/
@ -515,7 +500,6 @@ static MACHINE_CONFIG_START( fireball, fireball_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8912, AY_CLK)
MCFG_SOUND_CONFIG(ay8912_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
/* Video */

View File

@ -403,27 +403,6 @@ INPUT_PORTS_END
***************************************************************************/
static const ay8910_interface ay8910_config_1 =
{
AY8910_LEGACY_OUTPUT, /* Flags */
AY8910_DEFAULT_LOADS, /* Load on channel in ohms */
DEVCB_DRIVER_MEMBER(flipjack_state,flipjack_soundlatch_r), /* Port A read */
DEVCB_NULL, /* Port B read */
DEVCB_NULL, /* Port A write */
DEVCB_NULL /* Port B write */
};
static const ay8910_interface ay8910_config_2 =
{
AY8910_LEGACY_OUTPUT, /* Flags */
AY8910_DEFAULT_LOADS, /* Load on channel in ohms */
DEVCB_NULL, /* Port A read */
DEVCB_NULL, /* Port B read */
DEVCB_NULL, /* Port A write */
DEVCB_NULL /* Port B write */
};
static const gfx_layout tilelayout =
{
8, 8,
@ -490,11 +469,10 @@ static MACHINE_CONFIG_START( flipjack, flipjack_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ay1", AY8910, MASTER_CLOCK/8)
MCFG_SOUND_CONFIG(ay8910_config_1)
MCFG_AY8910_PORT_A_READ_CB(READ8(flipjack_state, flipjack_soundlatch_r)) /* Port A read */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("ay2", AY8910, MASTER_CLOCK/8)
MCFG_SOUND_CONFIG(ay8910_config_2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -972,16 +972,6 @@ static GFXDECODE_START( flstory )
GFXDECODE_END
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(flstory_state,sound_control_2_w),
DEVCB_DRIVER_MEMBER(flstory_state,sound_control_3_w)
};
void flstory_state::machine_start()
{
/* video */
@ -1087,7 +1077,8 @@ static MACHINE_CONFIG_START( flstory, flstory_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_8MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(flstory_state, sound_control_2_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(flstory_state, sound_control_3_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MCFG_SOUND_ADD("msm", MSM5232, XTAL_8MHz/4) /* verified on pcb */
@ -1146,7 +1137,8 @@ static MACHINE_CONFIG_START( onna34ro, flstory_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 8000000/4)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(flstory_state, sound_control_2_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(flstory_state, sound_control_3_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MCFG_SOUND_ADD("msm", MSM5232, 8000000/4)
@ -1205,7 +1197,8 @@ static MACHINE_CONFIG_START( victnine, flstory_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, 8000000/4)
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(flstory_state, sound_control_2_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(flstory_state, sound_control_3_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("msm", MSM5232, 8000000/4)
@ -1270,7 +1263,8 @@ static MACHINE_CONFIG_START( rumba, flstory_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_8MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(flstory_state, sound_control_2_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(flstory_state, sound_control_3_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("msm", MSM5232, XTAL_8MHz/4) /* verified on pcb */

View File

@ -87,17 +87,6 @@ WRITE8_MEMBER(forte2_state::forte2_ay8910_set_input_mask)
m_input_mask = data;
}
static const ay8910_interface forte2_ay8910_interface =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(forte2_state,forte2_ay8910_read_input),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(forte2_state,forte2_ay8910_set_input_mask)
};
WRITE_LINE_MEMBER(forte2_state::vdp_interrupt)
{
m_maincpu->set_input_line(0, (state ? HOLD_LINE : CLEAR_LINE));
@ -132,7 +121,8 @@ static MACHINE_CONFIG_START( pesadelo, forte2_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, (float)XTAL_3_579545MHz/2)
MCFG_SOUND_CONFIG(forte2_ay8910_interface)
MCFG_AY8910_PORT_A_READ_CB(READ8(forte2_state, forte2_ay8910_read_input))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(forte2_state, forte2_ay8910_set_input_mask))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

View File

@ -514,18 +514,6 @@ Seems to work properly, but must be checked closely...
// logerror("AY port B write %02x\n",data);
}
static const ay8910_interface ay8910_config =
{
AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(fortecar_state,ayporta_w),
DEVCB_DRIVER_MEMBER(fortecar_state,ayportb_w)
};
static ADDRESS_MAP_START( fortecar_map, AS_PROGRAM, 8, fortecar_state )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_ROM
@ -690,7 +678,8 @@ static MACHINE_CONFIG_START( fortecar, fortecar_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("aysnd", AY8910, AY_CLOCK) /* 1.5 MHz, measured */
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(fortecar_state, ayporta_w))
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(fortecar_state, ayportb_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END

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