modernised the YM2610 interface [smf]

This commit is contained in:
smf- 2013-05-10 18:21:22 +00:00
parent 81014c8b47
commit 9dbf2320c1
33 changed files with 241 additions and 462 deletions

View File

@ -16,48 +16,28 @@
#include "2610intf.h"
#include "fm.h"
struct ym2610_state
{
sound_stream * stream;
emu_timer * timer[2];
void * chip;
void * psg;
const ym2610_interface *intf;
device_t *device;
devcb_resolved_write_line irqhandler;
};
INLINE ym2610_state *get_safe_token(device_t *device)
{
assert(device != NULL);
assert(device->type() == YM2610 || device->type() == YM2610B);
return (ym2610_state *)downcast<ym2610_device *>(device)->token();
}
static void psg_set_clock(void *param, int clock)
{
ym2610_state *info = (ym2610_state *)param;
ay8910_set_clock_ym(info->psg, clock);
ym2610_device *ym2610 = downcast<ym2610_device *>(param);
ay8910_set_clock_ym(ym2610->_psg(), clock);
}
static void psg_write(void *param, int address, int data)
{
ym2610_state *info = (ym2610_state *)param;
ay8910_write_ym(info->psg, address, data);
ym2610_device *ym2610 = downcast<ym2610_device *>(param);
ay8910_write_ym(ym2610->_psg(), address, data);
}
static int psg_read(void *param)
{
ym2610_state *info = (ym2610_state *)param;
return ay8910_read_ym(info->psg);
ym2610_device *ym2610 = downcast<ym2610_device *>(param);
return ay8910_read_ym(ym2610->_psg());
}
static void psg_reset(void *param)
{
ym2610_state *info = (ym2610_state *)param;
ay8910_reset_ym(info->psg);
ym2610_device *ym2610 = downcast<ym2610_device *>(param);
ay8910_reset_ym(ym2610->_psg());
}
static const ssg_callbacks psgintf =
@ -68,106 +48,132 @@ static const ssg_callbacks psgintf =
psg_reset
};
void *ym2610_device::_psg()
{
return m_psg;
}
/*------------------------- TM2610 -------------------------------*/
/* IRQ Handler */
static void IRQHandler(void *param,int irq)
{
ym2610_state *info = (ym2610_state *)param;
if (!info->irqhandler.isnull())
info->irqhandler(irq);
ym2610_device *ym2610 = downcast<ym2610_device *>(param);
ym2610->_IRQHandler(irq);
}
void ym2610_device::_IRQHandler(int irq)
{
if (!m_irq_handler.isnull())
m_irq_handler(irq);
}
/* Timer overflow callback from timer.c */
static TIMER_CALLBACK( timer_callback_0 )
void ym2610_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
{
ym2610_state *info = (ym2610_state *)ptr;
ym2610_timer_over(info->chip,0);
}
switch(id)
{
case 0:
ym2610_timer_over(m_chip,0);
break;
static TIMER_CALLBACK( timer_callback_1 )
{
ym2610_state *info = (ym2610_state *)ptr;
ym2610_timer_over(info->chip,1);
case 1:
ym2610_timer_over(m_chip,1);
break;
}
}
static void timer_handler(void *param,int c,int count,int clock)
{
ym2610_state *info = (ym2610_state *)param;
ym2610_device *ym2610 = downcast<ym2610_device *>(param);
ym2610->_timer_handler(c, count, clock);
}
void ym2610_device::_timer_handler(int c,int count,int clock)
{
if( count == 0 )
{ /* Reset FM Timer */
info->timer[c]->enable(false);
m_timer[c]->enable(false);
}
else
{ /* Start FM Timer */
attotime period = attotime::from_hz(clock) * count;
if (!info->timer[c]->enable(true))
info->timer[c]->adjust(period);
if (!m_timer[c]->enable(true))
m_timer[c]->adjust(period);
}
}
/* update request from fm.c */
void ym2610_update_request(void *param)
{
ym2610_state *info = (ym2610_state *)param;
info->stream->update();
ym2610_device *ym2610 = downcast<ym2610_device *>(param);
ym2610->_ym2610_update_request();
}
void ym2610_device::_ym2610_update_request()
{
m_stream->update();
}
//-------------------------------------------------
// sound_stream_update - handle a stream update
//-------------------------------------------------
void ym2610_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
{
ym2610_update_one(m_chip, outputs, samples);
}
//-------------------------------------------------
// sound_stream_update - handle a stream update
//-------------------------------------------------
void ym2610b_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
{
ym2610b_update_one(m_chip, outputs, samples);
}
static STREAM_UPDATE( ym2610_stream_update )
void ym2610_device::device_post_load()
{
ym2610_state *info = (ym2610_state *)param;
ym2610_update_one(info->chip, outputs, samples);
}
static STREAM_UPDATE( ym2610b_stream_update )
{
ym2610_state *info = (ym2610_state *)param;
ym2610b_update_one(info->chip, outputs, samples);
ym2610_postload(m_chip);
}
static void ym2610_intf_postload(ym2610_state *info)
{
ym2610_postload(info->chip);
}
//-------------------------------------------------
// device_start - device-specific startup
//-------------------------------------------------
static DEVICE_START( ym2610 )
void ym2610_device::device_start()
{
static const ym2610_interface generic_2610 = { DEVCB_NULL };
static const ay8910_interface generic_ay8910 =
{
AY8910_LEGACY_OUTPUT | AY8910_SINGLE_OUTPUT,
AY8910_DEFAULT_LOADS,
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
};
const ym2610_interface *intf = device->static_config() ? (const ym2610_interface *)device->static_config() : &generic_2610;
int rate = device->clock()/72;
int rate = clock()/72;
void *pcmbufa,*pcmbufb;
int pcmsizea,pcmsizeb;
ym2610_state *info = get_safe_token(device);
astring name;
device_type type = device->type();
info->intf = intf;
info->device = device;
info->irqhandler.resolve(intf->irqhandler, *device);
info->psg = ay8910_start_ym(NULL, device->type(), device, device->clock(), &generic_ay8910);
assert_always(info->psg != NULL, "Error creating YM2610/AY8910 chip");
m_irq_handler.resolve();
m_psg = ay8910_start_ym(NULL, type(), this, clock(), &generic_ay8910);
assert_always(m_psg != NULL, "Error creating YM2610/AY8910 chip");
/* Timer Handler set */
info->timer[0] = device->machine().scheduler().timer_alloc(FUNC(timer_callback_0), info);
info->timer[1] = device->machine().scheduler().timer_alloc(FUNC(timer_callback_1), info);
m_timer[0] = timer_alloc(0);
m_timer[1] = timer_alloc(1);
/* stream system initialize */
info->stream = device->machine().sound().stream_alloc(*device,0,2,rate,info,(type == YM2610) ? ym2610_stream_update : ym2610b_stream_update);
m_stream = machine().sound().stream_alloc(*this,0,2,rate);
/* setup adpcm buffers */
pcmbufa = *device->region();
pcmsizea = device->region()->bytes();
name.printf("%s.deltat", device->tag());
pcmbufb = (void *)(device->machine().root_device().memregion(name)->base());
pcmsizeb = device->machine().root_device().memregion(name)->bytes();
pcmbufa = *region();
pcmsizea = region()->bytes();
name.printf("%s.deltat", tag());
pcmbufb = (void *)(machine().root_device().memregion(name)->base());
pcmsizeb = machine().root_device().memregion(name)->bytes();
if (pcmbufb == NULL || pcmsizeb == 0)
{
pcmbufb = pcmbufa;
@ -175,63 +181,57 @@ static DEVICE_START( ym2610 )
}
/**** initialize YM2610 ****/
info->chip = ym2610_init(info,device,device->clock(),rate,
m_chip = ym2610_init(this,this,clock(),rate,
pcmbufa,pcmsizea,pcmbufb,pcmsizeb,
timer_handler,IRQHandler,&psgintf);
assert_always(info->chip != NULL, "Error creating YM2610 chip");
device->machine().save().register_postload(save_prepost_delegate(FUNC(ym2610_intf_postload), info));
assert_always(m_chip != NULL, "Error creating YM2610 chip");
}
static DEVICE_STOP( ym2610 )
//-------------------------------------------------
// device_stop - device-specific stop
//-------------------------------------------------
void ym2610_device::device_stop()
{
ym2610_state *info = get_safe_token(device);
ym2610_shutdown(info->chip);
ay8910_stop_ym(info->psg);
ym2610_shutdown(m_chip);
ay8910_stop_ym(m_psg);
}
static DEVICE_RESET( ym2610 )
//-------------------------------------------------
// device_reset - device-specific reset
//-------------------------------------------------
void ym2610_device::device_reset()
{
ym2610_state *info = get_safe_token(device);
ym2610_reset_chip(info->chip);
ym2610_reset_chip(m_chip);
}
READ8_DEVICE_HANDLER( ym2610_r )
READ8_MEMBER( ym2610_device::read )
{
ym2610_state *info = get_safe_token(device);
return ym2610_read(info->chip, offset & 3);
return ym2610_read(m_chip, offset & 3);
}
WRITE8_DEVICE_HANDLER( ym2610_w )
WRITE8_MEMBER( ym2610_device::write )
{
ym2610_state *info = get_safe_token(device);
ym2610_write(info->chip, offset & 3, data);
ym2610_write(m_chip, offset & 3, data);
}
READ8_DEVICE_HANDLER( ym2610_status_port_a_r ) { return ym2610_r(device, space, 0); }
READ8_DEVICE_HANDLER( ym2610_status_port_b_r ) { return ym2610_r(device, space, 2); }
READ8_DEVICE_HANDLER( ym2610_read_port_r ) { return ym2610_r(device, space, 1); }
WRITE8_DEVICE_HANDLER( ym2610_control_port_a_w ) { ym2610_w(device, space, 0, data); }
WRITE8_DEVICE_HANDLER( ym2610_control_port_b_w ) { ym2610_w(device, space, 2, data); }
WRITE8_DEVICE_HANDLER( ym2610_data_port_a_w ) { ym2610_w(device, space, 1, data); }
WRITE8_DEVICE_HANDLER( ym2610_data_port_b_w ) { ym2610_w(device, space, 3, data); }
const device_type YM2610 = &device_creator<ym2610_device>;
ym2610_device::ym2610_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, YM2610, "YM2610", tag, owner, clock),
device_sound_interface(mconfig, *this)
device_sound_interface(mconfig, *this),
m_irq_handler(*this)
{
m_token = global_alloc_clear(ym2610_state);
}
ym2610_device::ym2610_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, type, name, tag, owner, clock),
device_sound_interface(mconfig, *this)
device_sound_interface(mconfig, *this),
m_irq_handler(*this)
{
m_token = global_alloc_clear(ym2610_state);
}
//-------------------------------------------------
@ -244,57 +244,9 @@ void ym2610_device::device_config_complete()
{
}
//-------------------------------------------------
// device_start - device-specific startup
//-------------------------------------------------
void ym2610_device::device_start()
{
DEVICE_START_NAME( ym2610 )(this);
}
//-------------------------------------------------
// device_reset - device-specific reset
//-------------------------------------------------
void ym2610_device::device_reset()
{
DEVICE_RESET_NAME( ym2610 )(this);
}
//-------------------------------------------------
// device_stop - device-specific stop
//-------------------------------------------------
void ym2610_device::device_stop()
{
DEVICE_STOP_NAME( ym2610 )(this);
}
//-------------------------------------------------
// sound_stream_update - handle a stream update
//-------------------------------------------------
void ym2610_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
{
// should never get here
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
}
const device_type YM2610B = &device_creator<ym2610b_device>;
ym2610b_device::ym2610b_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: ym2610_device(mconfig, YM2610B, "YM2610B", tag, owner, clock)
{
}
//-------------------------------------------------
// sound_stream_update - handle a stream update
//-------------------------------------------------
void ym2610b_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
{
// should never get here
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
}

