Hello guys
Centiped hiscores files analysis:
centiped shows 8 top scores.
mame is storing natively a nvram file (named earom) containing only the 3 top scores.
embedded hiscore.dat file into mame hiscore lua plugin is describing how to store the 5 remaining scores.
depending on what you do (by removing file, making a high score in the first 3, or one in the 5 last, or no hiscore at all), we can have any of the following results:
1 nvram file + 1 .hi file
1 nvram file only
1 .hi file only
With 2 files, hi2txt will extract 8 scores:
RANK|SCORE|NAME
1|25569|ABC
2|24610|ABS
3|23385|ABT
4|22158|ABU
5|21821|ABV
6|20272|ABW
7|19476|ABX
8|18864|ABY
With nvram only:
RANK|SCORE|NAME
1|25569|ABC
2|24610|ABS
3|23385|ABT
With .hi file only:
RANK|SCORE|NAME
1||
2||
3||
4|22158|ABU
5|21821|ABV
6|20272|ABW
7|19476|ABX
8|18864|ABY
In this case, it is recommended that a front-end calls hi2txt without checking .hi file or nvram file existence, as hi2txt is able to find them if called with "-r <mame_install_folder>\hi\<game>".
A front-end must also be able to deal with the 3 possible outputs (all 8 scores, 3 top scores only, 5 lower scores only).
If it can help, I can improve the "5 lower scores only" output like this:
RANK|SCORE|NAME
4|22158|ABU
5|21821|ABV
6|20272|ABW
7|19476|ABX
8|18864|ABY
Another possibility is to not take into account the .hi file (whatever will be written or not inside) when decoding centiped hiscores by hi2txt, and extract only the 3 top scores from the nvram, if this file content is more stable. Anyway, if the .hi score stays "frozen", it is perhaps not a big deal as you still have the possibility to make a hiscore in the first 3
Currently, all my tests is showing an updated .hi file (as any new hiscores changes the lower 5 scores), so I am not yet able to reproduce the issue. Still trying...
I am also not able to "freeze" the nvram file, and the 3 top scores are always saved if I make a new one.
If you have any "procedure" explaining how to reproduce it each time, it will help a lot.
Regards.