diff options
Diffstat (limited to 'src/mame/drivers/scopus.cpp')
-rw-r--r-- | src/mame/drivers/scopus.cpp | 54 |
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 ) |