View File

@ -3,29 +3,13 @@
#ifndef __2610INTF_H__
#define __2610INTF_H__
#include "devlegcy.h"
#include "emu.h"
#include "fm.h"
void ym2610_update_request(void *param);
struct ym2610_interface
{
devcb_write_line irqhandler; /* IRQ handler for the YM2610 */
};
DECLARE_READ8_DEVICE_HANDLER( ym2610_r );
DECLARE_WRITE8_DEVICE_HANDLER( ym2610_w );
DECLARE_READ8_DEVICE_HANDLER( ym2610_status_port_a_r );
DECLARE_READ8_DEVICE_HANDLER( ym2610_status_port_b_r );
DECLARE_READ8_DEVICE_HANDLER( ym2610_read_port_r );
DECLARE_WRITE8_DEVICE_HANDLER( ym2610_control_port_a_w );
DECLARE_WRITE8_DEVICE_HANDLER( ym2610_control_port_b_w );
DECLARE_WRITE8_DEVICE_HANDLER( ym2610_data_port_a_w );
DECLARE_WRITE8_DEVICE_HANDLER( ym2610_data_port_b_w );
#define MCFG_YM2610_IRQ_HANDLER(_devcb) \
devcb = &ym2610_device::set_irq_handler(*device, DEVCB2_##_devcb);
class ym2610_device : public device_t,
public device_sound_interface
@ -33,22 +17,39 @@ class ym2610_device : public device_t,
public:
ym2610_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
ym2610_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock);
~ym2610_device() { global_free(m_token); }
// access to legacy token
void *token() const { assert(m_token != NULL); return m_token; }
// static configuration helpers
template<class _Object> static devcb2_base &set_irq_handler(device_t &device, _Object object) { return downcast<ym2610_device &>(device).m_irq_handler.set_callback(object); }
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
void *_psg();
void _IRQHandler(int irq);
void _timer_handler(int c,int count,int clock);
void _ym2610_update_request();
protected:
// device-level overrides
virtual void device_config_complete();
virtual void device_start();
virtual void device_post_load();
virtual void device_stop();
virtual void device_reset();
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
// sound stream update overrides
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
void * m_chip;
private:
// internal state
void *m_token;
sound_stream * m_stream;
emu_timer * m_timer[2];
void * m_psg;
devcb2_write_line m_irq_handler;
};
extern const device_type YM2610;

