mirror of
https://github.com/holub/mame
synced 2025-06-02 19:06:43 +03:00
k054539: converted to use inline configs and delegates. nw.
with this, I'm done for the moment with konami chips.
This commit is contained in:
parent
19e040dc78
commit
8fd497837a
@ -18,22 +18,12 @@ const device_type K054539 = &device_creator<k054539_device>;
|
|||||||
k054539_device::k054539_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
k054539_device::k054539_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||||
: device_t(mconfig, K054539, "K054539 ADPCM", tag, owner, clock, "k054539", __FILE__),
|
: device_t(mconfig, K054539, "K054539 ADPCM", tag, owner, clock, "k054539", __FILE__),
|
||||||
device_sound_interface(mconfig, *this),
|
device_sound_interface(mconfig, *this),
|
||||||
m_timer_handler(*this)
|
m_timer_handler(*this),
|
||||||
|
m_rgnoverride(NULL)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//-------------------------------------------------
|
|
||||||
// static_set_interface - configuration helper
|
|
||||||
// to set the interface
|
|
||||||
//-------------------------------------------------
|
|
||||||
|
|
||||||
void k054539_device::static_set_interface(device_t &device, const k054539_interface &interface)
|
|
||||||
{
|
|
||||||
k054539_device &k = downcast<k054539_device &>(device);
|
|
||||||
static_cast<k054539_interface &>(k) = interface;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Registers:
|
/* Registers:
|
||||||
00..ff: 20 bytes/channel, 8 channels
|
00..ff: 20 bytes/channel, 8 channels
|
||||||
00..02: pitch (lsb, mid, msb)
|
00..02: pitch (lsb, mid, msb)
|
||||||
@ -318,7 +308,7 @@ void k054539_device::init_chip()
|
|||||||
cur_ptr = 0;
|
cur_ptr = 0;
|
||||||
memset(ram, 0, 0x4000);
|
memset(ram, 0, 0x4000);
|
||||||
|
|
||||||
memory_region *reg = (rgnoverride != NULL) ? machine().root_device().memregion(rgnoverride) : region();
|
memory_region *reg = (m_rgnoverride != NULL) ? machine().root_device().memregion(m_rgnoverride) : region();
|
||||||
rom = *reg;
|
rom = *reg;
|
||||||
rom_size = reg->bytes();
|
rom_size = reg->bytes();
|
||||||
rom_mask = 0xffffffffU;
|
rom_mask = 0xffffffffU;
|
||||||
@ -376,8 +366,8 @@ WRITE8_MEMBER(k054539_device::write)
|
|||||||
switch(offset) {
|
switch(offset) {
|
||||||
case 0x13f: {
|
case 0x13f: {
|
||||||
int pan = data >= 0x11 && data <= 0x1f ? data - 0x11 : 0x18 - 0x11;
|
int pan = data >= 0x11 && data <= 0x1f ? data - 0x11 : 0x18 - 0x11;
|
||||||
if(apan)
|
if (!m_apan_cb.isnull())
|
||||||
apan(this, pantab[pan], pantab[0xe - pan]);
|
m_apan_cb(pantab[pan], pantab[0xe - pan]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -501,9 +491,11 @@ READ8_MEMBER(k054539_device::read)
|
|||||||
void k054539_device::device_start()
|
void k054539_device::device_start()
|
||||||
{
|
{
|
||||||
m_timer = timer_alloc(0);
|
m_timer = timer_alloc(0);
|
||||||
|
|
||||||
|
// resolve / bind callbacks
|
||||||
m_timer_handler.resolve_safe();
|
m_timer_handler.resolve_safe();
|
||||||
|
m_apan_cb.bind_relative_to(*owner());
|
||||||
|
|
||||||
for (int i = 0; i < 8; i++)
|
for (int i = 0; i < 8; i++)
|
||||||
gain[i] = 1.0;
|
gain[i] = 1.0;
|
||||||
|
|
||||||
|
@ -9,19 +9,18 @@
|
|||||||
#ifndef __K054539_H__
|
#ifndef __K054539_H__
|
||||||
#define __K054539_H__
|
#define __K054539_H__
|
||||||
|
|
||||||
#define MCFG_K054539_ADD(_tag, _clock, _interface) \
|
typedef device_delegate<void (double left, double right)> k054539_cb_delegate;
|
||||||
MCFG_DEVICE_ADD(_tag, K054539, _clock) \
|
#define K054539_CB_MEMBER(_name) void _name(double left, double right)
|
||||||
k054539_device::static_set_interface(*device, _interface);
|
|
||||||
|
#define MCFG_K054539_APAN_CB(_class, _method) \
|
||||||
|
k054539_device::set_analog_callback(*device, k054539_cb_delegate(&_class::_method, #_class "::" #_method, downcast<_class *>(owner)));
|
||||||
|
|
||||||
|
#define MCFG_K054539_REGION_OVERRRIDE(_region) \
|
||||||
|
k054539_device::set_override(*device, _region);
|
||||||
|
|
||||||
#define MCFG_K054539_TIMER_HANDLER(_devcb) \
|
#define MCFG_K054539_TIMER_HANDLER(_devcb) \
|
||||||
devcb = &k054539_device::set_timer_handler(*device, DEVCB_##_devcb);
|
devcb = &k054539_device::set_timer_handler(*device, DEVCB_##_devcb);
|
||||||
|
|
||||||
struct k054539_interface
|
|
||||||
{
|
|
||||||
const char *rgnoverride;
|
|
||||||
void (*apan)(device_t *, double, double); /* Callback for analog output mixing levels (0..1 for each channel) */
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
//* control flags, may be set at DRIVER_INIT().
|
//* control flags, may be set at DRIVER_INIT().
|
||||||
#define K054539_RESET_FLAGS 0
|
#define K054539_RESET_FLAGS 0
|
||||||
@ -29,13 +28,8 @@ struct k054539_interface
|
|||||||
#define K054539_DISABLE_REVERB 2
|
#define K054539_DISABLE_REVERB 2
|
||||||
#define K054539_UPDATE_AT_KEYON 4
|
#define K054539_UPDATE_AT_KEYON 4
|
||||||
|
|
||||||
void k054539_init_flags(device_t *device, int flags);
|
|
||||||
|
|
||||||
void k054539_set_gain(device_t *device, int channel, double gain);
|
|
||||||
|
|
||||||
class k054539_device : public device_t,
|
class k054539_device : public device_t,
|
||||||
public device_sound_interface,
|
public device_sound_interface
|
||||||
public k054539_interface
|
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
enum {
|
enum {
|
||||||
@ -49,7 +43,8 @@ public:
|
|||||||
k054539_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
k054539_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||||
|
|
||||||
// static configuration helpers
|
// static configuration helpers
|
||||||
static void static_set_interface(device_t &device, const k054539_interface &interface);
|
static void set_analog_callback(device_t &device, k054539_cb_delegate callback) { downcast<k054539_device &>(device).m_apan_cb = callback; }
|
||||||
|
static void set_override(device_t &device, const char *rgnoverride) { downcast<k054539_device &>(device).m_rgnoverride = rgnoverride; }
|
||||||
template<class _Object> static devcb_base &set_timer_handler(device_t &device, _Object object) { return downcast<k054539_device &>(device).m_timer_handler.set_callback(object); }
|
template<class _Object> static devcb_base &set_timer_handler(device_t &device, _Object object) { return downcast<k054539_device &>(device).m_timer_handler.set_callback(object); }
|
||||||
|
|
||||||
|
|
||||||
@ -110,9 +105,11 @@ private:
|
|||||||
channel channels[8];
|
channel channels[8];
|
||||||
sound_stream *stream;
|
sound_stream *stream;
|
||||||
|
|
||||||
emu_timer *m_timer;
|
emu_timer *m_timer;
|
||||||
UINT32 m_timer_state;
|
UINT32 m_timer_state;
|
||||||
devcb_write_line m_timer_handler;
|
devcb_write_line m_timer_handler;
|
||||||
|
const char *m_rgnoverride;
|
||||||
|
k054539_cb_delegate m_apan_cb;
|
||||||
|
|
||||||
bool regupdate();
|
bool regupdate();
|
||||||
void keyon(int channel);
|
void keyon(int channel);
|
||||||
|
@ -1333,19 +1333,6 @@ GFXDECODE_END
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*************************************
|
|
||||||
*
|
|
||||||
* Sound interfaces
|
|
||||||
*
|
|
||||||
*************************************/
|
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
"shared"
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*************************************
|
/*************************************
|
||||||
*
|
*
|
||||||
* Machine-specific init
|
* Machine-specific init
|
||||||
@ -1424,13 +1411,13 @@ static MACHINE_CONFIG_START( djmain, djmain_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
MCFG_SOUND_CONFIG(k054539_config)
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_2", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL_18_432MHz)
|
||||||
MCFG_SOUND_CONFIG(k054539_config)
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
@ -289,12 +289,6 @@ static INPUT_PORTS_START( gijoe )
|
|||||||
PORT_DIPUNUSED_DIPLOC( 0x8000, 0x8000, "SW1:4" ) /* Listed as "Unused" */
|
PORT_DIPUNUSED_DIPLOC( 0x8000, 0x8000, "SW1:4" ) /* Listed as "Unused" */
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
void gijoe_state::machine_start()
|
void gijoe_state::machine_start()
|
||||||
{
|
{
|
||||||
m_dmadelay_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(gijoe_state::dmaend_callback),this));
|
m_dmadelay_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(gijoe_state::dmaend_callback),this));
|
||||||
@ -352,7 +346,7 @@ static MACHINE_CONFIG_START( gijoe, gijoe_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_K054539_TIMER_HANDLER(INPUTLINE("audiocpu", INPUT_LINE_NMI))
|
MCFG_K054539_TIMER_HANDLER(INPUTLINE("audiocpu", INPUT_LINE_NMI))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
@ -228,11 +228,6 @@ WRITE_LINE_MEMBER(konamigq_state::k054539_irq_gen)
|
|||||||
m_sound_intck = state;
|
m_sound_intck = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
"shared"
|
|
||||||
};
|
|
||||||
|
|
||||||
/* SCSI */
|
/* SCSI */
|
||||||
|
|
||||||
void konamigq_state::scsi_dma_read( UINT32 *p_n_psxram, UINT32 n_address, INT32 n_size )
|
void konamigq_state::scsi_dma_read( UINT32 *p_n_psxram, UINT32 n_address, INT32 n_size )
|
||||||
@ -331,12 +326,14 @@ static MACHINE_CONFIG_START( konamigq, konamigq_state )
|
|||||||
MCFG_K056800_ADD("k056800", XTAL_18_432MHz)
|
MCFG_K056800_ADD("k056800", XTAL_18_432MHz)
|
||||||
MCFG_K056800_INT_HANDLER(INPUTLINE("soundcpu", M68K_IRQ_1))
|
MCFG_K056800_INT_HANDLER(INPUTLINE("soundcpu", M68K_IRQ_1))
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(konamigq_state, k054539_irq_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(konamigq_state, k054539_irq_gen))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_2", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
@ -1124,11 +1124,6 @@ static ADDRESS_MAP_START( gxtmsmap, AS_DATA, 8, konamigx_state )
|
|||||||
AM_RANGE(0x00000, 0x3ffff) AM_RAM
|
AM_RANGE(0x00000, 0x3ffff) AM_RAM
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
"shared"
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
WRITE_LINE_MEMBER(konamigx_state::k054539_irq_gen)
|
WRITE_LINE_MEMBER(konamigx_state::k054539_irq_gen)
|
||||||
{
|
{
|
||||||
@ -1666,14 +1661,16 @@ static MACHINE_CONFIG_START( konamigx, konamigx_state )
|
|||||||
MCFG_K056800_ADD("k056800", XTAL_18_432MHz)
|
MCFG_K056800_ADD("k056800", XTAL_18_432MHz)
|
||||||
MCFG_K056800_INT_HANDLER(INPUTLINE("soundcpu", M68K_IRQ_1))
|
MCFG_K056800_INT_HANDLER(INPUTLINE("soundcpu", M68K_IRQ_1))
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(konamigx_state, k054539_irq_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(konamigx_state, k054539_irq_gen))
|
||||||
MCFG_SOUND_ROUTE_EX(0, "dasp", 0.5, 0)
|
MCFG_SOUND_ROUTE_EX(0, "dasp", 0.5, 0)
|
||||||
MCFG_SOUND_ROUTE_EX(1, "dasp", 0.5, 1)
|
MCFG_SOUND_ROUTE_EX(1, "dasp", 0.5, 1)
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_2", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE_EX(0, "dasp", 0.5, 2)
|
MCFG_SOUND_ROUTE_EX(0, "dasp", 0.5, 2)
|
||||||
MCFG_SOUND_ROUTE_EX(1, "dasp", 0.5, 3)
|
MCFG_SOUND_ROUTE_EX(1, "dasp", 0.5, 3)
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
|
@ -463,14 +463,6 @@ static INPUT_PORTS_START( lethalene ) /* European region does not have non-engli
|
|||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
|
|
||||||
/* sound */
|
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
void lethal_state::machine_start()
|
void lethal_state::machine_start()
|
||||||
{
|
{
|
||||||
membank("bank1")->configure_entries(0, 0x20, memregion("maincpu")->base(), 0x2000);
|
membank("bank1")->configure_entries(0, 0x20, memregion("maincpu")->base(), 0x2000);
|
||||||
@ -542,7 +534,7 @@ static MACHINE_CONFIG_START( lethalen, lethal_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_K054539_TIMER_HANDLER(INPUTLINE("soundcpu", INPUT_LINE_NMI))
|
MCFG_K054539_TIMER_HANDLER(INPUTLINE("soundcpu", INPUT_LINE_NMI))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
@ -514,8 +514,6 @@ MACHINE_RESET_MEMBER(moo_state,moo)
|
|||||||
m_sprite_colorbase = 0;
|
m_sprite_colorbase = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static k054539_interface k054539_config;
|
|
||||||
|
|
||||||
static MACHINE_CONFIG_START( moo, moo_state )
|
static MACHINE_CONFIG_START( moo, moo_state )
|
||||||
|
|
||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
@ -575,7 +573,7 @@ static MACHINE_CONFIG_START( moo, moo_state )
|
|||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
@ -643,11 +643,6 @@ WRITE_LINE_MEMBER(mystwarr_state::k054539_nmi_gen)
|
|||||||
m_sound_nmi_clk = state;
|
m_sound_nmi_clk = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
"shared"
|
|
||||||
};
|
|
||||||
|
|
||||||
/**********************************************************************************/
|
/**********************************************************************************/
|
||||||
|
|
||||||
static INPUT_PORTS_START( mystwarr )
|
static INPUT_PORTS_START( mystwarr )
|
||||||
@ -1031,12 +1026,14 @@ static MACHINE_CONFIG_START( mystwarr, mystwarr_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(mystwarr_state, k054539_nmi_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(mystwarr_state, k054539_nmi_gen))
|
||||||
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0) /* stereo channels are inverted */
|
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0) /* stereo channels are inverted */
|
||||||
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_2", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0) /* stereo channels are inverted */
|
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0) /* stereo channels are inverted */
|
||||||
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
@ -574,12 +574,6 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, polygonet_state )
|
|||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
"shared",
|
|
||||||
NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
/**********************************************************************************/
|
/**********************************************************************************/
|
||||||
static const gfx_layout bglayout =
|
static const gfx_layout bglayout =
|
||||||
{
|
{
|
||||||
@ -678,7 +672,8 @@ static MACHINE_CONFIG_START( plygonet, polygonet_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(polygonet_state, k054539_nmi_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(polygonet_state, k054539_nmi_gen))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||||
|
@ -534,13 +534,6 @@ WRITE_LINE_MEMBER(qdrmfgp_state::k054539_irq1_gen)
|
|||||||
m_sound_intck = state;
|
m_sound_intck = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
/*************************************
|
/*************************************
|
||||||
*
|
*
|
||||||
* Machine-specific init
|
* Machine-specific init
|
||||||
@ -617,7 +610,7 @@ static MACHINE_CONFIG_START( qdrmfgp, qdrmfgp_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(qdrmfgp_state, k054539_irq1_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(qdrmfgp_state, k054539_irq1_gen))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
@ -664,7 +657,7 @@ static MACHINE_CONFIG_START( qdrmfgp2, qdrmfgp_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
@ -323,13 +323,6 @@ static GFXDECODE_START( rungun )
|
|||||||
GFXDECODE_END
|
GFXDECODE_END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
"shared"
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
void rungun_state::machine_start()
|
void rungun_state::machine_start()
|
||||||
{
|
{
|
||||||
UINT8 *ROM = memregion("soundcpu")->base();
|
UINT8 *ROM = memregion("soundcpu")->base();
|
||||||
@ -399,12 +392,14 @@ static MACHINE_CONFIG_START( rng, rungun_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(rungun_state, k054539_nmi_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(rungun_state, k054539_nmi_gen))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_2", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
@ -2384,12 +2384,6 @@ static MACHINE_CONFIG_START( glfgreat, tmnt_state )
|
|||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
MACHINE_START_MEMBER(tmnt_state,prmrsocr)
|
MACHINE_START_MEMBER(tmnt_state,prmrsocr)
|
||||||
{
|
{
|
||||||
MACHINE_START_CALL_MEMBER(common);
|
MACHINE_START_CALL_MEMBER(common);
|
||||||
@ -2449,7 +2443,7 @@ static MACHINE_CONFIG_START( prmrsocr, tmnt_state )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_K054539_TIMER_HANDLER(INPUTLINE("audiocpu", INPUT_LINE_NMI))
|
MCFG_K054539_TIMER_HANDLER(INPUTLINE("audiocpu", INPUT_LINE_NMI))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
@ -208,9 +208,6 @@ void ultrsprt_state::machine_reset()
|
|||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static k054539_interface k054539_config;
|
|
||||||
|
|
||||||
|
|
||||||
static MACHINE_CONFIG_START( ultrsprt, ultrsprt_state )
|
static MACHINE_CONFIG_START( ultrsprt, ultrsprt_state )
|
||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
MCFG_CPU_ADD("maincpu", PPC403GA, 25000000)
|
MCFG_CPU_ADD("maincpu", PPC403GA, 25000000)
|
||||||
@ -239,7 +236,7 @@ static MACHINE_CONFIG_START( ultrsprt, ultrsprt_state )
|
|||||||
|
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_K054539_TIMER_HANDLER(INPUTLINE("audiocpu", M68K_IRQ_5))
|
MCFG_K054539_TIMER_HANDLER(INPUTLINE("audiocpu", M68K_IRQ_5))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||||
|
@ -292,13 +292,12 @@ WRITE8_MEMBER(xexex_state::sound_bankswitch_w)
|
|||||||
membank("z80bank")->set_entry(data & 0x07);
|
membank("z80bank")->set_entry(data & 0x07);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ym_set_mixing(device_t *device, double left, double right)
|
K054539_CB_MEMBER(xexex_state::ym_set_mixing)
|
||||||
{
|
{
|
||||||
xexex_state *state = device->machine().driver_data<xexex_state>();
|
m_filter1l->flt_volume_set_volume((71.0 * left) / 55.0);
|
||||||
state->m_filter1l->flt_volume_set_volume((71.0 * left) / 55.0);
|
m_filter1r->flt_volume_set_volume((71.0 * right) / 55.0);
|
||||||
state->m_filter1r->flt_volume_set_volume((71.0 * right) / 55.0);
|
m_filter2l->flt_volume_set_volume((71.0 * left) / 55.0);
|
||||||
state->m_filter2l->flt_volume_set_volume((71.0 * left) / 55.0);
|
m_filter2r->flt_volume_set_volume((71.0 * right) / 55.0);
|
||||||
state->m_filter2r->flt_volume_set_volume((71.0 * right) / 55.0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TIMER_CALLBACK_MEMBER(xexex_state::dmaend_callback)
|
TIMER_CALLBACK_MEMBER(xexex_state::dmaend_callback)
|
||||||
@ -448,12 +447,6 @@ INPUT_PORTS_END
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
NULL,
|
|
||||||
ym_set_mixing
|
|
||||||
};
|
|
||||||
|
|
||||||
void xexex_state::xexex_postload()
|
void xexex_state::xexex_postload()
|
||||||
{
|
{
|
||||||
parse_control2();
|
parse_control2();
|
||||||
@ -557,7 +550,8 @@ static MACHINE_CONFIG_START( xexex, xexex_state )
|
|||||||
MCFG_SOUND_ROUTE(1, "filter2l", 0.50)
|
MCFG_SOUND_ROUTE(1, "filter2l", 0.50)
|
||||||
MCFG_SOUND_ROUTE(1, "filter2r", 0.50)
|
MCFG_SOUND_ROUTE(1, "filter2r", 0.50)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_APAN_CB(xexex_state, ym_set_mixing)
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0)
|
MCFG_SOUND_ROUTE(0, "rspeaker", 1.0)
|
||||||
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
|
MCFG_SOUND_ROUTE(1, "lspeaker", 1.0)
|
||||||
|
@ -320,8 +320,6 @@ TIMER_DEVICE_CALLBACK_MEMBER(xmen_state::xmen_scanline)
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static k054539_interface k054539_config;
|
|
||||||
|
|
||||||
static MACHINE_CONFIG_START( xmen, xmen_state )
|
static MACHINE_CONFIG_START( xmen, xmen_state )
|
||||||
|
|
||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
@ -368,7 +366,7 @@ static MACHINE_CONFIG_START( xmen, xmen_state )
|
|||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.20)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.20)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.20)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.20)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.00)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.00)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
@ -432,7 +430,7 @@ static MACHINE_CONFIG_START( xmen6p, xmen_state )
|
|||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.20)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.20)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.20)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.20)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539", K054539, XTAL_18_432MHz)
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.00)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 1.00)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
@ -535,11 +535,6 @@ static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, zr107_state )
|
|||||||
AM_RANGE(0x580000, 0x580001) AM_WRITENOP // 'NRES' - D2: K056602 /RESET
|
AM_RANGE(0x580000, 0x580001) AM_WRITENOP // 'NRES' - D2: K056602 /RESET
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
static const k054539_interface k054539_config =
|
|
||||||
{
|
|
||||||
"shared"
|
|
||||||
};
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
@ -807,12 +802,14 @@ static MACHINE_CONFIG_START( zr107, zr107_state )
|
|||||||
|
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(zr107_state, k054539_irq_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(zr107_state, k054539_irq_gen))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_2", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||||
|
|
||||||
@ -887,13 +884,14 @@ static MACHINE_CONFIG_START( jetwave, zr107_state )
|
|||||||
|
|
||||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_1", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_1", K054539, XTAL_18_432MHz)
|
||||||
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_K054539_TIMER_HANDLER(WRITELINE(zr107_state, k054539_irq_gen))
|
MCFG_K054539_TIMER_HANDLER(WRITELINE(zr107_state, k054539_irq_gen))
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||||
|
|
||||||
MCFG_K054539_ADD("k054539_2", XTAL_18_432MHz, k054539_config)
|
MCFG_DEVICE_ADD("k054539_2", K054539, XTAL_18_432MHz)
|
||||||
MCFG_SOUND_CONFIG(k054539_config)
|
MCFG_K054539_REGION_OVERRRIDE("shared")
|
||||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
MCFG_SOUND_ROUTE(0, "lspeaker", 0.75)
|
||||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||||
|
|
||||||
|
@ -96,4 +96,5 @@ public:
|
|||||||
void parse_control2( );
|
void parse_control2( );
|
||||||
K056832_CB_MEMBER(tile_callback);
|
K056832_CB_MEMBER(tile_callback);
|
||||||
K053246_CB_MEMBER(sprite_callback);
|
K053246_CB_MEMBER(sprite_callback);
|
||||||
|
K054539_CB_MEMBER(ym_set_mixing);
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user