bladestl.c: add RC filters to YM2203 SSG channels (based on schematic, identical to ddribble) [Alex Jackson]
This commit is contained in:
parent
ff99c901e9
commit
7b0cbe61d7
@ -91,8 +91,17 @@ WRITE8_MEMBER(bladestl_state::bladestl_sh_irqtrigger_w)
|
||||
|
||||
WRITE8_MEMBER(bladestl_state::bladestl_port_B_w)
|
||||
{
|
||||
/* bit 1, 2 unknown */
|
||||
// bits 3-5 = ROM bank select
|
||||
m_upd7759->set_bank_base(((data & 0x38) >> 3) * 0x20000);
|
||||
|
||||
// bit 2 = SSG-C rc filter enable
|
||||
m_filter3->filter_rc_set_RC(FLT_RC_LOWPASS, 1000, 2200, 1000, data & 0x04 ? CAP_N(150) : 0); /* YM2203-SSG-C */
|
||||
|
||||
// bit 1 = SSG-B rc filter enable
|
||||
m_filter2->filter_rc_set_RC(FLT_RC_LOWPASS, 1000, 2200, 1000, data & 0x02 ? CAP_N(150) : 0); /* YM2203-SSG-B */
|
||||
|
||||
// bit 0 = SSG-A rc filter enable
|
||||
m_filter1->filter_rc_set_RC(FLT_RC_LOWPASS, 1000, 2200, 1000, data & 0x01 ? CAP_N(150) : 0); /* YM2203-SSG-A */
|
||||
}
|
||||
|
||||
READ8_MEMBER(bladestl_state::bladestl_speech_busy_r)
|
||||
@ -340,7 +349,17 @@ static MACHINE_CONFIG_START( bladestl, bladestl_state )
|
||||
MCFG_SOUND_ADD("ymsnd", YM2203, 3579545)
|
||||
MCFG_AY8910_PORT_A_WRITE_CB(DEVWRITE8("upd", upd775x_device, port_w))
|
||||
MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(bladestl_state, bladestl_port_B_w))
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
|
||||
MCFG_SOUND_ROUTE(0, "filter1", 0.45)
|
||||
MCFG_SOUND_ROUTE(1, "filter2", 0.45)
|
||||
MCFG_SOUND_ROUTE(2, "filter3", 0.45)
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.45)
|
||||
|
||||
MCFG_FILTER_RC_ADD("filter1", 0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_FILTER_RC_ADD("filter2", 0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_FILTER_RC_ADD("filter3", 0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -3,6 +3,7 @@
|
||||
Blades of Steel
|
||||
|
||||
*************************************************************************/
|
||||
#include "sound/flt_rc.h"
|
||||
#include "sound/upd7759.h"
|
||||
#include "video/k007342.h"
|
||||
#include "video/k007420.h"
|
||||
@ -20,6 +21,9 @@ public:
|
||||
m_k007342(*this, "k007342"),
|
||||
m_k007420(*this, "k007420"),
|
||||
m_upd7759(*this, "upd"),
|
||||
m_filter1(*this, "filter1"),
|
||||
m_filter2(*this, "filter2"),
|
||||
m_filter3(*this, "filter3"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_trackball(*this, trackball_tags),
|
||||
m_rombank(*this, "rombank") { }
|
||||
@ -29,6 +33,9 @@ public:
|
||||
required_device<k007342_device> m_k007342;
|
||||
required_device<k007420_device> m_k007420;
|
||||
required_device<upd7759_device> m_upd7759;
|
||||
required_device<filter_rc_device> m_filter1;
|
||||
required_device<filter_rc_device> m_filter2;
|
||||
required_device<filter_rc_device> m_filter3;
|
||||
required_device<gfxdecode_device> m_gfxdecode;
|
||||
required_ioport_array<4> m_trackball;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user