diff options
Diffstat (limited to 'src/mame/drivers/wallc.cpp')
-rw-r--r-- | src/mame/drivers/wallc.cpp | 46 |
1 files changed, 24 insertions, 22 deletions
diff --git a/src/mame/drivers/wallc.cpp b/src/mame/drivers/wallc.cpp index 1663704cf3a..942902e8211 100644 --- a/src/mame/drivers/wallc.cpp +++ b/src/mame/drivers/wallc.cpp @@ -514,20 +514,21 @@ void wallc_state::init_wallca() } -MACHINE_CONFIG_START(wallc_state::wallc) +void wallc_state::wallc(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, 12.288_MHz_XTAL / 4) /* 3.072 MHz ? */ - MCFG_DEVICE_PROGRAM_MAP(wallc_map) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", wallc_state, irq0_line_hold) + Z80(config, m_maincpu, 12.288_MHz_XTAL / 4); /* 3.072 MHz ? */ + m_maincpu->set_addrmap(AS_PROGRAM, &wallc_state::wallc_map); + m_maincpu->set_vblank_int("screen", FUNC(wallc_state::irq0_line_hold)); /* 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, 0*8, 32*8-1) - MCFG_SCREEN_UPDATE_DRIVER(wallc_state, screen_update) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */); + screen.set_size(32*8, 32*8); + screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); + screen.set_screen_update(FUNC(wallc_state::screen_update)); + screen.set_palette("palette"); GFXDECODE(config, m_gfxdecode, "palette", gfx_wallc); PALETTE(config, "palette", FUNC(wallc_state::wallc_palette), 32); @@ -535,19 +536,19 @@ MACHINE_CONFIG_START(wallc_state::wallc) /* sound hardware */ SPEAKER(config, "mono").front_center(); AY8912(config, "aysnd", 12288000 / 8).add_route(ALL_OUTPUTS, "mono", 0.30); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(wallc_state::wallca) +void wallc_state::wallca(machine_config &config) +{ wallc(config); - MCFG_DEVICE_MODIFY("maincpu") - MCFG_DEVICE_CLOCK(12_MHz_XTAL / 4) -MACHINE_CONFIG_END + m_maincpu->set_clock(12_MHz_XTAL / 4); +} -MACHINE_CONFIG_START(wallc_state::unkitpkr) +void wallc_state::unkitpkr(machine_config &config) +{ wallc(config); - MCFG_DEVICE_MODIFY("maincpu") - MCFG_DEVICE_PROGRAM_MAP(unkitpkr_map) + m_maincpu->set_addrmap(AS_PROGRAM, &wallc_state::unkitpkr_map); MCFG_VIDEO_START_OVERRIDE(wallc_state, unkitpkr) subdevice<palette_device>("palette")->set_init(FUNC(wallc_state::unkitpkr_palette)); @@ -556,13 +557,14 @@ MACHINE_CONFIG_START(wallc_state::unkitpkr) subdevice<ay8912_device>("aysnd")->port_a_read_callback().set_ioport("DSW2"); subdevice<ay8912_device>("aysnd")->reset_routes(); subdevice<ay8912_device>("aysnd")->add_route(ALL_OUTPUTS, "mono", 0.50); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(wallc_state::sidampkr) +void wallc_state::sidampkr(machine_config &config) +{ unkitpkr(config); MCFG_VIDEO_START_OVERRIDE(wallc_state, sidampkr) -MACHINE_CONFIG_END +} /*************************************************************************** |