From 20583c230381a0f8b489db7375a6f1c2e303d98e Mon Sep 17 00:00:00 2001 From: Scott Stone Date: Tue, 7 Aug 2012 18:50:52 +0000 Subject: [PATCH] Updated some drivers to use the new SN76496 device implementation. [Osso] --- src/mame/drivers/appoooh.c | 26 +++++++++++++----- src/mame/drivers/atetris.c | 26 ++++++++++++------ src/mame/drivers/bankp.c | 26 ++++++++++++------ src/mame/drivers/centiped.c | 14 ++++++++-- src/mame/drivers/docastle.c | 53 ++++++++++++++++++++++++------------- src/mame/drivers/drmicro.c | 29 ++++++++++++++------ src/mame/drivers/exedexes.c | 19 ++++++++++--- src/mame/drivers/finalizr.c | 14 ++++++++-- src/mame/drivers/freekick.c | 52 +++++++++++++++++++++++------------- src/mame/drivers/gatron.c | 15 +++++++++-- src/mame/drivers/homedata.c | 28 ++++++++++++++++---- src/mame/drivers/ikki.c | 27 ++++++++++++++++--- src/mame/drivers/jailbrek.c | 23 +++++++++++++--- src/mame/drivers/jantotsu.c | 25 ++++++++++++----- src/mame/drivers/kncljoe.c | 29 ++++++++++++++++---- src/mame/drivers/kontest.c | 29 ++++++++++++++++---- src/mame/drivers/ladybug.c | 52 ++++++++++++++++++++++++++---------- src/mame/drivers/lucky74.c | 23 +++++++++++----- src/mame/drivers/markham.c | 29 ++++++++++++++++---- src/mame/drivers/mikie.c | 29 ++++++++++++++++---- src/mame/drivers/mjkjidai.c | 32 +++++++++++++++++----- 21 files changed, 458 insertions(+), 142 deletions(-) diff --git a/src/mame/drivers/appoooh.c b/src/mame/drivers/appoooh.c index dd0c6cba9c2..7a8054a0fce 100644 --- a/src/mame/drivers/appoooh.c +++ b/src/mame/drivers/appoooh.c @@ -230,9 +230,9 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( main_portmap, AS_IO, 8, appoooh_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("sn3", sn76496_w) + AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76489n_device, write) + AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76489n_device, write) + AM_RANGE(0x02, 0x02) AM_DEVWRITE("sn3", sn76489n_device, write) AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW1") AM_WRITE(appoooh_adpcm_w) AM_RANGE(0x04, 0x04) AM_READ_PORT("BUTTON3") AM_WRITE(appoooh_out_w) AM_RANGE(0x05, 0x05) AM_WRITE(appoooh_scroll_w) /* unknown */ @@ -393,6 +393,17 @@ static const msm5205_interface msm5205_config = }; +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + + /************************************* * * Machine driver @@ -442,14 +453,17 @@ static MACHINE_CONFIG_START( appoooh_common, appoooh_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489, 18432000/6) + MCFG_SOUND_ADD("sn1", SN76489N, 18432000/6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn2", SN76489, 18432000/6) + MCFG_SOUND_ADD("sn2", SN76489N, 18432000/6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn3", SN76489, 18432000/6) + MCFG_SOUND_ADD("sn3", SN76489N, 18432000/6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) + MCFG_SOUND_CONFIG(psg_intf) MCFG_SOUND_ADD("msm", MSM5205, 384000) MCFG_SOUND_CONFIG(msm5205_config) diff --git a/src/mame/drivers/atetris.c b/src/mame/drivers/atetris.c index 7ef9a9f6d7d..aab634bdf60 100644 --- a/src/mame/drivers/atetris.c +++ b/src/mame/drivers/atetris.c @@ -220,9 +220,9 @@ static ADDRESS_MAP_START( atetrisb2_map, AS_PROGRAM, 8, atetris_state ) AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(atetris_videoram_w) AM_SHARE("videoram") AM_RANGE(0x2000, 0x20ff) AM_RAM_WRITE(paletteram_RRRGGGBB_byte_w) AM_SHARE("paletteram") AM_RANGE(0x2400, 0x25ff) AM_RAM_WRITE(nvram_w) AM_SHARE("nvram") - AM_RANGE(0x2802, 0x2802) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x2804, 0x2804) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0x2806, 0x2806) AM_DEVWRITE_LEGACY("sn3", sn76496_w) + AM_RANGE(0x2802, 0x2802) AM_DEVWRITE("sn1", sn76496n_device, write) + AM_RANGE(0x2804, 0x2804) AM_DEVWRITE("sn2", sn76496n_device, write) + AM_RANGE(0x2806, 0x2806) AM_DEVWRITE("sn3", sn76496n_device, write) AM_RANGE(0x2808, 0x2808) AM_READ_PORT("IN0") AM_RANGE(0x2818, 0x2818) AM_READ_PORT("IN1") AM_RANGE(0x3000, 0x3000) AM_WRITE(watchdog_reset_w) @@ -325,7 +325,14 @@ static const pokey_interface pokey_interface_2 = DEVCB_INPUT_PORT("IN1") }; +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; /************************************* * @@ -393,14 +400,17 @@ static MACHINE_CONFIG_START( atetrisb2, atetris_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76496, BOOTLEG_CLOCK/8) + MCFG_SOUND_ADD("sn1", SN76496N, BOOTLEG_CLOCK/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn2", SN76496, BOOTLEG_CLOCK/8) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76496N, BOOTLEG_CLOCK/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn3", SN76496, BOOTLEG_CLOCK/8) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn3", SN76496N, BOOTLEG_CLOCK/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/bankp.c b/src/mame/drivers/bankp.c index a67058f8e1a..4bb75cddb34 100644 --- a/src/mame/drivers/bankp.c +++ b/src/mame/drivers/bankp.c @@ -130,9 +130,9 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( bankp_io_map, AS_IO, 8, bankp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE_LEGACY("sn3", sn76496_w) + AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("sn1", sn76489n_device, write) + AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_DEVWRITE("sn2", sn76489n_device, write) + AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("sn3", sn76489n_device, write) AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW1") AM_RANGE(0x05, 0x05) AM_WRITE(bankp_scroll_w) AM_RANGE(0x07, 0x07) AM_WRITE(bankp_out_w) @@ -267,7 +267,14 @@ static GFXDECODE_START( bankp ) GFXDECODE_ENTRY( "gfx2", 0, charlayout2, 32*4, 16 ) GFXDECODE_END +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; /************************************* * @@ -315,14 +322,17 @@ static MACHINE_CONFIG_START( bankp, bankp_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489, MASTER_CLOCK/6) + MCFG_SOUND_ADD("sn1", SN76489N, MASTER_CLOCK/6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) - - MCFG_SOUND_ADD("sn2", SN76489, MASTER_CLOCK/6) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76489N, MASTER_CLOCK/6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) - - MCFG_SOUND_ADD("sn3", SN76489, MASTER_CLOCK/6) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn3", SN76489N, MASTER_CLOCK/6) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/centiped.c b/src/mame/drivers/centiped.c index 090f85ad728..b227d5034a0 100644 --- a/src/mame/drivers/centiped.c +++ b/src/mame/drivers/centiped.c @@ -971,7 +971,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( bullsdrt_port_map, AS_IO, 8, centiped_state ) AM_RANGE(0x00, 0x00) AM_WRITE(bullsdrt_sprites_bank_w) AM_RANGE(0x20, 0x3f) AM_WRITE(bullsdrt_tilesbank_w) AM_SHARE("bullsdrt_bank") - AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(bullsdrt_data_port_r) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) + AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(bullsdrt_data_port_r) AM_DEVWRITE("snsnd", sn76496n_device, write) ADDRESS_MAP_END @@ -1735,6 +1735,15 @@ static const pokey_interface warlords_pokey_interface = }; +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + /************************************* * @@ -1920,8 +1929,9 @@ static MACHINE_CONFIG_START( bullsdrt, centiped_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("snsnd", SN76496, 12096000/8) + MCFG_SOUND_ADD("snsnd", SN76496N, 12096000/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/docastle.c b/src/mame/drivers/docastle.c index a54f3665f51..e439482d365 100644 --- a/src/mame/drivers/docastle.c +++ b/src/mame/drivers/docastle.c @@ -228,10 +228,10 @@ static ADDRESS_MAP_START( docastle_map2, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0xc005, 0xc005) AM_MIRROR(0x0080) AM_READ_PORT("BUTTONS") AM_RANGE(0xc007, 0xc007) AM_MIRROR(0x0080) AM_READ_PORT("SYSTEM") AM_RANGE(0xc084, 0xc084) AM_READWRITE(docastle_flipscreen_on_r, docastle_flipscreen_on_w) - AM_RANGE(0xe000, 0xe000) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xe400, 0xe400) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0xe800, 0xe800) AM_DEVWRITE_LEGACY("sn3", sn76496_w) - AM_RANGE(0xec00, 0xec00) AM_DEVWRITE_LEGACY("sn4", sn76496_w) + AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("sn1", sn76489an_device, write) + AM_RANGE(0xe400, 0xe400) AM_DEVWRITE("sn2", sn76489an_device, write) + AM_RANGE(0xe800, 0xe800) AM_DEVWRITE("sn3", sn76489an_device, write) + AM_RANGE(0xec00, 0xec00) AM_DEVWRITE("sn4", sn76489an_device, write) ADDRESS_MAP_END static ADDRESS_MAP_START( docastle_map3, AS_PROGRAM, 8, docastle_state ) @@ -264,10 +264,10 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( dorunrun_map2, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM - AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xa400, 0xa400) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0xa800, 0xa800) AM_DEVWRITE_LEGACY("sn3", sn76496_w) - AM_RANGE(0xac00, 0xac00) AM_DEVWRITE_LEGACY("sn4", sn76496_w) + AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("sn1", sn76489an_device, write) + AM_RANGE(0xa400, 0xa400) AM_DEVWRITE("sn2", sn76489an_device, write) + AM_RANGE(0xa800, 0xa800) AM_DEVWRITE("sn3", sn76489an_device, write) + AM_RANGE(0xac00, 0xac00) AM_DEVWRITE("sn4", sn76489an_device, write) AM_RANGE(0xc001, 0xc001) AM_MIRROR(0x0080) AM_READ_PORT("DSW2") AM_RANGE(0xc002, 0xc002) AM_MIRROR(0x0080) AM_READ_PORT("DSW1") AM_RANGE(0xc003, 0xc003) AM_MIRROR(0x0080) AM_READ_PORT("JOYS") @@ -303,10 +303,10 @@ static ADDRESS_MAP_START( idsoccer_map2, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0xc005, 0xc005) AM_MIRROR(0x0080) AM_READ_PORT("BUTTONS") AM_RANGE(0xc007, 0xc007) AM_MIRROR(0x0080) AM_READ_PORT("SYSTEM") AM_RANGE(0xc084, 0xc084) AM_READ_PORT("JOYS_RIGHT") AM_WRITE(docastle_flipscreen_on_w) - AM_RANGE(0xe000, 0xe000) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xe400, 0xe400) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0xe800, 0xe800) AM_DEVWRITE_LEGACY("sn3", sn76496_w) - AM_RANGE(0xec00, 0xec00) AM_DEVWRITE_LEGACY("sn4", sn76496_w) + AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("sn1", sn76489an_device, write) + AM_RANGE(0xe400, 0xe400) AM_DEVWRITE("sn2", sn76489an_device, write) + AM_RANGE(0xe800, 0xe800) AM_DEVWRITE("sn3", sn76489an_device, write) + AM_RANGE(0xec00, 0xec00) AM_DEVWRITE("sn4", sn76489an_device, write) ADDRESS_MAP_END /* Input Ports */ @@ -556,6 +556,17 @@ static const msm5205_interface msm5205_config = MSM5205_S64_4B // 6 kHz ??? }; + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /* Machine Drivers */ static MACHINE_RESET( docastle ) @@ -625,17 +636,21 @@ static MACHINE_CONFIG_START( docastle, docastle_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489A, XTAL_4MHz) + MCFG_SOUND_ADD("sn1", SN76489AN, XTAL_4MHz) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25) - - MCFG_SOUND_ADD("sn2", SN76489A, XTAL_4MHz) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76489AN, XTAL_4MHz) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25) - - MCFG_SOUND_ADD("sn3", SN76489A, XTAL_4MHz) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn3", SN76489AN, XTAL_4MHz) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25) - - MCFG_SOUND_ADD("sn4", SN76489A, XTAL_4MHz) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn4", SN76489AN, XTAL_4MHz) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( dorunrun, docastle ) diff --git a/src/mame/drivers/drmicro.c b/src/mame/drivers/drmicro.c index 91c480400ec..b7895cdbfd3 100644 --- a/src/mame/drivers/drmicro.c +++ b/src/mame/drivers/drmicro.c @@ -84,9 +84,9 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( io_map, AS_IO, 8, drmicro_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("sn3", sn76496_w) + AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76496n_device, write) + AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76496n_device, write) + AM_RANGE(0x02, 0x02) AM_DEVWRITE("sn3", sn76496n_device, write) AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW1") AM_WRITE(pcm_set_w) AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW2") AM_WRITE(nmi_enable_w) AM_RANGE(0x05, 0x05) AM_NOP // unused? / watchdog? @@ -222,6 +222,16 @@ static const msm5205_interface msm5205_config = }; +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /************************************* * * Machine driver @@ -279,15 +289,18 @@ static MACHINE_CONFIG_START( drmicro, drmicro_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76496, MCLK/4) + MCFG_SOUND_ADD("sn1", SN76496N, MCLK/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn2", SN76496, MCLK/4) + MCFG_SOUND_ADD("sn2", SN76496N, MCLK/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn3", SN76496, MCLK/4) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn3", SN76496N, MCLK/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - + MCFG_SOUND_CONFIG(psg_intf) + MCFG_SOUND_ADD("msm", MSM5205, 384000) MCFG_SOUND_CONFIG(msm5205_config) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75) diff --git a/src/mame/drivers/exedexes.c b/src/mame/drivers/exedexes.c index 449cec71b70..4dcf2eb1fc1 100644 --- a/src/mame/drivers/exedexes.c +++ b/src/mame/drivers/exedexes.c @@ -55,8 +55,8 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, exedexes_state ) AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_byte_r) AM_RANGE(0x8000, 0x8001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w) - AM_RANGE(0x8002, 0x8002) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x8003, 0x8003) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0x8002, 0x8002) AM_DEVWRITE("sn1", sn76489n_device, write) + AM_RANGE(0x8003, 0x8003) AM_DEVWRITE("sn2", sn76489n_device, write) ADDRESS_MAP_END @@ -195,6 +195,15 @@ static GFXDECODE_START( exedexes ) GFXDECODE_END +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + static MACHINE_START( exedexes ) { @@ -253,11 +262,13 @@ static MACHINE_CONFIG_START( exedexes, exedexes_state ) MCFG_SOUND_ADD("aysnd", AY8910, 1500000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10) - MCFG_SOUND_ADD("sn1", SN76489, 3000000) + MCFG_SOUND_ADD("sn1", SN76489N, 3000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.36) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn2", SN76489, 3000000) + MCFG_SOUND_ADD("sn2", SN76489N, 3000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.36) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/finalizr.c b/src/mame/drivers/finalizr.c index fc76d0919d3..fb13567304f 100644 --- a/src/mame/drivers/finalizr.c +++ b/src/mame/drivers/finalizr.c @@ -106,7 +106,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, finalizr_state ) AM_RANGE(0x0813, 0x0813) AM_READ_PORT("DSW1") AM_RANGE(0x0818, 0x0818) AM_WRITE(watchdog_reset_w) AM_RANGE(0x0819, 0x0819) AM_WRITE(finalizr_coin_w) - AM_RANGE(0x081a, 0x081a) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) /* This address triggers the SN chip to read the data port. */ + AM_RANGE(0x081a, 0x081a) AM_DEVWRITE("snsnd", sn76489an_device, write) /* This address triggers the SN chip to read the data port. */ AM_RANGE(0x081b, 0x081b) AM_WRITENOP /* Loads the snd command into the snd latch */ AM_RANGE(0x081c, 0x081c) AM_WRITE(finalizr_i8039_irq_w) /* custom sound chip */ AM_RANGE(0x081d, 0x081d) AM_WRITE(soundlatch_byte_w) /* custom sound chip */ @@ -235,6 +235,15 @@ static GFXDECODE_START( finalizr ) GFXDECODE_END +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + static MACHINE_START( finalizr ) { @@ -291,8 +300,9 @@ static MACHINE_CONFIG_START( finalizr, finalizr_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("snsnd", SN76489A, XTAL_18_432MHz/12) + MCFG_SOUND_ADD("snsnd", SN76489AN, XTAL_18_432MHz/12) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75) + MCFG_SOUND_CONFIG(psg_intf) MCFG_SOUND_ADD("dac", DAC, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65) diff --git a/src/mame/drivers/freekick.c b/src/mame/drivers/freekick.c index c29fba8df95..6d05f6a48f9 100644 --- a/src/mame/drivers/freekick.c +++ b/src/mame/drivers/freekick.c @@ -169,10 +169,10 @@ static ADDRESS_MAP_START( pbillrd_map, AS_PROGRAM, 8, freekick_state ) AM_RANGE(0xe800, 0xe800) AM_READ_PORT("IN1") AM_RANGE(0xf000, 0xf000) AM_READ_PORT("DSW1") AM_WRITE(pbillrd_bankswitch_w) AM_RANGE(0xf800, 0xf800) AM_READ_PORT("DSW2") - AM_RANGE(0xfc00, 0xfc00) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xfc01, 0xfc01) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0xfc02, 0xfc02) AM_DEVWRITE_LEGACY("sn3", sn76496_w) - AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE_LEGACY("sn4", sn76496_w) + AM_RANGE(0xfc00, 0xfc00) AM_DEVWRITE("sn1", sn76496n_device, write) + AM_RANGE(0xfc01, 0xfc01) AM_DEVWRITE("sn2", sn76496n_device, write) + AM_RANGE(0xfc02, 0xfc02) AM_DEVWRITE("sn3", sn76496n_device, write) + AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76496n_device, write) ADDRESS_MAP_END static ADDRESS_MAP_START( freekickb_map, AS_PROGRAM, 8, freekick_state ) @@ -189,10 +189,10 @@ static ADDRESS_MAP_START( freekickb_map, AS_PROGRAM, 8, freekick_state ) AM_RANGE(0xf802, 0xf803) AM_WRITE(coin_w) AM_RANGE(0xf804, 0xf804) AM_WRITE(nmi_enable_w) AM_RANGE(0xf806, 0xf806) AM_WRITE(spinner_select_w) - AM_RANGE(0xfc00, 0xfc00) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xfc01, 0xfc01) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0xfc02, 0xfc02) AM_DEVWRITE_LEGACY("sn3", sn76496_w) - AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE_LEGACY("sn4", sn76496_w) + AM_RANGE(0xfc00, 0xfc00) AM_DEVWRITE("sn1", sn76496n_device, write) + AM_RANGE(0xfc01, 0xfc01) AM_DEVWRITE("sn2", sn76496n_device, write) + AM_RANGE(0xfc02, 0xfc02) AM_DEVWRITE("sn3", sn76496n_device, write) + AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76496n_device, write) ADDRESS_MAP_END static ADDRESS_MAP_START( gigas_map, AS_PROGRAM, 8, freekick_state ) @@ -208,10 +208,10 @@ static ADDRESS_MAP_START( gigas_map, AS_PROGRAM, 8, freekick_state ) AM_RANGE(0xe800, 0xe800) AM_READ_PORT("IN1") AM_RANGE(0xf000, 0xf000) AM_READ_PORT("DSW1") AM_WRITENOP //bankswitch ? AM_RANGE(0xf800, 0xf800) AM_READ_PORT("DSW2") - AM_RANGE(0xfc00, 0xfc00) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xfc01, 0xfc01) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0xfc02, 0xfc02) AM_DEVWRITE_LEGACY("sn3", sn76496_w) - AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE_LEGACY("sn4", sn76496_w) + AM_RANGE(0xfc00, 0xfc00) AM_DEVWRITE("sn1", sn76496n_device, write) + AM_RANGE(0xfc01, 0xfc01) AM_DEVWRITE("sn2", sn76496n_device, write) + AM_RANGE(0xfc02, 0xfc02) AM_DEVWRITE("sn3", sn76496n_device, write) + AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76496n_device, write) ADDRESS_MAP_END static ADDRESS_MAP_START( gigas_io_map, AS_IO, 8, freekick_state ) @@ -530,6 +530,16 @@ static I8255A_INTERFACE( ppi8255_1_intf ) }; +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /************************************* * * Graphics definitions @@ -646,17 +656,21 @@ static MACHINE_CONFIG_START( base, freekick_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76496, 12000000/4) + MCFG_SOUND_ADD("sn1", SN76496N, 12000000/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn2", SN76496, 12000000/4) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76496N, 12000000/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn3", SN76496, 12000000/4) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn3", SN76496N, 12000000/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn4", SN76496, 12000000/4) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn4", SN76496N, 12000000/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( pbillrd, base ) diff --git a/src/mame/drivers/gatron.c b/src/mame/drivers/gatron.c index 1f6e4c4a2cc..003f52e1b80 100644 --- a/src/mame/drivers/gatron.c +++ b/src/mame/drivers/gatron.c @@ -341,7 +341,7 @@ static ADDRESS_MAP_START( gat_map, AS_PROGRAM, 8, gatron_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(gat_videoram_w) AM_SHARE("videoram") AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ - AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) /* PSG */ + AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("snsnd", sn76496n_device, write) /* PSG */ AM_RANGE(0xe000, 0xe000) AM_WRITE(output_port_0_w) /* lamps */ ADDRESS_MAP_END @@ -428,6 +428,16 @@ static GFXDECODE_START( gat ) GFXDECODE_END +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /************************* * Machine Drivers * *************************/ @@ -459,8 +469,9 @@ static MACHINE_CONFIG_START( gat, gatron_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("snsnd", SN76496, MASTER_CLOCK/8 ) /* 2 MHz, guess */ + MCFG_SOUND_ADD("snsnd", SN76496N, MASTER_CLOCK/8 ) /* 2 MHz, guess */ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.00) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/homedata.c b/src/mame/drivers/homedata.c index 525b3f0a963..5ef4db891f3 100644 --- a/src/mame/drivers/homedata.c +++ b/src/mame/drivers/homedata.c @@ -537,7 +537,7 @@ static ADDRESS_MAP_START( mrokumei_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x8000, 0x8000) AM_WRITE(mrokumei_blitter_start_w) // in some games also ROM bank switch to access service ROM AM_RANGE(0x8001, 0x8001) AM_WRITE(mrokumei_keyboard_select_w) AM_RANGE(0x8002, 0x8002) AM_WRITE(mrokumei_sound_cmd_w) - AM_RANGE(0x8003, 0x8003) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) + AM_RANGE(0x8003, 0x8003) AM_DEVWRITE("snsnd", sn76489an_device, write) AM_RANGE(0x8006, 0x8006) AM_WRITE(homedata_blitter_param_w) AM_RANGE(0x8007, 0x8007) AM_WRITE(mrokumei_blitter_bank_w) AM_RANGE(0x8000, 0xffff) AM_ROM @@ -1124,6 +1124,22 @@ static GFXDECODE_START( lemnangl ) GFXDECODE_END +/************************************* + * + * Sound definitions + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + static MACHINE_START( homedata ) { @@ -1265,9 +1281,10 @@ static MACHINE_CONFIG_START( mrokumei, homedata_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("snsnd", SN76489A, 16000000/4) // SN76489AN actually + MCFG_SOUND_ADD("snsnd", SN76489AN, 16000000/4) // SN76489AN actually MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - + MCFG_SOUND_CONFIG(psg_intf) + MCFG_SOUND_ADD("dac", DAC, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END @@ -1384,9 +1401,10 @@ static MACHINE_CONFIG_START( pteacher, homedata_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("snsnd", SN76489A, 16000000/4) // SN76489AN actually + MCFG_SOUND_ADD("snsnd", SN76489AN, 16000000/4) // SN76489AN actually MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - + MCFG_SOUND_CONFIG(psg_intf) + MCFG_SOUND_ADD("dac", DAC, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/ikki.c b/src/mame/drivers/ikki.c index 6cf380ac59b..70ba7230fe3 100644 --- a/src/mame/drivers/ikki.c +++ b/src/mame/drivers/ikki.c @@ -64,8 +64,8 @@ static ADDRESS_MAP_START( ikki_cpu2, AS_PROGRAM, 8, ikki_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") - AM_RANGE(0xd801, 0xd801) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xd802, 0xd802) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0xd801, 0xd801) AM_DEVWRITE("sn1", sn76496n_device, write) + AM_RANGE(0xd802, 0xd802) AM_DEVWRITE("sn2", sn76496n_device, write) ADDRESS_MAP_END @@ -202,6 +202,23 @@ static GFXDECODE_START( ikki ) GFXDECODE_END +/************************************* + * + * Sound definitions + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /************************************* * * Machine driver @@ -274,11 +291,13 @@ static MACHINE_CONFIG_START( ikki, ikki_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76496, 8000000/4) + MCFG_SOUND_ADD("sn1", SN76496N, 8000000/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn2", SN76496, 8000000/2) + MCFG_SOUND_ADD("sn2", SN76496N, 8000000/2) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/jailbrek.c b/src/mame/drivers/jailbrek.c index 2ae2a5d954a..c7356cbd6ac 100644 --- a/src/mame/drivers/jailbrek.c +++ b/src/mame/drivers/jailbrek.c @@ -144,7 +144,7 @@ static ADDRESS_MAP_START( jailbrek_map, AS_PROGRAM, 8, jailbrek_state ) AM_RANGE(0x2043, 0x2043) AM_WRITENOP /* ??? */ AM_RANGE(0x2044, 0x2044) AM_WRITE(ctrl_w) /* irq, nmi enable, screen flip */ AM_RANGE(0x3000, 0x307f) AM_RAM /* related to sprites? */ - AM_RANGE(0x3100, 0x3100) AM_READ_PORT("DSW2") AM_DEVWRITE_LEGACY("snsnd", sn76496_w) + AM_RANGE(0x3100, 0x3100) AM_READ_PORT("DSW2") AM_DEVWRITE("snsnd", sn76489an_device, write) AM_RANGE(0x3200, 0x3200) AM_READ_PORT("DSW3") AM_WRITENOP /* mirror of the previous? */ AM_RANGE(0x3300, 0x3300) AM_READ_PORT("SYSTEM") AM_WRITE(watchdog_reset_w) AM_RANGE(0x3301, 0x3301) AM_READ_PORT("P1") @@ -237,6 +237,22 @@ static GFXDECODE_START( jailbrek ) GFXDECODE_END +/************************************* + * + * Sound definitions + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + static MACHINE_START( jailbrek ) { @@ -277,9 +293,10 @@ static MACHINE_CONFIG_START( jailbrek, jailbrek_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("snsnd", SN76489A, MASTER_CLOCK/12) + MCFG_SOUND_ADD("snsnd", SN76489AN, MASTER_CLOCK/12) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) - + MCFG_SOUND_CONFIG(psg_intf) + MCFG_SOUND_ADD("vlm", VLM5030, VOICE_CLOCK) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END diff --git a/src/mame/drivers/jantotsu.c b/src/mame/drivers/jantotsu.c index 64f86e4ea49..6d9c045b9f2 100644 --- a/src/mame/drivers/jantotsu.c +++ b/src/mame/drivers/jantotsu.c @@ -330,8 +330,8 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( jantotsu_io, AS_IO, 8, jantotsu_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x01, 0x01) AM_READ(jantotsu_dsw2_r) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_DEVWRITE("sn1", sn76489an_device, write) + AM_RANGE(0x01, 0x01) AM_READ(jantotsu_dsw2_r) AM_DEVWRITE("sn2", sn76489an_device, write) AM_RANGE(0x02, 0x03) AM_WRITE(jan_adpcm_w) AM_RANGE(0x04, 0x04) AM_READWRITE(jantotsu_mux_r, jantotsu_mux_w) AM_RANGE(0x07, 0x07) AM_WRITE(bankaddr_w) @@ -468,6 +468,17 @@ static const msm5205_interface msm5205_config = MSM5205_S64_4B /* 6 KHz */ }; + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /************************************* * * Machine driver @@ -528,12 +539,14 @@ static MACHINE_CONFIG_START( jantotsu, jantotsu_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489A, MAIN_CLOCK/4) + MCFG_SOUND_ADD("sn1", SN76489AN, MAIN_CLOCK/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn2", SN76489A, MAIN_CLOCK/4) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76489AN, MAIN_CLOCK/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - + MCFG_SOUND_CONFIG(psg_intf) + MCFG_SOUND_ADD("adpcm", MSM5205, XTAL_384kHz) MCFG_SOUND_CONFIG(msm5205_config) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) diff --git a/src/mame/drivers/kncljoe.c b/src/mame/drivers/kncljoe.c index ce0cbf62639..9ee9a683ab2 100644 --- a/src/mame/drivers/kncljoe.c +++ b/src/mame/drivers/kncljoe.c @@ -54,8 +54,8 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, kncljoe_state ) AM_RANGE(0xd804, 0xd804) AM_READ_PORT("DSWB") AM_RANGE(0xd800, 0xd800) AM_WRITE(sound_cmd_w) AM_RANGE(0xd801, 0xd801) AM_WRITE(kncljoe_control_w) - AM_RANGE(0xd802, 0xd802) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xd803, 0xd803) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0xd802, 0xd802) AM_DEVWRITE("sn1", sn76489n_device, write) + AM_RANGE(0xd803, 0xd803) AM_DEVWRITE("sn2", sn76489n_device, write) AM_RANGE(0xd807, 0xd807) AM_READNOP /* unknown read */ AM_RANGE(0xd817, 0xd817) AM_READNOP /* unknown read */ AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("spriteram") @@ -230,6 +230,23 @@ static GFXDECODE_START( kncljoe ) GFXDECODE_ENTRY( "gfx3", 0, spritelayout, 0x80, 16 ) GFXDECODE_END +/************************************* + * + * Sound interface + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + static const ay8910_interface ay8910_config = { AY8910_LEGACY_OUTPUT, @@ -307,11 +324,13 @@ static MACHINE_CONFIG_START( kncljoe, kncljoe_state ) MCFG_SOUND_CONFIG(ay8910_config) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) - MCFG_SOUND_ADD("sn1", SN76489, XTAL_3_579545MHz) /* verified on pcb */ + MCFG_SOUND_ADD("sn1", SN76489N, XTAL_3_579545MHz) /* verified on pcb */ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) - - MCFG_SOUND_ADD("sn2", SN76489, XTAL_3_579545MHz) /* verified on pcb */ + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76489N, XTAL_3_579545MHz) /* verified on pcb */ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/kontest.c b/src/mame/drivers/kontest.c index 3aa5c8c6749..26838e2b5c4 100644 --- a/src/mame/drivers/kontest.c +++ b/src/mame/drivers/kontest.c @@ -164,8 +164,8 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( kontest_io, AS_IO, 8, kontest_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x04, 0x04) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0x00, 0x00) AM_DEVWRITE("sn1", sn76489an_device, write) + AM_RANGE(0x04, 0x04) AM_DEVWRITE("sn2", sn76489an_device, write) AM_RANGE(0x08, 0x08) AM_WRITE(control_w) AM_RANGE(0x0c, 0x0c) AM_READ_PORT("IN0") AM_RANGE(0x0d, 0x0d) AM_READ_PORT("IN1") @@ -216,6 +216,23 @@ static INPUT_PORTS_START( kontest ) INPUT_PORTS_END +/************************************* + * + * Sound interface + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /*************************************************************************** Machine Config @@ -262,11 +279,13 @@ static MACHINE_CONFIG_START( kontest, kontest_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_SOUND_ADD("sn1", SN76489A, MAIN_CLOCK/16) + MCFG_SOUND_ADD("sn1", SN76489AN, MAIN_CLOCK/16) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50) - - MCFG_SOUND_ADD("sn2", SN76489A, MAIN_CLOCK/16) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76489AN, MAIN_CLOCK/16) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/ladybug.c b/src/mame/drivers/ladybug.c index 63fcbf88e54..6cf8abe19f9 100644 --- a/src/mame/drivers/ladybug.c +++ b/src/mame/drivers/ladybug.c @@ -134,8 +134,8 @@ static ADDRESS_MAP_START( ladybug_map, AS_PROGRAM, 8, ladybug_state ) AM_RANGE(0x9002, 0x9002) AM_READ_PORT("DSW0") AM_RANGE(0x9003, 0x9003) AM_READ_PORT("DSW1") AM_RANGE(0xa000, 0xa000) AM_WRITE(ladybug_flipscreen_w) - AM_RANGE(0xb000, 0xbfff) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xc000, 0xcfff) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0xb000, 0xbfff) AM_DEVWRITE("sn1", sn76489n_device, write) + AM_RANGE(0xc000, 0xcfff) AM_DEVWRITE("sn2", sn76489n_device, write) AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(ladybug_videoram_w) AM_SHARE("videoram") AM_RANGE(0xd400, 0xd7ff) AM_RAM_WRITE(ladybug_colorram_w) AM_SHARE("colorram") AM_RANGE(0xe000, 0xe000) AM_READ_PORT("IN2") @@ -172,11 +172,11 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( sraider_cpu2_io_map, AS_IO, 8, ladybug_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x08, 0x08) AM_DEVWRITE_LEGACY("sn2", sn76496_w) - AM_RANGE(0x10, 0x10) AM_DEVWRITE_LEGACY("sn3", sn76496_w) - AM_RANGE(0x18, 0x18) AM_DEVWRITE_LEGACY("sn4", sn76496_w) - AM_RANGE(0x20, 0x20) AM_DEVWRITE_LEGACY("sn5", sn76496_w) + AM_RANGE(0x00, 0x00) AM_DEVWRITE("sn1", sn76489n_device, write) + AM_RANGE(0x08, 0x08) AM_DEVWRITE("sn2", sn76489n_device, write) + AM_RANGE(0x10, 0x10) AM_DEVWRITE("sn3", sn76489n_device, write) + AM_RANGE(0x18, 0x18) AM_DEVWRITE("sn4", sn76489n_device, write) + AM_RANGE(0x20, 0x20) AM_DEVWRITE("sn5", sn76489n_device, write) AM_RANGE(0x28, 0x3f) AM_WRITE(sraider_misc_w) // lots unknown ADDRESS_MAP_END @@ -709,6 +709,23 @@ static GFXDECODE_START( sraider ) GFXDECODE_END +/************************************* + * + * Sound interface + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + static MACHINE_START( ladybug ) { ladybug_state *state = machine.driver_data(); @@ -785,11 +802,13 @@ static MACHINE_CONFIG_START( ladybug, ladybug_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489, 4000000) + MCFG_SOUND_ADD("sn1", SN76489N, 4000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn2", SN76489, 4000000) + MCFG_SOUND_ADD("sn2", SN76489N, 4000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END @@ -826,20 +845,25 @@ static MACHINE_CONFIG_START( sraider, ladybug_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489, 4000000) + MCFG_SOUND_ADD("sn1", SN76489N, 4000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn2", SN76489, 4000000) + MCFG_SOUND_ADD("sn2", SN76489N, 4000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn3", SN76489, 4000000) + MCFG_SOUND_ADD("sn3", SN76489N, 4000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn4", SN76489, 4000000) + MCFG_SOUND_ADD("sn4", SN76489N, 4000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn5", SN76489, 4000000) + MCFG_SOUND_ADD("sn5", SN76489N, 4000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END diff --git a/src/mame/drivers/lucky74.c b/src/mame/drivers/lucky74.c index c91a3008652..715fe20c9bf 100644 --- a/src/mame/drivers/lucky74.c +++ b/src/mame/drivers/lucky74.c @@ -925,11 +925,11 @@ static ADDRESS_MAP_START( lucky74_map, AS_PROGRAM, 8, lucky74_state ) AM_RANGE(0xf000, 0xf003) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write) /* Input Ports 0 & 1 */ AM_RANGE(0xf080, 0xf083) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write) /* DSW 1, 2 & 3 */ AM_RANGE(0xf0c0, 0xf0c3) AM_DEVREADWRITE("ppi8255_3", i8255_device, read, write) /* DSW 4 */ - AM_RANGE(0xf100, 0xf100) AM_DEVWRITE_LEGACY("sn1", sn76496_w) /* SN76489 #1 */ + AM_RANGE(0xf100, 0xf100) AM_DEVWRITE("sn1", sn76489n_device, write) /* SN76489 #1 */ AM_RANGE(0xf200, 0xf203) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) /* Input Ports 2 & 4 */ - AM_RANGE(0xf300, 0xf300) AM_DEVWRITE_LEGACY("sn2", sn76496_w) /* SN76489 #2 */ + AM_RANGE(0xf300, 0xf300) AM_DEVWRITE("sn2", sn76489n_device, write) /* SN76489 #2 */ AM_RANGE(0xf400, 0xf400) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) /* YM2149 control */ - AM_RANGE(0xf500, 0xf500) AM_DEVWRITE_LEGACY("sn3", sn76496_w) /* SN76489 #3 */ + AM_RANGE(0xf500, 0xf500) AM_DEVWRITE("sn3", sn76489n_device, write) /* SN76489 #3 */ AM_RANGE(0xf600, 0xf600) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w) /* YM2149 (Input Port 1) */ AM_RANGE(0xf700, 0xf701) AM_READWRITE(usart_8251_r, usart_8251_w) /* USART 8251 port */ AM_RANGE(0xf800, 0xf803) AM_READWRITE(copro_sm7831_r, copro_sm7831_w) /* SM7831 Co-Processor */ @@ -1342,6 +1342,14 @@ static const msm5205_interface msm5205_config = MSM5205_S48_4B /* 8KHz */ }; +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; /************************* * Machine Drivers * @@ -1383,14 +1391,17 @@ static MACHINE_CONFIG_START( lucky74, lucky74_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489, C_06B49P_CLKOUT_03) /* 3 MHz. */ + MCFG_SOUND_ADD("sn1", SN76489N, C_06B49P_CLKOUT_03) /* 3 MHz. */ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn2", SN76489, C_06B49P_CLKOUT_03) /* 3 MHz. */ + MCFG_SOUND_ADD("sn2", SN76489N, C_06B49P_CLKOUT_03) /* 3 MHz. */ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) + MCFG_SOUND_CONFIG(psg_intf) - MCFG_SOUND_ADD("sn3", SN76489, C_06B49P_CLKOUT_03) /* 3 MHz. */ + MCFG_SOUND_ADD("sn3", SN76489N, C_06B49P_CLKOUT_03) /* 3 MHz. */ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) + MCFG_SOUND_CONFIG(psg_intf) MCFG_SOUND_ADD("aysnd", AY8910, C_06B49P_CLKOUT_04) /* 1.5 MHz. */ MCFG_SOUND_CONFIG(ay8910_config) diff --git a/src/mame/drivers/markham.c b/src/mame/drivers/markham.c index cedab9da6a8..e29988d2bf7 100644 --- a/src/mame/drivers/markham.c +++ b/src/mame/drivers/markham.c @@ -49,8 +49,8 @@ static ADDRESS_MAP_START( markham_slave_map, AS_PROGRAM, 8, markham_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share1") - AM_RANGE(0xc000, 0xc000) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0xc001, 0xc001) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0xc000, 0xc000) AM_DEVWRITE("sn1", sn76496n_device, write) + AM_RANGE(0xc001, 0xc001) AM_DEVWRITE("sn2", sn76496n_device, write) AM_RANGE(0xc002, 0xc002) AM_WRITENOP /* unknown */ AM_RANGE(0xc003, 0xc003) AM_WRITENOP /* unknown */ @@ -172,6 +172,23 @@ static GFXDECODE_START( markham ) GFXDECODE_END +/************************************* + * + * Sound interface + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + static MACHINE_CONFIG_START( markham, markham_state ) /* basic machine hardware */ @@ -202,11 +219,13 @@ static MACHINE_CONFIG_START( markham, markham_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76496, 8000000/2) + MCFG_SOUND_ADD("sn1", SN76496N, 8000000/2) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75) - - MCFG_SOUND_ADD("sn2", SN76496, 8000000/2) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76496N, 8000000/2) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END /****************************************************************************/ diff --git a/src/mame/drivers/mikie.c b/src/mame/drivers/mikie.c index ebb7831dcc5..16a55ea84ac 100644 --- a/src/mame/drivers/mikie.c +++ b/src/mame/drivers/mikie.c @@ -121,9 +121,9 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, mikie_state ) AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_WRITENOP // sound command latch AM_RANGE(0x8001, 0x8001) AM_WRITENOP // ??? - AM_RANGE(0x8002, 0x8002) AM_DEVWRITE_LEGACY("sn1", sn76496_w) // trigger read of latch + AM_RANGE(0x8002, 0x8002) AM_DEVWRITE("sn1", sn76489an_device, write) // trigger read of latch AM_RANGE(0x8003, 0x8003) AM_READ(soundlatch_byte_r) - AM_RANGE(0x8004, 0x8004) AM_DEVWRITE_LEGACY("sn2", sn76496_w) // trigger read of latch + AM_RANGE(0x8004, 0x8004) AM_DEVWRITE("sn2", sn76489an_device, write) // trigger read of latch AM_RANGE(0x8005, 0x8005) AM_READ(mikie_sh_timer_r) AM_RANGE(0x8079, 0x8079) AM_WRITENOP // ??? AM_RANGE(0xa003, 0xa003) AM_WRITENOP // ??? @@ -224,6 +224,23 @@ static GFXDECODE_START( mikie ) GFXDECODE_END +/************************************* + * + * Sound interface + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + /************************************* * * Machine driver @@ -287,11 +304,13 @@ static MACHINE_CONFIG_START( mikie, mikie_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489A, XTAL/8) + MCFG_SOUND_ADD("sn1", SN76489AN, XTAL/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60) - - MCFG_SOUND_ADD("sn2", SN76489A, CLK) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76489AN, CLK) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60) + MCFG_SOUND_CONFIG(psg_intf) MACHINE_CONFIG_END /************************************* diff --git a/src/mame/drivers/mjkjidai.c b/src/mame/drivers/mjkjidai.c index 35e9668017d..ca135073923 100644 --- a/src/mame/drivers/mjkjidai.c +++ b/src/mame/drivers/mjkjidai.c @@ -189,8 +189,8 @@ static ADDRESS_MAP_START( mjkjidai_io_map, AS_IO, 8, mjkjidai_state ) AM_RANGE(0x10, 0x10) AM_WRITE(mjkjidai_ctrl_w) // rom bank, coin counter, flip screen etc AM_RANGE(0x11, 0x11) AM_READ_PORT("IN0") AM_RANGE(0x12, 0x12) AM_READ_PORT("IN1") - AM_RANGE(0x20, 0x20) AM_DEVWRITE_LEGACY("sn1", sn76496_w) - AM_RANGE(0x30, 0x30) AM_DEVWRITE_LEGACY("sn2", sn76496_w) + AM_RANGE(0x20, 0x20) AM_DEVWRITE("sn1", sn76489n_device, write) + AM_RANGE(0x30, 0x30) AM_DEVWRITE("sn2", sn76489n_device, write) AM_RANGE(0x40, 0x40) AM_WRITE(adpcm_w) ADDRESS_MAP_END @@ -378,6 +378,24 @@ static INTERRUPT_GEN( vblank_irq ) device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE); } + +/************************************* + * + * Sound interface + * + *************************************/ + + +//------------------------------------------------- +// sn76496_config psg_intf +//------------------------------------------------- + +static const sn76496_config psg_intf = +{ + DEVCB_NULL +}; + + static MACHINE_CONFIG_START( mjkjidai, mjkjidai_state ) /* basic machine hardware */ @@ -405,12 +423,14 @@ static MACHINE_CONFIG_START( mjkjidai, mjkjidai_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") - MCFG_SOUND_ADD("sn1", SN76489, 10000000/4) + MCFG_SOUND_ADD("sn1", SN76489N, 10000000/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_SOUND_ADD("sn2", SN76489, 10000000/4) + MCFG_SOUND_CONFIG(psg_intf) + + MCFG_SOUND_ADD("sn2", SN76489N, 10000000/4) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - + MCFG_SOUND_CONFIG(psg_intf) + MCFG_SOUND_ADD("adpcm", MJKJIDAI, 6000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END