summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/tmaster.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/tmaster.cpp')
-rw-r--r--src/mame/drivers/tmaster.cpp50
1 files changed, 24 insertions, 26 deletions
diff --git a/src/mame/drivers/tmaster.cpp b/src/mame/drivers/tmaster.cpp
index 1fbe7c9326b..fdc9a2b1ecc 100644
--- a/src/mame/drivers/tmaster.cpp
+++ b/src/mame/drivers/tmaster.cpp
@@ -366,47 +366,45 @@ int tmaster_compute_addr(uint16_t reg_low, uint16_t reg_mid, uint16_t reg_high)
return (reg_low & 0xff) | ((reg_mid & 0x1ff) << 8) | (reg_high << 17);
}
-void tmaster_state::tm(machine_config &config)
-{
- M68000(config, m_maincpu, XTAL(24'000'000) / 2); /* 12MHz */
- m_maincpu->set_addrmap(AS_PROGRAM, &tmaster_state::tmaster_map);
-
- TIMER(config, "scantimer").configure_scanline(FUNC(tmaster_state::scanline_interrupt), "screen", 0, 1);
+MACHINE_CONFIG_START(tmaster_state::tm)
+ MCFG_DEVICE_ADD("maincpu", M68000, XTAL(24'000'000) / 2) /* 12MHz */
+ MCFG_DEVICE_PROGRAM_MAP(tmaster_map)
+ MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", tmaster_state, scanline_interrupt, "screen", 0, 1)
- MC68681(config, m_duart, XTAL(8'664'000) / 2 /*??*/);
- m_duart->irq_cb().set(FUNC(tmaster_state::duart_irq_handler));
- m_duart->a_tx_cb().set(m_microtouch, FUNC(microtouch_device::rx));
+ MCFG_DEVICE_ADD( "duart68681", MC68681, XTAL(8'664'000) / 2 /*??*/)
+ MCFG_MC68681_IRQ_CALLBACK(WRITELINE(*this, tmaster_state, duart_irq_handler))
+ MCFG_MC68681_A_TX_CALLBACK(WRITELINE("microtouch", microtouch_device, rx))
- MICROTOUCH(config, m_microtouch, 9600).stx().set(m_duart, FUNC(mc68681_device::rx_a_w));
+ MCFG_MICROTOUCH_ADD( "microtouch", 9600, WRITELINE("duart68681", mc68681_device, rx_a_w) )
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
- SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
- m_screen->set_refresh_hz(60);
- m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
- m_screen->set_size(400, 256);
- m_screen->set_visarea(0, 400-1, 0, 256-1);
- m_screen->set_screen_update(FUNC(tmaster_state::screen_update));
- m_screen->set_palette(m_palette);
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
+ MCFG_SCREEN_SIZE(400, 256)
+ MCFG_SCREEN_VISIBLE_AREA(0, 400-1, 0, 256-1)
+ MCFG_SCREEN_UPDATE_DRIVER(tmaster_state, screen_update)
+ MCFG_SCREEN_PALETTE(m_palette)
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 0x1000);
- CESBLIT(config, m_blitter, XTAL(32'000'000), m_screen);
- m_blitter->set_compute_addr(tmaster_compute_addr);
- m_blitter->irq_callback().set(FUNC(tmaster_state::blitter_irq_callback));
+ MCFG_CESBLIT_ADD("blitter", "screen", XTAL(32'000'000))
+ MCFG_CESBLIT_COMPUTE_ADDR(tmaster_compute_addr)
+ MCFG_CESBLIT_IRQ_CB(WRITELINE(*this, tmaster_state, blitter_irq_callback))
// sound hardware
SPEAKER(config, "mono").front_center();
- OKIM6295(config, m_oki, XTAL(24'000'000) / 16, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 1.0); /* 1.5Mhz? clock frequency & pin 7 not verified */
-}
+ MCFG_DEVICE_ADD("oki", OKIM6295, XTAL(24'000'000) / 16, okim6295_device::PIN7_HIGH) /* 1.5Mhz? clock frequency & pin 7 not verified */
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
+MACHINE_CONFIG_END
-void tmaster_state::tmds1204(machine_config &config)
-{
+MACHINE_CONFIG_START(tmaster_state::tmds1204)
tm(config);
- DS1204(config, "ds1204", 0);
-}
+ MCFG_DS1204_ADD("ds1204")
+MACHINE_CONFIG_END
/***************************************************************************