MAMEWorld >> EmuChat
Previous thread Previous  View all threads Index   Next thread Next   Threaded Mode Threaded  

Pages: 1

John IV
IV/Play, MAME, MAMEUI
Reged: 09/22/03
Posts: 1970
Loc: Washington, USA
Send PM


[Q] Devices now showing up in FE.
#374212 - 02/28/18 04:24 AM


I noticed recently (within the last week?) that my front end (IV/Play) has gained ~3900 new entries being displayed. Looks like they're the previously 'non-playable' devices.

Did something change in the devices properties to alter them in the listxml? I see for example the set dio16 '16-bit DIO bus' as an entry on the game list.

I'll probably have to have that looked at, any hints? Thanks -



john iv
http://www.mameui.info/



Vas Crabb
BOFH
Reged: 12/13/05
Posts: 4464
Loc: Melbourne, Australia
Send PM


Re: [Q] Devices now showing up in FE. new [Re: John IV]
#374222 - 02/28/18 10:49 AM


Yes, -listfull shows devices, because as a developer when I'm looking at a cryptic error message, I need to be able to answer questions like, "What the fuck is a mpcb071?" in a hurry. If I can't, it slows everything else down. Yes, -listxml worked with device names already, but it spews a pile of markup that's not conducive to being parsed by a human, especially with limited time for working on MAME and numerous other time pressures.

On the other hand, the -listxml output is ideal for being parsed and transformed by other software, like a front-end or ROM manager. That's why we added it in the first place, and why we've tried to keep it relatively stable over the years. If you're not importing the -listxml output for your front-end, you have only yourself to blame when things break.



TafoidAdministrator
I keep on testing.. testing.. testing... into the future!
Reged: 04/19/06
Posts: 3135
Loc: USA
Send PM


Re: [Q] Devices now showing up in FE. new [Re: Vas Crabb]
#374226 - 02/28/18 11:12 AM


> Yes, -listfull shows devices, because as a developer when I'm looking at a cryptic
> error message, I need to be able to answer questions like, "What the fuck is a
> mpcb071?" in a hurry. If I can't, it slows everything else down. Yes, -listxml worked
> with device names already, but it spews a pile of markup that's not conducive to
> being parsed by a human, especially with limited time for working on MAME and
> numerous other time pressures.
>
> On the other hand, the -listxml output is ideal for being parsed and transformed by
> other software, like a front-end or ROM manager. That's why we added it in the first
> place, and why we've tried to keep it relatively stable over the years. If you're not
> importing the -listxml output for your front-end, you have only yourself to blame
> when things break.

I feel the pain as well - my front-end also depends on a quick and simple game list to drive it rather than waiting 30+ second of capture and parsing of XML - not to mention XML breaking from time to time. Anyway, I suspect only way to really work with it at the moment and produce the only the game list is to monitor the first letter of the setname at each line and stop reading/capture of names as soon as the next entry is in not in sequential order since all the games fed first and are sorted with the devices thrown in afterwords.



Vas Crabb
BOFH
Reged: 12/13/05
Posts: 4464
Loc: Melbourne, Australia
Send PM


Re: [Q] Devices now showing up in FE. new [Re: Tafoid]
#374228 - 02/28/18 11:22 AM


> I feel the pain as well - my front-end also depends on a quick and simple game list
> to drive it rather than waiting 30+ second of capture and parsing of XML - not to
> mention XML breaking from time to time. Anyway, I suspect only way to really work
> with it at the moment and produce the only the game list is to monitor the first
> letter of the setname at each line and stop reading/capture of names as soon as the
> next entry is in not in sequential order since all the games fed first and are sorted
> with the devices thrown in afterwords.

So do what qmc2 does and import the XML to a database that you can query quickly. That's going to be more efficient and flexible than trying to parse a list on each launch.



TafoidAdministrator
I keep on testing.. testing.. testing... into the future!
Reged: 04/19/06
Posts: 3135
Loc: USA
Send PM


Re: [Q] Devices now showing up in FE. new [Re: Vas Crabb]
#374229 - 02/28/18 12:24 PM


> > I feel the pain as well - my front-end also depends on a quick and simple game list
> > to drive it rather than waiting 30+ second of capture and parsing of XML - not to
> > mention XML breaking from time to time. Anyway, I suspect only way to really work
> > with it at the moment and produce the only the game list is to monitor the first
> > letter of the setname at each line and stop reading/capture of names as soon as the
> > next entry is in not in sequential order since all the games fed first and are
> sorted
> > with the devices thrown in afterwords.
>
> So do what qmc2 does and import the XML to a database that you can query quickly.
> That's going to be more efficient and flexible than trying to parse a list on each
> launch.

