mhoes
Posts: 206
Joined: Wed Oct 26, 2016 12:26 pm

On 'highscore.dat'

Hi,

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 :


1.)
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.

2.)
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
Graham
Posts: 61
Joined: Thu Jun 30, 2016 7:49 pm

Re: On 'highscore.dat'

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?

:)
https://www.thevenusproject.com | Beyond Politics Poverty and War
User avatar
Tafoid
Posts: 360
Joined: Thu Nov 06, 2014 12:50 pm
Location: USA
Contact: Website

Re: On 'highscore.dat'

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 mamedev.org 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.
User avatar
thegatekeeper
Posts: 3
Joined: Wed Feb 28, 2018 1:18 am
Location: Malta

Re: On 'highscore.dat'

Tafoid wrote: 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 mamedev.org 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.
So basically, hiscore.dat saves pieces of memory upon game exit? I am using MameIU64 0.194; how exactly do I turn this plugin on? I have the files in the mame directory (they came with it), but I don't see an option to turn plugins on or off in the interface.

Thanks mate.
Image
User avatar
Tafoid
Posts: 360
Joined: Thu Nov 06, 2014 12:50 pm
Location: USA
Contact: Website

Re: On 'highscore.dat'

thegatekeeper wrote: Mon Mar 05, 2018 4:27 pm
Tafoid wrote: 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 mamedev.org 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.
So basically, hiscore.dat saves pieces of memory upon game exit? I am using MameIU64 0.194; how exactly do I turn this plugin on? I have the files in the mame directory (they came with it), but I don't see an option to turn plugins on or off in the interface.

Thanks mate.

I'm unsure on how to deal with it with MAMEUI builds, as this forum only supports normal MAME available at mamedev.org.
There are internal UI Plugin menus which let you activate/deactivate such items. As I mentioned in your other message, MAMEUI's forum is here: http://www.mameworld.info/ubbthreads/po ... ard=mameui

Return to “MAME Discussion”