diff options
Diffstat (limited to 'src')
35 files changed, 100 insertions, 57 deletions
diff --git a/src/emu/clifront.c b/src/emu/clifront.c index 63804c3959b..620393a1ee7 100644 --- a/src/emu/clifront.c +++ b/src/emu/clifront.c @@ -647,6 +647,7 @@ void cli_frontend::listslots(const char *gamename) bool first = true; for (const device_slot_interface *slot = iter.first(); slot != NULL; slot = iter.next()) { + if (slot->fixed()) continue; // output the line, up to the list of extensions printf("%-13s%-10s ", first ? drivlist.driver().name : "", slot->device().tag()+1); @@ -654,14 +655,17 @@ void cli_frontend::listslots(const char *gamename) const slot_interface* intf = slot->get_slot_interfaces(); for (int i = 0; intf && intf[i].name != NULL; i++) { - device_t *dev = (*intf[i].devtype)(drivlist.config(), "dummy", &drivlist.config().root_device(), 0); - dev->config_complete(); - if (i==0) { - printf("%-15s %s\n", intf[i].name,dev->name()); - } else { - printf("%-23s %-15s %s\n", "",intf[i].name,dev->name()); + if (!intf[i].internal) + { + device_t *dev = (*intf[i].devtype)(drivlist.config(), "dummy", &drivlist.config().root_device(), 0); + dev->config_complete(); + if (i==0) { + printf("%-15s %s\n", intf[i].name,dev->name()); + } else { + printf("%-23s %-15s %s\n", "",intf[i].name,dev->name()); + } + global_free(dev); } - global_free(dev); } // end the line printf("\n"); diff --git a/src/emu/dislot.c b/src/emu/dislot.c index 95cfedaa046..617377b7b71 100644 --- a/src/emu/dislot.c +++ b/src/emu/dislot.c @@ -20,7 +20,7 @@ device_slot_interface::~device_slot_interface() } -void device_slot_interface::static_set_slot_info(device_t &device, const slot_interface *slots_info, const char *default_card,const input_device_default *default_input) +void device_slot_interface::static_set_slot_info(device_t &device, const slot_interface *slots_info, const char *default_card,const input_device_default *default_input, bool fixed) { device_slot_interface *slot; if (!device.interface(slot)) @@ -29,6 +29,7 @@ void device_slot_interface::static_set_slot_info(device_t &device, const slot_in slot->m_slot_interfaces = slots_info; slot->m_default_card = default_card; slot->m_input_defaults = default_input; + slot->m_fixed = fixed; } device_t* device_slot_interface::get_card_device() diff --git a/src/emu/dislot.h b/src/emu/dislot.h index 911cae86462..58dcabccbda 100644 --- a/src/emu/dislot.h +++ b/src/emu/dislot.h @@ -17,10 +17,11 @@ struct slot_interface { const char * name; const device_type & devtype; + bool internal; }; -#define MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp) \ - device_slot_interface::static_set_slot_info(*device, SLOT_INTERFACE_NAME(_slot_intf), _def_slot, DEVICE_INPUT_DEFAULTS_NAME(_def_inp)); +#define MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp, _fixed) \ + device_slot_interface::static_set_slot_info(*device, SLOT_INTERFACE_NAME(_slot_intf), _def_slot, DEVICE_INPUT_DEFAULTS_NAME(_def_inp), _fixed); #define SLOT_INTERFACE_NAME(name) slot_interface_##name @@ -29,10 +30,13 @@ struct slot_interface { \ #define SLOT_INTERFACE(tag,device) \ - { tag, device }, \ + { tag, device, false }, \ + +#define SLOT_INTERFACE_INTERNAL(tag,device) \ + { tag, device, true }, \ #define SLOT_INTERFACE_END \ - { NULL, NULL } \ + { NULL, NULL, false } \ }; #define SLOT_INTERFACE_EXTERN(name) extern const slot_interface slot_interface_##name[] @@ -46,16 +50,18 @@ public: device_slot_interface(const machine_config &mconfig, device_t &device); virtual ~device_slot_interface(); - static void static_set_slot_info(device_t &device, const slot_interface *slots_info, const char *default_card,const input_device_default *default_input); + static void static_set_slot_info(device_t &device, const slot_interface *slots_info, const char *default_card,const input_device_default *default_input, bool fixed); const slot_interface* get_slot_interfaces() const { return m_slot_interfaces; }; const char * get_default_card(const machine_config &config, emu_options &options) const { return m_default_card; }; virtual const char * get_default_card_software(const machine_config &config, emu_options &options) { return NULL; }; const input_device_default *input_ports_defaults() const { return m_input_defaults; } + const bool fixed() const { return m_fixed; } device_t* get_card_device(); protected: const char *m_default_card; const input_device_default *m_input_defaults; const slot_interface *m_slot_interfaces; + bool m_fixed; }; // iterator diff --git a/src/emu/imagedev/floppy.h b/src/emu/imagedev/floppy.h index 4018e8a060f..99789ecb2b3 100644 --- a/src/emu/imagedev/floppy.h +++ b/src/emu/imagedev/floppy.h @@ -11,7 +11,7 @@ #define MCFG_FLOPPY_DRIVE_ADD(_tag, _slot_intf, _def_slot, _def_inp, _formats) \ MCFG_DEVICE_ADD(_tag, FLOPPY_CONNECTOR, 0) \ - MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp) \ + MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp, false) \ static_cast<floppy_connector *>(device)->set_formats(_formats); diff --git a/src/emu/info.c b/src/emu/info.c index 62fe531e094..fb2a8b770e4 100644 --- a/src/emu/info.c +++ b/src/emu/info.c @@ -1276,7 +1276,7 @@ void info_xml_creator::output_slots(device_t &device, const char *root_tag) */ const slot_interface* intf = slot->get_slot_interfaces(); - for (int i = 0; intf && intf[i].name != NULL; i++) + for (int i = 0; intf && intf[i].name != NULL && !intf[i].internal; i++) { device_t *dev = const_cast<machine_config &>(m_drivlist.config()).device_add(&m_drivlist.config().root_device(), "dummy", intf[i].devtype, 0); if (!dev->configured()) diff --git a/src/emu/machine/ctronics.h b/src/emu/machine/ctronics.h index cb62e288aad..1f55977c348 100644 --- a/src/emu/machine/ctronics.h +++ b/src/emu/machine/ctronics.h @@ -149,7 +149,7 @@ SLOT_INTERFACE_EXTERN(centronics_printer); #define MCFG_CENTRONICS_ADD(_tag, _intf, _slot_intf, _def_slot, _def_inp) \ MCFG_DEVICE_ADD(_tag, CENTRONICS, 0) \ MCFG_DEVICE_CONFIG(_intf) \ - MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp) \ + MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp, false) \ #define MCFG_CENTRONICS_PRINTER_ADD(_tag, _intf) \ MCFG_CENTRONICS_ADD(_tag, _intf, centronics_printer, "printer", NULL) \ diff --git a/src/emu/machine/idectrl.h b/src/emu/machine/idectrl.h index e55aae970e1..e1804877606 100644 --- a/src/emu/machine/idectrl.h +++ b/src/emu/machine/idectrl.h @@ -145,20 +145,20 @@ SLOT_INTERFACE_EXTERN(ide_image_devices); DEVICE CONFIGURATION MACROS ***************************************************************************/ -#define MCFG_IDE_CONTROLLER_ADD(_tag, _callback, _slotintf, _master, _slave) \ +#define MCFG_IDE_CONTROLLER_ADD(_tag, _callback, _slotintf, _master, _slave, _fixed) \ MCFG_DEVICE_ADD(_tag, IDE_CONTROLLER, 0) \ MCFG_DEVICE_CONFIG_DATAPTR(ide_config, interrupt, _callback) \ - MCFG_IDE_SLOT_ADD("drive_0", _slotintf, _master, NULL) \ - MCFG_IDE_SLOT_ADD("drive_1", _slotintf, _slave, NULL) \ + MCFG_IDE_SLOT_ADD("drive_0", _slotintf, _master, NULL, _fixed) \ + MCFG_IDE_SLOT_ADD("drive_1", _slotintf, _slave, NULL, _fixed) \ #define MCFG_IDE_BUS_MASTER_SPACE(_tag, _cpu, _space) \ MCFG_DEVICE_MODIFY(_tag) \ MCFG_DEVICE_CONFIG_DATAPTR(ide_config, bmcpu, _cpu) \ MCFG_DEVICE_CONFIG_DATA32(ide_config, bmspace, AS_##_space) -#define MCFG_IDE_SLOT_ADD(_tag, _slot_intf, _def_slot, _def_inp) \ +#define MCFG_IDE_SLOT_ADD(_tag, _slot_intf, _def_slot, _def_inp, _fixed) \ MCFG_DEVICE_ADD(_tag, IDE_SLOT, 0) \ - MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp) \ + MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp, _fixed) \ /*************************************************************************** FUNCTION PROTOTYPES diff --git a/src/emu/machine/nscsi_bus.h b/src/emu/machine/nscsi_bus.h index d3a19dac924..49e302e4fe8 100644 --- a/src/emu/machine/nscsi_bus.h +++ b/src/emu/machine/nscsi_bus.h @@ -16,7 +16,7 @@ #define MCFG_NSCSI_ADD(_tag, _slot_intf, _def_slot, _def_inp) \ MCFG_DEVICE_ADD(_tag, NSCSI_CONNECTOR, 0) \ - MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp) + MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp, false) class nscsi_device; diff --git a/src/emu/mconfig.c b/src/emu/mconfig.c index bd2d236b5c7..b593adc8619 100644 --- a/src/emu/mconfig.c +++ b/src/emu/mconfig.c @@ -78,6 +78,7 @@ machine_config::machine_config(const game_driver &gamedrv, emu_options &options) { device_t &owner = slot->device(); const char *selval = options.value(owner.tag()+1); + bool isdefault = (options.priority(owner.tag()+1)==OPTION_PRIORITY_DEFAULT); if (!is_selected_driver || !options.exists(owner.tag()+1)) selval = slot->get_default_card(*this, options); @@ -88,11 +89,14 @@ machine_config::machine_config(const game_driver &gamedrv, emu_options &options) { if (strcmp(selval, intf[i].name) == 0) { - device_t *new_dev = device_add(&owner, intf[i].name, intf[i].devtype, 0); - found = true; - const char *def = slot->get_default_card(*this, options); - if (def != NULL && strcmp(def, selval) == 0) - device_t::static_set_input_default(*new_dev, slot->input_ports_defaults()); + if ((!intf[i].internal) || (isdefault && intf[i].internal)) + { + device_t *new_dev = device_add(&owner, intf[i].name, intf[i].devtype, 0); + found = true; + const char *def = slot->get_default_card(*this, options); + if (def != NULL && strcmp(def, selval) == 0) + device_t::static_set_input_default(*new_dev, slot->input_ports_defaults()); + } } } if (!found) diff --git a/src/emu/uimain.c b/src/emu/uimain.c index 94cc6190a47..1e4ba70d00b 100644 --- a/src/emu/uimain.c +++ b/src/emu/uimain.c @@ -180,8 +180,14 @@ void ui_menu_main::populate() slot_interface_iterator slotiter(machine().root_device()); if (slotiter.first() != NULL) { + bool display = false; + for (const device_slot_interface *slot = slotiter.first(); slot != NULL; slot = slotiter.next()) + { + if (slot->fixed()) continue; + display = true; + } /* add image info menu */ - item_append("Slot Devices", NULL, 0, (void *)SLOT_DEVICES); + if (display) item_append("Slot Devices", NULL, 0, (void *)SLOT_DEVICES); } network_interface_iterator netiter(machine().root_device()); @@ -393,6 +399,10 @@ int ui_menu_slot_devices::slot_get_length(device_slot_interface *slot) const char *ui_menu_slot_devices::slot_get_next(device_slot_interface *slot) { int idx = slot_get_current_index(slot) + 1; + do { + if (idx==slot_get_length(slot)) return ""; + if (slot->get_slot_interfaces()[idx].internal) idx++; + } while (slot->get_slot_interfaces()[idx].internal); if (idx==slot_get_length(slot)) return ""; return slot->get_slot_interfaces()[idx].name; } @@ -403,9 +413,12 @@ const char *ui_menu_slot_devices::slot_get_next(device_slot_interface *slot) const char *ui_menu_slot_devices::slot_get_prev(device_slot_interface *slot) { int idx = slot_get_current_index(slot) - 1; - if (idx==-1) return ""; - if (idx==-2) idx = slot_get_length(slot) -1; - if (idx==-1) return ""; + do { + if (idx==-1) return ""; + if (idx==-2) idx = slot_get_length(slot) -1; + if (idx==-1) return ""; + if (slot->get_slot_interfaces()[idx].internal) idx--; + } while (slot->get_slot_interfaces()[idx].internal); return slot->get_slot_interfaces()[idx].name; } @@ -445,6 +458,8 @@ void ui_menu_slot_devices::populate() slot_interface_iterator iter(machine().root_device()); for (device_slot_interface *slot = iter.first(); slot != NULL; slot = iter.next()) { + // do no display fixed slots + if (slot->fixed()) continue; /* record the menu item */ const char *title = get_slot_device(slot); item_append(slot->device().tag()+1, strcmp(title,"")==0 ? "------" : title, MENU_FLAG_LEFT_ARROW | MENU_FLAG_RIGHT_ARROW, (void *)slot); @@ -469,7 +484,7 @@ void ui_menu_slot_devices::handle() if (menu_event != NULL && menu_event->itemref != NULL) { if (menu_event->iptkey == IPT_UI_LEFT || menu_event->iptkey == IPT_UI_RIGHT) { - device_slot_interface *slot = (device_slot_interface *)menu_event->itemref; + device_slot_interface *slot = (device_slot_interface *)menu_event->itemref; const char *val = (menu_event->iptkey == IPT_UI_LEFT) ? slot_get_prev(slot) : slot_get_next(slot); set_slot_device(slot,val); reset(UI_MENU_RESET_REMEMBER_REF); diff --git a/src/lib/util/options.c b/src/lib/util/options.c index 88c173c1c65..1144bb1202e 100644 --- a/src/lib/util/options.c +++ b/src/lib/util/options.c @@ -575,6 +575,17 @@ const char *core_options::value(const char *name) const //------------------------------------------------- +// priority - return the priority of option +//------------------------------------------------- + +int core_options::priority(const char *name) const +{ + entry *curentry = m_entrymap.find(name); + return (curentry != NULL) ? curentry->priority() : 0; +} + + +//------------------------------------------------- // seqid - return the seqid for a given option //------------------------------------------------- diff --git a/src/lib/util/options.h b/src/lib/util/options.h index 03aa293bebf..c8fbf5e1f51 100644 --- a/src/lib/util/options.h +++ b/src/lib/util/options.h @@ -115,6 +115,7 @@ public: bool is_header() const { return type() == OPTION_HEADER; } bool is_command() const { return type() == OPTION_COMMAND; } bool has_range() const { return (m_minimum && m_maximum); } + int priority() const { return m_priority; } // setters void set_value(const char *newvalue, int priority); @@ -171,6 +172,7 @@ public: // reading const char *value(const char *option) const; + int priority(const char *option) const; bool bool_value(const char *name) const { return (atoi(value(name)) != 0); } int int_value(const char *name) const { return atoi(value(name)); } float float_value(const char *name) const { return atof(value(name)); } diff --git a/src/mame/drivers/calchase.c b/src/mame/drivers/calchase.c index 285d54b9cac..eddebb141fd 100644 --- a/src/mame/drivers/calchase.c +++ b/src/mame/drivers/calchase.c @@ -916,7 +916,7 @@ static MACHINE_CONFIG_START( calchase, calchase_state ) MCFG_I8237_ADD( "dma8237_2", XTAL_14_31818MHz/3, dma8237_2_config ) MCFG_PIC8259_ADD( "pic8259_1", calchase_pic8259_1_config ) MCFG_PIC8259_ADD( "pic8259_2", calchase_pic8259_2_config ) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_MC146818_ADD( "rtc", MC146818_STANDARD ) MCFG_PCI_BUS_ADD("pcibus", 0) diff --git a/src/mame/drivers/chihiro.c b/src/mame/drivers/chihiro.c index 9a54ce51a60..20fc7c94bbf 100644 --- a/src/mame/drivers/chihiro.c +++ b/src/mame/drivers/chihiro.c @@ -1179,7 +1179,7 @@ static MACHINE_CONFIG_START( chihiro_base, driver_device ) MCFG_PIC8259_ADD( "pic8259_1", chihiro_pic8259_1_config ) MCFG_PIC8259_ADD( "pic8259_2", chihiro_pic8259_2_config ) MCFG_PIT8254_ADD( "pit8254", chihiro_pit8254_config ) - MCFG_IDE_CONTROLLER_ADD( "ide", ide_interrupt , ide_baseboard, "bb", NULL) + MCFG_IDE_CONTROLLER_ADD( "ide", ide_interrupt , ide_baseboard, "bb", NULL, true) MCFG_IDE_BUS_MASTER_SPACE( "ide", "maincpu", PROGRAM ) /* video hardware */ diff --git a/src/mame/drivers/cobra.c b/src/mame/drivers/cobra.c index 83c3b351468..553dc6b9a1c 100644 --- a/src/mame/drivers/cobra.c +++ b/src/mame/drivers/cobra.c @@ -2020,7 +2020,7 @@ static MACHINE_CONFIG_START( cobra, cobra_state ) MCFG_PCI_BUS_ADD("pcibus", 0) MCFG_PCI_BUS_DEVICE(0, NULL, mpc106_pci_r, mpc106_pci_w) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_VIDEO_START(cobra) diff --git a/src/mame/drivers/djmain.c b/src/mame/drivers/djmain.c index 42ac7e18658..a027f2d9778 100644 --- a/src/mame/drivers/djmain.c +++ b/src/mame/drivers/djmain.c @@ -1456,7 +1456,7 @@ static MACHINE_CONFIG_START( djmain, djmain_state ) MCFG_MACHINE_START(djmain) MCFG_MACHINE_RESET(djmain) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) diff --git a/src/mame/drivers/funkball.c b/src/mame/drivers/funkball.c index 2bae619ea1e..a5ab9f042b0 100644 --- a/src/mame/drivers/funkball.c +++ b/src/mame/drivers/funkball.c @@ -1155,7 +1155,7 @@ static MACHINE_CONFIG_START( funkball, funkball_state ) MCFG_PCI_BUS_DEVICE(7, "voodoo_0", voodoo_0_pci_r, voodoo_0_pci_w) MCFG_PCI_BUS_DEVICE(18, NULL, cx5510_pci_r, cx5510_pci_w) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_3DFX_VOODOO_1_ADD("voodoo_0", STD_VOODOO_1_CLOCK, 2, "screen") diff --git a/src/mame/drivers/gamecstl.c b/src/mame/drivers/gamecstl.c index 90c8ff930ff..d0a07538f52 100644 --- a/src/mame/drivers/gamecstl.c +++ b/src/mame/drivers/gamecstl.c @@ -704,7 +704,7 @@ static MACHINE_CONFIG_START( gamecstl, gamecstl_state ) MCFG_PIC8259_ADD( "pic8259_2", gamecstl_pic8259_2_config ) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_MC146818_ADD( "rtc", MC146818_STANDARD ) diff --git a/src/mame/drivers/jaguar.c b/src/mame/drivers/jaguar.c index 03b30401007..e3c2aa5df4a 100644 --- a/src/mame/drivers/jaguar.c +++ b/src/mame/drivers/jaguar.c @@ -1737,7 +1737,7 @@ static MACHINE_CONFIG_START( cojagr3k, cojag_state ) MCFG_MACHINE_RESET(cojag) MCFG_NVRAM_ADD_1FILL("nvram") - MCFG_IDE_CONTROLLER_ADD("ide", jaguar_external_int, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", jaguar_external_int, ide_devices, "hdd", NULL, true) MCFG_TIMER_ADD("serial_timer", jaguar_serial_callback) diff --git a/src/mame/drivers/kinst.c b/src/mame/drivers/kinst.c index a0ca431a24b..f7b38dc36f7 100644 --- a/src/mame/drivers/kinst.c +++ b/src/mame/drivers/kinst.c @@ -664,7 +664,7 @@ static MACHINE_CONFIG_START( kinst, kinst_state ) MCFG_MACHINE_START(kinst) MCFG_MACHINE_RESET(kinst) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK) diff --git a/src/mame/drivers/mediagx.c b/src/mame/drivers/mediagx.c index 9779169699c..4ec4dbb2db8 100644 --- a/src/mame/drivers/mediagx.c +++ b/src/mame/drivers/mediagx.c @@ -1153,7 +1153,7 @@ static MACHINE_CONFIG_START( mediagx, mediagx_state ) MCFG_PIC8259_ADD( "pic8259_slave", mediagx_pic8259_2_config ) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_TIMER_ADD("sound_timer", sound_timer_callback) diff --git a/src/mame/drivers/midqslvr.c b/src/mame/drivers/midqslvr.c index ea225139224..bfcfff513a1 100644 --- a/src/mame/drivers/midqslvr.c +++ b/src/mame/drivers/midqslvr.c @@ -704,7 +704,7 @@ static MACHINE_CONFIG_START( midqslvr, midqslvr_state ) MCFG_PCI_BUS_DEVICE( 0, NULL, intel82439tx_pci_r, intel82439tx_pci_w) MCFG_PCI_BUS_DEVICE(31, NULL, intel82371ab_pci_r, intel82371ab_pci_w) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_FRAGMENT_ADD( pcvideo_vga ) diff --git a/src/mame/drivers/midvunit.c b/src/mame/drivers/midvunit.c index 834fd3f76eb..5494e38bc2a 100644 --- a/src/mame/drivers/midvunit.c +++ b/src/mame/drivers/midvunit.c @@ -1043,7 +1043,7 @@ static MACHINE_CONFIG_DERIVED( midvplus, midvcommon ) MCFG_DEVICE_REMOVE("nvram") MCFG_NVRAM_HANDLER(midway_serial_pic2) - MCFG_IDE_CONTROLLER_ADD("ide", NULL, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", NULL, ide_devices, "hdd", NULL, true) /* sound hardware */ MCFG_FRAGMENT_ADD(dcs2_audio_2115) diff --git a/src/mame/drivers/qdrmfgp.c b/src/mame/drivers/qdrmfgp.c index b1904664ccc..b0b1b94968b 100644 --- a/src/mame/drivers/qdrmfgp.c +++ b/src/mame/drivers/qdrmfgp.c @@ -675,7 +675,7 @@ static MACHINE_CONFIG_START( qdrmfgp, qdrmfgp_state ) MCFG_MACHINE_RESET(qdrmfgp) MCFG_NVRAM_ADD_1FILL("nvram") - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) @@ -711,7 +711,7 @@ static MACHINE_CONFIG_START( qdrmfgp2, qdrmfgp_state ) MCFG_MACHINE_RESET(qdrmfgp) MCFG_NVRAM_ADD_1FILL("nvram") - MCFG_IDE_CONTROLLER_ADD("ide", gp2_ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", gp2_ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) diff --git a/src/mame/drivers/queen.c b/src/mame/drivers/queen.c index dbc78a199dd..f4a007be856 100644 --- a/src/mame/drivers/queen.c +++ b/src/mame/drivers/queen.c @@ -691,7 +691,7 @@ static MACHINE_CONFIG_START( queen, queen_state ) MCFG_PCI_BUS_DEVICE(0, NULL, intel82439tx_pci_r, intel82439tx_pci_w) MCFG_PCI_BUS_DEVICE(7, NULL, intel82371ab_pci_r, intel82371ab_pci_w) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_FRAGMENT_ADD( pcvideo_vga ) diff --git a/src/mame/drivers/savquest.c b/src/mame/drivers/savquest.c index a8cde432075..5f1e49e6b9d 100644 --- a/src/mame/drivers/savquest.c +++ b/src/mame/drivers/savquest.c @@ -555,7 +555,7 @@ static MACHINE_CONFIG_START( savquest, savquest_state ) MCFG_PCI_BUS_DEVICE(0, NULL, intel82439tx_pci_r, intel82439tx_pci_w) MCFG_PCI_BUS_DEVICE(7, NULL, intel82371ab_pci_r, intel82371ab_pci_w) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_FRAGMENT_ADD( pcvideo_vga ) diff --git a/src/mame/drivers/seattle.c b/src/mame/drivers/seattle.c index fbb63224421..b4a094dd5bb 100644 --- a/src/mame/drivers/seattle.c +++ b/src/mame/drivers/seattle.c @@ -2514,7 +2514,7 @@ static MACHINE_CONFIG_START( seattle_common, seattle_state ) MCFG_MACHINE_RESET(seattle) MCFG_NVRAM_ADD_1FILL("nvram") - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_IDE_BUS_MASTER_SPACE("ide", "maincpu", PROGRAM) MCFG_3DFX_VOODOO_1_ADD("voodoo", STD_VOODOO_1_CLOCK, 2, "screen") diff --git a/src/mame/drivers/taitogn.c b/src/mame/drivers/taitogn.c index 54161f48198..949f6106555 100644 --- a/src/mame/drivers/taitogn.c +++ b/src/mame/drivers/taitogn.c @@ -982,7 +982,7 @@ static MACHINE_CONFIG_START( coh3002t, taitogn_state ) MCFG_MACHINE_RESET( coh3002t ) MCFG_AT28C16_ADD( "at28c16", 0 ) - MCFG_IDE_CONTROLLER_ADD( "card", 0, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD( "card", 0, ide_devices, "hdd", NULL, true) MCFG_MB3773_ADD("mb3773") diff --git a/src/mame/drivers/taitowlf.c b/src/mame/drivers/taitowlf.c index c8e918ee6db..dd809e93460 100644 --- a/src/mame/drivers/taitowlf.c +++ b/src/mame/drivers/taitowlf.c @@ -634,7 +634,7 @@ static MACHINE_CONFIG_START( taitowlf, taitowlf_state ) MCFG_I8237_ADD( "dma8237_2", XTAL_14_31818MHz/3, dma8237_2_config ) MCFG_PIC8259_ADD( "pic8259_1", taitowlf_pic8259_1_config ) MCFG_PIC8259_ADD( "pic8259_2", taitowlf_pic8259_2_config ) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_MC146818_ADD( "rtc", MC146818_STANDARD ) /* video hardware */ diff --git a/src/mame/drivers/twinkle.c b/src/mame/drivers/twinkle.c index 6d0f12306aa..4412a0d3ddc 100644 --- a/src/mame/drivers/twinkle.c +++ b/src/mame/drivers/twinkle.c @@ -908,7 +908,7 @@ static MACHINE_CONFIG_START( twinkle, twinkle_state ) MCFG_MACHINE_RESET( twinkle ) MCFG_I2CMEM_ADD("security",i2cmem_interface) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_RTC65271_ADD("rtc", twinkle_rtc) /* video hardware */ diff --git a/src/mame/drivers/vegas.c b/src/mame/drivers/vegas.c index 689b05c9e1a..837e4255a6d 100644 --- a/src/mame/drivers/vegas.c +++ b/src/mame/drivers/vegas.c @@ -2222,7 +2222,7 @@ static MACHINE_CONFIG_START( vegascore, vegas_state ) MCFG_MACHINE_RESET(vegas) MCFG_M48T37_ADD("timekeeper") - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_IDE_BUS_MASTER_SPACE("ide", "maincpu", PROGRAM) MCFG_SMC91C94_ADD("ethernet", ethernet_interrupt) diff --git a/src/mame/drivers/viper.c b/src/mame/drivers/viper.c index 80f4e06876e..d88751ab6fb 100644 --- a/src/mame/drivers/viper.c +++ b/src/mame/drivers/viper.c @@ -1963,7 +1963,7 @@ static MACHINE_CONFIG_START( viper, viper_state ) MCFG_PCI_BUS_DEVICE(0, "mpc8240", mpc8240_pci_r, mpc8240_pci_w) MCFG_PCI_BUS_DEVICE(12, "voodoo", voodoo3_pci_r, voodoo3_pci_w) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_3DFX_VOODOO_3_ADD("voodoo", STD_VOODOO_3_CLOCK, 8, "screen") MCFG_3DFX_VOODOO_CPU("maincpu") MCFG_3DFX_VOODOO_VBLANK(voodoo_vblank) diff --git a/src/mame/drivers/voyager.c b/src/mame/drivers/voyager.c index 74fe646f08f..c950912862a 100644 --- a/src/mame/drivers/voyager.c +++ b/src/mame/drivers/voyager.c @@ -771,7 +771,7 @@ static MACHINE_CONFIG_START( voyager, voyager_state ) MCFG_I8237_ADD( "dma8237_2", XTAL_14_31818MHz/3, dma8237_2_config ) MCFG_PIC8259_ADD( "pic8259_1", voyager_pic8259_1_config ) MCFG_PIC8259_ADD( "pic8259_2", voyager_pic8259_2_config ) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) MCFG_MC146818_ADD( "rtc", MC146818_STANDARD ) MCFG_PCI_BUS_ADD("pcibus", 0) diff --git a/src/mame/drivers/xtom3d.c b/src/mame/drivers/xtom3d.c index f1b9e1f0fd7..0600a1c5671 100644 --- a/src/mame/drivers/xtom3d.c +++ b/src/mame/drivers/xtom3d.c @@ -696,7 +696,7 @@ static MACHINE_CONFIG_START( xtom3d, xtom3d_state ) MCFG_PCI_BUS_DEVICE(0, NULL, intel82439tx_pci_r, intel82439tx_pci_w) MCFG_PCI_BUS_DEVICE(7, NULL, intel82371ab_pci_r, intel82371ab_pci_w) - MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", ide_interrupt, ide_devices, "hdd", NULL, true) /* video hardware */ MCFG_FRAGMENT_ADD( pcvideo_vga ) diff --git a/src/mame/drivers/zn.c b/src/mame/drivers/zn.c index d937d85d28f..9bd4756ebf8 100644 --- a/src/mame/drivers/zn.c +++ b/src/mame/drivers/zn.c @@ -1514,7 +1514,7 @@ static MACHINE_RESET( coh1000w ) static MACHINE_CONFIG_DERIVED( coh1000w, zn1_2mb_vram ) MCFG_MACHINE_RESET( coh1000w ) - MCFG_IDE_CONTROLLER_ADD("ide", atpsx_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", atpsx_interrupt, ide_devices, "hdd", NULL, true) MCFG_PSX_DMA_CHANNEL_READ( "maincpu", 5, psx_dma_read_delegate( FUNC( atpsx_dma_read ), (zn_state *) owner ) ) MCFG_PSX_DMA_CHANNEL_WRITE( "maincpu", 5, psx_dma_write_delegate( FUNC( atpsx_dma_write ), (zn_state *) owner ) ) MACHINE_CONFIG_END @@ -2197,7 +2197,7 @@ static MACHINE_CONFIG_DERIVED( coh1000a_ide, zn1_2mb_vram ) MCFG_MACHINE_RESET( coh1000a ) - MCFG_IDE_CONTROLLER_ADD("ide", jdredd_ide_interrupt, ide_devices, "hdd", NULL) + MCFG_IDE_CONTROLLER_ADD("ide", jdredd_ide_interrupt, ide_devices, "hdd", NULL, true) MACHINE_CONFIG_END /* |