mirror of
https://github.com/holub/mame
synced 2025-04-26 02:07:14 +03:00
Converted msm5205_device to devcb2 (nw)
This commit is contained in:
parent
aaa52239b8
commit
4be73ce2eb
@ -59,13 +59,16 @@ const device_type MSM6585 = &device_creator<msm6585_device>;
|
||||
|
||||
msm5205_device::msm5205_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, MSM5205, "MSM5205", tag, owner, clock, "msm5205", __FILE__),
|
||||
device_sound_interface(mconfig, *this)
|
||||
device_sound_interface(mconfig, *this),
|
||||
m_vclk_cb(*this)
|
||||
{
|
||||
}
|
||||
|
||||
msm5205_device::msm5205_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source)
|
||||
: device_t(mconfig, type, name, tag, owner, clock, shortname, source),
|
||||
device_sound_interface(mconfig, *this)
|
||||
device_sound_interface(mconfig, *this),
|
||||
m_select(0),
|
||||
m_vclk_cb(*this)
|
||||
{
|
||||
}
|
||||
|
||||
@ -75,28 +78,6 @@ msm6585_device::msm6585_device(const machine_config &mconfig, const char *tag, d
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_config_complete - perform any
|
||||
// operations now that the configuration is
|
||||
// complete
|
||||
//-------------------------------------------------
|
||||
|
||||
void msm5205_device::device_config_complete()
|
||||
{
|
||||
// inherit a copy of the static data
|
||||
const msm5205_interface *intf = reinterpret_cast<const msm5205_interface *>(static_config());
|
||||
if (intf != NULL)
|
||||
*static_cast<msm5205_interface *>(this) = *intf;
|
||||
|
||||
// or initialize to defaults if none provided
|
||||
else
|
||||
{
|
||||
memset(&m_vclk_cb, 0, sizeof(m_vclk_cb));
|
||||
m_select = 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
@ -104,7 +85,7 @@ void msm5205_device::device_config_complete()
|
||||
void msm5205_device::device_start()
|
||||
{
|
||||
m_mod_clock = clock();
|
||||
m_vclk_callback.resolve(m_vclk_cb, *this);
|
||||
m_vclk_cb.resolve();
|
||||
|
||||
/* compute the difference tables */
|
||||
compute_tables();
|
||||
@ -191,8 +172,8 @@ TIMER_CALLBACK_MEMBER( msm5205_device::vclk_callback )
|
||||
int new_signal;
|
||||
|
||||
/* callback user handler and latch next data */
|
||||
if (!m_vclk_callback.isnull())
|
||||
m_vclk_callback(1);
|
||||
if (!m_vclk_cb.isnull())
|
||||
m_vclk_cb(1);
|
||||
|
||||
/* reset check at last hiedge of VCLK */
|
||||
if (m_reset)
|
||||
|
@ -23,21 +23,30 @@
|
||||
#define MSM6585_S20 (7+8) /* prescaler 1/20(32KHz), data 4bit */
|
||||
|
||||
|
||||
struct msm5205_interface
|
||||
{
|
||||
devcb_write_line m_vclk_cb; /* VCLK callback */
|
||||
int m_select; /* prescaler / bit width selector */
|
||||
};
|
||||
#define MCFG_MSM5205_PRESCALER_SELECTOR(_select) \
|
||||
msm5205_device::set_prescaler_selector(*device, _select);
|
||||
|
||||
#define MCFG_MSM5205_VCLK_CB(_devcb) \
|
||||
devcb = &msm5205_device::set_vclk_callback(*device, DEVCB2_##_devcb);
|
||||
|
||||
|
||||
#define MCFG_MSM6585_PRESCALER_SELECTOR(_select) \
|
||||
msm6585_device::set_prescaler_selector(*device, _select);
|
||||
|
||||
#define MCFG_MSM6585_VCLK_CB(_devcb) \
|
||||
devcb = &msm6585_device::set_vclk_callback(*device, DEVCB2_##_devcb);
|
||||
|
||||
|
||||
class msm5205_device : public device_t,
|
||||
public device_sound_interface,
|
||||
public msm5205_interface
|
||||
public device_sound_interface
|
||||
{
|
||||
public:
|
||||
msm5205_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
msm5205_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source);
|
||||
~msm5205_device() {}
|
||||
|
||||
static void set_prescaler_selector(device_t &device, int select) { downcast<msm5205_device &>(device).m_select = select; }
|
||||
template<class _Object> static devcb2_base &set_vclk_callback(device_t &device, _Object object) { return downcast<msm5205_device &>(device).m_vclk_cb.set_callback(object); }
|
||||
|
||||
// reset signal should keep for 2cycle of VCLK
|
||||
void reset_w(int reset);
|
||||
@ -55,7 +64,6 @@ public:
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_config_complete();
|
||||
virtual void device_start();
|
||||
virtual void device_reset();
|
||||
|
||||
@ -78,7 +86,8 @@ protected:
|
||||
INT32 m_signal; /* current ADPCM signal */
|
||||
INT32 m_step; /* current ADPCM step */
|
||||
int m_diff_lookup[49*16];
|
||||
devcb_resolved_write_line m_vclk_callback;
|
||||
int m_select;
|
||||
devcb2_write_line m_vclk_cb;
|
||||
};
|
||||
|
||||
extern const device_type MSM5205;
|
||||
|
@ -111,12 +111,6 @@ void hyprolyb_adpcm_device::vck_callback( int st )
|
||||
m_vck_ready = 0x80;
|
||||
}
|
||||
|
||||
static const msm5205_interface hyprolyb_msm5205_config =
|
||||
{
|
||||
DEVCB_DEVICE_LINE_MEMBER("hyprolyb_adpcm", hyprolyb_adpcm_device, vck_callback), /* VCK function */
|
||||
MSM5205_S96_4B /* 4 kHz */
|
||||
};
|
||||
|
||||
MACHINE_CONFIG_FRAGMENT( hyprolyb_adpcm )
|
||||
MCFG_CPU_ADD("adpcm", M6802, XTAL_14_31818MHz/8) /* unknown clock */
|
||||
MCFG_CPU_PROGRAM_MAP(hyprolyb_adpcm_map)
|
||||
@ -124,7 +118,8 @@ MACHINE_CONFIG_FRAGMENT( hyprolyb_adpcm )
|
||||
MCFG_SOUND_ADD("hyprolyb_adpcm", HYPROLYB_ADPCM, 0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(hyprolyb_msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(DEVWRITELINE("hyprolyb_adpcm", hyprolyb_adpcm_device, vck_callback)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -246,17 +246,6 @@ static const ay8910_interface irem_ay8910_interface_2 =
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
static const msm5205_interface irem_msm5205_interface_1 =
|
||||
{
|
||||
DEVCB_DEVICE_LINE_MEMBER("irem_audio", irem_audio_device, adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B /* default to 4KHz, but can be changed at run time */
|
||||
};
|
||||
|
||||
static const msm5205_interface irem_msm5205_interface_2 =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* default to 4KHz, but can be changed at run time, slave */
|
||||
};
|
||||
|
||||
/*
|
||||
* http://newsgroups.derkeiler.com/Archive/Rec/rec.games.video.arcade.collecting/2006-06/msg03108.html
|
||||
@ -412,11 +401,12 @@ static MACHINE_CONFIG_FRAGMENT( irem_audio_base )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, XTAL_384kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(irem_msm5205_interface_1)
|
||||
MCFG_MSM5205_VCLK_CB(DEVWRITELINE("irem_audio", irem_audio_device, adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* default to 4KHz, but can be changed at run time */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, XTAL_384kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(irem_msm5205_interface_2)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* default to 4KHz, but can be changed at run time, slave */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -441,7 +431,8 @@ MACHINE_CONFIG_FRAGMENT( m52_sound_c_audio )
|
||||
MCFG_SOUND_ROUTE_EX(0, "filtermix", 1.0, 1)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, XTAL_384kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(irem_msm5205_interface_1)
|
||||
MCFG_MSM5205_VCLK_CB(DEVWRITELINE("irem_audio", irem_audio_device, adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* default to 4KHz, but can be changed at run time */
|
||||
MCFG_SOUND_ROUTE_EX(0, "filtermix", 1.0, 2)
|
||||
|
||||
MCFG_SOUND_ADD("filtermix", DISCRETE, 0)
|
||||
|
@ -377,20 +377,6 @@ static GFXDECODE_START( robowres )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(appoooh_state,appoooh_adpcm_int),/* interrupt function */
|
||||
MSM5205_S64_4B /* 6KHz */
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -440,7 +426,8 @@ static MACHINE_CONFIG_START( appoooh_common, appoooh_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(appoooh_state, appoooh_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B) /* 6KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -314,13 +314,6 @@ WRITE_LINE_MEMBER(ashnojoe_state::ashnojoe_vclk_cb)
|
||||
m_msm5205_vclk_toggle ^= 1;
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(ashnojoe_state,ashnojoe_vclk_cb),
|
||||
MSM5205_S48_4B
|
||||
};
|
||||
|
||||
|
||||
void ashnojoe_state::machine_start()
|
||||
{
|
||||
save_item(NAME(m_adpcm_byte));
|
||||
@ -370,7 +363,8 @@ static MACHINE_CONFIG_START( ashnojoe, ashnojoe_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.1)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ashnojoe_state, ashnojoe_vclk_cb))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -774,13 +774,6 @@ WRITE_LINE_MEMBER(asuka_state::irqhandler)
|
||||
}
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(asuka_state,asuka_msm5205_vck), /* VCK function */
|
||||
MSM5205_S48_4B /* 8 kHz */
|
||||
};
|
||||
|
||||
|
||||
/***********************************************************
|
||||
MACHINE DRIVERS
|
||||
***********************************************************/
|
||||
@ -960,7 +953,8 @@ static MACHINE_CONFIG_START( asuka, asuka_state )
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(asuka_state, asuka_msm5205_vck)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
|
||||
@ -1076,7 +1070,8 @@ static MACHINE_CONFIG_START( mofflott, asuka_state )
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(asuka_state, asuka_msm5205_vck)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
|
||||
|
@ -212,14 +212,6 @@ GFXDECODE_END
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(battlera_state,battlera_adpcm_int),/* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static const c6280_interface c6280_config =
|
||||
{
|
||||
"audiocpu"
|
||||
@ -257,7 +249,8 @@ static MACHINE_CONFIG_START( battlera, battlera_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(battlera_state, battlera_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.85)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.85)
|
||||
|
||||
|
@ -458,18 +458,6 @@ static GFXDECODE_START( cabal )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_interface_1 =
|
||||
{
|
||||
DEVCB_NULL,
|
||||
MSM5205_SEX_4B
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_interface_2 =
|
||||
{
|
||||
DEVCB_NULL,
|
||||
MSM5205_SEX_4B
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( cabal, cabal_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -559,11 +547,11 @@ static MACHINE_CONFIG_START( cabalbl, cabal_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS,"mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, XTAL_12MHz/32) /* verified on pcb (no resonator) */
|
||||
MCFG_SOUND_CONFIG(msm5205_interface_1)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, XTAL_12MHz/32) /* verified on pcb (no resonator)*/
|
||||
MCFG_SOUND_CONFIG(msm5205_interface_2)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -510,13 +510,6 @@ WRITE_LINE_MEMBER(chinagat_state::chinagat_irq_handler)
|
||||
m_soundcpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE );
|
||||
}
|
||||
|
||||
/* This on the bootleg board, instead of the m6295 */
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(chinagat_state,saiyugoub1_m5205_irq_w), /* Interrupt function */
|
||||
MSM5205_S64_4B /* vclk input mode (6030Hz, 4-bit) */
|
||||
};
|
||||
|
||||
/* This is only on the second bootleg board */
|
||||
static const ay8910_interface ay8910_config =
|
||||
{
|
||||
@ -649,7 +642,8 @@ static MACHINE_CONFIG_START( saiyugoub1, chinagat_state )
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm", MSM5205, 9263750 / 24)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(chinagat_state, saiyugoub1_m5205_irq_w)) /* Interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B) /* vclk input mode (6030Hz, 4-bit) */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -564,11 +564,6 @@ WRITE_LINE_MEMBER(chinsan_state::chin_adpcm_int)
|
||||
}
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(chinsan_state,chin_adpcm_int), /* interrupt function */
|
||||
MSM5205_S64_4B /* 8kHz */
|
||||
};
|
||||
|
||||
/*************************************
|
||||
*
|
||||
@ -630,7 +625,8 @@ static MACHINE_CONFIG_START( chinsan, chinsan_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.10)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(chinsan_state, chin_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B) /* 8kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -754,12 +754,6 @@ static MACHINE_CONFIG_START( combatsc, combatsc_state )
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* 8KHz playback ? */
|
||||
};
|
||||
|
||||
/* combat school (bootleg on different hardware) */
|
||||
static MACHINE_CONFIG_START( combatscb, combatsc_state )
|
||||
|
||||
@ -798,7 +792,7 @@ static MACHINE_CONFIG_START( combatscb, combatsc_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
|
||||
|
||||
MCFG_SOUND_ADD("msm5205", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* 8KHz playback ? */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -365,20 +365,6 @@ INPUT_PORTS_END
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound definitions
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static const msm5205_interface msm5205_intf =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(crgolf_state,vck_callback),
|
||||
MSM5205_S64_4B
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -411,7 +397,8 @@ MACHINE_CONFIG_END
|
||||
static MACHINE_CONFIG_DERIVED( crgolfhi, crgolf )
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_intf)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(crgolf_state, vck_callback))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -579,14 +579,6 @@ WRITE_LINE_MEMBER(dacholer_state::adpcm_int)
|
||||
}
|
||||
}
|
||||
|
||||
static const msm5205_interface msm_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(dacholer_state,adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B /* 1 / 96 = 3906.25Hz playback - guess */
|
||||
};
|
||||
|
||||
|
||||
|
||||
void dacholer_state::machine_start()
|
||||
{
|
||||
save_item(NAME(m_bg_bank));
|
||||
@ -691,7 +683,8 @@ static MACHINE_CONFIG_START( dacholer, dacholer_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz)
|
||||
MCFG_SOUND_CONFIG(msm_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dacholer_state, adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 1 / 96 = 3906.25Hz playback - guess */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -488,12 +488,6 @@ WRITE_LINE_MEMBER(darius_state::darius_adpcm_int)
|
||||
m_adpcm->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(darius_state,darius_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
READ8_MEMBER(darius_state::adpcm_command_read)
|
||||
{
|
||||
/* logerror("read port 0: %02x PC=%4x\n",adpcm_command, space.device().safe_pc() ); */
|
||||
@ -934,7 +928,8 @@ static MACHINE_CONFIG_START( darius, darius_state )
|
||||
MCFG_SOUND_ROUTE(3, "filter1.3r", 0.60)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(darius_state, darius_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "msm5205.l", 1.0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "msm5205.r", 1.0)
|
||||
|
||||
|
@ -936,27 +936,6 @@ static GFXDECODE_START( ddragon )
|
||||
GFXDECODE_ENTRY( "gfx3", 0, tile_layout, 256, 8 ) /* colors 256-383 */
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound definitions
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config_1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(ddragon_state,dd_adpcm_int_1), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8kHz */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config_2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(ddragon_state,dd_adpcm_int_2), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8kHz */
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine drivers
|
||||
@ -1002,11 +981,13 @@ static MACHINE_CONFIG_START( ddragon, ddragon_state )
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.60)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm1", MSM5205, MAIN_CLOCK / 32)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ddragon_state, dd_adpcm_int_1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm2", MSM5205, MAIN_CLOCK / 32)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ddragon_state, dd_adpcm_int_2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1067,11 +1048,13 @@ static MACHINE_CONFIG_START( ddragon6809, ddragon_state )
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.60)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm1", MSM5205, MAIN_CLOCK/32)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ddragon_state, dd_adpcm_int_1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm2", MSM5205, MAIN_CLOCK/32)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ddragon_state, dd_adpcm_int_2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -514,11 +514,6 @@ WRITE8_MEMBER(de_2_state::lamps_w)
|
||||
}
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_intf =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(de_2_state,msm5205_irq_w),
|
||||
MSM5205_S96_4B
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( de_type1, de_2_state )
|
||||
/* basic machine hardware */
|
||||
@ -543,7 +538,8 @@ static MACHINE_CONFIG_START( de_type1, de_2_state )
|
||||
MCFG_YM2151_IRQ_HANDLER(WRITELINE(de_2_state, ym2151_irq_w))
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MCFG_SOUND_ADD("msm5205", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_intf)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(de_2_state, msm5205_irq_w))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -570,7 +566,8 @@ static MACHINE_CONFIG_START( de_type2, de_2_state )
|
||||
MCFG_YM2151_IRQ_HANDLER(WRITELINE(de_2_state, ym2151_irq_w))
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MCFG_SOUND_ADD("msm5205", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_intf)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(de_2_state, msm5205_irq_w))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -597,7 +594,8 @@ static MACHINE_CONFIG_START( de_type2_alpha3, de_2_state )
|
||||
MCFG_YM2151_IRQ_HANDLER(WRITELINE(de_2_state, ym2151_irq_w))
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MCFG_SOUND_ADD("msm5205", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_intf)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(de_2_state, msm5205_irq_w))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -624,7 +622,8 @@ static MACHINE_CONFIG_START( de_type3, de_2_state )
|
||||
MCFG_YM2151_IRQ_HANDLER(WRITELINE(de_2_state, ym2151_irq_w))
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MCFG_SOUND_ADD("msm5205", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_intf)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(de_2_state, msm5205_irq_w))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -1392,12 +1392,6 @@ WRITE_LINE_MEMBER(dec0_automat_state::automat_vclk_cb)
|
||||
m_automat_msm5205_vclk_toggle ^= 1;
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(dec0_automat_state,automat_vclk_cb),
|
||||
MSM5205_S48_4B
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( automat, dec0_automat_state )
|
||||
|
||||
@ -1454,7 +1448,8 @@ static MACHINE_CONFIG_START( automat, dec0_automat_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.35)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000/2)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dec0_automat_state, automat_vclk_cb))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1514,7 +1509,8 @@ static MACHINE_CONFIG_START( secretab, dec0_automat_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.35)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000/2)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dec0_automat_state, automat_vclk_cb))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -1912,12 +1912,6 @@ WRITE_LINE_MEMBER(dec8_state::irqhandler)
|
||||
m_audiocpu->set_input_line(0, state); /* M6502_IRQ_LINE */
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(dec8_state,csilver_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
INTERRUPT_GEN_MEMBER(dec8_state::gondo_interrupt)
|
||||
@ -2322,7 +2316,8 @@ static MACHINE_CONFIG_START( csilver, dec8_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dec8_state, csilver_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.88)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -484,12 +484,6 @@ WRITE_LINE_MEMBER(discoboy_state::yunsung8_adpcm_int)
|
||||
m_toggle ^= 1;
|
||||
}
|
||||
|
||||
static const msm5205_interface yunsung8_msm5205_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(discoboy_state,yunsung8_adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B /* 4KHz, 4 Bits */
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( discoboy, discoboy_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -524,7 +518,8 @@ static MACHINE_CONFIG_START( discoboy, discoboy_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.6)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_400kHz)
|
||||
MCFG_SOUND_CONFIG(yunsung8_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(discoboy_state, yunsung8_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -580,15 +580,6 @@ static MC6845_INTERFACE( crtc_intf )
|
||||
};
|
||||
|
||||
|
||||
/* Sound Interfaces */
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(docastle_state,idsoccer_adpcm_int), // interrupt function
|
||||
MSM5205_S64_4B // 6 kHz ???
|
||||
};
|
||||
|
||||
|
||||
/* Machine Drivers */
|
||||
|
||||
void docastle_state::machine_reset()
|
||||
@ -688,7 +679,8 @@ static MACHINE_CONFIG_DERIVED( idsoccer, docastle )
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* Crystal verified on American Soccer board. */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(docastle_state, idsoccer_adpcm_int)) // interrupt function
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B) // 6 kHz ???
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -211,12 +211,6 @@ static GFXDECODE_START( drmicro )
|
||||
GFXDECODE_ENTRY( "gfx2", 0x0000, spritelayout8, 256, 32 ) /* sprites */
|
||||
GFXDECODE_END
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(drmicro_state,pcm_w), /* IRQ handler */
|
||||
MSM5205_S64_4B /* 6 KHz */
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
@ -277,7 +271,8 @@ static MACHINE_CONFIG_START( drmicro, drmicro_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(drmicro_state, pcm_w)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B) /* 6 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -4066,13 +4066,6 @@ static const ay8910_interface hanamai_ay8910_config =
|
||||
DEVCB_NULL, /* Port B Write */
|
||||
};
|
||||
|
||||
static const msm5205_interface hanamai_msm5205_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(dynax_state,adpcm_int), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 KHz, 4 Bits */
|
||||
};
|
||||
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( hanamai, dynax_state )
|
||||
|
||||
@ -4116,7 +4109,8 @@ static MACHINE_CONFIG_START( hanamai, dynax_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(hanamai_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dynax_state, adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -4170,7 +4164,8 @@ static MACHINE_CONFIG_START( hnoridur, dynax_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(hanamai_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dynax_state, adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -4216,7 +4211,8 @@ static MACHINE_CONFIG_START( hjingi, dynax_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz )
|
||||
MCFG_SOUND_CONFIG(hanamai_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dynax_state, adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -4401,12 +4397,6 @@ static const ay8910_interface jantouki_ay8910_config =
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
};
|
||||
|
||||
static const msm5205_interface jantouki_msm5205_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(dynax_state,adpcm_int_cpu1), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 KHz, 4 Bits */
|
||||
};
|
||||
|
||||
MACHINE_START_MEMBER(dynax_state,jantouki)
|
||||
{
|
||||
UINT8 *MAIN = memregion("maincpu")->base();
|
||||
@ -4478,7 +4468,8 @@ static MACHINE_CONFIG_START( jantouki, dynax_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(jantouki_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(dynax_state, adpcm_int_cpu1)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
/* devices */
|
||||
|
@ -920,28 +920,6 @@ static MACHINE_CONFIG_START( galaxygn, fantland_state )
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
// OKI M5205 running at 384kHz [18.432/48]. Sample rate = 384000 / 48
|
||||
static const msm5205_interface msm5205_config_0 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(fantland_state,borntofi_adpcm_int_0), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 kHz, 4 Bits */
|
||||
};
|
||||
static const msm5205_interface msm5205_config_1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(fantland_state,borntofi_adpcm_int_1), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 kHz, 4 Bits */
|
||||
};
|
||||
static const msm5205_interface msm5205_config_2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(fantland_state,borntofi_adpcm_int_2), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 kHz, 4 Bits */
|
||||
};
|
||||
static const msm5205_interface msm5205_config_3 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(fantland_state,borntofi_adpcm_int_3), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 kHz, 4 Bits */
|
||||
};
|
||||
|
||||
MACHINE_START_MEMBER(fantland_state,borntofi)
|
||||
{
|
||||
MACHINE_START_CALL_MEMBER(fantland);
|
||||
@ -1013,10 +991,26 @@ static MACHINE_CONFIG_START( borntofi, fantland_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000) MCFG_SOUND_CONFIG(msm5205_config_0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000) MCFG_SOUND_CONFIG(msm5205_config_1) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_ADD("msm3", MSM5205, 384000) MCFG_SOUND_CONFIG(msm5205_config_2) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_ADD("msm4", MSM5205, 384000) MCFG_SOUND_CONFIG(msm5205_config_3) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
// OKI M5205 running at 384kHz [18.432/48]. Sample rate = 384000 / 48
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(fantland_state, borntofi_adpcm_int_0)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(fantland_state, borntofi_adpcm_int_1)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm3", MSM5205, 384000)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(fantland_state, borntofi_adpcm_int_2)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm4", MSM5205, 384000)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(fantland_state, borntofi_adpcm_int_3)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -1402,19 +1402,6 @@ static INPUT_PORTS_START( sgyxz )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_interface1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(cps_state,m5205_int1), /* interrupt function */
|
||||
MSM5205_S96_4B /* 4KHz 4-bit */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_interface2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(cps_state,m5205_int2), /* interrupt function */
|
||||
MSM5205_S96_4B /* 4KHz 4-bit */
|
||||
};
|
||||
|
||||
|
||||
MACHINE_START_MEMBER(cps_state,fcrash)
|
||||
{
|
||||
UINT8 *ROM = memregion("audiocpu")->base();
|
||||
@ -1592,11 +1579,13 @@ static MACHINE_CONFIG_START( fcrash, cps_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 24000000/64) /* ? */
|
||||
MCFG_SOUND_CONFIG(msm5205_interface1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(cps_state, m5205_int1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 24000000/64) /* ? */
|
||||
MCFG_SOUND_CONFIG(msm5205_interface2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(cps_state, m5205_int2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1685,11 +1674,13 @@ static MACHINE_CONFIG_START( sf2mdt, cps_state )
|
||||
|
||||
/* has 2x MSM5205 instead of OKI6295 */
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 24000000/64) /* ? */
|
||||
MCFG_SOUND_CONFIG(msm5205_interface1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(cps_state, m5205_int1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 24000000/64) /* ? */
|
||||
MCFG_SOUND_CONFIG(msm5205_interface2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(cps_state, m5205_int2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1730,11 +1721,13 @@ static MACHINE_CONFIG_START( knightsb, cps_state )
|
||||
|
||||
/* has 2x MSM5205 instead of OKI6295 */
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 24000000/64) /* ? */
|
||||
MCFG_SOUND_CONFIG(msm5205_interface1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(cps_state, m5205_int1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 24000000/64) /* ? */
|
||||
MCFG_SOUND_CONFIG(msm5205_interface2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(cps_state, m5205_int2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -571,13 +571,6 @@ static GFXDECODE_START( firetrap )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(firetrap_state,firetrap_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 7.8125kHz */
|
||||
};
|
||||
|
||||
INTERRUPT_GEN_MEMBER(firetrap_state::firetrap_irq)
|
||||
{
|
||||
if (m_nmi_enable)
|
||||
@ -662,7 +655,8 @@ static MACHINE_CONFIG_START( firetrap, firetrap_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, FIRETRAP_XTAL/32) // 375 kHz
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(firetrap_state, firetrap_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 7.8125kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -699,7 +693,8 @@ static MACHINE_CONFIG_START( firetrapbl, firetrap_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, FIRETRAP_XTAL/32) // 375 kHz
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(firetrap_state, firetrap_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 7.8125kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -954,20 +954,6 @@ static GFXDECODE_START( fromance )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound definitions
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(fromance_state,fromance_adpcm_int), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 KHz */
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine drivers
|
||||
@ -1055,7 +1041,8 @@ static MACHINE_CONFIG_START( nekkyoku, fromance_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(fromance_state, fromance_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1094,7 +1081,8 @@ static MACHINE_CONFIG_START( idolmj, fromance_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(fromance_state, fromance_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1133,7 +1121,8 @@ static MACHINE_CONFIG_START( fromance, fromance_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(fromance_state, fromance_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -379,16 +379,6 @@ static GFXDECODE_START( gcpinbal )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/**************************************************************
|
||||
(SOUND)
|
||||
**************************************************************/
|
||||
|
||||
static const msm5205_interface msm6585_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(gcpinbal_state,gcp_adpcm_int), /* VCK function */
|
||||
MSM6585_S40 /* 16 kHz */
|
||||
};
|
||||
|
||||
/***********************************************************
|
||||
MACHINE DRIVERS
|
||||
***********************************************************/
|
||||
@ -459,7 +449,8 @@ static MACHINE_CONFIG_START( gcpinbal, gcpinbal_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM6585, XTAL_640kHz)
|
||||
MCFG_SOUND_CONFIG(msm6585_config)
|
||||
MCFG_MSM6585_VCLK_CB(WRITELINE(gcpinbal_state, gcp_adpcm_int)) /* VCK function */
|
||||
MCFG_MSM6585_PRESCALER_SELECTOR(MSM6585_S40) /* 16 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -645,13 +645,6 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_NULL,
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* vclk input mode */
|
||||
};
|
||||
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( ppking, gladiatr_state )
|
||||
|
||||
@ -699,7 +692,7 @@ static MACHINE_CONFIG_START( ppking, gladiatr_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_455kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* vclk input mode */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -749,7 +742,7 @@ static MACHINE_CONFIG_START( gladiatr, gladiatr_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_455kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* vclk input mode */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -231,12 +231,6 @@ WRITE_LINE_MEMBER(goal92_state::goal92_adpcm_int)
|
||||
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(goal92_state,goal92_adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B /* 4KHz 4-bit */
|
||||
};
|
||||
|
||||
static const gfx_layout layout_8x8x4 =
|
||||
{
|
||||
8,8,
|
||||
@ -340,7 +334,8 @@ static MACHINE_CONFIG_START( goal92, goal92_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(goal92_state, goal92_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -646,12 +646,6 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* vclk input mode */
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( gsword, gsword_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -702,7 +696,7 @@ static MACHINE_CONFIG_START( gsword, gsword_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_400kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* vclk input mode */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -515,13 +515,6 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_NULL,
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* IRQ handler */
|
||||
MSM5205_SEX_4B
|
||||
};
|
||||
|
||||
|
||||
|
||||
void hnayayoi_state::machine_start()
|
||||
{
|
||||
@ -580,7 +573,7 @@ static MACHINE_CONFIG_START( hnayayoi, hnayayoi_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -904,12 +904,6 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(jangou_state,jngolady_vclk_cb),
|
||||
MSM5205_S96_4B
|
||||
};
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -1035,7 +1029,8 @@ static MACHINE_CONFIG_DERIVED( jngolady, jangou )
|
||||
MCFG_DEVICE_REMOVE("cvsd")
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_400kHz)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(jangou_state, jngolady_vclk_cb))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -462,19 +462,6 @@ static INPUT_PORTS_START( jantotsu )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(jantotsu_state,jan_adpcm_int), /* interrupt function */
|
||||
MSM5205_S64_4B /* 6 KHz */
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -534,7 +521,8 @@ static MACHINE_CONFIG_START( jantotsu, jantotsu_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm", MSM5205, XTAL_384kHz)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(jantotsu_state, jan_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B) /* 6 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -360,12 +360,6 @@ WRITE_LINE_MEMBER(kchamp_state::msmint)
|
||||
}
|
||||
}
|
||||
|
||||
static const msm5205_interface msm_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(kchamp_state,msmint), /* interrupt function */
|
||||
MSM5205_S96_4B /* 1 / 96 = 3906.25Hz playback */
|
||||
};
|
||||
|
||||
/********************
|
||||
* 1 Player Version *
|
||||
********************/
|
||||
@ -437,7 +431,8 @@ static MACHINE_CONFIG_START( kchampvs, kchamp_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 375000) /* verified on pcb, discrete circuit clock */
|
||||
MCFG_SOUND_CONFIG(msm_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(kchamp_state, msmint)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 1 / 96 = 3906.25Hz playback */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -291,18 +291,6 @@ static I8255A_INTERFACE( ppi8255_1_intf )
|
||||
};
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config_1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(kungfur_state,kfr_adpcm1_int),
|
||||
MSM5205_S48_4B
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config_2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(kungfur_state,kfr_adpcm2_int),
|
||||
MSM5205_S48_4B
|
||||
};
|
||||
|
||||
void kungfur_state::machine_start()
|
||||
{
|
||||
save_item(NAME(m_control));
|
||||
@ -333,11 +321,13 @@ static MACHINE_CONFIG_START( kungfur, kungfur_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||
MCFG_SOUND_ADD("adpcm1", MSM5205, XTAL_384kHz) // clock verified with recording
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(kungfur_state, kfr_adpcm1_int))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm2", MSM5205, XTAL_384kHz) // "
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(kungfur_state, kfr_adpcm2_int))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -549,12 +549,6 @@ static const ay8910_interface ym2149_intf =
|
||||
DEVCB_DRIVER_MEMBER(kurukuru_state, ym2149_bout_w)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(kurukuru_state,kurukuru_msm5205_vck),
|
||||
MSM5205_S48_4B /* changed on the fly */
|
||||
};
|
||||
|
||||
|
||||
/*************************************************
|
||||
* Machine Driver *
|
||||
@ -596,7 +590,8 @@ static MACHINE_CONFIG_START( kurukuru, kurukuru_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm", MSM5205, M5205_CLOCK)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(kurukuru_state, kurukuru_msm5205_vck))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* changed on the fly */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -1516,11 +1516,6 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_DRIVER_MEMBER(lucky74_state,ym2149_portb_w)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(lucky74_state,lucky74_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
/*************************
|
||||
* Machine Drivers *
|
||||
@ -1573,7 +1568,8 @@ static MACHINE_CONFIG_START( lucky74, lucky74_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.00) /* not routed to audio hardware */
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, C_06B49P_CLKOUT_06) /* 375 kHz. */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(lucky74_state, lucky74_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -719,18 +719,6 @@ static GFXDECODE_START( trojan )
|
||||
GFXDECODE_ENTRY( "gfx4", 0, bg2_tilelayout, 0, 8 ) /* colors 0-127 */
|
||||
GFXDECODE_END
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound definitions
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* slave mode */
|
||||
};
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -837,7 +825,7 @@ static MACHINE_CONFIG_DERIVED( trojan, lwings )
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SOUND_ADD("5205", MSM5205, XTAL_384kHz) /* verified on PCB */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* slave mode */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -682,12 +682,6 @@ WRITE_LINE_MEMBER(mastboy_state::mastboy_adpcm_int)
|
||||
}
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(mastboy_state,mastboy_adpcm_int), /* interrupt function */
|
||||
MSM5205_SEX_4B /* 4KHz 4-bit */
|
||||
};
|
||||
|
||||
/* Interrupt Handling */
|
||||
|
||||
WRITE8_MEMBER(mastboy_state::mastboy_irq0_ack_w)
|
||||
@ -915,7 +909,8 @@ static MACHINE_CONFIG_START( mastboy, mastboy_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(mastboy_state, mastboy_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -418,14 +418,6 @@ WRITE_LINE_MEMBER(mermaid_state::rougien_adpcm_int)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(mermaid_state,rougien_adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B
|
||||
};
|
||||
|
||||
|
||||
INTERRUPT_GEN_MEMBER(mermaid_state::vblank_irq)
|
||||
{
|
||||
if(m_nmi_mask)
|
||||
@ -475,7 +467,8 @@ static MACHINE_CONFIG_DERIVED( rougien, mermaid )
|
||||
MCFG_PALETTE_INIT_OWNER(mermaid_state,rougien)
|
||||
|
||||
MCFG_SOUND_ADD("adpcm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(mermaid_state, rougien_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -1182,13 +1182,6 @@ WRITE_LINE_MEMBER(mitchell_state::spangbl_adpcm_int)
|
||||
}
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(mitchell_state,spangbl_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 4KHz 4-bit */
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( spangbl, pangnv )
|
||||
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
@ -1208,7 +1201,8 @@ static MACHINE_CONFIG_DERIVED( spangbl, pangnv )
|
||||
|
||||
MCFG_DEVICE_REMOVE("oki")
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(mitchell_state, spangbl_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -940,21 +940,6 @@ static Z80CTC_INTERFACE( ctc_intf )
|
||||
};
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_1_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(mlanding_state, msm5205_1_vck), // VCK function
|
||||
MSM5205_S48_4B // 8 kHz, 4-bit
|
||||
};
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_2_config =
|
||||
{
|
||||
DEVCB_NULL, // VCK function
|
||||
MSM5205_SEX_4B // Slave mode, 4-bit
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -1010,11 +995,12 @@ static MACHINE_CONFIG_START( mlanding, mlanding_state )
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_1_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(mlanding_state, msm5205_1_vck)) // VCK function
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) // 8 kHz, 4-bit
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_2_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) // Slave mode, 4-bit
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -1822,7 +1822,6 @@ void namcos23_state::c435_pio_w(UINT16 data)
|
||||
|
||||
void namcos23_state::c435_dma(address_space &space, UINT32 adr, UINT32 size)
|
||||
{
|
||||
//UINT16 buffer[256];
|
||||
adr &= 0x1fffffff;
|
||||
|
||||
for(int pos=0; pos < size; pos += 2)
|
||||
|
@ -775,12 +775,6 @@ static const ay8910_interface ojankoc_ay8910_interface =
|
||||
DEVCB_INPUT_PORT("DSW2"), /* read port #1 */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(ojankohs_state,ojankohs_adpcm_int), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 KHz */
|
||||
};
|
||||
|
||||
|
||||
MACHINE_START_MEMBER(ojankohs_state,common)
|
||||
{
|
||||
@ -872,7 +866,8 @@ static MACHINE_CONFIG_START( ojankohs, ojankohs_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ojankohs_state, ojankohs_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -910,7 +905,8 @@ static MACHINE_CONFIG_START( ojankoy, ojankohs_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ojankohs_state, ojankohs_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -947,7 +943,8 @@ static MACHINE_CONFIG_START( ccasino, ojankohs_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ojankohs_state, ojankohs_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -983,7 +980,8 @@ static MACHINE_CONFIG_START( ojankoc, ojankohs_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 8000000/22)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(ojankohs_state, ojankohs_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -676,23 +676,6 @@ static GFXDECODE_START( opwolfb )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/**************************************************************
|
||||
YM2151 (SOUND)
|
||||
**************************************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config_1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(opwolf_state,opwolf_msm5205_vck_1), /* VCK function */
|
||||
MSM5205_S48_4B /* 8 kHz */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config_2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(opwolf_state,opwolf_msm5205_vck_2), /* VCK function */
|
||||
MSM5205_S48_4B /* 8 kHz */
|
||||
};
|
||||
|
||||
|
||||
/***********************************************************
|
||||
MACHINE DRIVERS
|
||||
***********************************************************/
|
||||
@ -757,12 +740,14 @@ static MACHINE_CONFIG_START( opwolf, opwolf_state )
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(opwolf_state, opwolf_msm5205_vck_1)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(opwolf_state, opwolf_msm5205_vck_2)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
|
||||
|
||||
@ -817,12 +802,14 @@ static MACHINE_CONFIG_START( opwolfb, opwolf_state ) /* OSC clocks unknown for t
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.75)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(opwolf_state, opwolf_msm5205_vck_1)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(opwolf_state, opwolf_msm5205_vck_2)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
|
||||
|
||||
|
@ -204,13 +204,6 @@ static GFXDECODE_START( bootleg )
|
||||
GFXDECODE_ENTRY( "gfx2", 0x00000, bootleg_spritelayout, 0, 8 ) /* sprites */
|
||||
GFXDECODE_END
|
||||
|
||||
/***************************************************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(pcktgal_state,pcktgal_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
/***************************************************************************/
|
||||
|
||||
@ -260,7 +253,8 @@ static MACHINE_CONFIG_START( pcktgal, pcktgal_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(pcktgal_state, pcktgal_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -333,13 +333,6 @@ static GFXDECODE_START( rastan )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(rastan_state,rastan_msm5205_vck), /* VCK function */
|
||||
MSM5205_S48_4B /* 8 kHz */
|
||||
};
|
||||
|
||||
void rastan_state::machine_start()
|
||||
{
|
||||
UINT8 *ROM = memregion("audiocpu")->base();
|
||||
@ -422,7 +415,8 @@ static MACHINE_CONFIG_START( rastan, rastan_state )
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(rastan_state, rastan_msm5205_vck)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
|
||||
MCFG_TC0140SYT_ADD("tc0140syt", rastan_tc0140syt_intf)
|
||||
|
@ -460,14 +460,6 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_INPUT_PORT("DSW1")
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* vclk input mode */
|
||||
};
|
||||
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( rmhaihai, rmhaihai_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -497,7 +489,7 @@ static MACHINE_CONFIG_START( rmhaihai, rmhaihai_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 500000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -792,13 +792,6 @@ static GFXDECODE_START( sf )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* 8KHz playback ? */
|
||||
};
|
||||
|
||||
void sf_state::machine_start()
|
||||
{
|
||||
/* devices */
|
||||
@ -855,12 +848,12 @@ static MACHINE_CONFIG_START( sf, sf_state )
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.60)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* 8KHz playback ? */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* 8KHz playback ? */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -340,13 +340,6 @@ WRITE_LINE_MEMBER(sothello_state::adpcm_int)
|
||||
m_soundcpu->set_input_line(0, ASSERT_LINE );
|
||||
}
|
||||
|
||||
|
||||
static const msm5205_interface msm_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(sothello_state,adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* changed on the fly */
|
||||
};
|
||||
|
||||
void sothello_state::machine_reset()
|
||||
{
|
||||
}
|
||||
@ -403,7 +396,8 @@ static MACHINE_CONFIG_START( sothello, sothello_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
|
||||
MCFG_SOUND_ADD("msm",MSM5205, MSM_CLOCK)
|
||||
MCFG_SOUND_CONFIG(msm_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(sothello_state, adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* changed on the fly */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -387,18 +387,6 @@ WRITE_LINE_MEMBER(spdodgeb_state::irqhandler)
|
||||
m_audiocpu->set_input_line(M6809_FIRQ_LINE, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config_1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(spdodgeb_state,spd_adpcm_int_1), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8kHz? */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config_2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(spdodgeb_state,spd_adpcm_int_2), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8kHz? */
|
||||
};
|
||||
|
||||
void spdodgeb_state::machine_reset()
|
||||
{
|
||||
m_toggle = 0;
|
||||
@ -443,12 +431,14 @@ static MACHINE_CONFIG_START( spdodgeb, spdodgeb_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(spdodgeb_state, spd_adpcm_int_1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8kHz? */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(spdodgeb_state, spd_adpcm_int_2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8kHz? */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -471,11 +471,6 @@ static GFXDECODE_START( splash )
|
||||
GFXDECODE_ENTRY( "gfx1", 0x000000, tilelayout16,0,128 )
|
||||
GFXDECODE_END
|
||||
|
||||
static const msm5205_interface splash_msm5205_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(splash_state,splash_msm5205_int), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
MACHINE_RESET_MEMBER(splash_state,splash)
|
||||
{
|
||||
@ -517,7 +512,8 @@ static MACHINE_CONFIG_START( splash, splash_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz)
|
||||
MCFG_SOUND_CONFIG(splash_msm5205_interface) /* Sample rate = 384kHz/48 */
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(splash_state, splash_msm5205_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */ /* Sample rate = 384kHz/48 */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -606,18 +602,6 @@ WRITE_LINE_MEMBER(splash_state::adpcm_int2)
|
||||
}
|
||||
}
|
||||
|
||||
static const msm5205_interface msm_interface1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(splash_state,adpcm_int1), /* interrupt function */
|
||||
MSM5205_S48_4B /* 1 / 48 */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm_interface2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(splash_state,adpcm_int2), /* interrupt function */
|
||||
MSM5205_S96_4B /* 1 / 96 */
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( funystrp, splash_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", M68000, XTAL_24MHz/2) /* 12 MHz (24/2) */
|
||||
@ -648,11 +632,13 @@ static MACHINE_CONFIG_START( funystrp, splash_state )
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, XTAL_400kHz)
|
||||
MCFG_SOUND_CONFIG(msm_interface1) /* Sample rate = 400kHz/64 */
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(splash_state, adpcm_int1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 1 / 48 */ /* Sample rate = 400kHz/64 */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, XTAL_400kHz)
|
||||
MCFG_SOUND_CONFIG(msm_interface2) /* Sample rate = 400kHz/96 */
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(splash_state, adpcm_int2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 1 / 96 */ /* Sample rate = 400kHz/96 */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -1123,13 +1123,6 @@ static const ay8910_interface srmp2_ay8910_interface =
|
||||
};
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(srmp2_state,srmp2_adpcm_int), /* IRQ handler */
|
||||
MSM5205_S48_4B /* 8 KHz, 4 Bits */
|
||||
};
|
||||
|
||||
|
||||
static const gfx_layout charlayout =
|
||||
{
|
||||
16, 16,
|
||||
@ -1194,7 +1187,8 @@ static MACHINE_CONFIG_START( srmp2, srmp2_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(srmp2_state, srmp2_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1239,7 +1233,8 @@ static MACHINE_CONFIG_START( srmp3, srmp2_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(srmp2_state, srmp2_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -1291,7 +1286,8 @@ static MACHINE_CONFIG_START( mjyuugi, srmp2_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(srmp2_state, srmp2_adpcm_int)) /* IRQ handler */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -530,12 +530,6 @@ static GFXDECODE_START( cshooter )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(stfight_state, stfight_adpcm_int), // Interrupt function
|
||||
MSM5205_S48_4B // 8KHz, 4-bit
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( stfight, stfight_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -584,7 +578,8 @@ static MACHINE_CONFIG_START( stfight, stfight_state )
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.10)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(stfight_state, stfight_adpcm_int)) // Interrupt function
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) // 8KHz, 4-bit
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -454,12 +454,6 @@ WRITE_LINE_MEMBER(suprgolf_state::adpcm_int)
|
||||
}
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(suprgolf_state,adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 4KHz 4-bit */
|
||||
};
|
||||
|
||||
static const gfx_layout gfxlayout =
|
||||
{
|
||||
8,8,
|
||||
@ -537,7 +531,8 @@ static MACHINE_CONFIG_START( suprgolf, suprgolf_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* guess */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(suprgolf_state, adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -366,13 +366,6 @@ WRITE_LINE_MEMBER(segas1x_bootleg_state::tturfbl_msm5205_callback)
|
||||
m_soundcpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
static const msm5205_interface tturfbl_msm5205_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(segas1x_bootleg_state,tturfbl_msm5205_callback),
|
||||
MSM5205_S48_4B
|
||||
};
|
||||
|
||||
|
||||
READ8_MEMBER(segas1x_bootleg_state::tturfbl_soundbank_r)
|
||||
{
|
||||
if (m_soundbank_ptr)
|
||||
@ -1167,12 +1160,6 @@ WRITE_LINE_MEMBER(segas1x_bootleg_state::shdancbl_msm5205_callback)
|
||||
m_soundcpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
static const msm5205_interface shdancbl_msm5205_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(segas1x_bootleg_state,shdancbl_msm5205_callback),
|
||||
MSM5205_S48_4B
|
||||
};
|
||||
|
||||
READ8_MEMBER(segas1x_bootleg_state::shdancbl_soundbank_r)
|
||||
{
|
||||
if (m_soundbank_ptr)
|
||||
@ -2061,7 +2048,8 @@ static MACHINE_CONFIG_FRAGMENT( system16_datsu_sound )
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.32)
|
||||
|
||||
MCFG_SOUND_ADD("5205", MSM5205, 220000)
|
||||
MCFG_SOUND_CONFIG(tturfbl_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(segas1x_bootleg_state, tturfbl_msm5205_callback))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
@ -2198,7 +2186,8 @@ static MACHINE_CONFIG_DERIVED( tturfbl, system16_7759 )
|
||||
|
||||
MCFG_DEVICE_REMOVE("7759")
|
||||
MCFG_SOUND_ADD("5205", MSM5205, 220000)
|
||||
MCFG_SOUND_CONFIG(tturfbl_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(segas1x_bootleg_state, tturfbl_msm5205_callback))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
|
||||
|
||||
@ -2338,7 +2327,8 @@ static MACHINE_CONFIG_DERIVED( shdancbl, system18 )
|
||||
MCFG_DEVICE_REMOVE("5c68")
|
||||
|
||||
MCFG_SOUND_ADD("5205", MSM5205, 200000)
|
||||
MCFG_SOUND_CONFIG(shdancbl_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(segas1x_bootleg_state, shdancbl_msm5205_callback))
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -1771,13 +1771,6 @@ static const ay8910_interface champwr_ay8910_config =
|
||||
DEVCB_DRIVER_MEMBER(taitol_state,champwr_msm5205_volume_w),
|
||||
};
|
||||
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitol_state,champwr_msm5205_vck),/* VCK function */
|
||||
MSM5205_S48_4B /* 8 kHz */
|
||||
};
|
||||
|
||||
static const ay8910_interface single_ay8910_config =
|
||||
{
|
||||
AY8910_LEGACY_OUTPUT,
|
||||
@ -1864,7 +1857,8 @@ static MACHINE_CONFIG_DERIVED( champwr, fhawk )
|
||||
MCFG_YM2203_AY8910_INTF(&champwr_ay8910_config)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_384kHz)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(taitol_state, champwr_msm5205_vck)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -432,17 +432,6 @@ WRITE_LINE_MEMBER(tbowl_state::irqhandler)
|
||||
m_audiocpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config_1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(tbowl_state,tbowl_adpcm_int_1), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config_2 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(tbowl_state,tbowl_adpcm_int_2), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
/*** Machine Driver
|
||||
|
||||
@ -517,11 +506,13 @@ static MACHINE_CONFIG_START( tbowl, tbowl_state )
|
||||
|
||||
/* something for the samples? */
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(tbowl_state, tbowl_adpcm_int_1)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(tbowl_state, tbowl_adpcm_int_2)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -606,13 +606,6 @@ WRITE_LINE_MEMBER(tecmo_state::irqhandler)
|
||||
m_soundcpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(tecmo_state,tecmo_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
|
||||
MACHINE_RESET_MEMBER(tecmo_state,rygar)
|
||||
{
|
||||
m_adpcm_pos = 0;
|
||||
@ -656,7 +649,8 @@ static MACHINE_CONFIG_START( rygar, tecmo_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_400kHz) /* verified on pcb, even if schematics shows a 384khz resonator */
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(tecmo_state, tecmo_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -635,11 +635,6 @@ static const ay8910_interface ay8910_interface_2 =
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(tehkanwc_state,tehkanwc_adpcm_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 8KHz */
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( tehkanwc, tehkanwc_state )
|
||||
|
||||
@ -685,7 +680,8 @@ static MACHINE_CONFIG_START( tehkanwc, tehkanwc_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(tehkanwc_state, tehkanwc_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -503,12 +503,6 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL,
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_NULL, /* interrupt function */
|
||||
MSM5205_SEX_4B /* 4KHz playback ? */
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( tigeroad, tigeroad_state )
|
||||
|
||||
@ -565,7 +559,7 @@ static MACHINE_CONFIG_DERIVED( toramich, tigeroad )
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) /* 4KHz playback ? */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -402,13 +402,6 @@ GFXDECODE_END
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(toki_state,toki_adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B /* 4KHz */
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( toki, toki_state ) /* KOYO 20.000MHz near the cpu */
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -470,7 +463,8 @@ static MACHINE_CONFIG_START( tokib, toki_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(toki_state, toki_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -521,23 +521,6 @@ static GFXDECODE_START( topspeed )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/**************************************************************
|
||||
MSM5205 (SOUND)
|
||||
**************************************************************/
|
||||
|
||||
static const msm5205_interface msm5205_config_1 =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(topspeed_state, msm5205_1_vck), // VCK function
|
||||
MSM5205_S48_4B // 8 kHz, 4-bit
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config_2 =
|
||||
{
|
||||
DEVCB_NULL, // VCK function
|
||||
MSM5205_SEX_4B // Slave mode, 4-bit
|
||||
};
|
||||
|
||||
|
||||
/***********************************************************
|
||||
DEVICES
|
||||
***********************************************************/
|
||||
@ -649,11 +632,12 @@ static MACHINE_CONFIG_START( topspeed, topspeed_state )
|
||||
MCFG_SOUND_ROUTE(1, "filter1r", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm1", MSM5205, XTAL_384kHz)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_1)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(topspeed_state, msm5205_1_vck)) // VCK function
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) // 8 kHz, 4-bit
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter2", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm2", MSM5205, XTAL_384kHz)
|
||||
MCFG_SOUND_CONFIG(msm5205_config_2)
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_SEX_4B) // Slave mode, 4-bit
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter3", 1.0)
|
||||
|
||||
MCFG_FILTER_VOLUME_ADD("filter1l", 0)
|
||||
|
@ -884,13 +884,6 @@ static const ay8910_interface ay8910_interface_3 =
|
||||
DEVCB_DRIVER_MEMBER(tubep_state,ay8910_portB_2_w) /* write port B */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(tubep_state,rjammer_adpcm_vck), /* VCK function */
|
||||
MSM5205_S48_4B /* 8 KHz (changes at run time) */
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
@ -1012,7 +1005,8 @@ static MACHINE_CONFIG_START( rjammer, tubep_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(tubep_state, rjammer_adpcm_vck)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 KHz (changes at run time) */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -348,11 +348,6 @@ WRITE_LINE_MEMBER(wc90b_state::adpcm_int)
|
||||
m_msm->data_w((m_msm5205next & 0x0f) >> 0);
|
||||
}
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(wc90b_state,adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B /* 4KHz 4-bit */
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( wc90b, wc90b_state )
|
||||
|
||||
@ -392,7 +387,8 @@ static MACHINE_CONFIG_START( wc90b, wc90b_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, MSM5205_CLOCK)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(wc90b_state, adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -452,13 +452,6 @@ WRITE_LINE_MEMBER(yunsung8_state::yunsung8_adpcm_int)
|
||||
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
static const msm5205_interface yunsung8_msm5205_interface =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(yunsung8_state,yunsung8_adpcm_int), /* interrupt function */
|
||||
MSM5205_S96_4B /* 4KHz, 4 Bits */
|
||||
};
|
||||
|
||||
|
||||
void yunsung8_state::machine_start()
|
||||
{
|
||||
UINT8 *MAIN = memregion("maincpu")->base();
|
||||
@ -520,7 +513,8 @@ static MACHINE_CONFIG_START( yunsung8, yunsung8_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("msm", MSM5205, XTAL_400kHz) /* verified on pcb */
|
||||
MCFG_SOUND_CONFIG(yunsung8_msm5205_interface)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(yunsung8_state, yunsung8_adpcm_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz, 4 Bits */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -22,7 +22,6 @@
|
||||
#include "machine/6522via.h"
|
||||
#include "bus/centronics/ctronics.h"
|
||||
#include "sound/ay8910.h"
|
||||
#include "sound/msm5205.h"
|
||||
|
||||
const unsigned char nimbus_palette[SCREEN_NO_COLOURS][3] =
|
||||
{
|
||||
@ -73,12 +72,6 @@ static const ay8910_interface nimbus_ay8910_interface =
|
||||
DEVCB_DRIVER_MEMBER(rmnimbus_state, nimbus_sound_ay8910_portb_w) /* portB write */
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(rmnimbus_state, nimbus_msm5205_vck), /* VCK function */
|
||||
MSM5205_S48_4B /* 8 kHz */
|
||||
};
|
||||
|
||||
static ADDRESS_MAP_START(nimbus_mem, AS_PROGRAM, 16, rmnimbus_state )
|
||||
AM_RANGE( 0x00000, 0x1FFFF ) AM_RAMBANK(RAM_BANK00_TAG)
|
||||
AM_RANGE( 0x20000, 0x3FFFF ) AM_RAMBANK(RAM_BANK01_TAG)
|
||||
@ -343,7 +336,8 @@ static MACHINE_CONFIG_START( nimbus, rmnimbus_state )
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS,MONO_TAG, 0.75)
|
||||
|
||||
MCFG_SOUND_ADD(MSM5205_TAG, MSM5205, 384000)
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_MSM5205_VCLK_CB(WRITELINE(rmnimbus_state, nimbus_msm5205_vck)) /* VCK function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 8 kHz */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, MONO_TAG, 0.75)
|
||||
|
||||
/* Software list */
|
||||
|
@ -227,13 +227,6 @@ struct cdrom_interface pce_cdrom =
|
||||
NULL
|
||||
};
|
||||
|
||||
static const msm5205_interface pce_cd_msm5205_interface =
|
||||
{
|
||||
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, pce_cd_device, msm5205_int), /* interrupt function */
|
||||
MSM5205_S48_4B /* 1/48 prescaler, 4bit data */
|
||||
};
|
||||
|
||||
|
||||
// TODO: left and right speaker tags should be passed from the parent config, instead of using the hard-coded ones below!?!
|
||||
static MACHINE_CONFIG_FRAGMENT( pce_cd )
|
||||
MCFG_NVRAM_ADD_0FILL("bram")
|
||||
@ -241,7 +234,8 @@ static MACHINE_CONFIG_FRAGMENT( pce_cd )
|
||||
MCFG_CDROM_ADD("cdrom", pce_cdrom)
|
||||
|
||||
MCFG_SOUND_ADD( "msm5205", MSM5205, PCE_CD_CLOCK / 6 )
|
||||
MCFG_SOUND_CONFIG( pce_cd_msm5205_interface )
|
||||
MCFG_MSM5205_VCLK_CB(DEVWRITELINE(DEVICE_SELF_OWNER, pce_cd_device, msm5205_int)) /* interrupt function */
|
||||
MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S48_4B) /* 1/48 prescaler, 4bit data */
|
||||
MCFG_SOUND_ROUTE( ALL_OUTPUTS, "^:lspeaker", 0.00 )
|
||||
MCFG_SOUND_ROUTE( ALL_OUTPUTS, "^:rspeaker", 0.00 )
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user