From ab838c05e18cf277635ec859da5478ae33d06bc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Banaan=20Ananas?= Date: Sun, 9 Sep 2012 12:17:19 +0000 Subject: [PATCH] d7756c placeholder, upd7759.c doesn't support upd7756 yet --- src/mame/drivers/homerun.c | 32 +++++++++++++++++++++++++------- src/mame/includes/homerun.h | 1 + 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/src/mame/drivers/homerun.c b/src/mame/drivers/homerun.c index 3f82350e9cd..5afdf295e8d 100644 --- a/src/mame/drivers/homerun.c +++ b/src/mame/drivers/homerun.c @@ -48,6 +48,7 @@ Notes: #include "cpu/z80/z80.h" #include "machine/i8255.h" #include "sound/2203intf.h" +#include "sound/upd7759.h" #include "includes/homerun.h" @@ -57,6 +58,13 @@ Notes: ***************************************************************************/ +WRITE8_MEMBER(homerun_state::homerun_d7756c_control_w) +{ + device_t *device = machine().device("d7756c"); + upd7759_reset_w(device, ~data & 0x20); + upd7759_start_w(device, ~data & 0x10); +} + static ADDRESS_MAP_START( homerun_memmap, AS_PROGRAM, 8, homerun_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") @@ -68,8 +76,8 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( homerun_iomap, AS_IO, 8, homerun_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x10, 0x10) AM_WRITENOP // D7756C sample number - AM_RANGE(0x20, 0x20) AM_WRITENOP // D7756C control + AM_RANGE(0x10, 0x10) AM_DEVWRITE_LEGACY("d7756c", upd7759_port_w) + AM_RANGE(0x20, 0x20) AM_WRITE(homerun_d7756c_control_w) AM_RANGE(0x30, 0x33) AM_DEVREADWRITE("ppi8255", i8255_device, read, write) AM_RANGE(0x40, 0x40) AM_READ_PORT("IN0") AM_RANGE(0x50, 0x50) AM_READ_PORT("IN2") @@ -238,6 +246,7 @@ static GFXDECODE_START( homerun ) GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 0, 16 ) GFXDECODE_END +/**************************************************************************/ static I8255A_INTERFACE( ppi8255_intf ) { @@ -263,6 +272,7 @@ static const ym2203_interface ym2203_config = DEVCB_NULL }; +/**************************************************************************/ static MACHINE_START( homerun ) { @@ -290,6 +300,8 @@ static MACHINE_RESET( homerun ) state->m_scrollx = 0; } +/**************************************************************************/ + static MACHINE_CONFIG_START( homerun, homerun_state ) /* basic machine hardware */ @@ -322,6 +334,9 @@ static MACHINE_CONFIG_START( homerun, homerun_state ) MCFG_SOUND_ADD("ymsnd", YM2203, XTAL_20MHz/8) MCFG_SOUND_CONFIG(ym2203_config) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) + + MCFG_SOUND_ADD("d7756c", UPD7759, UPD7759_STANDARD_CLOCK) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( ganjaja, homerun ) @@ -332,6 +347,9 @@ static MACHINE_CONFIG_DERIVED( ganjaja, homerun ) MACHINE_CONFIG_END + +/**************************************************************************/ + ROM_START( homerun ) ROM_REGION( 0x30000, "maincpu", 0 ) ROM_LOAD( "homerun.ic43", 0x00000, 0x04000, CRC(e759e476) SHA1(ad4f356ff26209033320a3e6353e4d4d9beb59c1) ) @@ -343,8 +361,8 @@ ROM_START( homerun ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "homerun.ic120", 0x00000, 0x20000, CRC(52f0709b) SHA1(19e675bcccadb774f60ec5929fc1fb5cf0d3f617) ) - ROM_REGION( 0x08000, "d7756c", 0 ) - ROM_LOAD( "upd7756c.ic98", 0x00000, 0x08000, NO_DUMP ) /* D7756C built-in rom */ + ROM_REGION( 0x08000, "d7756c", ROMREGION_ERASE00 ) + ROM_LOAD( "d7756c.ic98", 0x00000, 0x08000, NO_DUMP ) /* D7756C built-in rom */ ROM_END @@ -359,8 +377,8 @@ ROM_START( dynashot ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "2.ic120", 0x00000, 0x20000, CRC(bedf7b98) SHA1(cb6c5fcaf8df5f5c7636c3c8f79b9dda78e30c2e) ) - ROM_REGION( 0x08000, "d7756c", 0 ) - ROM_LOAD( "upd7756c.ic98", 0x00000, 0x08000, NO_DUMP ) /* D7756C built-in rom */ + ROM_REGION( 0x08000, "d7756c", ROMREGION_ERASE00 ) + ROM_LOAD( "d7756c.ic98", 0x00000, 0x08000, NO_DUMP ) /* D7756C built-in rom */ ROM_END @@ -376,7 +394,7 @@ ROM_START( ganjaja ) ROM_LOAD( "2.ic120", 0x00000, 0x20000, CRC(e65d4d57) SHA1(2ec9e5bdaa94b808573313b6eca657d798004b53) ) ROM_REGION( 0x08000, "d7756c", 0 ) - ROM_LOAD( "upd77p56c.ic98", 0x00000, 0x08000, NO_DUMP ) /* D77P56C OTP rom (One-Time Programmable, note the extra P) */ + ROM_LOAD( "d77p56cr.ic98", 0x00000, 0x08000, CRC(06a234ac) SHA1(b4ceff3f9f78551cf4a085642e162e33b266f067) ) /* D77P56CR OTP rom (One-Time Programmable, note the extra P) */ ROM_END diff --git a/src/mame/includes/homerun.h b/src/mame/includes/homerun.h index 865a9f1d0c7..eaa0c2362cf 100644 --- a/src/mame/includes/homerun.h +++ b/src/mame/includes/homerun.h @@ -25,6 +25,7 @@ public: int m_scrollx; int m_scrolly; + DECLARE_WRITE8_MEMBER(homerun_d7756c_control_w); DECLARE_WRITE8_MEMBER(homerun_videoram_w); DECLARE_WRITE8_MEMBER(homerun_color_w); DECLARE_WRITE8_MEMBER(homerun_scrollhi_w);