The testing I have performed shows the same speed when reaing the fir game listed in the XML or the last file listed. In all situations it is less than a half second to access and display the data.  This is using a 7MB xml file with every game currently supported my .94. I guess for those that still use INI I could build a seperate convertor exe that can convert the XML file that is created back to an INI structure. The way I have the XML structure setup is having the code tag each line with the filename.  For example
<numbuttons_chqflag>3</numbuttons_chqflag>
This way to parse the information it canse use the property value + filename to directly pull the information you are requesting.
Here is example of the code I am using.
--------------------------------------------------
Option Explicit
Dim XMLFilePath As String
Private Sub Form_Load()
  XMLFilePath = App.Path & "\biglist.xml"
End Sub
Private Function GetNodeValue(ByVal start_at_node As IXMLDOMNode, ByVal node_name As String, Optional ByVal default_value As String = "") As String
  Dim value_node As IXMLDOMNode
  Set value_node = start_at_node.selectSingleNode(".//" & node_name)
  If value_node Is Nothing Then
    GetNodeValue = default_value
      Else
        GetNodeValue = value_node.Text
  End If
End Function
Private Sub Command1_Click()
Dim xml_document As DOMDocument
  Dim values_node As IXMLDOMNode
  Set xml_document = New DOMDocument
  xml_document.Load XMLFilePath
  If xml_document.documentElement Is Nothing Then Exit Sub
  Set values_node = xml_document.selectSingleNode("mame")
  msgbox = GetNodeValue(values_node, "numbuttons_chqflag", "

")
End Sub