summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/tim100.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/tim100.cpp')
-rw-r--r--src/mame/drivers/tim100.cpp39
1 files changed, 19 insertions, 20 deletions
diff --git a/src/mame/drivers/tim100.cpp b/src/mame/drivers/tim100.cpp
index 22717a5374f..c58bee08df5 100644
--- a/src/mame/drivers/tim100.cpp
+++ b/src/mame/drivers/tim100.cpp
@@ -161,31 +161,30 @@ WRITE_LINE_MEMBER( tim100_state::irq_w )
}
-void tim100_state::tim100(machine_config &config)
-{
+MACHINE_CONFIG_START(tim100_state::tim100)
/* basic machine hardware */
- I8085A(config, m_maincpu, XTAL(4'915'200)); // divider unknown
- m_maincpu->set_addrmap(AS_PROGRAM, &tim100_state::tim100_mem);
- m_maincpu->set_addrmap(AS_IO, &tim100_state::tim100_io);
+ MCFG_DEVICE_ADD("maincpu",I8085A, XTAL(4'915'200)) // divider unknown
+ MCFG_DEVICE_PROGRAM_MAP(tim100_mem)
+ MCFG_DEVICE_IO_MAP(tim100_io)
/* video hardware */
- screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
- screen.set_screen_update("crtc", FUNC(i8276_device::screen_update));
- screen.set_refresh_hz(50);
- screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
- screen.set_size(600, 352);
- screen.set_visarea(0, 40*12-1, 0, 16*16-1);
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_UPDATE_DEVICE("crtc", i8276_device, screen_update)
+ MCFG_SCREEN_REFRESH_RATE(50)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
+ MCFG_SCREEN_SIZE(600, 352)
+ MCFG_SCREEN_VISIBLE_AREA(0, 40*12-1, 0, 16*16-1)
- GFXDECODE(config, "gfxdecode", m_palette, gfx_tim100);
+ MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_tim100 )
- I8276(config, m_crtc, XTAL(4'915'200));
- m_crtc->set_character_width(12);
- m_crtc->set_display_callback(FUNC(tim100_state::crtc_display_pixels), this);
- m_crtc->drq_wr_callback().set(FUNC(tim100_state::drq_w));
- m_crtc->irq_wr_callback().set(FUNC(tim100_state::irq_w));
- m_crtc->set_screen("screen");
+ MCFG_DEVICE_ADD("crtc", I8276, XTAL(4'915'200))
+ MCFG_I8275_CHARACTER_WIDTH(12)
+ MCFG_I8275_DRAW_CHARACTER_CALLBACK_OWNER(tim100_state, crtc_display_pixels)
+ MCFG_I8275_DRQ_CALLBACK(WRITELINE(*this, tim100_state, drq_w))
+ MCFG_I8275_IRQ_CALLBACK(WRITELINE(*this, tim100_state, irq_w))
+ MCFG_VIDEO_SET_SCREEN("screen")
- PALETTE(config, m_palette).set_entries(3);
+ MCFG_PALETTE_ADD("palette", 3)
i8251_device &uart_u17(I8251(config, "uart_u17", 0));
uart_u17.txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
@@ -214,7 +213,7 @@ void tim100_state::tim100(machine_config &config)
uart_clock.signal_handler().append("uart_u17", FUNC(i8251_device::write_rxc));
uart_clock.signal_handler().append("uart_u18", FUNC(i8251_device::write_txc));
uart_clock.signal_handler().append("uart_u18", FUNC(i8251_device::write_rxc));
-}
+MACHINE_CONFIG_END
/* ROM definition */
ROM_START( tim100 )