diff options
author | AJR <ajrhacker@users.noreply.github.com> | 2018-08-17 21:46:03 -0400 |
---|---|---|
committer | AJR <ajrhacker@users.noreply.github.com> | 2018-08-17 21:49:03 -0400 |
commit | 577f198564faff49f2636600598a15644db354bb (patch) | |
tree | 1dd654e5b344d398fe5cf5966de34549a029c91d /src/mame/drivers/studio2.cpp | |
parent | 06559ae451dd240d56f81e1f29145ec2a2338957 (diff) |
cdp1861, cdp1864: Hook in screens efficiently without using MCFG (nw)
Diffstat (limited to 'src/mame/drivers/studio2.cpp')
-rw-r--r-- | src/mame/drivers/studio2.cpp | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/mame/drivers/studio2.cpp b/src/mame/drivers/studio2.cpp index 34947d77c67..a98a74c3f69 100644 --- a/src/mame/drivers/studio2.cpp +++ b/src/mame/drivers/studio2.cpp @@ -660,11 +660,10 @@ MACHINE_CONFIG_START(studio2_state::studio2) m_maincpu->dma_wr_cb().set(m_vdc, FUNC(cdp1861_device::dma_w)); /* video hardware */ - CDP1861(config, m_vdc, 1760000).set_screen(SCREEN_TAG); + CDP1861(config, m_vdc, 1760000, SCREEN(config, m_screen, SCREEN_TYPE_RASTER)); m_vdc->int_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_INT); m_vdc->dma_out_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_DMAOUT); m_vdc->efx_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_EF1); - MCFG_CDP1861_SCREEN_ADD(CDP1861_TAG, SCREEN_TAG, 1760000) /* sound hardware */ SPEAKER(config, "mono").front_center(); @@ -686,12 +685,11 @@ MACHINE_CONFIG_START(visicom_state::visicom) m_maincpu->dma_wr_cb().set(FUNC(visicom_state::dma_w)); /* video hardware */ - CDP1861(config, m_vdc, XTAL(3'579'545)/2); + CDP1861(config, m_vdc, XTAL(3'579'545)/2, SCREEN(config, m_screen, SCREEN_TYPE_RASTER)); m_vdc->int_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_INT); m_vdc->dma_out_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_DMAOUT); m_vdc->efx_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_EF1); - MCFG_CDP1861_SCREEN_ADD(CDP1861_TAG, SCREEN_TAG, XTAL(3'579'545)/2) - MCFG_SCREEN_UPDATE_DRIVER(visicom_state, screen_update) + m_screen->set_screen_update(FUNC(visicom_state::screen_update)); /* sound hardware */ SPEAKER(config, "mono").front_center(); @@ -716,15 +714,11 @@ MACHINE_CONFIG_START(mpt02_state::mpt02) m_maincpu->q_cb().set(FUNC(mpt02_state::q_w)); m_maincpu->dma_wr_cb().set(FUNC(mpt02_state::dma_w)); - /* video hardware */ - MCFG_CDP1864_SCREEN_ADD(SCREEN_TAG, 1.75_MHz_XTAL) - MCFG_SCREEN_UPDATE_DEVICE(CDP1864_TAG, cdp1864_device, screen_update) - - /* sound hardware */ + /* video/sound hardware */ SPEAKER(config, "mono").front_center(); BEEP(config, m_beeper, 300).add_route(ALL_OUTPUTS, "mono", 1.00); - CDP1864(config, m_cti, 1.75_MHz_XTAL).set_screen(SCREEN_TAG); + CDP1864(config, m_cti, 1.75_MHz_XTAL, SCREEN(config, m_screen, SCREEN_TYPE_RASTER)); m_cti->inlace_cb().set_constant(0); m_cti->int_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_INT); m_cti->dma_out_cb().set_inputline(m_maincpu, COSMAC_INPUT_LINE_DMAOUT); |