diff options
Diffstat (limited to 'src/mame/drivers/tunhunt.cpp')
-rw-r--r-- | src/mame/drivers/tunhunt.cpp | 66 |
1 files changed, 33 insertions, 33 deletions
diff --git a/src/mame/drivers/tunhunt.cpp b/src/mame/drivers/tunhunt.cpp index 9bfa8649e67..906d4ef5576 100644 --- a/src/mame/drivers/tunhunt.cpp +++ b/src/mame/drivers/tunhunt.cpp @@ -269,46 +269,46 @@ GFXDECODE_END * *************************************/ -MACHINE_CONFIG_START(tunhunt_state::tunhunt) - +void tunhunt_state::tunhunt(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", M6502, 12.096_MHz_XTAL/6) /* ??? */ - MCFG_DEVICE_PROGRAM_MAP(main_map) - MCFG_DEVICE_PERIODIC_INT_DRIVER(tunhunt_state, irq0_line_hold, 4*60) /* 48V, 112V, 176V, 240V */ + M6502(config, m_maincpu, 12.096_MHz_XTAL/6); /* ??? */ + m_maincpu->set_addrmap(AS_PROGRAM, &tunhunt_state::main_map); + m_maincpu->set_periodic_int(FUNC(tunhunt_state::irq0_line_hold), attotime::from_hz(4*60)); /* 48V, 112V, 176V, 240V */ /* 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(256, 256-16) - MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 255-16) - MCFG_SCREEN_UPDATE_DRIVER(tunhunt_state, screen_update) - MCFG_SCREEN_PALETTE("palette") - - MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_tunhunt) - MCFG_PALETTE_ADD("palette", 0x1a) - MCFG_PALETTE_INDIRECT_ENTRIES(16) - MCFG_PALETTE_INIT_OWNER(tunhunt_state, tunhunt) + 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(256, 256-16); + m_screen->set_visarea(0, 255, 0, 255-16); + m_screen->set_screen_update(FUNC(tunhunt_state::screen_update)); + m_screen->set_palette(m_palette); + + GFXDECODE(config, m_gfxdecode, m_palette, gfx_tunhunt); + PALETTE(config, m_palette, 0x1a); + m_palette->set_indirect_entries(16); + m_palette->set_init(FUNC(tunhunt_state::palette_init_tunhunt)); /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("pokey1", POKEY, 12.096_MHz_XTAL/10) - MCFG_POKEY_ALLPOT_R_CB(IOPORT("DSW")) - MCFG_POKEY_OUTPUT_RC(RES_K(1), CAP_U(0.047), 5.0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - - MCFG_DEVICE_ADD("pokey2", POKEY, 12.096_MHz_XTAL/10) - MCFG_POKEY_POT0_R_CB(IOPORT("IN1")) - MCFG_POKEY_POT1_R_CB(IOPORT("IN2")) - MCFG_POKEY_POT2_R_CB(READ8(*this, tunhunt_state, dsw2_0r)) - MCFG_POKEY_POT3_R_CB(READ8(*this, tunhunt_state, dsw2_1r)) - MCFG_POKEY_POT4_R_CB(READ8(*this, tunhunt_state, dsw2_2r)) - MCFG_POKEY_POT5_R_CB(READ8(*this, tunhunt_state, dsw2_3r)) - MCFG_POKEY_POT6_R_CB(READ8(*this, tunhunt_state, dsw2_4r)) - MCFG_POKEY_OUTPUT_RC(RES_K(1), CAP_U(0.047), 5.0) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) -MACHINE_CONFIG_END + pokey_device &pokey1(POKEY(config, "pokey1", 12.096_MHz_XTAL/10)); + pokey1.allpot_r().set_ioport("DSW"); + pokey1.set_output_rc(RES_K(1), CAP_U(0.047), 5.0); + pokey1.add_route(ALL_OUTPUTS, "mono", 0.50); + + pokey_device &pokey2(POKEY(config, "pokey2", 12.096_MHz_XTAL/10)); + pokey2.pot_r<0>().set_ioport("IN1"); + pokey2.pot_r<1>().set_ioport("IN2"); + pokey2.pot_r<2>().set(FUNC(tunhunt_state::dsw2_0r)); + pokey2.pot_r<3>().set(FUNC(tunhunt_state::dsw2_1r)); + pokey2.pot_r<4>().set(FUNC(tunhunt_state::dsw2_2r)); + pokey2.pot_r<5>().set(FUNC(tunhunt_state::dsw2_3r)); + pokey2.pot_r<6>().set(FUNC(tunhunt_state::dsw2_4r)); + pokey2.set_output_rc(RES_K(1), CAP_U(0.047), 5.0); + pokey2.add_route(ALL_OUTPUTS, "mono", 0.50); +} |