summaryrefslogtreecommitdiffstats
path: root/src/mame/drivers/combatsc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/combatsc.cpp')
-rw-r--r--src/mame/drivers/combatsc.cpp79
1 files changed, 40 insertions, 39 deletions
diff --git a/src/mame/drivers/combatsc.cpp b/src/mame/drivers/combatsc.cpp
index 45735cbbd11..c0381746fb0 100644
--- a/src/mame/drivers/combatsc.cpp
+++ b/src/mame/drivers/combatsc.cpp
@@ -700,36 +700,37 @@ void combatsc_state::machine_reset()
}
/* combat school (original) */
-MACHINE_CONFIG_START(combatsc_state::combatsc)
-
+void combatsc_state::combatsc(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", HD6309, 3000000*4) /* 3 MHz? */
- MCFG_DEVICE_PROGRAM_MAP(combatsc_map)
- MCFG_DEVICE_VBLANK_INT_DRIVER("screen", combatsc_state, irq0_line_hold)
+ HD6309(config, m_maincpu, 3000000*4); /* 3 MHz? */
+ m_maincpu->set_addrmap(AS_PROGRAM, &combatsc_state::combatsc_map);
+ m_maincpu->set_vblank_int("screen", FUNC(combatsc_state::irq0_line_hold));
- MCFG_DEVICE_ADD("audiocpu", Z80,3579545) /* 3.579545 MHz */
- MCFG_DEVICE_PROGRAM_MAP(combatsc_sound_map)
+ Z80(config, m_audiocpu, 3579545); /* 3.579545 MHz */
+ m_audiocpu->set_addrmap(AS_PROGRAM, &combatsc_state::combatsc_sound_map);
- MCFG_QUANTUM_TIME(attotime::from_hz(1200))
+ config.m_minimum_quantum = attotime::from_hz(1200);
MCFG_MACHINE_START_OVERRIDE(combatsc_state,combatsc)
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
-// MCFG_SCREEN_REFRESH_RATE(60)
-// MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-// MCFG_SCREEN_SIZE(32*8, 32*8)
-// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_RAW_PARAMS(XTAL(24'000'000)/3, 528, 0, 256, 256, 16, 240) // not accurate, assuming same to other Konami games (59.17)
- MCFG_SCREEN_UPDATE_DRIVER(combatsc_state, screen_update_combatsc)
- MCFG_SCREEN_PALETTE(m_palette)
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+// m_screen->set_refresh_hz(60);
+// m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
+// m_screen->set_size(32*8, 32*8);
+// m_screen->set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
+ m_screen->set_raw(XTAL(24'000'000)/3, 528, 0, 256, 256, 16, 240); // not accurate, assuming same to other Konami games (59.17)
+ m_screen->set_screen_update(FUNC(combatsc_state::screen_update_combatsc));
+ m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_combatsc);
PALETTE(config, m_palette, FUNC(combatsc_state::combatsc_palette));
m_palette->set_format(palette_device::xBGR_555, 8 * 16 * 16, 128);
m_palette->set_endianness(ENDIANNESS_LITTLE);
+
MCFG_VIDEO_START_OVERRIDE(combatsc_state,combatsc)
K007121(config, m_k007121_1, 0);
@@ -747,37 +748,38 @@ MACHINE_CONFIG_START(combatsc_state::combatsc)
ymsnd.add_route(ALL_OUTPUTS, "mono", 0.20);
UPD7759(config, m_upd7759).add_route(ALL_OUTPUTS, "mono", 0.70);
-MACHINE_CONFIG_END
+}
/* combat school (bootleg on different hardware) */
-MACHINE_CONFIG_START(combatsc_state::combatscb)
-
+void combatsc_state::combatscb(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", HD6309, 3000000*4) /* 3 MHz? */
- MCFG_DEVICE_PROGRAM_MAP(combatscb_map)
- MCFG_DEVICE_VBLANK_INT_DRIVER("screen", combatsc_state, irq0_line_hold)
+ HD6309(config, m_maincpu, 3000000*4); /* 3 MHz? */
+ m_maincpu->set_addrmap(AS_PROGRAM, &combatsc_state::combatscb_map);
+ m_maincpu->set_vblank_int("screen", FUNC(combatsc_state::irq0_line_hold));
- MCFG_DEVICE_ADD("audiocpu", Z80,3579545) /* 3.579545 MHz */
- MCFG_DEVICE_PROGRAM_MAP(combatscb_sound_map)
+ Z80(config, m_audiocpu, 3579545); /* 3.579545 MHz */
+ m_audiocpu->set_addrmap(AS_PROGRAM, &combatsc_state::combatscb_sound_map);
- MCFG_QUANTUM_TIME(attotime::from_hz(1200))
+ config.m_minimum_quantum = attotime::from_hz(1200);
MCFG_MACHINE_START_OVERRIDE(combatsc_state,combatscb)
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
- MCFG_SCREEN_SIZE(32*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(combatsc_state, screen_update_combatscb)
- MCFG_SCREEN_PALETTE(m_palette)
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_refresh_hz(60);
+ m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
+ m_screen->set_size(32*8, 32*8);
+ m_screen->set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
+ m_screen->set_screen_update(FUNC(combatsc_state::screen_update_combatscb));
+ m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_combatscb);
PALETTE(config, m_palette, FUNC(combatsc_state::combatscb_palette));
m_palette->set_format(palette_device::xBGR_555, 8 * 16 * 16, 128);
m_palette->set_endianness(ENDIANNESS_LITTLE);
+
MCFG_VIDEO_START_OVERRIDE(combatsc_state,combatscb)
SPEAKER(config, "mono").front_center();
@@ -785,14 +787,13 @@ MACHINE_CONFIG_START(combatsc_state::combatscb)
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set_inputline(m_audiocpu, INPUT_LINE_NMI);
- MCFG_DEVICE_ADD("ymsnd", YM2203, 3000000)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
+ YM2203(config, "ymsnd", 3000000).add_route(ALL_OUTPUTS, "mono", 0.20);
- MCFG_DEVICE_ADD("msm", MSM5205, 384000)
- MCFG_MSM5205_PRESCALER_SELECTOR(S96_4B)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_MSM5205_VCK_CALLBACK(ASSERTLINE("audiocpu", 0))
-MACHINE_CONFIG_END
+ MSM5205(config, m_msm, 384000);
+ m_msm->vck_callback().set_inputline("audiocpu", 0, ASSERT_LINE);
+ m_msm->set_prescaler_selector(msm5205_device::S96_4B);
+ m_msm->add_route(ALL_OUTPUTS, "mono", 0.30);
+}