summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/cv1k.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/cv1k.cpp')
-rw-r--r--src/mame/drivers/cv1k.cpp95
1 files changed, 46 insertions, 49 deletions
diff --git a/src/mame/drivers/cv1k.cpp b/src/mame/drivers/cv1k.cpp
index 2b023d36e1f..1c0537d6bcc 100644
--- a/src/mame/drivers/cv1k.cpp
+++ b/src/mame/drivers/cv1k.cpp
@@ -457,69 +457,66 @@ void cv1k_state::machine_reset()
m_blitter->reset();
}
-MACHINE_CONFIG_START(cv1k_state::cv1k)
-
+void cv1k_state::cv1k(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", SH3BE, 12.8_MHz_XTAL*8) // 102.4MHz
- MCFG_SH4_MD0(0) // none of this is verified
- MCFG_SH4_MD1(0) // (the sh3 is different to the sh4 anyway, should be changed)
- MCFG_SH4_MD2(0)
- MCFG_SH4_MD3(0)
- MCFG_SH4_MD4(0)
- MCFG_SH4_MD5(1)
- MCFG_SH4_MD6(0)
- MCFG_SH4_MD7(1)
- MCFG_SH4_MD8(0)
- MCFG_SH4_CLOCK(12.8_MHz_XTAL*8) // 102.4MHz
- MCFG_DEVICE_PROGRAM_MAP(cv1k_map)
- MCFG_DEVICE_IO_MAP(cv1k_port)
- MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cv1k_state, irq2_line_hold)
+ SH3BE(config, m_maincpu, 12.8_MHz_XTAL*8); // 102.4MHz
+ m_maincpu->set_md(0, 0); // none of this is verified
+ m_maincpu->set_md(1, 0); // (the sh3 is different to the sh4 anyway, should be changed)
+ m_maincpu->set_md(2, 0);
+ m_maincpu->set_md(3, 0);
+ m_maincpu->set_md(4, 0);
+ m_maincpu->set_md(5, 1);
+ m_maincpu->set_md(6, 0);
+ m_maincpu->set_md(7, 1);
+ m_maincpu->set_md(8, 0);
+ m_maincpu->set_sh4_clock(12.8_MHz_XTAL*8); // 102.4MHz
+ m_maincpu->set_addrmap(AS_PROGRAM, &cv1k_state::cv1k_map);
+ m_maincpu->set_addrmap(AS_IO, &cv1k_state::cv1k_port);
+ m_maincpu->set_vblank_int("screen", FUNC(cv1k_state::irq2_line_hold));
RTC9701(config, m_eeprom);
SERFLASH(config, m_serflash, 0);
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(0x200, 0x200)
- MCFG_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xf0-1)
- MCFG_SCREEN_UPDATE_DRIVER(cv1k_state, screen_update)
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_refresh_hz(60);
+ screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ screen.set_size(0x200, 0x200);
+ screen.set_visarea(0, 0x140-1, 0, 0xf0-1);
+ screen.set_screen_update(FUNC(cv1k_state::screen_update));
- MCFG_PALETTE_ADD("palette", 0x10000)
+ PALETTE(config, "palette", 0x10000);
SPEAKER(config, "mono").front_center();
- MCFG_DEVICE_ADD("ymz770", YMZ770, 16.384_MHz_XTAL)
- MCFG_SOUND_ROUTE(1, "mono", 1.0) // only Right output used, Left is not connected
+ YMZ770(config, "ymz770", 16.384_MHz_XTAL).add_route(1, "mono", 1.0); // only Right output used, Left is not connected
- MCFG_EPIC12_ADD("blitter")
- MCFG_EPIC12_SET_MAINRAMSIZE(0x800000)
-MACHINE_CONFIG_END
+ EPIC12(config, m_blitter, 0);
+ m_blitter->set_mainramsize(0x800000);
+}
-MACHINE_CONFIG_START(cv1k_state::cv1k_d)
+void cv1k_state::cv1k_d(machine_config &config)
+{
cv1k(config);
/* basic machine hardware */
- MCFG_DEVICE_REMOVE("maincpu")
-
- MCFG_DEVICE_ADD("maincpu", SH3BE, 12.8_MHz_XTAL*8) // 102.4MHz
- MCFG_SH4_MD0(0) // none of this is verified
- MCFG_SH4_MD1(0) // (the sh3 is different to the sh4 anyway, should be changed)
- MCFG_SH4_MD2(0)
- MCFG_SH4_MD3(0)
- MCFG_SH4_MD4(0)
- MCFG_SH4_MD5(1)
- MCFG_SH4_MD6(0)
- MCFG_SH4_MD7(1)
- MCFG_SH4_MD8(0)
- MCFG_SH4_CLOCK(12.8_MHz_XTAL*8) // 102.4MHz
- MCFG_DEVICE_PROGRAM_MAP(cv1k_d_map)
- MCFG_DEVICE_IO_MAP(cv1k_port)
- MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cv1k_state, irq2_line_hold)
-
- MCFG_DEVICE_MODIFY("blitter")
- MCFG_EPIC12_SET_MAINRAMSIZE(0x1000000)
-MACHINE_CONFIG_END
+ SH3BE(config.replace(), m_maincpu, 12.8_MHz_XTAL*8); // 102.4MHz
+ m_maincpu->set_md(0, 0); // none of this is verified
+ m_maincpu->set_md(1, 0); // (the sh3 is different to the sh4 anyway, should be changed)
+ m_maincpu->set_md(2, 0);
+ m_maincpu->set_md(3, 0);
+ m_maincpu->set_md(4, 0);
+ m_maincpu->set_md(5, 1);
+ m_maincpu->set_md(6, 0);
+ m_maincpu->set_md(7, 1);
+ m_maincpu->set_md(8, 0);
+ m_maincpu->set_sh4_clock(12.8_MHz_XTAL*8); // 102.4MHz
+ m_maincpu->set_addrmap(AS_PROGRAM, &cv1k_state::cv1k_d_map);
+ m_maincpu->set_addrmap(AS_IO, &cv1k_state::cv1k_port);
+ m_maincpu->set_vblank_int("screen", FUNC(cv1k_state::irq2_line_hold));
+
+ m_blitter->set_mainramsize(0x1000000);
+}