As i'm currently going through some of the tables that i missed since i played it on my X360, i wondered:
Could we also pull of something vaguely similar for the in-game/table scoring display (like the 500.000 text in here: https://3.bp.blogspo...14+05-29-34.png), so that we get pop-up scores when hitting ramps, toys (e.g. switches), etc?
And i think yes: By using the NVRAM reading functionality of PinMAME (at least for the WPC machines)..
Example for Demolition Man:
Const UseVPMNVRAM = true
Function ConvertBCD(v)
ConvertBCD = "" & ((v AND &hF0) / 16) & (v AND &hF)
End Function
Dim NVRAM
NVRAM = Controller.NVRAM
TextBox.text = "Score: "& ConvertBCD(NVRAM(CInt("&h16A0"))) & ConvertBCD(NVRAM(CInt("&h16A1"))) & ConvertBCD(NVRAM(CInt("&h16A2"))) & ConvertBCD(NVRAM(CInt("&h16A3"))) & ConvertBCD(NVRAM(CInt("&h16A4"))) & ConvertBCD(NVRAM(CInt("&h16A5")))
will show the score of the last (or if in play potentially also the current(!!!)) game.. (these weird hex-adresses are extracted from: https://github.com/t...ame-nvram-maps)
Optionally this can also be done in a callback to be dynamic:
Set NVRAMCallback = GetRef("Score")
which then would provide the function Score() with a 2D array of changed locations and their values, which can then be done dynamically/during play, and at low perf cost..
So now we can get the score and get a callback when it changed. If we then also track the last switch that was triggered -> WIN! As we can then display the score difference
at the location of that switch (as each VP element has x,y properties)!
Somebody feels like giving this one a try?? Would be cool to see how it works (it won't be perfect of course, but reasonably close)..
Edited by toxie, 22 December 2017 - 05:11 PM.




Top















are all trademarks of VPFORUMS.