Jump to content

SAM Build with modular DMD drivers for pindmd1,2,3 and PIN2DMD


lucky1

Recommended Posts

No it's not required. However, the default options have all displays enabled, so if you want to avoid all your ports being scanned for pin(2)dmd1-3, you turn them off in the .ini. Also if you want to customize the other options you obviously need it.

Link to comment
Share on other sites

  • Replies 578
  • Created
  • Last Reply
  • Administrators
16 minutes ago, freezy said:

No it's not required. However, the default options have all displays enabled, so if you want to avoid all your ports being scanned for pin(2)dmd1-3, you turn them off in the .ini. Also if you want to customize the other options you obviously need it.

Thanks Freezy!

I attached the ini below in case someone needs it.  This file is in the DMDExt folder included with the PinMAME 2.8b download.

DmdDevice.ini

Link to comment
Share on other sites

New version here!

I've added two new things for you guys to test:

1. In DmdDevice.ini, add:

[browserstream]
enabled = true
port = 9000

Want to check the score of junior's game in the basement? Open a browser and connect to the IP of your cab port 9000 (or whatever you put). It'll stream the DMD live to your browser.

2. In DmdDevice.ini, add:

[vpdbstream]
enabled = true 

Then open https://test.vpdb.io/live in a browser and run a game. You might even see someone else playing. :)

There were some other fixes and additions as well, e.g. you can now override settings per game in the .ini, like positioning the virtual DMD slightly differently depending on its resolution and backglass. More details in the changelog and README.

Link to comment
Share on other sites

15 minutes ago, CarnyPriest said:

Just confirming, The dmddevice.dll no goes in the SysWOW64 folder and not the VPinMAME folder?

I actually forgot to put it in my syswow and just put it in my vpinmame with the updated ini. I'll update it over in m syswow64 too... but I would like to limit the number of places I put it.

Link to comment
Share on other sites

  • Content Provider
5 hours ago, roar said:

I actually forgot to put it in my syswow and just put it in my vpinmame with the updated ini. I'll update it over in m syswow64 too... but I would like to limit the number of places I put it.

If you put it in SysWow64 every application can use it since it is the default search path for dlls. No need to put it anywhere else then.
 

Link to comment
Share on other sites

The virtual DMD for LCD screens is very cool  - many thanks to you guys for your work here.

I have a couple of questions I'm hoping someone can help with.

Have it all working well with Spiderman however I noticed that the GI for Mustang LE and AUX lights now have to wait until the AUX board times out and starts blasting data before they come on. I think from memory Rob hacked in workarounds for this in previous version of VPM but now that the color roms use different address space does this require a different VPM build?

This leads me to another question regarding the pallet files for WPC roms in which I as Rob described a few posts back see an orange score in preference to white (which I am assuming it is meant to be) - I think I might have missed a VPM release somewhere so wondered if someone could point me in the direction of the latest build.

Thanks in advance.

P.S The browser stream is very cool.

Link to comment
Share on other sites

To Freezy : I've tried your build of DMDDevice.dll but can't get it to work.

Replaced Lucky1's DMDDevice.dll by yours + DMDDevice.ini in my C:\Visual Pinball\VPinMAME folder. I'm using SAMbuild v2.08b2, latest DJRboX's DOF and B2S server.

If I test a ROM with VPM setup.exe it does work, but when I launch a table with VP9, PM5 or VPX the table loads, the backglass displays and then Visual Pinball exits by itself without any error.

Maybe I'm missing something ?

Thanks for your help ;)

++

Link to comment
Share on other sites

There is a post-build script that copies DmdDevice.dll to the VPM folder, you probably need to update it: Right-click on the PinMameDevice project, Properties, Build Events and under Post-build update the folder 3 times.

Maybe try putting the .dll into SysWOW64 instead of the VPM folder, otherwise I'll need a log, please.

Link to comment
Share on other sites

  • Administrators
5 hours ago, DozerAUS said:

The virtual DMD for LCD screens is very cool  - many thanks to you guys for your work here.

I have a couple of questions I'm hoping someone can help with.

Have it all working well with Spiderman however I noticed that the GI for Mustang LE and AUX lights now have to wait until the AUX board times out and starts blasting data before they come on. I think from memory Rob hacked in workarounds for this in previous version of VPM but now that the color roms use different address space does this require a different VPM build?

This leads me to another question regarding the pallet files for WPC roms in which I as Rob described a few posts back see an orange score in preference to white (which I am assuming it is meant to be) - I think I might have missed a VPM release somewhere so wondered if someone could point me in the direction of the latest build.

Thanks in advance.

P.S The browser stream is very cool.

2.8b is the latest official release. 

Most recent SAM build. 

 

Link to comment
Share on other sites

  • Administrators

What would cause the DMD to display the last frame on the Pin2DMD after a game has been closed?  The static frame image will stay until a new game is run. Basically it's not closing the DMD after the game has exited.

Link to comment
Share on other sites