That would depend how much you want your front-end to do, I reckon. If you want a simple launcher allowing yourself to manually configure things as needed via command-line (my desired setup), then -listfull is by far easiest/quickest method to deal with parsing under 40k lines of a text file as opposed to 4.7 million lines of XML text. I guess each user has their own use cases.



CiroConsentino
Frontend freak!
Reged: 09/21/03
Posts: 6211
Loc: Alien from Terra Prime... and Brazil
Send PM


Re: [Q] Devices now showing up in FE. new [Re: Tafoid]
#374232 - 02/28/18 02:16 PM


My frontend, Emu Loader, parse the entire -listxml in about 18 seconds and it scan the listxml.xml file from top to bottom three times over so games can be properly detected and separated by type (device set, bios set, parent set, clone set). It takes all that time because the frontend gets a lot of info from each game.
But of course, MAME takes around 24 seconds to generate a full listxml output.
My frontend reads listxml.xml as a plain text file and it detects tags manually.

If you just need set title, set name, set cloneof, bios/device references then it will be very fast to parse listxml output (around 5 seconds or so). I don't know what set info IV/Play gets from MAME or how it validates ROMs/CHDs though.

If you parse the games list every time the frontend is loaded, then after the listxml.xml output file is generated for the first time, you could keep it around until IV/Play detects a new MAME binary at startup, then it created a new listxml file.



Emu Loader
Ciro Alfredo Consentino
home: http://emuloader.mameworld.info
e-mail: [email protected]



John IV
IV/Play, MAME, MAMEUI
Reged: 09/22/03
Posts: 1970
Loc: Washington, USA
Send PM


Re: [Q] Devices now showing up in FE. new [Re: CiroConsentino]
#374238 - 02/28/18 07:14 PM


Right, similarly on IV/Play we bring in the listxml output once on initial .exe coupling and convert it to our own db and then use that to build the game list/parse etc. (Don't do auditing). We don't use listfull. You can then rebuild the machine list manually anytime you want w/ a new interrogation of listxml.

Point of the post was this same method now displays all the devices from listxml per Vas, so I just need to let Matan know we need to keep those hidden in the UI. Thanks -

[Edit 3/1] Apparently we do utilise -listfull for an initial quick count display while the db is being built from the more extensive -listxml.



john iv
http://www.mameui.info/



Vas Crabb
BOFH
Reged: 12/13/05
Posts: 4464
Loc: Melbourne, Australia
Send PM


Re: [Q] Devices now showing up in FE. new [Re: John IV]
#374257 - 03/01/18 07:09 AM


> Right, similarly on IV/Play we bring in the listxml output once on initial .exe
> coupling and convert it to our own db and then use that to build the game list/parse
> etc. (Don't do auditing). We don't use listfull. You can then rebuild the machine
> list manually anytime you want w/ a new interrogation of listxml.
>
> Point of the post was this same method now displays all the devices from listxml per
> Vas, so I just need to let Matan know we need to keep those hidden in the UI. Thanks
> -

If you've seen a change in behaviour, you are using -listfull. It's the only possible explanation, since that's the only thing that changed behaviour. There were no changes to -listxml in this release - the last time -listxml changed was when port conditions were added to DIP/config settings.



R. Belmont
Cuckoo for IGAvania
Reged: 09/21/03
Posts: 9716
Loc: ECV-197 The Orville
Send PM


Re: [Q] Devices now showing up in FE. new [Re: Tafoid]
#374291 - 03/01/18 11:12 PM


> That would depend how much you want your front-end to do, I reckon.

And that in a nutshell is what's wrong with every frontend except possibly QMC2: none of the authors want to actually do the work. This is *the* most basic component of an FE and everyone's doing it fucking wrong. Just import the fricking XML.



CiroConsentino
Frontend freak!
Reged: 09/21/03
Posts: 6211
Loc: Alien from Terra Prime... and Brazil
Send PM


Re: [Q] Devices now showing up in FE. new [Re: R. Belmont]
#374297 - 03/02/18 01:26 AM


My frontend, Emu Loader, does import the -listxml output to build the games list and it even have a full ROMs/CHDs audit, including CRC32 collisions.

It did not break with MAME v0.195.
I always update the frontend to support changes in listxml format.

If there's anything that my frontend can't do with MAME, I would really like to know, so I can improve it even more.



Emu Loader
Ciro Alfredo Consentino
home: http://emuloader.mameworld.info
e-mail: [email protected]



John IV
IV/Play, MAME, MAMEUI
Reged: 09/22/03
Posts: 1970
Loc: Washington, USA
Send PM


Re: [Q] Devices now showing up in FE. new [Re: John IV]
#374304 - 03/02/18 07:02 AM


Thanks all, IV/Play is updated now to handle the change.



john iv
http://www.mameui.info/


Pages: 1

MAMEWorld >> EmuChat
Previous thread Previous  View all threads Index   Next thread Next   Threaded Mode Threaded  

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