xml2info.xsl version 0.8 listxml to listinfo converter for MAME
This is a drop in replacement for xml2info that was removed in MAME 106u12.
It behaves just like the old xml2info exe except that it uses an external
XSL style sheet that defines the transformation from the "listxml" output to
the old style MAME "listinfo" format.
Having the transformation defined in an external text file allows for easy
modification when the MAME XML format changes in the future.
The style sheet is named xml2info.xsl and must be in the same directory with
The style sheet is compatible with any version of MAME that generates XML.
I've tested it with 84-108. My output info format is the same as the final
xml2info from MAME 106 regardless of what version of MAME the XML came from.
Note: MAME xml2info versions 84-94 were slightly different in the way they
quoted file and chip names. If you have a front end or utility that requires
the pre-95 info format, let me know and I can make it a conditional switch
in the stylesheet.
How to use:
Copy xml2info.exe and xml2info.xsl into your MAME directory.
To generate a "listinfo" file from the command line...
mame -listxml | xml2info > listinfo.txt
Note: you can also generate your own custom lists by modifying the
If you encounter any problems, let me know: email@example.com
This implementation of xml2info is based on the xsltproc utility from the
GNOME xslt library.
It links in the following libraries:
* libxml2, the XML parser and processor.
* libxslt, the XSL and EXSL Transformations processor.
* iconv, the character encoding toolkit.
* zlib, the compression toolkit.
You can download the full Win32 binary packages of the above libraries here...
If you're interested in the source code, you can get that here...
0.8 minor change to the xsl due to bios handling changes in 117u1
0.7 cleaned up xsl, made changes for compatability with MAME 84-108
0.6 no more DLLs, no more xsltproc, just an exe just like the old xml2info
0.5 added batch file for easier use. updated XSL to work with older MAME XML
0.4 no changes to the XSL, modified the readme with easier command line
0.3 major cleanup - MUCH easier to follow what's going on now
0.2 bug fix - replaced control "unknown" with actual control
0.1 first release - very ugly, but it works