Posts: 60
Joined: Wed Oct 26, 2016 12:26 pm

On 'highscore.dat'

Mon Jan 01, 2018 5:35 pm


I seem to be confused about what 'hiscore.dat' (and enabling it through MAME's interface 'Plugins' -> 'High Scores' 'ON') actually does, 'under the cover'.

My presumed knowledge so far (and please do correct me if I'm wrong here, I've come here to learn), in random order :

If the original hardware supported 'highscore saving', by writing the information to non-volatile ram (nvram/disk) and therefore surviving power down/up, and if MAME emulates this for the given machine, the contents (highscore and presumably bios settings and such) end up in the 'nvram' folder.

If (automatic) 'save states' are supported by the given machine/game, for which MAME code needs to be added on a per-machine/game basis, and aims to save *all* of the machine's state (like what the memory contents looked like, or what CPU instruction was about to be executed, hardware registers contents, etc.) includes but is not limited to saving the highscore.

Now, assuming the above two are correct (and please, do feel free to correct me if I'm wrong), how does 'highscore.dat' fit in ? How is it different, or similar, or add to, the above two ?

Inquiring minds would like to know.

User avatar
Posts: 31
Joined: Thu Jun 30, 2016 7:49 pm

Re: On 'highscore.dat'

Sat Feb 10, 2018 12:52 pm

This is something I would like to know also. Having just upgraded my Mame box to Ubuntu to 17.10 (from 16.04), I copied across the cfg, nvram and sta folders expecting my hiscores to have come across but alas, my score tables were empty :(. Would having enabled highscore.dat achieved this?

:) | Beyond Politics Poverty and War

User avatar
Posts: 111
Joined: Thu Nov 06, 2014 12:50 pm
Location: Vermont USA
Contact: Website

Re: On 'highscore.dat'

Wed Feb 14, 2018 11:44 am

There isn't much to it.

Whether or not a machine saved scores/play stats or anything else, it did so using some sort of backup, either a writable media or nvram. Many machines in the late 80's on had this. Earlier machines, for which there are many, did not save score(s) between power down/up. SAVE STATES, an emulation concept, is basically an attempt to make the game stay on all the time by resuming where you left off when a machine is restarted thus eliminating the clearing of the memory upon powering down. It does not care about hi scores in general, but only retains all of what is in memory at the time of exiting the emulator so that the "STATE" can be reloaded the next time the machine is run. The .hi files, which is a product of the hiscore.dat usage via the Lua plugin (in official MAME), is preset with discovered areas of memory known to keep the high scores and other stats achieved, usually only when the nvram is not present of functioning to do this. It isn't automatic and it subject to what is contained within the hiscore.dat file. This file is updated nearly every release, so new games and clones are being added all the time.

That said, as to any reasons your hiscore.dat file or the .hi score data saving isn't working, it is subject to your settings and if your Lua plugin is turned on or not. Also, be sure to use the hiscore.dat provided by to assure functionality. Ensure you have the plugin turned on as well as your paths set correctly. You should avoid mixing up Save States and hiscore usage, if the only reason you are using save states is to save scores because Save States will likely ignore any/all attempts to adjust high scores from the plugin.

Return to “MAME Discussion”

Who is online

Users browsing this forum: No registered users and 1 guest