summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/studio2.cpp
diff options
context:
space:
mode:
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
commit577f198564faff49f2636600598a15644db354bb (patch)
tree1dd654e5b344d398fe5cf5966de34549a029c91d /src/mame/drivers/studio2.cpp
parent06559ae451dd240d56f81e1f29145ec2a2338957 (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.cpp16
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);