View File

@ -211,7 +211,7 @@ static ADDRESS_MAP_START( drill_map, AS_PROGRAM, 16, _2mindril_state )
AM_RANGE(0x460010, 0x46001f) AM_WRITE(f3_control_1_w)
AM_RANGE(0x500000, 0x501fff) AM_RAM_WRITE(paletteram_RRRRGGGGBBBBRGBx_word_w) AM_SHARE("paletteram")
AM_RANGE(0x502022, 0x502023) AM_WRITENOP //countinously switches between 0 and 2
AM_RANGE(0x600000, 0x600007) AM_DEVREADWRITE8_LEGACY("ymsnd", ym2610_r, ym2610_w, 0x00ff)
AM_RANGE(0x600000, 0x600007) AM_DEVREADWRITE8("ymsnd", ym2610_device, read, write, 0x00ff)
AM_RANGE(0x60000c, 0x60000d) AM_READWRITE(drill_irq_r,drill_irq_w)
AM_RANGE(0x60000e, 0x60000f) AM_RAM // unknown purpose, zeroed at start-up and nothing else
AM_RANGE(0x700000, 0x70000f) AM_READWRITE(drill_io_r,drill_io_w) AM_SHARE("iodata") // i/o
@ -415,11 +415,6 @@ WRITE_LINE_MEMBER(_2mindril_state::irqhandler)
// m_maincpu->set_input_line(5, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(_2mindril_state,irqhandler)
};
MACHINE_START_MEMBER(_2mindril_state,drill)
{
@ -460,7 +455,7 @@ static MACHINE_CONFIG_START( drill, _2mindril_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610B, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(_2mindril_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -383,12 +383,12 @@ static ADDRESS_MAP_START( turbofrc_sound_portmap, AS_IO, 8, aerofgt_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(aerofgt_sh_bankswitch_w)
AM_RANGE(0x14, 0x14) AM_READ(soundlatch_byte_r) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
static ADDRESS_MAP_START( aerofgt_sound_portmap, AS_IO, 8, aerofgt_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(aerofgt_sh_bankswitch_w)
AM_RANGE(0x08, 0x08) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x0c, 0x0c) AM_READ(soundlatch_byte_r)
@ -1276,11 +1276,6 @@ WRITE_LINE_MEMBER(aerofgt_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(aerofgt_state,irqhandler)
};
static const ym3812_interface ym3812_config =
{
DEVCB_DRIVER_LINE_MEMBER(aerofgt_state,irqhandler) /* IRQ Line */
@ -1350,7 +1345,7 @@ static MACHINE_CONFIG_START( pspikes, aerofgt_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1494,7 +1489,7 @@ static MACHINE_CONFIG_START( karatblz, aerofgt_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz ) /* verified on pcb */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1541,7 +1536,7 @@ static MACHINE_CONFIG_START( spinlbrk, aerofgt_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1587,7 +1582,7 @@ static MACHINE_CONFIG_START( turbofrc, aerofgt_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1634,7 +1629,7 @@ static MACHINE_CONFIG_START( aerofgtb, aerofgt_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1678,7 +1673,7 @@ static MACHINE_CONFIG_START( aerofgt, aerofgt_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(aerofgt_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -375,7 +375,7 @@ static ADDRESS_MAP_START( bonzeadv_z80_map, AS_PROGRAM, 8, asuka_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -767,11 +767,6 @@ WRITE_LINE_MEMBER(asuka_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(asuka_state,irqhandler)
};
static const msm5205_interface msm5205_config =
{
@ -906,7 +901,7 @@ static MACHINE_CONFIG_START( bonzeadv, asuka_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(asuka_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)

View File

@ -377,7 +377,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, bbusters_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xc0, 0xc1) AM_WRITENOP /* -> Main CPU */
ADDRESS_MAP_END
@ -648,11 +648,6 @@ static const ym2608_interface ym2608_config =
DEVCB_DRIVER_LINE_MEMBER(bbusters_state,sound_irq)
};
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(bbusters_state,sound_irq)
};
/******************************************************************************/
void bbusters_state::screen_eof_bbuster(screen_device &screen, bool state)
@ -694,7 +689,7 @@ static MACHINE_CONFIG_START( bbusters, bbusters_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(bbusters_state, sound_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -214,7 +214,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, crshrace_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(crshrace_sh_bankswitch_w)
AM_RANGE(0x04, 0x04) AM_READ(soundlatch_byte_r) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
@ -425,11 +425,6 @@ WRITE_LINE_MEMBER(crshrace_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(crshrace_state,irqhandler)
};
static const k053936_interface crshrace_k053936_intf =
{
1, -48, -21 /* wrap, xoff, yoff */
@ -491,7 +486,7 @@ static MACHINE_CONFIG_START( crshrace, crshrace_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(crshrace_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -152,7 +152,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, f1gp_state )
AM_RANGE(0x00, 0x00) AM_WRITE(f1gp_sh_bankswitch_w) // f1gp
AM_RANGE(0x0c, 0x0c) AM_WRITE(f1gp_sh_bankswitch_w) // f1gp2
AM_RANGE(0x14, 0x14) AM_READ(soundlatch_byte_r) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
WRITE16_MEMBER(f1gp_state::f1gpb_misc_w)
@ -395,11 +395,6 @@ WRITE_LINE_MEMBER(f1gp_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(f1gp_state,irqhandler)
};
static const k053936_interface f1gp_k053936_intf =
{
1, -58, -2 /* wrap, xoff, yoff */
@ -486,7 +481,7 @@ static MACHINE_CONFIG_START( f1gp, f1gp_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(f1gp_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -293,7 +293,7 @@ static ADDRESS_MAP_START( fromanc2_sound_io_map, AS_IO, 8, fromanc2_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(soundlatch_byte_r) AM_WRITENOP // snd cmd (1P) / ?
AM_RANGE(0x04, 0x04) AM_READ(soundlatch2_byte_r) // snd cmd (2P)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x0c, 0x0c) AM_READ(fromanc2_sndcpu_nmi_clr)
ADDRESS_MAP_END
@ -476,11 +476,6 @@ WRITE_LINE_MEMBER(fromanc2_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(fromanc2_state,irqhandler)
};
/*************************************
*
@ -566,7 +561,7 @@ static MACHINE_CONFIG_START( fromanc2, fromanc2_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(fromanc2_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.50)
MCFG_SOUND_ROUTE(1, "mono", 0.75)
MCFG_SOUND_ROUTE(2, "mono", 0.75)
@ -616,7 +611,7 @@ static MACHINE_CONFIG_START( fromancr, fromanc2_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(fromanc2_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.50)
MCFG_SOUND_ROUTE(1, "mono", 0.75)
MCFG_SOUND_ROUTE(2, "mono", 0.75)
@ -663,7 +658,7 @@ static MACHINE_CONFIG_START( fromanc4, fromanc2_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(fromanc2_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.50)
MCFG_SOUND_ROUTE(1, "mono", 0.75)
MCFG_SOUND_ROUTE(2, "mono", 0.75)

View File

@ -267,11 +267,6 @@ WRITE_LINE_MEMBER(gstriker_state::gs_ym2610_irq)
m_audiocpu->set_input_line(0, CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(gstriker_state,gs_ym2610_irq)
};
/*** MEMORY LAYOUTS **********************************************************/
@ -306,7 +301,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, gstriker_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(gs_sh_bankswitch_w)
AM_RANGE(0x08, 0x08) AM_WRITE(gs_sh_pending_command_clear_w)
AM_RANGE(0x0c, 0x0c) AM_READ(soundlatch_byte_r)
@ -571,7 +566,7 @@ static MACHINE_CONFIG_START( gstriker, gstriker_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(gstriker_state, gs_ym2610_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -617,7 +612,7 @@ static MACHINE_CONFIG_START( vgoal, gstriker_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(gstriker_state, gs_ym2610_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -176,7 +176,7 @@ static ADDRESS_MAP_START( inufuku_sound_io_map, AS_IO, 8, inufuku_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(inufuku_soundrombank_w)
AM_RANGE(0x04, 0x04) AM_READ(soundlatch_byte_r) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
/******************************************************************************
@ -325,11 +325,6 @@ WRITE_LINE_MEMBER(inufuku_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(inufuku_state,irqhandler)
};
/******************************************************************************
@ -405,7 +400,7 @@ static MACHINE_CONFIG_START( inufuku, inufuku_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 32000000/4)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(inufuku_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.50)
MCFG_SOUND_ROUTE(1, "mono", 0.75)
MCFG_SOUND_ROUTE(2, "mono", 0.75)

View File

@ -213,7 +213,7 @@ static ADDRESS_MAP_START( mcatadv_sound_map, AS_PROGRAM, 8, mcatadv_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0xbfff) AM_ROMBANK("bank1") // ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r,ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xf000, 0xf000) AM_WRITE(mcatadv_sound_bw_w)
ADDRESS_MAP_END
@ -231,8 +231,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( nost_sound_io_map, AS_IO, 8, mcatadv_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVWRITE_LEGACY("ymsnd", ym2610_w)
AM_RANGE(0x04, 0x07) AM_DEVREAD_LEGACY("ymsnd", ym2610_r)
AM_RANGE(0x00, 0x03) AM_DEVWRITE("ymsnd", ym2610_device, write)
AM_RANGE(0x04, 0x07) AM_DEVREAD("ymsnd", ym2610_device, read)
AM_RANGE(0x40, 0x40) AM_WRITE(mcatadv_sound_bw_w)
AM_RANGE(0x80, 0x80) AM_READWRITE(soundlatch_byte_r, soundlatch2_byte_w)
ADDRESS_MAP_END
@ -417,11 +417,6 @@ WRITE_LINE_MEMBER(mcatadv_state::sound_irq)
m_soundcpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface mcatadv_ym2610_interface =
{
DEVCB_DRIVER_LINE_MEMBER(mcatadv_state,sound_irq) /* irq */
};
void mcatadv_state::machine_start()
{
@ -466,7 +461,7 @@ static MACHINE_CONFIG_START( mcatadv, mcatadv_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_16MHz/2) /* verified on pcb */
MCFG_SOUND_CONFIG(mcatadv_ym2610_interface)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(mcatadv_state, sound_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.32)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.32)
MCFG_SOUND_ROUTE(1, "lspeaker", 0.5)

View File

@ -1609,11 +1609,6 @@ WRITE_LINE_MEMBER(metro_state::blzntrnd_irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface blzntrnd_ym2610_interface =
{
DEVCB_DRIVER_LINE_MEMBER(metro_state,blzntrnd_irqhandler)
};
static ADDRESS_MAP_START( blzntrnd_sound_map, AS_PROGRAM, 8, metro_state )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
@ -1624,7 +1619,7 @@ static ADDRESS_MAP_START( blzntrnd_sound_io_map, AS_IO, 8, metro_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(blzntrnd_sh_bankswitch_w)
AM_RANGE(0x40, 0x40) AM_READ(soundlatch_byte_r) AM_WRITENOP
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r,ym2610_w)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
static ADDRESS_MAP_START( blzntrnd_map, AS_PROGRAM, 16, metro_state )
@ -4438,7 +4433,7 @@ static MACHINE_CONFIG_START( blzntrnd, metro_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_16MHz/2)
MCFG_SOUND_CONFIG(blzntrnd_ym2610_interface)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(metro_state, blzntrnd_irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -4485,7 +4480,7 @@ static MACHINE_CONFIG_START( gstrik2, metro_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_16MHz/2)
MCFG_SOUND_CONFIG(blzntrnd_ym2610_interface)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(metro_state, blzntrnd_irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -1127,7 +1127,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, neogeo_state )
/*AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READWRITE(audio_command_r, audio_cpu_clear_nmi_w);*/ /* may not and NMI clear */
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READ(audio_command_r)
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) /* write - NMI enable / acknowledge? (the data written doesn't matter) */
AM_RANGE(0x08, 0x08) AM_MIRROR(0xfff0) AM_MASK(0xfff0) AM_READ(audio_cpu_bank_select_f000_f7ff_r)
AM_RANGE(0x09, 0x09) AM_MIRROR(0xfff0) AM_MASK(0xfff0) AM_READ(audio_cpu_bank_select_e000_efff_r)
@ -1139,19 +1139,6 @@ ADDRESS_MAP_END
/*************************************
*
* Audio interface
*
*************************************/
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(neogeo_state,audio_cpu_irq)
};
/*************************************
*
* Standard Neo-Geo DIPs and
@ -1378,7 +1365,7 @@ MACHINE_CONFIG_START( neogeo_base, neogeo_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, NEOGEO_YM2610_CLOCK)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(neogeo_state, audio_cpu_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.60)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.60)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -335,7 +335,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( neoprint_audio_io_map, AS_IO, 8, neoprint_state )
/*AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READWRITE(audio_command_r, audio_cpu_clear_nmi_w);*/ /* may not and NMI clear */
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READ(audio_command_r) AM_WRITENOP
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
// AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) /* write - NMI enable / acknowledge? (the data written doesn't matter) */
// AM_RANGE(0x08, 0x08) AM_MIRROR(0xfff0) AM_MASK(0xfff0) AM_READ(audio_cpu_bank_select_f000_f7ff_r)
// AM_RANGE(0x09, 0x09) AM_MIRROR(0xfff0) AM_MASK(0xfff0) AM_READ(audio_cpu_bank_select_e000_efff_r)
@ -458,11 +458,6 @@ WRITE_LINE_MEMBER(neoprint_state::audio_cpu_irq)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(neoprint_state,audio_cpu_irq)
};
static MACHINE_CONFIG_START( neoprint, neoprint_state )
MCFG_CPU_ADD("maincpu", M68000, 12000000)
@ -492,7 +487,7 @@ static MACHINE_CONFIG_START( neoprint, neoprint_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 24000000 / 3)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(neoprint_state, audio_cpu_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.60)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.60)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -534,7 +529,7 @@ static MACHINE_CONFIG_START( nprsp, neoprint_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 24000000 / 3)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(neoprint_state, audio_cpu_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.60)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.60)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -488,7 +488,7 @@ static ADDRESS_MAP_START( ninjaw_sound_map, AS_PROGRAM, 8, ninjaw_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r,ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r,tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITE(ninjaw_pancontrol) /* pan */
@ -640,11 +640,6 @@ WRITE_LINE_MEMBER(ninjaw_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(ninjaw_state,irqhandler)
};
/**************************************************************
SUBWOOFER (SOUND)
@ -869,7 +864,7 @@ static MACHINE_CONFIG_START( ninjaw, ninjaw_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(ninjaw_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 1.0)
@ -949,7 +944,7 @@ static MACHINE_CONFIG_START( darius2, ninjaw_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(ninjaw_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 1.0)

View File

@ -465,7 +465,7 @@ static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, othunder_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITE(othunder_TC0310FAM_w) /* pan */
@ -623,11 +623,6 @@ WRITE_LINE_MEMBER(othunder_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(othunder_state,irqhandler)
};
/***********************************************************
@ -713,7 +708,7 @@ static MACHINE_CONFIG_START( othunder, othunder_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(othunder_state, irqhandler))
MCFG_SOUND_ROUTE(0, "2610.0l", 0.25)
MCFG_SOUND_ROUTE(0, "2610.0r", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1l", 1.0)

View File

@ -324,7 +324,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, pipedrm_state )
AM_RANGE(0x04, 0x04) AM_WRITE(sound_bankswitch_w)
AM_RANGE(0x16, 0x16) AM_READ(sound_command_r)
AM_RANGE(0x17, 0x17) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
@ -592,12 +592,6 @@ static const ym2608_interface ym2608_config =
};
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(pipedrm_state,irqhandler)
};
/*************************************
*
@ -683,7 +677,7 @@ static MACHINE_CONFIG_START( pipedrm, pipedrm_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(pipedrm_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.50)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)

View File

@ -409,7 +409,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sngkace_sound_io_map, AS_IO, 8, psikyo_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(sngkace_sound_bankswitch_w)
AM_RANGE(0x08, 0x08) AM_READ(psikyo_soundlatch_r)
AM_RANGE(0x0c, 0x0c) AM_WRITE(psikyo_clear_nmi_w)
@ -434,7 +434,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( gunbird_sound_io_map, AS_IO, 8, psikyo_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(gunbird_sound_bankswitch_w)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x08, 0x08) AM_READ(psikyo_soundlatch_r)
AM_RANGE(0x0c, 0x0c) AM_WRITE(psikyo_clear_nmi_w)
ADDRESS_MAP_END
@ -1030,11 +1030,6 @@ void psikyo_state::machine_reset()
***************************************************************************/
static const ym2610_interface sngkace_ym2610_interface =
{
DEVCB_DRIVER_LINE_MEMBER(psikyo_state,sound_irq)
};
static MACHINE_CONFIG_START( sngkace, psikyo_state )
/* basic machine hardware */
@ -1065,7 +1060,7 @@ static MACHINE_CONFIG_START( sngkace, psikyo_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_32MHz/4) /* verified on pcb */
MCFG_SOUND_CONFIG(sngkace_ym2610_interface)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(psikyo_state, sound_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 1.2)
MCFG_SOUND_ROUTE(0, "rspeaker", 1.2)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -1079,11 +1074,6 @@ MACHINE_CONFIG_END
***************************************************************************/
static const ym2610_interface gunbird_ym2610_interface =
{
DEVCB_DRIVER_LINE_MEMBER(psikyo_state,sound_irq) /* irq */
};
static MACHINE_CONFIG_START( gunbird, psikyo_state )
/* basic machine hardware */
@ -1114,7 +1104,7 @@ static MACHINE_CONFIG_START( gunbird, psikyo_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(gunbird_ym2610_interface)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(psikyo_state, sound_irq))
MCFG_SOUND_ROUTE(0, "lspeaker", 1.2)
MCFG_SOUND_ROUTE(0, "rspeaker", 1.2)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -313,7 +313,7 @@ static ADDRESS_MAP_START( opwolf3_z80_sound_map, AS_PROGRAM, 8, slapshot_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r,ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -481,11 +481,6 @@ WRITE_LINE_MEMBER(slapshot_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(slapshot_state,irqhandler)
};
/***********************************************************
MACHINE DRIVERS
@ -557,7 +552,7 @@ static MACHINE_CONFIG_START( slapshot, slapshot_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610B, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(slapshot_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -603,7 +598,7 @@ static MACHINE_CONFIG_START( opwolf3, slapshot_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610B, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(slapshot_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -156,7 +156,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, suprslam_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(suprslam_sh_bankswitch_w)
AM_RANGE(0x04, 0x04) AM_READ(soundlatch_byte_r) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
/*** INPUT PORTS *************************************************************/
@ -281,11 +281,6 @@ WRITE_LINE_MEMBER(suprslam_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(suprslam_state,irqhandler)
};
/*** MACHINE DRIVER **********************************************************/
static const k053936_interface suprslam_k053936_intf =
@ -340,7 +335,7 @@ static MACHINE_CONFIG_START( suprslam, suprslam_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(suprslam_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -734,7 +734,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitob_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -1895,11 +1895,6 @@ WRITE_LINE_MEMBER(taitob_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(taitob_state,irqhandler)
};
static const ym2203_interface ym2203_config =
{
{
@ -2049,7 +2044,7 @@ static MACHINE_CONFIG_START( rastsag2, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2093,7 +2088,7 @@ static MACHINE_CONFIG_START( ashura, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2137,7 +2132,7 @@ static MACHINE_CONFIG_START( crimec, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2181,7 +2176,7 @@ static MACHINE_CONFIG_START( tetrist, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2317,7 +2312,7 @@ static MACHINE_CONFIG_START( rambo3p, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_16MHz/2) /* verified on pcb */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2361,7 +2356,7 @@ static MACHINE_CONFIG_START( rambo3, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_16MHz/2) /* verified on pcb */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2408,7 +2403,7 @@ static MACHINE_CONFIG_START( pbobble, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610B, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2456,7 +2451,7 @@ static MACHINE_CONFIG_START( spacedx, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2500,7 +2495,7 @@ static MACHINE_CONFIG_START( spacedxo, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2548,7 +2543,7 @@ static MACHINE_CONFIG_START( qzshowby, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610B, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2684,7 +2679,7 @@ static MACHINE_CONFIG_START( silentd, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2728,7 +2723,7 @@ static MACHINE_CONFIG_START( selfeena, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2781,7 +2776,7 @@ static MACHINE_CONFIG_START( ryujin, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2832,7 +2827,7 @@ static MACHINE_CONFIG_START( sbm, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610B, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -2884,7 +2879,7 @@ static MACHINE_CONFIG_START( realpunc, taitob_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610B, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitob_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)

View File

@ -1154,7 +1154,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitof2_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -2807,11 +2807,6 @@ WRITE_LINE_MEMBER(taitof2_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(taitof2_state,irqhandler)
};
WRITE8_MEMBER(taitof2_state::cameltrya_porta_w)
{
@ -3048,7 +3043,7 @@ static MACHINE_CONFIG_START( taito_f2, taitof2_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 24000000/3) /* Was 16000000/2, but only a 24Mhz OSC */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitof2_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -161,11 +161,6 @@ WRITE_LINE_MEMBER(taitoh_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(taitoh_state,irqhandler)
};
/***************************************************************************
@ -283,7 +278,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitoh_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan control */
@ -587,7 +582,7 @@ static MACHINE_CONFIG_START( syvalion, taitoh_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoh_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -628,7 +623,7 @@ static MACHINE_CONFIG_START( recordbr, taitoh_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoh_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
@ -669,7 +664,7 @@ static MACHINE_CONFIG_START( dleague, taitoh_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoh_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)

View File

@ -711,7 +711,7 @@ static ADDRESS_MAP_START( raimais_3_map, AS_PROGRAM, 8, taitol_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank7")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -1784,11 +1784,6 @@ static const msm5205_interface msm5205_config =
MSM5205_S48_4B /* 8 kHz */
};
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(taitol_state,irqhandler)
};
static const ym2203_interface ym2203_interface_single =
{
{
@ -1897,7 +1892,7 @@ static MACHINE_CONFIG_DERIVED( raimais, fhawk )
/* sound hardware */
MCFG_SOUND_REPLACE("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb (8Mhz OSC is also for the 2nd z80) */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitol_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)

View File

@ -498,7 +498,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitox_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -797,11 +797,6 @@ WRITE_LINE_MEMBER(taitox_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(taitox_state,irqhandler)
};
MACHINE_START_MEMBER(taitox_state,taitox)
{
m_banknum = -1;
@ -851,7 +846,7 @@ static MACHINE_CONFIG_START( superman, taitox_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_16MHz/2) /* verified on pcb */
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitox_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -933,7 +928,7 @@ static MACHINE_CONFIG_START( gigandes, taitox_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitox_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
@ -975,7 +970,7 @@ static MACHINE_CONFIG_START( ballbros, taitox_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitox_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -1588,7 +1588,7 @@ static ADDRESS_MAP_START( bshark_cpub_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x400000, 0x400007) AM_WRITE(spacegun_pancontrol) /* pan */
// AM_RANGE(0x40000a, 0x40000b) AM_READ(taitoz_unknown_r) // ???
AM_RANGE(0x600000, 0x600007) AM_DEVREADWRITE8_LEGACY("ymsnd", ym2610_r, ym2610_w, 0x00ff)
AM_RANGE(0x600000, 0x600007) AM_DEVREADWRITE8("ymsnd", ym2610_device, read, write, 0x00ff)
AM_RANGE(0x60000c, 0x60000d) AM_NOP // interrupt controller?
AM_RANGE(0x60000e, 0x60000f) AM_NOP
AM_RANGE(0x800000, 0x801fff) AM_DEVREADWRITE_LEGACY("tc0150rod", tc0150rod_word_r, tc0150rod_word_w)
@ -1681,7 +1681,7 @@ static ADDRESS_MAP_START( spacegun_cpub_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0x20c000, 0x20ffff) AM_RAM
AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x800000, 0x80000f) AM_READWRITE(spacegun_input_bypass_r, spacegun_output_bypass_w)
AM_RANGE(0xc00000, 0xc00007) AM_DEVREADWRITE8_LEGACY("ymsnd", ym2610_r, ym2610_w, 0x00ff)
AM_RANGE(0xc00000, 0xc00007) AM_DEVREADWRITE8("ymsnd", ym2610_device, read, write, 0x00ff)
AM_RANGE(0xc0000c, 0xc0000d) AM_NOP // interrupt controller?
AM_RANGE(0xc0000e, 0xc0000f) AM_NOP
AM_RANGE(0xc20000, 0xc20007) AM_WRITE(spacegun_pancontrol) /* pan */
@ -1745,7 +1745,7 @@ static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, taitoz_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITE(taitoz_pancontrol) /* pan */
@ -2911,16 +2911,6 @@ WRITE_LINE_MEMBER(taitoz_state::irqhandlerb)
// m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(taitoz_state,irqhandler)
};
static const ym2610_interface ym2610_interfaceb =
{
DEVCB_DRIVER_LINE_MEMBER(taitoz_state,irqhandlerb)
};
/***********************************************************
MACHINE DRIVERS
@ -3101,7 +3091,7 @@ static MACHINE_CONFIG_START( contcirc, taitoz_state )
MCFG_SPEAKER_ADD("subwoofer", 0.0, 0.0, 1.0)
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "subwoofer", 0.20)
MCFG_SOUND_ROUTE(1, "2610.1.l", 2.0)
MCFG_SOUND_ROUTE(1, "2610.1.r", 2.0)
@ -3163,7 +3153,7 @@ static MACHINE_CONFIG_START( chasehq, taitoz_state )
MCFG_SPEAKER_ADD("subwoofer", 0.0, 0.0, 1.0)
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "subwoofer", 0.20)
MCFG_SOUND_ROUTE(1, "2610.1.l", 1.0)
MCFG_SOUND_ROUTE(1, "2610.1.r", 1.0)
@ -3225,7 +3215,7 @@ static MACHINE_CONFIG_START( enforce, taitoz_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 20.0)
@ -3284,7 +3274,7 @@ static MACHINE_CONFIG_START( bshark, taitoz_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_interfaceb)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandlerb))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 28.0)
@ -3355,7 +3345,7 @@ static MACHINE_CONFIG_START( sci, taitoz_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 2.0)
@ -3420,7 +3410,7 @@ static MACHINE_CONFIG_START( nightstr, taitoz_state )
MCFG_SPEAKER_ADD("subwoofer", 0.0, 0.0, 1.0)
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "subwoofer", 0.20)
MCFG_SOUND_ROUTE(1, "2610.1.l", 2.0)
MCFG_SOUND_ROUTE(1, "2610.1.r", 2.0)
@ -3482,7 +3472,7 @@ static MACHINE_CONFIG_START( aquajack, taitoz_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 2.0)
@ -3541,7 +3531,7 @@ static MACHINE_CONFIG_START( spacegun, taitoz_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_interfaceb)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandlerb))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 8.0)
@ -3603,7 +3593,7 @@ static MACHINE_CONFIG_START( dblaxle, taitoz_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_32MHz/4)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 8.0)
@ -3665,7 +3655,7 @@ static MACHINE_CONFIG_START( racingb, taitoz_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_32MHz/4)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoz_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 8.0)

View File

@ -412,7 +412,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitoair_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan control */
@ -631,11 +631,6 @@ WRITE_LINE_MEMBER(taitoair_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface airsys_ym2610_interface =
{
DEVCB_DRIVER_LINE_MEMBER(taitoair_state,irqhandler)
};
/************************************************************
MACHINE DRIVERS
@ -731,7 +726,7 @@ static MACHINE_CONFIG_START( airsys, taitoair_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(airsys_ym2610_interface)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taitoair_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.30)
MCFG_SOUND_ROUTE(1, "mono", 0.60)
MCFG_SOUND_ROUTE(2, "mono", 0.60)

View File

@ -137,7 +137,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, taotaido_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(taotaido_sh_bankswitch_w)
AM_RANGE(0x08, 0x08) AM_WRITE(pending_command_clear_w)
AM_RANGE(0x0c, 0x0c) AM_READ(soundlatch_byte_r)
@ -325,11 +325,6 @@ WRITE_LINE_MEMBER(taotaido_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(taotaido_state,irqhandler)
};
static MACHINE_CONFIG_START( taotaido, taotaido_state )
@ -362,7 +357,7 @@ static MACHINE_CONFIG_START( taotaido, taotaido_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(taotaido_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -258,7 +258,7 @@ static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, warriorb_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10")
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITE(warriorb_pancontrol) /* pan */
@ -424,11 +424,6 @@ WRITE_LINE_MEMBER(warriorb_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(warriorb_state,irqhandler)
};
/***********************************************************
MACHINE DRIVERS
***********************************************************/
@ -561,7 +556,7 @@ static MACHINE_CONFIG_START( darius2d, warriorb_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(warriorb_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 1.0)
@ -624,7 +619,7 @@ static MACHINE_CONFIG_START( warriorb, warriorb_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(warriorb_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "2610.1.l", 1.0)

View File

@ -382,7 +382,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, welltris_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(welltris_sh_bankswitch_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x10, 0x10) AM_READ(soundlatch_byte_r)
AM_RANGE(0x18, 0x18) AM_WRITE(pending_command_clear_w)
ADDRESS_MAP_END
@ -676,11 +676,6 @@ WRITE_LINE_MEMBER(welltris_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(welltris_state,irqhandler)
};
DRIVER_INIT_MEMBER(welltris_state,welltris)
@ -729,7 +724,7 @@ static MACHINE_CONFIG_START( welltris, welltris_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("ymsnd", YM2610, 8000000)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(welltris_state, irqhandler))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 0.75)
MCFG_SOUND_ROUTE(2, "mono", 0.75)

View File

@ -670,7 +670,7 @@ static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, wgp_state )
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") /* Fallthrough */
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -893,11 +893,6 @@ WRITE_LINE_MEMBER(wgp_state::irqhandler) // assumes Z80 sandwiched between 68Ks
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(wgp_state,irqhandler)
};
/***********************************************************
MACHINE DRIVERS
@ -1010,7 +1005,7 @@ static MACHINE_CONFIG_START( wgp, wgp_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MCFG_SOUND_ADD("ymsnd", YM2610, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(wgp_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)

View File

@ -1166,7 +1166,7 @@ static ADDRESS_MAP_START( fx1a_sound_map, AS_PROGRAM, 8, zn_state )
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") /* Fallthrough */
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE_LEGACY("ymsnd", ym2610_r, ym2610_w)
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_port_w)
AM_RANGE(0xe201, 0xe201) AM_DEVREADWRITE("tc0140syt", tc0140syt_device, tc0140syt_slave_comm_r, tc0140syt_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITENOP /* pan */
@ -1181,11 +1181,6 @@ WRITE_LINE_MEMBER(zn_state::irqhandler)
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
}
static const ym2610_interface ym2610_config =
{
DEVCB_DRIVER_LINE_MEMBER(zn_state,irqhandler)
};
static const tc0140syt_interface coh1000ta_tc0140syt_intf =
{
"maincpu", "audiocpu"
@ -1199,7 +1194,7 @@ static MACHINE_CONFIG_DERIVED( coh1000ta, zn1_1mb_vram )
MCFG_NVRAM_ADD_0FILL("eeprom1")
MCFG_SOUND_ADD("ymsnd", YM2610B, 16000000/2)
MCFG_SOUND_CONFIG(ym2610_config)
MCFG_YM2610_IRQ_HANDLER(WRITELINE(zn_state, irqhandler))
MCFG_SOUND_ROUTE(0, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(0, "rspeaker", 0.25)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)