summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/tecmosys.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/tecmosys.cpp')
-rw-r--r--src/mame/drivers/tecmosys.cpp69
1 files changed, 34 insertions, 35 deletions
diff --git a/src/mame/drivers/tecmosys.cpp b/src/mame/drivers/tecmosys.cpp
index ac5e049557c..a97f7fbd61c 100644
--- a/src/mame/drivers/tecmosys.cpp
+++ b/src/mame/drivers/tecmosys.cpp
@@ -453,31 +453,31 @@ void tecmosys_state::machine_start()
save_item(NAME(m_device_value));
}
-MACHINE_CONFIG_START(tecmosys_state::tecmosys)
- MCFG_DEVICE_ADD("maincpu", M68000, XTAL(16'000'000))
- MCFG_DEVICE_PROGRAM_MAP(main_map)
- MCFG_DEVICE_VBLANK_INT_DRIVER("screen", tecmosys_state, irq1_line_hold)
+void tecmosys_state::tecmosys(machine_config &config)
+{
+ M68000(config, m_maincpu, XTAL(16'000'000));
+ m_maincpu->set_addrmap(AS_PROGRAM, &tecmosys_state::main_map);
+ m_maincpu->set_vblank_int("screen", FUNC(tecmosys_state::irq1_line_hold));
WATCHDOG_TIMER(config, m_watchdog).set_vblank_count(m_screen, 400); // guess
- MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(16'000'000)/2 )
- MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_DEVICE_IO_MAP(io_map)
+ Z80(config, m_audiocpu, XTAL(16'000'000)/2);
+ m_audiocpu->set_addrmap(AS_PROGRAM, &tecmosys_state::sound_map);
+ m_audiocpu->set_addrmap(AS_IO, &tecmosys_state::io_map);
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_tecmosys)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_tecmosys);
- EEPROM_93C46_16BIT(config, "eeprom", eeprom_serial_streaming::ENABLE);
+ EEPROM_93C46_16BIT(config, m_eeprom, eeprom_serial_streaming::ENABLE);
- MCFG_SCREEN_ADD(m_screen, RASTER)
- MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
- MCFG_SCREEN_REFRESH_RATE(57.4458)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3000))
- MCFG_SCREEN_SIZE(64*8, 64*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(tecmosys_state, screen_update)
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_video_attributes(VIDEO_UPDATE_AFTER_VBLANK);
+ m_screen->set_refresh_hz(57.4458);
+ m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(3000));
+ m_screen->set_size(64*8, 64*8);
+ m_screen->set_visarea(0*8, 40*8-1, 0*8, 30*8-1);
+ m_screen->set_screen_update(FUNC(tecmosys_state::screen_update));
- MCFG_PALETTE_ADD("palette", 0x4000+0x800)
- MCFG_PALETTE_FORMAT(xGGGGGRRRRRBBBBB)
+ PALETTE(config, m_palette).set_format(palette_device::xGRB_555, 0x4000+0x800);
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
@@ -486,26 +486,25 @@ MACHINE_CONFIG_START(tecmosys_state::tecmosys)
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set("soundnmi", FUNC(input_merger_device::in_w<0>));
- MCFG_INPUT_MERGER_ALL_HIGH("soundnmi")
- MCFG_INPUT_MERGER_OUTPUT_HANDLER(INPUTLINE("audiocpu", INPUT_LINE_NMI))
-
- MCFG_DEVICE_ADD("ymf", YMF262, XTAL(14'318'181))
- MCFG_YMF262_IRQ_HANDLER(INPUTLINE("audiocpu", 0))
- MCFG_SOUND_ROUTE(0, "lspeaker", 1.00)
- MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
- MCFG_SOUND_ROUTE(2, "lspeaker", 1.00)
- MCFG_SOUND_ROUTE(3, "rspeaker", 1.00)
+ INPUT_MERGER_ALL_HIGH(config, m_soundnmi);
+ m_soundnmi->output_handler().set_inputline("audiocpu", INPUT_LINE_NMI);
- MCFG_DEVICE_ADD("oki", OKIM6295, XTAL(16'000'000)/8, okim6295_device::PIN7_HIGH)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
- MCFG_DEVICE_ADDRESS_MAP(0, oki_map)
+ ymf262_device &ymf(YMF262(config, "ymf", XTAL(14'318'181)));
+ ymf.irq_handler().set_inputline("audiocpu", 0);
+ ymf.add_route(0, "lspeaker", 1.00);
+ ymf.add_route(1, "rspeaker", 1.00);
+ ymf.add_route(2, "lspeaker", 1.00);
+ ymf.add_route(3, "rspeaker", 1.00);
- MCFG_DEVICE_ADD("ymz", YMZ280B, XTAL(16'934'400))
- MCFG_SOUND_ROUTE(0, "lspeaker", 0.30)
- MCFG_SOUND_ROUTE(1, "rspeaker", 0.30)
-MACHINE_CONFIG_END
+ okim6295_device &oki(OKIM6295(config, "oki", XTAL(16'000'000)/8, okim6295_device::PIN7_HIGH));
+ oki.add_route(ALL_OUTPUTS, "lspeaker", 0.50);
+ oki.add_route(ALL_OUTPUTS, "rspeaker", 0.50);
+ oki.set_addrmap(0, &tecmosys_state::oki_map);
+ ymz280b_device &ymz(YMZ280B(config, "ymz", XTAL(16'934'400)));
+ ymz.add_route(0, "lspeaker", 0.30);
+ ymz.add_route(1, "rspeaker", 0.30);
+}
ROM_START( deroon )
ROM_REGION( 0x100000, "maincpu", 0 ) // Main Program