Previous 199869 Revisions Next

r34431 Saturday 17th January, 2015 at 09:30:03 UTC by Fabio Priuli
ui: fixed bug where slot options set via internal UI did not properly
create their sub-options. [Fabio Priuli]

out of whatsnew: to see the bug, try to manually set from the UI "com" in a PC ISA port or "multitap" in
the SMS driver in an old build, then reset (to apply changes) and re-enter the Slot Options menu just
to see that the sub-options (the com serial ports and the multitap joypads) are not configurable because
the core was not "informed" of their addition. no bug was present if the options were set from command
line or from QMC2, so it was not so easy to spot the issue...
[src/emu]emuopts.h
[src/emu/ui]slotopt.c

trunk/src/emu/emuopts.h
r242942r242943
354354
355355   const char *main_value(astring &buffer, const char *option) const;
356356   const char *sub_value(astring &buffer, const char *name, const char *subname) const;
357   bool add_slot_options(bool isfirst);
358
357359private:
358360   // device-specific option handling
359361   void add_device_options(bool isfirst);
360   bool add_slot_options(bool isfirst);
361362   void update_slot_options();
362363
363364   // INI parsing helper
trunk/src/emu/ui/slotopt.c
r242942r242943
188188   if (menu_event != NULL && menu_event->itemref != NULL)
189189   {
190190      if ((FPTR)menu_event->itemref == 1 && menu_event->iptkey == IPT_UI_SELECT)
191      {
192         machine().options().add_slot_options(false);
191193         machine().schedule_hard_reset();
194      }
192195      else if (menu_event->iptkey == IPT_UI_LEFT || menu_event->iptkey == IPT_UI_RIGHT)
193196      {
194197         device_slot_interface *slot = (device_slot_interface *)menu_event->itemref;


Previous 199869 Revisions Next


© 1997-2024 The MAME Team