@DJRobX - Something that may be of interest with the JIT option for colored ROMS.   I get no issue on my Windows 10 dev PC with that option enabled in the registry however on both my cabs (Windows 7 64) the virtual DMD window will only load sometimes but VPX crashes every time it's run.  If I disable Directb2s it loads without error on both cabs.    If I run it with VPM as the controller and then quit and edit the script changing the controller to b2s (without quitting VPX) it will also run fine until it's quit and restarted completely.

Link to comment
Share on other sites

  • Administrators
38 minutes ago, Rappelbox said:

You could display a standard image on exiting a table. Can be configured in pbx via Pin2dmd.exe /i yourimagename.ppm if I remember correctly. ;)

Thanks, but I don't use PBX.  This was working fine prior to most recent updates.

Link to comment
Share on other sites

  • Content Provider
26 minutes ago, Dazz said:

Thanks, but I don't use PBX.  This was working fine prior to most recent updates.

This was a user request. We cleared the screen from the dmddevice.dll every time it received a close command, but some
pinballX has a feature to leave it on screen when starting EM tables. We moved the clear command to pinmame and leave it
to the application wether to clear or not. Since this was pushed to the official repo on the 16th of january maybe the last SAM
build may not have it.

Link to comment
Share on other sites

10 hours ago, shadowshd said:

Replaced Lucky1's DMDDevice.dll by yours + DMDDevice.ini in my C:\Visual Pinball\VPinMAME folder. I'm using SAMbuild v2.08b2, latest DJRboX's DOF and B2S server.

 

Uh ... There is special versions from DJRobX of both Dof and B2S ?

What versions are you guys running of these components ?

I'm on the latest beta of dof and I believe I downloaded the B2S that should be able to scale, though I haven't had the time to experiment much with it yet.

 

Link to comment
Share on other sites

3 hours ago, DozerAUS said:

@DJRobX - Something that may be of interest with the JIT option for colored ROMS.   I get no issue on my Windows 10 dev PC with that option enabled in the registry however on both my cabs (Windows 7 64) the virtual DMD window will only load sometimes but VPX crashes every time it's run.  If I disable Directb2s it loads without error on both cabs.    If I run it with VPM as the controller and then quit and edit the script changing the controller to b2s (without quitting VPX) it will also run fine until it's quit and restarted completely.

I am getting similar results to Dozer except I was able to get mine to crash with or without the B2S Server Running, however I was completely exiting out of VPX each time, as I thought that is what PinballX does but i could be wrong on that. 

If I use a wndows 10 CPU everything seems to be good, but my pinball cab is Windows 7 which somehow seems to be a related issue??  The odd thing with mine is once lets say Metallica starts to work, i can start and stop the table 5 times without issue.  Then once the crash decides to happen I can't get the PinDMD to work even on restart, buut if i switch to lets say Spiderman i can open and close multiple times without issue.  It almost feels like once the issue it has is overcome, somehow everything starts to work for a bit until it wants to crash again.  It's reminds me of my wife, you need to warm it up for it to work but when it does not want to work, there is nothing going to change its mind :P

Don't get me wrong I think it's a great option and I appreciate the hard work by all, I just wish there was rhyme or reason behind the crashes, just does not seem repeatable but maybe Dozer is right and I missed the issue.  I am working with all latest pindmd files from yesterday and everything else is up to date as well

Link to comment
Share on other sites

Playing on the Weekly competition over at VPF, I had some scores that I didn't find next time I started the table. Since I don't know when the nvram file gets updated I can't say that this is related. But, what I seem to notice with the latest 1.5 release of the dmddevice.dll is that at least when I run PBX and exit Congo it crashes instead of a clean shutdown. Rolled back to an earlier release I have and I didn't find any crash.dmp file. Was so late that I needed to go to bed instead of running more tests.

I'm a bit vary about crashes. I've had one solenoid burning on me and taking down some mosfit as well. I run Zebs kit and he told me to start using a pacfix utility that makes sure that the sol' are shutdown when I exit a table. I guess that if a table dies, PBX still runs the after script ? If not, this can become a bigger problem.

 

Link to comment
Share on other sites

10 hours ago, DozerAUS said:

@DJRobX - Something that may be of interest with the JIT option for colored ROMS.   I get no issue on my Windows 10 dev PC with that option enabled in the registry however on both my cabs (Windows 7 64) the virtual DMD window will only load sometimes but VPX crashes every time it's run.  If I disable Directb2s it loads without error on both cabs.    If I run it with VPM as the controller and then quit and edit the script changing the controller to b2s (without quitting VPX) it will also run fine until it's quit and restarted completely.

I suspect the problem is that the JMP calls made by JIT are not 4GB safe, but VP has that option enabled.    Loading a .NET assembly in the middle of VPM might tip things over to where this is an issue.    Windows 10 might use a different memory allocation strategy that makes this not a problem.    Everyone with issues seems to be on Win7.   

Unfortunately VP doesn't run on our remaining Win7 machine (Intel graphics), so I won't be able to debug this.    For now your options are to upgrade to Win10 or disable JIT. 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...