summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/thomson.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/thomson.cpp')
-rw-r--r--src/mame/drivers/thomson.cpp40
1 files changed, 16 insertions, 24 deletions
diff --git a/src/mame/drivers/thomson.cpp b/src/mame/drivers/thomson.cpp
index a096c39acf7..42f13f41042 100644
--- a/src/mame/drivers/thomson.cpp
+++ b/src/mame/drivers/thomson.cpp
@@ -619,8 +619,8 @@ static void cd90_640_floppies(device_slot_interface &device)
/* ------------ driver ------------ */
-MACHINE_CONFIG_START(thomson_state::to7_base)
-
+void thomson_state::to7_base(machine_config &config)
+{
MCFG_MACHINE_START_OVERRIDE( thomson_state, to7 )
MCFG_MACHINE_RESET_OVERRIDE( thomson_state, to7 )
@@ -730,9 +730,7 @@ MACHINE_CONFIG_START(thomson_state::to7_base)
acia_clock.signal_handler().set(FUNC(thomson_state::write_acia_clock));
/* cartridge */
- MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "to_cart")
- MCFG_GENERIC_EXTENSIONS("m7,rom")
- MCFG_GENERIC_LOAD(thomson_state, to7_cartridge)
+ GENERIC_CARTSLOT(config, "cartslot", generic_plain_slot, "to_cart", "m7,rom").set_device_load(FUNC(thomson_state::to7_cartridge), this);
/* internal ram */
RAM(config, m_ram).set_default_size("40K").set_extra_options("24K,48K");
@@ -742,7 +740,7 @@ MACHINE_CONFIG_START(thomson_state::to7_base)
SOFTWARE_LIST(config, "to7_cass_list").set_original("to7_cass");
SOFTWARE_LIST(config, "to_flop_list").set_original("to_flop");
SOFTWARE_LIST(config, "to7_qd_list").set_original("to7_qd");
-MACHINE_CONFIG_END
+}
void thomson_state::to7(machine_config &config)
{
@@ -1111,7 +1109,8 @@ INPUT_PORTS_END
/* ------------ driver ------------ */
-MACHINE_CONFIG_START(thomson_state::mo5)
+void thomson_state::mo5(machine_config &config)
+{
to7_base(config);
MCFG_MACHINE_START_OVERRIDE( thomson_state, mo5 )
MCFG_MACHINE_RESET_OVERRIDE( thomson_state, mo5 )
@@ -1131,10 +1130,7 @@ MACHINE_CONFIG_START(thomson_state::mo5)
m_pia_sys->cb2_handler().set_nop();
m_pia_sys->irqb_handler().set("mainirq", FUNC(input_merger_device::in_w<1>)); // WARNING: differs from TO7 !
- config.device_remove("cartslot");
- MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "mo_cart")
- MCFG_GENERIC_EXTENSIONS("m5,rom")
- MCFG_GENERIC_LOAD(thomson_state, mo5_cartridge)
+ GENERIC_CARTSLOT(config.replace(), "cartslot", generic_plain_slot, "mo_cart", "m5,rom").set_device_load(FUNC(thomson_state::mo5_cartridge), this);
config.device_remove("to7_cart_list");
config.device_remove("to7_cass_list");
@@ -1148,7 +1144,7 @@ MACHINE_CONFIG_START(thomson_state::mo5)
/* internal ram */
m_ram->set_default_size("112K");
-MACHINE_CONFIG_END
+}
void thomson_state::mo5e(machine_config &config)
{
@@ -2194,7 +2190,8 @@ INPUT_PORTS_END
/* ------------ driver ------------ */
-MACHINE_CONFIG_START(thomson_state::mo6)
+void thomson_state::mo6(machine_config &config)
+{
to7_base(config);
MCFG_MACHINE_START_OVERRIDE( thomson_state, mo6 )
MCFG_MACHINE_RESET_OVERRIDE( thomson_state, mo6 )
@@ -2221,10 +2218,7 @@ MACHINE_CONFIG_START(thomson_state::mo6)
OUTPUT_LATCH(config, m_cent_data_out);
m_centronics->set_output_latch(*m_cent_data_out);
- config.device_remove("cartslot");
- MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "mo_cart")
- MCFG_GENERIC_EXTENSIONS("m5,rom")
- MCFG_GENERIC_LOAD(thomson_state, mo5_cartridge)
+ GENERIC_CARTSLOT(config.replace(), "cartslot", generic_plain_slot, "mo_cart", "m5,rom").set_device_load(FUNC(thomson_state::mo5_cartridge), this);
/* internal ram */
m_ram->set_default_size("128K");
@@ -2241,7 +2235,7 @@ MACHINE_CONFIG_START(thomson_state::mo6)
SOFTWARE_LIST(config, "mo5_cass_list").set_compatible("mo5_cass");
SOFTWARE_LIST(config, "mo5_flop_list").set_compatible("mo5_flop");
SOFTWARE_LIST(config, "mo5_qd_list").set_compatible("mo5_qd");
-MACHINE_CONFIG_END
+}
void thomson_state::pro128(machine_config &config)
{
@@ -2459,7 +2453,8 @@ INPUT_PORTS_END
/* ------------ driver ------------ */
-MACHINE_CONFIG_START(thomson_state::mo5nr)
+void thomson_state::mo5nr(machine_config &config)
+{
to7_base(config);
MCFG_MACHINE_START_OVERRIDE( thomson_state, mo5nr )
MCFG_MACHINE_RESET_OVERRIDE( thomson_state, mo5nr )
@@ -2488,10 +2483,7 @@ MACHINE_CONFIG_START(thomson_state::mo5nr)
OUTPUT_LATCH(config, m_cent_data_out);
m_centronics->set_output_latch(*m_cent_data_out);
- config.device_remove("cartslot");
- MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "mo_cart")
- MCFG_GENERIC_EXTENSIONS("m5,rom")
- MCFG_GENERIC_LOAD(thomson_state, mo5_cartridge)
+ GENERIC_CARTSLOT(config.replace(), "cartslot", generic_plain_slot, "mo_cart", "m5,rom").set_device_load(FUNC(thomson_state::mo5_cartridge), this);
/* internal ram */
m_ram->set_default_size("128K");
@@ -2508,6 +2500,6 @@ MACHINE_CONFIG_START(thomson_state::mo5nr)
SOFTWARE_LIST(config, "mo5_cass_list").set_compatible("mo5_cass");
SOFTWARE_LIST(config, "mo5_flop_list").set_compatible("mo5_flop");
SOFTWARE_LIST(config, "mo5_qd_list").set_compatible("mo5_qd");
-MACHINE_CONFIG_END
+}
COMP( 1986, mo5nr, 0, 0, mo5nr, mo5nr, thomson_state, empty_init, "Thomson", "MO5 NR", 0 )