diff options
Diffstat (limited to 'src/mame/drivers/hp16500.cpp')
-rw-r--r-- | src/mame/drivers/hp16500.cpp | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/src/mame/drivers/hp16500.cpp b/src/mame/drivers/hp16500.cpp index b025eb3c835..a8a05fb2873 100644 --- a/src/mame/drivers/hp16500.cpp +++ b/src/mame/drivers/hp16500.cpp @@ -476,21 +476,20 @@ MACHINE_CONFIG_END MACHINE_CONFIG_START(hp16500_state::hp16500) /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", M68EC030, 25000000) - MCFG_DEVICE_PROGRAM_MAP(hp16500_map) - - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_UPDATE_DRIVER(hp16500_state, screen_update_hp16500) - MCFG_SCREEN_SIZE(576,384) - MCFG_SCREEN_VISIBLE_AREA(0, 576-1, 0, 384-1) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, hp16500_state, vsync_changed)) - // FIXME: Where is the AP line connected to? The MLC documentation recommends - // connecting it to VBLANK - MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE("mlc", hp_hil_mlc_device, ap_w)) - - MCFG_DEVICE_ADD("mlc", HP_HIL_MLC, XTAL(15'920'000)/2) - MCFG_HP_HIL_INT_CALLBACK(WRITELINE(*this, hp16500_state, irq_2)) + M68EC030(config, m_maincpu, 25'000'000); + m_maincpu->set_addrmap(AS_PROGRAM, &hp16500_state::hp16500_map); + + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(hp16500_state::screen_update_hp16500)); + screen.set_size(576,384); + screen.set_visarea(0, 576-1, 0, 384-1); + screen.set_refresh_hz(60); + screen.screen_vblank().set(FUNC(hp16500_state::vsync_changed)); + // FIXME: Where is the AP line connected to? The MLC documentation recommends connecting it to VBLANK + screen.screen_vblank().append(m_mlc, FUNC(hp_hil_mlc_device::ap_w)); + + HP_HIL_MLC(config, m_mlc, XTAL(15'920'000)/2); + m_mlc->int_callback().set(FUNC(hp16500_state::irq_2)); // TODO: for now hook up the ipc hil keyboard - this might be replaced // later with a 16500b specific keyboard implementation |