> > mame.ini is read twice to allow the first found mame.ini to set the inipath to
> > something different and have it take effect.
> Interesting choice. Did not changing it on the fly work out as good or other reasons?
> Was it too far apart from where the inipath was needed? Or just a leftover from an
> older part of the design?
> You peaked my curiosity. I am interested in choices people make on design, sometimes
> I am not saying it is bad or good. I personally would have went with a buffered read
> and a two pass across the buffer. But that has drawbacks too. Sometimes seeing why
> others come up with their choices is an interesting way to learn something new.
First a minor gripe, your curiosity gets piqued, it doesn't get "peaked". For your curiosity to be peaked, you must literally be experiencing the most amount of curiosity you've ever had in your life.
With that out of the way, I think you're not understanding Belmont's answer properly. If you set the inipath option to point to, say, c:\foo\bar\, and you put a copy of mame.ini there, and you ran your test, you'll find (I assume) that the mame.ini in the same directory as the executable is read only once, at which point it reads the one in the location specified by the base ini's inipath. You're seeing the base ini get read twice because you haven't changed your inipath setting and don't have any other ini files to be read.