diff --git a/src/mame/drivers/aquarius.cpp b/src/mame/drivers/aquarius.cpp index 1cd44fe168c..c451e81b522 100644 --- a/src/mame/drivers/aquarius.cpp +++ b/src/mame/drivers/aquarius.cpp @@ -349,21 +349,22 @@ GFXDECODE_END MACHINE DRIVERS ***************************************************************************/ -MACHINE_CONFIG_START(aquarius_state::aquarius) +void aquarius_state::aquarius(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, XTAL(3'579'545)) // ??? - MCFG_DEVICE_PROGRAM_MAP(aquarius_mem) - MCFG_DEVICE_IO_MAP(aquarius_io) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", aquarius_state, irq0_line_hold) + Z80(config, m_maincpu, XTAL(3'579'545)); // ??? + m_maincpu->set_addrmap(AS_PROGRAM, &aquarius_state::aquarius_mem); + m_maincpu->set_addrmap(AS_IO, &aquarius_state::aquarius_io); + m_maincpu->set_vblank_int("screen", FUNC(aquarius_state::irq0_line_hold)); /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2800)) - MCFG_SCREEN_SIZE(40 * 8, 25 * 8) - MCFG_SCREEN_VISIBLE_AREA(0, 40 * 8 - 1, 0 * 8, 25 * 8 - 1) - MCFG_SCREEN_UPDATE_DRIVER(aquarius_state, screen_update_aquarius) - MCFG_SCREEN_PALETTE(m_palette) + SCREEN(config, m_screen, SCREEN_TYPE_RASTER); + m_screen->set_refresh_hz(60); + m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2800)); + m_screen->set_size(40 * 8, 25 * 8); + m_screen->set_visarea(0, 40 * 8 - 1, 0 * 8, 25 * 8 - 1); + m_screen->set_screen_update(FUNC(aquarius_state::screen_update_aquarius)); + m_screen->set_palette(m_palette); GFXDECODE(config, m_gfxdecode, m_palette, gfx_aquarius); TEA1002(config, m_tea1002, XTAL(8'867'238)); @@ -383,14 +384,14 @@ MACHINE_CONFIG_START(aquarius_state::aquarius) m_cassette->set_default_state(CASSETTE_STOPPED | CASSETTE_MOTOR_ENABLED | CASSETTE_SPEAKER_MUTED); /* cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "aquarius_cart") + GENERIC_CARTSLOT(config, m_cart, generic_linear_slot, "aquarius_cart"); /* internal ram */ RAM(config, RAM_TAG).set_default_size("4K").set_extra_options("8K,20K,36K"); /* software lists */ SOFTWARE_LIST(config, "cart_list").set_original("aquarius"); -MACHINE_CONFIG_END +} /*************************************************************************** diff --git a/src/mame/drivers/chessmst.cpp b/src/mame/drivers/chessmst.cpp index d30aca4e953..817435988af 100644 --- a/src/mame/drivers/chessmst.cpp +++ b/src/mame/drivers/chessmst.cpp @@ -378,8 +378,8 @@ static const z80_daisy_config chessmstdm_daisy_chain[] = { nullptr } }; -MACHINE_CONFIG_START(chessmst_state::chessmst) - +void chessmst_state::chessmst(machine_config &config) +{ /* basic machine hardware */ Z80(config, m_maincpu, 9.8304_MHz_XTAL/4); // U880 Z80 clone m_maincpu->set_addrmap(AS_PROGRAM, &chessmst_state::chessmst_mem); @@ -399,12 +399,11 @@ MACHINE_CONFIG_START(chessmst_state::chessmst) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("speaker", SPEAKER_SOUND) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(chessmst_state::chessmsta) + SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.50); +} +void chessmst_state::chessmsta(machine_config &config) +{ /* basic machine hardware */ Z80(config, m_maincpu, 8_MHz_XTAL/4); // U880 Z80 clone m_maincpu->set_addrmap(AS_PROGRAM, &chessmst_state::chessmst_mem); @@ -424,12 +423,11 @@ MACHINE_CONFIG_START(chessmst_state::chessmsta) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("speaker", SPEAKER_SOUND) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(chessmst_state::chessmstdm) + SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.50); +} +void chessmst_state::chessmstdm(machine_config &config) +{ /* basic machine hardware */ Z80(config, m_maincpu, 8_MHz_XTAL/2); // U880 Z80 clone m_maincpu->set_addrmap(AS_PROGRAM, &chessmst_state::chessmstdm_mem); @@ -453,12 +451,11 @@ MACHINE_CONFIG_START(chessmst_state::chessmstdm) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("beeper", BEEP, 1000) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) + BEEP(config, m_beeper, 1000).add_route(ALL_OUTPUTS, "mono", 0.50); - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "chessmstdm_cart") + GENERIC_CARTSLOT(config, "cartslot", generic_plain_slot, "chessmstdm_cart"); SOFTWARE_LIST(config, "cart_list").set_original("chessmstdm"); -MACHINE_CONFIG_END +} /* ROM definition */ diff --git a/src/mame/drivers/fc100.cpp b/src/mame/drivers/fc100.cpp index aef22de4eff..91967854126 100644 --- a/src/mame/drivers/fc100.cpp +++ b/src/mame/drivers/fc100.cpp @@ -515,11 +515,12 @@ void fc100_state::init_fc100() membank("bankr")->configure_entry(1, &ram[0]); } -MACHINE_CONFIG_START(fc100_state::fc100) +void fc100_state::fc100(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu",Z80, XTAL(7'159'090)/2) - MCFG_DEVICE_PROGRAM_MAP(fc100_mem) - MCFG_DEVICE_IO_MAP(fc100_io) + Z80(config, m_maincpu, XTAL(7'159'090)/2); + m_maincpu->set_addrmap(AS_PROGRAM, &fc100_state::fc100_mem); + m_maincpu->set_addrmap(AS_IO, &fc100_state::fc100_io); /* video hardware */ M5C6847P1(config, m_vdg, XTAL(7'159'090)/3); // Clock not verified @@ -558,7 +559,7 @@ MACHINE_CONFIG_START(fc100_state::fc100) TIMER(config, "timer_p").configure_periodic(FUNC(fc100_state::timer_p), attotime::from_hz(40000)); // cass read TIMER(config, "timer_k").configure_periodic(FUNC(fc100_state::timer_k), attotime::from_hz(300)); // keyb scan - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "fc100_cart") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "fc100_cart"); CENTRONICS(config, m_centronics, centronics_devices, "printer"); m_centronics->ack_handler().set("cent_status_in", FUNC(input_buffer_device::write_bit4)); @@ -568,7 +569,7 @@ MACHINE_CONFIG_START(fc100_state::fc100) m_centronics->set_output_latch(cent_data_out); INPUT_BUFFER(config, "cent_status_in"); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( fc100 ) diff --git a/src/mame/drivers/gmaster.cpp b/src/mame/drivers/gmaster.cpp index b9d30e78a13..8b0c2841ccb 100644 --- a/src/mame/drivers/gmaster.cpp +++ b/src/mame/drivers/gmaster.cpp @@ -327,7 +327,8 @@ void gmaster_state::machine_start() } -MACHINE_CONFIG_START(gmaster_state::gmaster) +void gmaster_state::gmaster(machine_config &config) +{ upd7810_device &upd(UPD7810(config, m_maincpu, 12_MHz_XTAL/2/*?*/)); // µPD78C11 in the unit upd.set_addrmap(AS_PROGRAM, &gmaster_state::gmaster_mem); upd.pa_in_cb().set_ioport("JOY"); @@ -353,11 +354,11 @@ MACHINE_CONFIG_START(gmaster_state::gmaster) SPEAKER(config, "mono").front_center(); SPEAKER_SOUND(config, m_speaker).add_route(0, "mono", 0.50); - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "gmaster_cart") - MCFG_GENERIC_MANDATORY + GENERIC_CARTSLOT(config, m_cart, generic_linear_slot, "gmaster_cart").set_must_be_loaded(true); + SOFTWARE_LIST(config, "cart_list").set_original("gmaster"); -MACHINE_CONFIG_END +} ROM_START(gmaster) diff --git a/src/mame/drivers/intv.cpp b/src/mame/drivers/intv.cpp index c720e37fa20..a2e0ce17778 100644 --- a/src/mame/drivers/intv.cpp +++ b/src/mame/drivers/intv.cpp @@ -559,8 +559,8 @@ MACHINE_CONFIG_START(intv_state::intvkbd) MCFG_SCREEN_UPDATE_DRIVER(intv_state, screen_update_intvkbd) /* I/O cartslots for BASIC */ - MCFG_GENERIC_CARTSLOT_ADD("ioslot1", generic_plain_slot, "intbasic_cart") - MCFG_GENERIC_CARTSLOT_ADD("ioslot2", generic_plain_slot, "intbasic_cart") + GENERIC_CARTSLOT(config, m_iocart1, generic_plain_slot, "intbasic_cart"); + GENERIC_CARTSLOT(config, m_iocart2, generic_plain_slot, "intbasic_cart"); MACHINE_CONFIG_END ROM_START(intv) // the intv1 exec rom should be two roms: RO-3-9502-011.U5 and RO-3-9504-021.U6 diff --git a/src/mame/drivers/macs.cpp b/src/mame/drivers/macs.cpp index 9674e1335a2..880585d728f 100644 --- a/src/mame/drivers/macs.cpp +++ b/src/mame/drivers/macs.cpp @@ -501,7 +501,8 @@ uint8_t macs_state::dma_offset() return m_cart_bank; } -MACHINE_CONFIG_START(macs_state::macs) +void macs_state::macs(machine_config &config) +{ /* basic machine hardware */ ST0016_CPU(config, m_maincpu, 8000000); // 8 MHz ? m_maincpu->set_memory_map(&macs_state::macs_mem); @@ -518,12 +519,9 @@ MACHINE_CONFIG_START(macs_state::macs) screen.set_palette("maincpu:palette"); screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_IRQ0, HOLD_LINE); // FIXME: HOLD_LINE is bad juju - MCFG_GENERIC_CARTSLOT_ADD_WITH_DEFAULT("slot_a", generic_plain_slot, "macs_cart", "rom") - MCFG_SET_IMAGE_LOADABLE(false) - MCFG_GENERIC_CARTSLOT_ADD_WITH_DEFAULT("slot_b", generic_plain_slot, "macs_cart", "rom") - MCFG_SET_IMAGE_LOADABLE(false) - -MACHINE_CONFIG_END + GENERIC_CARTSLOT(config, m_cart1, generic_plain_slot, "macs_cart", "rom").set_user_loadable(false); + GENERIC_CARTSLOT(config, m_cart2, generic_plain_slot, "macs_cart", "rom").set_user_loadable(false); +} #define MACS_BIOS \ diff --git a/src/mame/drivers/mephisto_montec.cpp b/src/mame/drivers/mephisto_montec.cpp index 66796a127f8..ed9c6518243 100644 --- a/src/mame/drivers/mephisto_montec.cpp +++ b/src/mame/drivers/mephisto_montec.cpp @@ -517,7 +517,7 @@ MACHINE_CONFIG_START(mephisto_montec_state::smondial2) MCFG_DEVICE_MODIFY("maincpu") MCFG_DEVICE_PROGRAM_MAP(smondial2_mem) - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "smondial2_cart") + GENERIC_CARTSLOT(config, "cartslot", generic_plain_slot, "smondial2_cart"); SOFTWARE_LIST(config, "cart_list").set_original("smondial2"); config.set_default_layout(layout_mephisto_smondial2); diff --git a/src/mame/drivers/mikrosha.cpp b/src/mame/drivers/mikrosha.cpp index dda94e96477..2628b58492e 100644 --- a/src/mame/drivers/mikrosha.cpp +++ b/src/mame/drivers/mikrosha.cpp @@ -203,11 +203,12 @@ static GFXDECODE_START( gfx_mikrosha ) GFXDECODE_ENTRY( "gfx1", 0x0000, mikrosha_charlayout, 0, 1 ) GFXDECODE_END -MACHINE_CONFIG_START(mikrosha_state::mikrosha) +void mikrosha_state::mikrosha(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", I8080, XTAL(16'000'000) / 9) - MCFG_DEVICE_PROGRAM_MAP(mikrosha_mem) - MCFG_DEVICE_IO_MAP(mikrosha_io) + I8080(config, m_maincpu, XTAL(16'000'000) / 9); + m_maincpu->set_addrmap(AS_PROGRAM, &mikrosha_state::mikrosha_mem); + m_maincpu->set_addrmap(AS_IO, &mikrosha_state::mikrosha_io); I8255(config, m_ppi8255_1); m_ppi8255_1->in_pa_callback().set(FUNC(radio86_state::radio86_8255_portb_r2)); @@ -230,11 +231,11 @@ MACHINE_CONFIG_START(mikrosha_state::mikrosha) pit8253.out_handler<2>().set(FUNC(mikrosha_state::mikrosha_pit_out2)); /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_UPDATE_DEVICE("i8275", i8275_device, screen_update) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_SIZE(78*6, 30*10) - MCFG_SCREEN_VISIBLE_AREA(0, 78*6-1, 0, 30*10-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_screen_update("i8275", FUNC(i8275_device::screen_update)); + screen.set_refresh_hz(50); + screen.set_size(78*6, 30*10); + screen.set_visarea(0, 78*6-1, 0, 30*10-1); GFXDECODE(config, "gfxdecode", m_palette, gfx_mikrosha); PALETTE(config, m_palette, FUNC(mikrosha_state::radio86_palette), 3); @@ -254,12 +255,11 @@ MACHINE_CONFIG_START(mikrosha_state::mikrosha) m_cassette->set_default_state(CASSETTE_STOPPED | CASSETTE_SPEAKER_ENABLED | CASSETTE_MOTOR_ENABLED); m_cassette->set_interface("mikrosha_cass"); - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "mikrosha_cart") - MCFG_GENERIC_EXTENSIONS("bin,rom") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "mikrosha_cart", "bin,rom"); SOFTWARE_LIST(config, "cass_list").set_original("mikrosha_cass"); SOFTWARE_LIST(config, "cart_list").set_original("mikrosha_cart"); -MACHINE_CONFIG_END +} /* ROM definition */ diff --git a/src/mame/drivers/pasogo.cpp b/src/mame/drivers/pasogo.cpp index 40c9c812175..3ad45975fb5 100644 --- a/src/mame/drivers/pasogo.cpp +++ b/src/mame/drivers/pasogo.cpp @@ -544,13 +544,13 @@ void pasogo_state::machine_reset() contrast(*color->fields().first(), nullptr, 0, color->read()); } -MACHINE_CONFIG_START(pasogo_state::pasogo) - - MCFG_DEVICE_ADD("maincpu", V30, XTAL(32'220'000)/2) - MCFG_DEVICE_PROGRAM_MAP(pasogo_mem) - MCFG_DEVICE_IO_MAP(pasogo_io) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", pasogo_state, pasogo_interrupt) - MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("mb:pic8259", pic8259_device, inta_cb) +void pasogo_state::pasogo(machine_config &config) +{ + V30(config, m_maincpu, XTAL(32'220'000)/2); + m_maincpu->set_addrmap(AS_PROGRAM, &pasogo_state::pasogo_mem); + m_maincpu->set_addrmap(AS_IO, &pasogo_state::pasogo_io); + m_maincpu->set_vblank_int("screen", FUNC(pasogo_state::pasogo_interrupt)); + m_maincpu->set_irq_acknowledge_callback("mb:pic8259", FUNC(pic8259_device::inta_cb)); ADDRESS_MAP_BANK(config, "ems").set_map(&pasogo_state::emsbank_map).set_options(ENDIANNESS_LITTLE, 16, 32, 0x4000); @@ -560,22 +560,22 @@ MACHINE_CONFIG_START(pasogo_state::pasogo) // It's a CGA device right so lets use isa_cga! Well, not so much. // The carts use vg230 specific registers and mostly ignore the mc6845. - MCFG_SCREEN_ADD("screen", LCD) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_SIZE(320, 240) - MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1) - MCFG_SCREEN_UPDATE_DRIVER(pasogo_state, screen_update_pasogo) - MCFG_SCREEN_PALETTE("palette") - MCFG_PALETTE_ADD("palette", 2) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD)); + screen.set_refresh_hz(60); + screen.set_size(320, 240); + screen.set_visarea(0, 320-1, 0, 240-1); + screen.set_screen_update(FUNC(pasogo_state::screen_update_pasogo)); + screen.set_palette(m_palette); + PALETTE(config, m_palette).set_entries(2); - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pasogo_cart") - MCFG_GENERIC_WIDTH(GENERIC_ROM16_WIDTH) - MCFG_GENERIC_MANDATORY + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "pasogo_cart"); + m_cart->set_width(GENERIC_ROM16_WIDTH); + m_cart->set_must_be_loaded(true); SOFTWARE_LIST(config, "cart_list").set_original("pasogo"); TIMER(config, "vg230_timer").configure_periodic(FUNC(pasogo_state::vg230_timer), attotime::from_hz(1)); -MACHINE_CONFIG_END +} ROM_START( pasogo ) ROM_REGION( 0x10000, "empty", ROMREGION_ERASEFF ) diff --git a/src/mame/drivers/pc6001.cpp b/src/mame/drivers/pc6001.cpp index d4fa2d2c229..5a269a71c81 100644 --- a/src/mame/drivers/pc6001.cpp +++ b/src/mame/drivers/pc6001.cpp @@ -1502,15 +1502,14 @@ MACHINE_CONFIG_START(pc6001_state::pc6001) m_ppi->out_pc_callback().set(FUNC(pc6001_state::ppi_portc_w)); /* uart */ - MCFG_DEVICE_ADD("uart", I8251, 0) + I8251(config, "uart", 0); - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pc6001_cart") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "pc6001_cart"); // CASSETTE(config, m_cassette); // m_cassette->set_formats(pc6001_cassette_formats); // m_cassette->set_default_state(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_ENABLED); - MCFG_GENERIC_CARTSLOT_ADD("cas_hack", generic_plain_slot, "pc6001_cass") - MCFG_GENERIC_EXTENSIONS("cas,p6") + GENERIC_CARTSLOT(config, m_cas_hack, generic_plain_slot, "pc6001_cass", "cas,p6"); SPEAKER(config, "mono").front_center(); ay8910_device &ay8910(AY8910(config, "ay8910", PC6001_MAIN_CLOCK/4)); diff --git a/src/mame/drivers/pc8401a.cpp b/src/mame/drivers/pc8401a.cpp index 860a4677947..45493f4eaf7 100644 --- a/src/mame/drivers/pc8401a.cpp +++ b/src/mame/drivers/pc8401a.cpp @@ -599,12 +599,10 @@ MACHINE_CONFIG_START(pc8401a_state::pc8401a) pc8401a_video(config); /* option ROM cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, nullptr, "bin,rom"); /* I/O ROM cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("io_cart", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") + GENERIC_CARTSLOT(config, m_io_cart, generic_linear_slot, nullptr, "bin,rom"); /* internal ram */ RAM(config, RAM_TAG).set_default_size("64K").set_extra_options("96K"); @@ -639,12 +637,10 @@ MACHINE_CONFIG_START(pc8500_state::pc8500) pc8500_video(config); /* option ROM cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, nullptr, "bin,rom"); /* I/O ROM cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("io_cart", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") + GENERIC_CARTSLOT(config, m_io_cart, generic_linear_slot, nullptr, "bin,rom"); /* internal ram */ RAM(config, RAM_TAG).set_default_size("64K").set_extra_options("96K"); diff --git a/src/mame/drivers/pencil2.cpp b/src/mame/drivers/pencil2.cpp index 707dc60e183..5a7c7bea48b 100644 --- a/src/mame/drivers/pencil2.cpp +++ b/src/mame/drivers/pencil2.cpp @@ -311,11 +311,12 @@ void pencil2_state::machine_start() m_maincpu->space(AS_PROGRAM).install_read_handler(0x8000, 0xffff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart)); } -MACHINE_CONFIG_START(pencil2_state::pencil2) +void pencil2_state::pencil2(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, XTAL(10'738'635)/3) - MCFG_DEVICE_PROGRAM_MAP(mem_map) - MCFG_DEVICE_IO_MAP(io_map) + Z80(config, m_maincpu, XTAL(10'738'635)/3); + m_maincpu->set_addrmap(AS_PROGRAM, &pencil2_state::mem_map); + m_maincpu->set_addrmap(AS_IO, &pencil2_state::io_map); /* video hardware */ tms9929a_device &vdp(TMS9929A(config, "tms9928a", XTAL(10'738'635))); @@ -325,8 +326,7 @@ MACHINE_CONFIG_START(pencil2_state::pencil2) // sound hardware SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("sn76489a", SN76489A, XTAL(10'738'635)/3) // guess - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) + SN76489A(config, "sn76489a", XTAL(10'738'635)/3).add_route(ALL_OUTPUTS, "mono", 1.00); // guess WAVE(config, "wave", m_cass).add_route(ALL_OUTPUTS, "mono", 0.25); /* cassette */ @@ -334,7 +334,7 @@ MACHINE_CONFIG_START(pencil2_state::pencil2) m_cass->set_default_state(CASSETTE_STOPPED | CASSETTE_MOTOR_ENABLED | CASSETTE_SPEAKER_ENABLED); /* cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pencil2_cart") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "pencil2_cart"); /* printer */ CENTRONICS(config, m_centronics, centronics_devices, "printer"); @@ -346,7 +346,7 @@ MACHINE_CONFIG_START(pencil2_state::pencil2) /* Software lists */ SOFTWARE_LIST(config, "cart_list").set_original("pencil2"); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( pencil2 ) diff --git a/src/mame/drivers/picno.cpp b/src/mame/drivers/picno.cpp index 7daf7254e40..035943a0648 100644 --- a/src/mame/drivers/picno.cpp +++ b/src/mame/drivers/picno.cpp @@ -66,20 +66,21 @@ void picno_state::io_map(address_map &map) static INPUT_PORTS_START( picno ) INPUT_PORTS_END -MACHINE_CONFIG_START(picno_state::picno) +void picno_state::picno(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", H83002, XTAL(20'000'000)) /* TODO: correct CPU type (H8/532), crystal is a guess, divided by 2 in the cpu */ - MCFG_DEVICE_PROGRAM_MAP(mem_map) - MCFG_DEVICE_IO_MAP(io_map) + H83002(config, m_maincpu, XTAL(20'000'000)); /* TODO: correct CPU type (H8/532), crystal is a guess, divided by 2 in the cpu */ + m_maincpu->set_addrmap(AS_PROGRAM, &picno_state::mem_map); + m_maincpu->set_addrmap(AS_IO, &picno_state::io_map); //MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") // no speaker in the unit, but there's a couple of sockets on the back //MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) //MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "picno_cart") + GENERIC_CARTSLOT(config, "cartslot", generic_linear_slot, "picno_cart"); SOFTWARE_LIST(config, "cart_list").set_original("picno"); -MACHINE_CONFIG_END +} ROM_START( picno ) ROM_REGION(0x88000, "roms", 0) diff --git a/src/mame/drivers/prestige.cpp b/src/mame/drivers/prestige.cpp index 0537cd07768..de06047e6b3 100644 --- a/src/mame/drivers/prestige.cpp +++ b/src/mame/drivers/prestige.cpp @@ -764,7 +764,7 @@ MACHINE_CONFIG_START(prestige_state::prestige_base) PALETTE(config, "palette", FUNC(prestige_state::prestige_palette), 2); /* cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "genius_cart") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "genius_cart"); /* internal ram */ RAM(config, RAM_TAG).set_default_size("32K").set_extra_options("64K"); diff --git a/src/mame/drivers/primo.cpp b/src/mame/drivers/primo.cpp index e697420bbf4..5fc7a9b154a 100644 --- a/src/mame/drivers/primo.cpp +++ b/src/mame/drivers/primo.cpp @@ -282,10 +282,8 @@ MACHINE_CONFIG_START(primo_state::primoa32) cbm_iec_slot_device::add(config, m_iec, nullptr); /* cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("cartslot1", generic_plain_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_CARTSLOT_ADD("cartslot2", generic_plain_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") + GENERIC_CARTSLOT(config, m_cart1, generic_plain_slot, nullptr, "bin,rom"); + GENERIC_CARTSLOT(config, m_cart2, generic_plain_slot, nullptr, "bin,rom"); MACHINE_CONFIG_END MACHINE_CONFIG_START(primo_state::primoa48) diff --git a/src/mame/drivers/tvc.cpp b/src/mame/drivers/tvc.cpp index fce3871b8ed..87ceb62c42f 100644 --- a/src/mame/drivers/tvc.cpp +++ b/src/mame/drivers/tvc.cpp @@ -768,17 +768,17 @@ void tvc_exp(device_slot_interface &device) MACHINE_CONFIG_START(tvc_state::tvc) /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu",Z80, 3125000) - MCFG_DEVICE_PROGRAM_MAP(tvc_mem) - MCFG_DEVICE_IO_MAP(tvc_io) + Z80(config, m_maincpu, 3125000); + m_maincpu->set_addrmap(AS_PROGRAM, &tvc_state::tvc_mem); + m_maincpu->set_addrmap(AS_IO, &tvc_state::tvc_io); /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_SIZE(512, 240) - MCFG_SCREEN_VISIBLE_AREA(0, 512 - 1, 0, 240 - 1) - MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_size(512, 240); + screen.set_visarea(0, 512 - 1, 0, 240 - 1); + screen.set_screen_update("crtc", FUNC(mc6845_device::screen_update)); PALETTE(config, m_palette, FUNC(tvc_state::tvc_palette), 16); @@ -805,8 +805,7 @@ MACHINE_CONFIG_START(tvc_state::tvc) m_centronics->set_output_latch(cent_data_out); /* cartridge */ - MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "tvc_cart") - MCFG_GENERIC_EXTENSIONS("bin,rom,crt") + GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "tvc_cart", "bin,rom,crt"); /* expansion interface */ TVCEXP_SLOT(config, m_expansions[0], tvc_exp , nullptr);