summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2017-10-11 18:24:38 -0400
committer AJR <ajrhacker@users.noreply.github.com>2017-10-11 18:24:38 -0400
commitaf4ecf61f45a359f9e6ac8b2274dcb16bec2f62f (patch)
tree8eb01e29d55b1281b59b7db947272db034b16b4d
parent54a11319bc1fa93efbacb6bf4f06d5725e20656c (diff)
taito_l.cpp: Separate raimais configuration; unify video (nw)
-rw-r--r--src/mame/drivers/taito_l.cpp112
1 files changed, 43 insertions, 69 deletions
diff --git a/src/mame/drivers/taito_l.cpp b/src/mame/drivers/taito_l.cpp
index ec47b4d87f6..526f35a2b6b 100644
--- a/src/mame/drivers/taito_l.cpp
+++ b/src/mame/drivers/taito_l.cpp
@@ -1528,6 +1528,25 @@ WRITE8_MEMBER(fhawk_state::portA_w)
}
+static MACHINE_CONFIG_START( l_system_video )
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
+ MCFG_SCREEN_SIZE(40*8, 32*8)
+ MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+ MCFG_SCREEN_UPDATE_DRIVER(taitol_state, screen_update_taitol)
+ MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(taitol_state, screen_vblank_taitol))
+ MCFG_SCREEN_PALETTE("palette")
+
+ MCFG_GFXDECODE_ADD("gfxdecode", "palette", taito_l)
+ MCFG_PALETTE_ADD("palette", 256)
+
+ MCFG_VIDEO_START_OVERRIDE(taitol_state, taito_l)
+
+ MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", taitol_state, vbl_interrupt, "screen", 0, 1)
+MACHINE_CONFIG_END
+
+
static MACHINE_CONFIG_START( fhawk )
/* basic machine hardware */
@@ -1535,8 +1554,6 @@ static MACHINE_CONFIG_START( fhawk )
MCFG_CPU_PROGRAM_MAP(fhawk_map)
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(taitol_state, irq_callback)
- MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", taitol_state, vbl_interrupt, "screen", 0, 1)
-
MCFG_CPU_ADD("audiocpu", Z80, XTAL_12MHz/3) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(fhawk_3_map)
@@ -1558,19 +1575,7 @@ static MACHINE_CONFIG_START( fhawk )
MCFG_MACHINE_RESET_OVERRIDE(taitol_state, taito_l)
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(40*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(taitol_state, screen_update_taitol)
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(taitol_state, screen_vblank_taitol))
- MCFG_SCREEN_PALETTE("palette")
-
- MCFG_GFXDECODE_ADD("gfxdecode", "palette", taito_l)
- MCFG_PALETTE_ADD("palette", 256)
-
- MCFG_VIDEO_START_OVERRIDE(taitol_state, taito_l)
+ MCFG_FRAGMENT_ADD(l_system_video)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
@@ -1615,19 +1620,21 @@ MACHINE_CONFIG_END
-static MACHINE_CONFIG_DERIVED( raimais, fhawk )
+static MACHINE_CONFIG_START( raimais )
- /* basic machine hardware */
- MCFG_CPU_MODIFY("maincpu")
+ MCFG_CPU_ADD("maincpu", Z80, 13330560/2) // needs verification from pin122 of TC0090LVC
MCFG_CPU_PROGRAM_MAP(raimais_map)
+ MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(taitol_state, irq_callback)
- MCFG_CPU_MODIFY("audiocpu")
+ MCFG_CPU_ADD("audiocpu", Z80, 12000000/3) // not verified
MCFG_CPU_PROGRAM_MAP(raimais_3_map)
- MCFG_CPU_MODIFY("slave")
+ MCFG_CPU_ADD("slave", Z80, 12000000/3) // not verified
MCFG_CPU_PROGRAM_MAP(raimais_2_map)
+ MCFG_CPU_VBLANK_INT_DRIVER("screen", taitol_state, irq0_line_hold)
+
+ MCFG_QUANTUM_PERFECT_CPU("maincpu")
- MCFG_DEVICE_REMOVE("tc0220ioc")
MCFG_DEVICE_ADD("tc0040ioc", TC0040IOC, 0)
MCFG_TC0040IOC_READ_0_CB(IOPORT("DSWA"))
MCFG_TC0040IOC_READ_1_CB(IOPORT("DSWB"))
@@ -1638,17 +1645,24 @@ static MACHINE_CONFIG_DERIVED( raimais, fhawk )
MCFG_DEVICE_ADD("dpram", MB8421, 0)
- MCFG_DEVICE_REMOVE("ciu")
- MCFG_DEVICE_ADD("tc0140syt", TC0140SYT, 0)
- MCFG_TC0140SYT_MASTER_CPU("slave")
- MCFG_TC0140SYT_SLAVE_CPU("audiocpu")
+ MCFG_MACHINE_START_OVERRIDE(taitol_state, taito_l)
+ MCFG_MACHINE_RESET_OVERRIDE(taitol_state, taito_l)
+
+ /* video hardware */
+ MCFG_FRAGMENT_ADD(l_system_video)
/* sound hardware */
- MCFG_SOUND_REPLACE("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb (8Mhz OSC is also for the 2nd z80) */
+ MCFG_SPEAKER_STANDARD_MONO("mono")
+
+ MCFG_SOUND_ADD("ymsnd", YM2610, XTAL_8MHz) /* verified on pcb (8Mhz OSC is also for the 2nd z80) */
MCFG_YM2610_IRQ_HANDLER(INPUTLINE("audiocpu", 0))
MCFG_SOUND_ROUTE(0, "mono", 0.25)
MCFG_SOUND_ROUTE(1, "mono", 1.0)
MCFG_SOUND_ROUTE(2, "mono", 1.0)
+
+ MCFG_DEVICE_ADD("tc0140syt", TC0140SYT, 0)
+ MCFG_TC0140SYT_MASTER_CPU("slave")
+ MCFG_TC0140SYT_SLAVE_CPU("audiocpu")
MACHINE_CONFIG_END
@@ -1659,8 +1673,6 @@ static MACHINE_CONFIG_START( kurikint )
MCFG_CPU_PROGRAM_MAP(kurikint_map)
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(taitol_state, irq_callback)
- MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", taitol_state, vbl_interrupt, "screen", 0, 1)
-
MCFG_CPU_ADD("audiocpu", Z80, XTAL_12MHz/3) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(kurikint_2_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", taitol_state, irq0_line_hold)
@@ -1681,19 +1693,7 @@ static MACHINE_CONFIG_START( kurikint )
MCFG_MACHINE_RESET_OVERRIDE(taitol_state, taito_l)
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(40*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(taitol_state, screen_update_taitol)
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(taitol_state, screen_vblank_taitol))
- MCFG_SCREEN_PALETTE("palette")
-
- MCFG_GFXDECODE_ADD("gfxdecode", "palette", taito_l)
- MCFG_PALETTE_ADD("palette", 256)
-
- MCFG_VIDEO_START_OVERRIDE(taitol_state, taito_l)
+ MCFG_FRAGMENT_ADD(l_system_video)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
@@ -1712,25 +1712,12 @@ static MACHINE_CONFIG_START( plotting )
MCFG_CPU_ADD("maincpu", Z80, XTAL_13_33056MHz/2) /* verified freq on pin122 of TC0090LVC cpu */
MCFG_CPU_PROGRAM_MAP(plotting_map)
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(taitol_state, irq_callback)
- MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", taitol_state, vbl_interrupt, "screen", 0, 1)
MCFG_MACHINE_START_OVERRIDE(taitol_state, taito_l)
MCFG_MACHINE_RESET_OVERRIDE(taitol_state, taito_l)
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(40*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(taitol_state, screen_update_taitol)
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(taitol_state, screen_vblank_taitol))
- MCFG_SCREEN_PALETTE("palette")
-
- MCFG_GFXDECODE_ADD("gfxdecode", "palette", taito_l)
- MCFG_PALETTE_ADD("palette", 256)
-
- MCFG_VIDEO_START_OVERRIDE(taitol_state, taito_l)
+ MCFG_FRAGMENT_ADD(l_system_video)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
@@ -1841,7 +1828,6 @@ static MACHINE_CONFIG_START( evilston )
MCFG_CPU_ADD("maincpu", Z80, XTAL_13_33056MHz/2) /* not verified */
MCFG_CPU_PROGRAM_MAP(evilston_map)
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(taitol_state, irq_callback)
- MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", taitol_state, vbl_interrupt, "screen", 0, 1)
MCFG_CPU_ADD("audiocpu", Z80, XTAL_12MHz/3) /* not verified */
MCFG_CPU_PROGRAM_MAP(evilston_2_map)
@@ -1864,19 +1850,7 @@ static MACHINE_CONFIG_START( evilston )
MCFG_MACHINE_RESET_OVERRIDE(taitol_state, taito_l)
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(40*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(taitol_state, screen_update_taitol)
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(taitol_state, screen_vblank_taitol))
- MCFG_SCREEN_PALETTE("palette")
-
- MCFG_GFXDECODE_ADD("gfxdecode", "palette", taito_l)
- MCFG_PALETTE_ADD("palette", 256)
-
- MCFG_VIDEO_START_OVERRIDE(taitol_state, taito_l)
+ MCFG_FRAGMENT_ADD(l_system_video)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")