MAMEWorld >> News
View all threads Index   Flat Mode Flat  

Vas Crabb
BOFH
Reged: 12/13/05
Posts: 4462
Loc: Melbourne, Australia
Send PM
Attn frontend developers: machine flags in XML
07/27/17 03:24 AM


We're hitting the limitations of the driver element and its attributes in MAME's -listxml output. To allow for inheritance, better deal with systems with configurable slots, and make handling of machines and devices more uniform, this element is being deemphasised, and some of its attributes are deprecated, to be removed in a future release.

The following attributes of the driver element are deprecated and will be removed in a future release (they will be maintained for at least two releases before being removed): color, sound, graphic, protection. The other attributes are not scheduled for removal at this point.

A new feature element is being introduced to provide more detailed information on unemulated and imperfectly emulated features. This element is applicable to both systems and devices, unlike the driver element that is only applicable to systems. The feature element has three attributes:

  • type - required, indicates the feature of the system/device that has emulation issues; possible values at present: protection, palette, graphics, sound, controls, keyboard, mouse, microphone, camera, disk, printer, lan, wan
  • status - implied, indicates the emulation status of the feature for the device itself; possible values: unemulated, imperfect
  • overall - implied, indicates the emulation status of the feature inherited from subdevices; possible values: unemulated, imperfect


The status attribute only be present if the device itself indicates emulation issues for a feature. The overall attribute will only be present if more severe emulation issues are indicated by subdevices than by the device itself. For example

Code:

<feature type="keyboard" status="imperfect"/> <!-- device indicates that its keyboard emulation is imperfect -->
<feature type="mouse" status="unemulated"/> <!-- device indicates that mouse is unemulated -->
<feature type="graphics" overall="imperfect"/> <!-- at least one subdevice indicates that graphics emulation is imperfect -->
<feature type="palette" overall="unemulated"/> <!-- at least one subdevice indicates that colour palette is unemulated -->
<feature type="sound" status="imperfect" overall="unemulated"/> <!-- device indicates that its sound emulation is imperfect, at least one subdevice indicates that sound is unemulated -->



Right now you can see this with the votrax device. The aussieby system inherits imperfect sound from its votrax device. The c64_speakeasy slot card inherits imperfect sound from its votrax device. If you launch a c64 with a c64_speakeasy card in a compatible slot, MAME will warn about imperfect sound.

If you provide a UI for slot device selection, you may want to provide indication of emulation issues declared by slot devices.

Right now, there is no equivalent for the emulation and savestate attributes for devices (NOT_WORKING and SUPPORTS_SAVE flags). This will come at some point in the future.







Entire thread
Subject Posted by Posted on
* Attn frontend developers: machine flags in XML Vas Crabb 07/27/17 03:24 AM
. * Re: Attn frontend developers: machine flags in XML soviet  07/27/17 03:53 PM
. * Re: Attn frontend developers: machine flags in XML Vas Crabb  07/27/17 04:01 PM
. * Re: Attn frontend developers: machine flags in XML soviet  07/27/17 06:27 PM
. * Re: Attn frontend developers: machine flags in XML CiroConsentino  07/27/17 01:45 PM
. * Re: Attn frontend developers: machine flags in XML haynor666  07/27/17 01:25 PM
. * Re: Attn frontend developers: machine flags in XML Vas Crabb  07/27/17 02:26 PM

Extra information Permissions
Moderator:  John IV, Robbbert, Tafoid 
0 registered and 239 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 2673