summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/scopus.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/scopus.cpp')
-rw-r--r--src/mame/drivers/scopus.cpp54
1 files changed, 27 insertions, 27 deletions
diff --git a/src/mame/drivers/scopus.cpp b/src/mame/drivers/scopus.cpp
index 95b35269492..4a3fc845596 100644
--- a/src/mame/drivers/scopus.cpp
+++ b/src/mame/drivers/scopus.cpp
@@ -173,13 +173,13 @@ READ8_MEMBER(sagitta180_state::memory_read_byte)
return prog_space.read_byte(offset);
}
-void sagitta180_state::sagitta180(machine_config &config)
-{
+MACHINE_CONFIG_START(sagitta180_state::sagitta180)
+
/* basic machine hardware */
- I8080(config, m_maincpu, XTAL(10'000'000)); /* guessed ! */
- m_maincpu->set_addrmap(AS_PROGRAM, &sagitta180_state::maincpu_map);
- m_maincpu->set_addrmap(AS_IO, &sagitta180_state::maincpu_io_map);
-// m_maincpu->set_irq_acknowledge_callback("intlatch", FUNC(i8212_device::inta_cb));
+ MCFG_DEVICE_ADD("maincpu", I8080, XTAL(10'000'000)) /* guessed ! */
+ MCFG_DEVICE_PROGRAM_MAP(maincpu_map)
+ MCFG_DEVICE_IO_MAP(maincpu_io_map)
+// MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("intlatch", i8212_device, inta_cb)
I8257(config, m_dma8257, XTAL(14'745'600)); /* guessed xtal */
m_dma8257->out_iow_cb<2>().set("crtc", FUNC(i8275_device::dack_w));
@@ -200,29 +200,29 @@ void sagitta180_state::sagitta180(machine_config &config)
uart_clock.signal_handler().set("uart", FUNC(i8251_device::write_txc));
uart_clock.signal_handler().append("uart", FUNC(i8251_device::write_rxc));
-// i8212_device &intlatch(I8212(config, "intlatch", 0));
-// intlatch.md_rd_callback().set_constant(GND); // guessed !
-// intlatch.di_rd_callback().set("picu", FUNC(i8214_device::vector_r));
-// intlatch.int_wr_callback().set_inputline("maincpu", I8085_INTR_LINE); // guessed !
+// MCFG_DEVICE_ADD("intlatch", I8212, 0)
+// MCFG_I8212_MD_CALLBACK(GND) // guessed !
+// MCFG_I8212_DI_CALLBACK(READ8("picu", i8214_device, vector_r))
+// MCFG_I8212_INT_CALLBACK(INPUTLINE("maincpu", I8085_INTR_LINE)) // guessed !
/* video hardware */
- screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
- screen.set_screen_update("crtc", FUNC(i8275_device::screen_update));
- screen.set_refresh_hz(60);
- screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
- screen.set_size(80*5, 25*8);
- screen.set_visarea(0, 80*5-1, 0, 25*8-1);
- GFXDECODE(config, "gfxdecode", m_palette, gfx_sagitta180);
-
- I8275(config, m_crtc, 12480000 / 8); /* guessed xtal */
- m_crtc->set_character_width(8);
- m_crtc->set_display_callback(FUNC(sagitta180_state::crtc_display_pixels), this);
- m_crtc->drq_wr_callback().set(m_dma8257, FUNC(i8257_device::dreq2_w));
- m_crtc->irq_wr_callback().set_inputline(m_maincpu, I8085_INTR_LINE);
- m_crtc->set_screen("screen");
-
- PALETTE(config, m_palette).set_entries(3);
-}
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_UPDATE_DEVICE("crtc", i8275_device, screen_update)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
+ MCFG_SCREEN_SIZE(80*5, 25*8)
+ MCFG_SCREEN_VISIBLE_AREA(0, 80*5-1, 0, 25*8-1)
+ MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_sagitta180 )
+
+ MCFG_DEVICE_ADD("crtc", I8275, 12480000 / 8) /* guessed xtal */
+ MCFG_I8275_CHARACTER_WIDTH(8)
+ MCFG_I8275_DRAW_CHARACTER_CALLBACK_OWNER(sagitta180_state, crtc_display_pixels)
+ MCFG_I8275_DRQ_CALLBACK(WRITELINE("dma" , i8257_device , dreq2_w))
+ MCFG_I8275_IRQ_CALLBACK(INPUTLINE("maincpu" , I8085_INTR_LINE))
+ MCFG_VIDEO_SET_SCREEN("screen")
+ MCFG_PALETTE_ADD("palette", 3)
+
+MACHINE_CONFIG_END
ROM_START( sagitta180 )