summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/jack.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/jack.cpp')
-rw-r--r--src/mame/drivers/jack.cpp86
1 files changed, 45 insertions, 41 deletions
diff --git a/src/mame/drivers/jack.cpp b/src/mame/drivers/jack.cpp
index 8e88f0c8440..5aaa0d113ad 100644
--- a/src/mame/drivers/jack.cpp
+++ b/src/mame/drivers/jack.cpp
@@ -910,28 +910,29 @@ MACHINE_RESET_MEMBER(jack_state,joinem)
/***************************************************************/
-void jack_state::jack(machine_config &config)
-{
+MACHINE_CONFIG_START(jack_state::jack)
+
/* basic machine hardware */
- Z80(config, m_maincpu, XTAL(18'000'000)/6);
- m_maincpu->set_addrmap(AS_PROGRAM, &jack_state::jack_map);
- m_maincpu->set_vblank_int("screen", FUNC(jack_state::irq0_line_hold));
+ MCFG_DEVICE_ADD("maincpu", Z80, XTAL(18'000'000)/6)
+ MCFG_DEVICE_PROGRAM_MAP(jack_map)
+ MCFG_DEVICE_VBLANK_INT_DRIVER("screen", jack_state, irq0_line_hold)
- Z80(config, m_audiocpu, XTAL(18'000'000)/6);
- m_audiocpu->set_addrmap(AS_PROGRAM, &jack_state::sound_map);
- m_audiocpu->set_addrmap(AS_IO, &jack_state::sound_io_map);
- m_audiocpu->set_irq_acknowledge_callback(FUNC(jack_state::jack_sh_irq_ack));
+ MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(18'000'000)/6)
+ MCFG_DEVICE_PROGRAM_MAP(sound_map)
+ MCFG_DEVICE_IO_MAP(sound_io_map)
+ MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(jack_state, jack_sh_irq_ack)
/* video hardware */
- screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
- screen.set_refresh_hz(60);
- screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
- screen.set_size(32*8, 32*8);
- screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
- screen.set_screen_update(FUNC(jack_state::screen_update_jack));
- screen.set_palette(m_palette);
-
- GFXDECODE(config, m_gfxdecode, m_palette, gfx_jack);
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
+ 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(jack_state, screen_update_jack)
+ MCFG_SCREEN_PALETTE(m_palette)
+
+ MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, m_palette, gfx_jack)
+
PALETTE(config, m_palette).set_format(palette_device::BGR_233_inverted, 32);
/* sound hardware */
@@ -944,28 +945,29 @@ void jack_state::jack(machine_config &config)
aysnd.port_a_read_callback().set(m_soundlatch, FUNC(generic_latch_8_device::read));
aysnd.port_b_read_callback().set(FUNC(jack_state::timer_r));
aysnd.add_route(ALL_OUTPUTS, "mono", 1.0);
-}
+MACHINE_CONFIG_END
-void jack_state::treahunt(machine_config &config)
-{
+MACHINE_CONFIG_START(jack_state::treahunt)
jack(config);
- m_maincpu->set_addrmap(AS_OPCODES, &jack_state::decrypted_opcodes_map);
-}
+ MCFG_DEVICE_MODIFY("maincpu")
+ MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map)
+MACHINE_CONFIG_END
-void jack_state::striv(machine_config &config)
-{
+MACHINE_CONFIG_START(jack_state::striv)
jack(config);
/* basic machine hardware */
- m_maincpu->set_addrmap(AS_PROGRAM, &jack_state::striv_map);
+ MCFG_DEVICE_MODIFY("maincpu")
+ MCFG_DEVICE_PROGRAM_MAP(striv_map)
MCFG_MACHINE_START_OVERRIDE(jack_state,striv)
MCFG_MACHINE_RESET_OVERRIDE(jack_state,striv)
/* video hardware */
- subdevice<screen_device>("screen")->set_screen_update(FUNC(jack_state::screen_update_striv));
-}
+ MCFG_SCREEN_MODIFY("screen")
+ MCFG_SCREEN_UPDATE_DRIVER(jack_state, screen_update_striv)
+MACHINE_CONFIG_END
/***************************************************************/
@@ -976,41 +978,43 @@ INTERRUPT_GEN_MEMBER(jack_state::joinem_vblank_irq)
device.execute().pulse_input_line(INPUT_LINE_NMI, attotime::zero);
}
-void jack_state::joinem(machine_config &config)
-{
+MACHINE_CONFIG_START(jack_state::joinem)
jack(config);
/* basic machine hardware */
- m_maincpu->set_addrmap(AS_PROGRAM, &jack_state::joinem_map);
- m_maincpu->set_vblank_int("screen", FUNC(jack_state::joinem_vblank_irq));
- m_maincpu->set_periodic_int(FUNC(jack_state::irq0_line_hold), attotime::from_hz(250)); // ??? controls game speed
+ MCFG_DEVICE_MODIFY("maincpu")
+ MCFG_DEVICE_PROGRAM_MAP(joinem_map)
+ MCFG_DEVICE_VBLANK_INT_DRIVER("screen", jack_state, joinem_vblank_irq)
+ MCFG_DEVICE_PERIODIC_INT_DRIVER(jack_state, irq0_line_hold, 250) // ??? controls game speed
MCFG_MACHINE_START_OVERRIDE(jack_state,joinem)
MCFG_MACHINE_RESET_OVERRIDE(jack_state,joinem)
/* video hardware */
- subdevice<screen_device>("screen")->set_screen_update(FUNC(jack_state::screen_update_joinem));
+ MCFG_SCREEN_MODIFY("screen")
+ MCFG_SCREEN_UPDATE_DRIVER(jack_state, screen_update_joinem)
- m_gfxdecode->set_info(gfx_joinem);
+ MCFG_GFXDECODE_MODIFY("gfxdecode", gfx_joinem)
PALETTE(config.replace(), m_palette, FUNC(jack_state::joinem_palette), 64);
MCFG_VIDEO_START_OVERRIDE(jack_state,joinem)
-}
+MACHINE_CONFIG_END
-void jack_state::unclepoo(machine_config &config)
-{
+MACHINE_CONFIG_START(jack_state::unclepoo)
joinem(config);
/* basic machine hardware */
- m_maincpu->set_addrmap(AS_PROGRAM, &jack_state::unclepoo_map);
+ MCFG_DEVICE_MODIFY("maincpu")
+ MCFG_DEVICE_PROGRAM_MAP(unclepoo_map)
/* video hardware */
- subdevice<screen_device>("screen")->set_visarea(0*8, 32*8-1, 1*8, 31*8-1);
+ MCFG_SCREEN_MODIFY("screen")
+ MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
m_palette->set_entries(256);
-}
+MACHINE_CONFIG_END