Jump to content

New release: v2.2.0 BETA2


freezy

Recommended Posts

So, most of the features and fixes should be in there. Thanks to all the people who helped testing. Notable changes are Serum color rotation support for all devices, and a new frame dumping destination. You can find the updated README here until it's merged.

 

The whole changelog can be found here. For the download, please test with the latest builds, I'll update the links when I push new fixes:

 

 

There are still two bugs I'm trying to figure out:

 

  1. As reported by @MikeDASpike and @Westworld, dmdext seems to hang on ZeDMDs and PinDMD3s when exiting a game. I couldn't reproduce this, so any other reports would be appreciated to get an idea how common this is. Also, if you could test with VPM's setup.exe and let me know if it happens there as well, that'd be cool. Fixed
  2. Lucky1 had a weird rendering bug using setup64.exe when launching a game the first time. I can't get anything to start through setup64.exe currently, so I'm not capable of debugging this either. setup64.exe now works, but I don't get any artifacts, even on first run. Fixed

 

If I've missed other bugs, please let me know, I had many people contacting me lately, so something might have slipped through.

 

@lucky1 What's your timing on the plugin? When do plan a release of the new pin2color.dll so people can test the plugin as well?

 

Cheers,

 

    -freezy.

 

Link to comment
Share on other sites

Hi and thanks for your continued contributions. I just updated from v2.0 to v2.20 64bit and could not start AC/DC at all with no errors. Tried Congo and all was good but after backing out the game and DMD froze. I killed the Table file and the DMD remained. I then ran setup64.exe to run a test on a ROM to clear the DMD, this no longer worked and VPinMAME shut down with the DMD still showing on the PinDMD3. I replaced my files with 2.0 and all is good again. 

Link to comment
Share on other sites

  • Content Provider
On 6/28/2023 at 12:17 AM, freezy said:

What's your timing on the plugin? When do plan a release of the new pin2color.dll so people can test the plugin as well?

 

Until there are open issues with your build it makes no sense to me make a public release.

From the plugin side the main issue remains that you manipulate the data coming  from pinmame

instead of just forwarding it like it is. What is the reason for this ?

To make things easy I used the same API calls for the plugin as for the pinmame dmddevice API.

Why make things unnecessarily complicated now ?

Link to comment
Share on other sites

10 minutes ago, lucky1 said:

Until there are open issues with your build it makes no sense to me make a public release

Which issues? The ones mentioned here are not related to the plugin.

 

10 minutes ago, lucky1 said:

From the plugin side the main issue remains that you manipulate the data coming  from pinmame

instead of just forwarding it like it is. What is the reason for this ?

What are you referring to? To the 60Hz input? If the way it's implemented is problematic, you need to explain the problem, so I can fix it. (The reason are performance gains.)

Link to comment
Share on other sites

  • Content Provider
32 minutes ago, freezy said:

Which issues? The ones mentioned here are not related to the plugin.

 

True

 

30 minutes ago, freezy said:

What are you referring to?

 

O.K. I see now they should be the same, but why split the rawframes on the input and rejoin them in the plugin ? Makes no sense to me, but it is your project.

 

Link to comment
Share on other sites

4 hours ago, freezy said:

@studlygoorite @MikeDASpike Could you grab the latest build that I've linked in the top post? I think I might have fixed it.

 

@lucky1 Cool, so when can the community test the PAC plugin?

Thanks for the latest build, everything is working great!!  Update, I do get a FlexDMD error because of the missing DmdDevice.dll (with the same version) I used the installer to install the 64bit, is there a .zip only for the 32bit so I can grab the dll or is it ok to run the .msi for the 32bit after running it for the 64bit? 

Link to comment
Share on other sites

Thanks for the feedback!

 

Both installer and zip is fine (more details here), in a nutshell if you're not using dmdext.exe for a specific bitness, it doesn't matter. To be sure, install first 32-bit and then 64-bit if you're on 64-bit Windows.

Link to comment
Share on other sites

5 hours ago, freezy said:

@studlygoorite @MikeDASpike Could you grab the latest build that I've linked in the top post? I think I might have fixed it.

 

 It is working much better, but ... (yeah the Dutch people always have a 'but' :P ) 
Launching VPX editor and load a table, shows nicely the DMD (also color). Closing it, returns without any issue to the editor again.
launching the table again, shows the dmd, but closing the table give me the (same?) freeze as before (showing the last frame and VPX totally hangs). Tested it multiple times and happens every time with the 2nd launch
I can reproduce this also with vpinmame setup.exe

@studlygoorite can you retest this part as well ?


Within PinballFX I can launch multiple tables and closing. Looks good (quick test)

 

I also uses a flexDMD plugin for PinballX (shows mp4 videos per table with flexDMD dmd's. nad FlexDMD uses the DMDdevice.dll). Plugin works normally perfect, but is now very slow (switching tables takes 1 to multiple seconds). 
Also launching a game from the frond end and returning to it, will not display the video's anymore. This is properly not your issue, but always works like a charm with dmddevice64.dll

 

So, getting close @freezy Good job already !

DmdDevice.log DmdDevice_PBX.log DmdDevice_vpinmame.log

Link to comment
Share on other sites

3 hours ago, MikeDASpike said:

 It is working much better, but ... (yeah the Dutch people always have a 'but' :P ) 
Launching VPX editor and load a table, shows nicely the DMD (also color). Closing it, returns without any issue to the editor again.
launching the table again, shows the dmd, but closing the table give me the (same?) freeze as before (showing the last frame and VPX totally hangs). Tested it multiple times and happens every time with the 2nd launch
I can reproduce this also with vpinmame setup.exe

@studlygoorite can you retest this part as well ?


Within PinballFX I can launch multiple tables and closing. Looks good (quick test)

 

I also uses a flexDMD plugin for PinballX (shows mp4 videos per table with flexDMD dmd's. nad FlexDMD uses the DMDdevice.dll). Plugin works normally perfect, but is now very slow (switching tables takes 1 to multiple seconds). 
Also launching a game from the frond end and returning to it, will not display the video's anymore. This is properly not your issue, but always works like a charm with dmddevice64.dll

 

So, getting close @freezy Good job already !

DmdDevice.log 6.66 kB · 1 download DmdDevice_PBX.log 2.31 kB · 0 downloads DmdDevice_vpinmame.log 6.66 kB · 0 downloads

I am not seeing this issueI I start the .exe pick a table and play it, back out (when I back out the .exe closes) Start the .exe again and choose the same table back out and all is good.

Link to comment
Share on other sites

  • Content Provider

@freezy

 

Tested the newest 2.1.2.7 link on the first post with Future Pinball.

 

64 bit dmdext.exe runs fine with 64 bit Windows. 32 bit dmdext.exe gives me the same crashing issue I reported to you before (when run on 64 bit Windows). Again, I don't see anyone NOT running 64 bit Windows today who would be running this anyway.

 

Working great so far.

 

One thing I do notice, is that with the Styles Window, when I load a saved Style from DMDDevice.ini (bottom left)... everything loads fine, but the "tint colour" doesn't change to what I previously saved with that Style. Is this how's it meant to work (Tint is ignored when loaded that way)?

 

image.thumb.png.7b45299fd54b6a84c6d09d9a9d319944.png

Link to comment
Share on other sites

11 hours ago, freezy said:

@MikeDASpike Can you retest with the latest one? I think this time it's fine. :)

Yes, working like a charm !

 

FLEXDMD table are working, but the gui won't work, but thats properly something for the FLEXDMD dev.

 

Not sure if you still have contact with Tom Speirs, but if I use DMDdevice64.dll with PinballX (instead of  his dmd dll), PinballX is crashing.
Not sure if he needs to change code for this ?

Anyway, good job and now waiting for @lucky1 to get his pin2color.dll available as a plugin 

btw. I real love the Gotlieb 20 characters fix that now fits on my DM. Not sure who fix this, but good job !

Link to comment
Share on other sites

3 hours ago, TerryRed said:

32 bit dmdext.exe gives me the same crashing issue I reported to you before

 

That's this one?

Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at SharpGL.OpenGL.glTexImage2D(UInt32 target, Int32 level, UInt32 internalformat, Int32 width, Int32 height, Int32 border, UInt32 format, UInt32 type, IntPtr pixels)
   at SharpGL.OpenGL.TexImage2D(UInt32 target, Int32 level, UInt32 internalformat, Int32 width, Int32 height, Int32 border, UInt32 format, UInt32 type, IntPtr pixels)
   at LibDmd.Output.Virtual.Dmd.VirtualDmdControl.ogl_OpenGLDraw(Object sender, OpenGLRoutedEventArgs args)

 

Remember if this happens with <2.2.0 as well?

 

3 hours ago, TerryRed said:

"tint colour" doesn't change to what I previously saved with that Style.

I see your "tint amount" is zero. Maybe that's the problem?

 

1 hour ago, MikeDASpike said:

PinballX is crashing.

Do you have a DmdDevice.log with the crash?

 

Link to comment
Share on other sites

hanging with ZeDMD also happens when just using Setup.exe:

 [1] 2023/06/30 14:38:00.708  INFO | Starting VPinMAME API 2.2.0-BETA2 (x86) through Setup.exe. 
 [1] 2023/06/30 14:38:00.708  INFO | Assembly located at C:\Games\Visual Pinball\VPinMAME\DmdDevice.dll 
 [1] 2023/06/30 14:38:00.708  INFO | Running in C:\Games\Visual Pinball\VPinMAME 
 [1] 2023/06/30 14:38:00.708  INFO | [dll] Open(0) 
 [1] 2023/06/30 14:38:00.708  INFO | [dll] PM_GameSettings(0, tomy_500, 0) 
 [1] 2023/06/30 14:38:00.708  INFO | Disabling game colorization 
 [1] 2023/06/30 14:38:00.708  INFO | Setting game name: tomy_500 
 [1] 2023/06/30 14:38:00.708  INFO | Setting color: #FFFF5820 
 [9] 2023/06/30 14:38:00.720  INFO | Starting ZeDMD frame thread. 
 [1] 2023/06/30 14:38:01.283  INFO | ZeDMD device found on port COM5 with a resolution of 128x32 LEDs 
 [1] 2023/06/30 14:38:01.283  INFO | Added ZeDMD renderer. 
 [1] 2023/06/30 14:38:01.283  WARN | [pinup] Attempt to find PuP_Trigger function but dmddevicePUP.dll is outdated. 
 [1] 2023/06/30 14:38:01.283  INFO | [pinup] Starting tomy_500... 
 [1] 2023/06/30 14:38:01.283  INFO | Added PinUP renderer. 
 [1] 2023/06/30 14:38:01.283  INFO | Transformation options: Resize=Stretch, HFlip=False, VFlip=False 
 [1] 2023/06/30 14:38:01.283  INFO | Applying default color to render graphs (#FFFF5820). 
 [1] 2023/06/30 14:38:01.299  INFO | Setting up 2-bit Passthrough Graph for 2 destination(s) [ ZeDMD, PinUP Writer ] 
 [1] 2023/06/30 14:38:01.299  INFO |   -> Connecting DmdDevice 2-bit Source to ZeDMD (Gray2 => Gray2) 
 [1] 2023/06/30 14:38:01.299  INFO |   -> Connecting DmdDevice 2-bit Source to PinUP Writer (Gray2 => Gray2) 
 [1] 2023/06/30 14:38:01.299  INFO | Setting up 4-bit Passthrough Graph for 2 destination(s) [ ZeDMD, PinUP Writer ] 
 [1] 2023/06/30 14:38:01.299  INFO |   -> Connecting DmdDevice 4-bit Source to ZeDMD (Gray4 => Gray4) 
 [1] 2023/06/30 14:38:01.299  INFO |   -> Connecting DmdDevice 4-bit Source to PinUP Writer (Gray4 => Gray4) 
 [1] 2023/06/30 14:38:01.299  INFO | Setting up RGB24 Passthrough Graph for 2 destination(s) [ ZeDMD, PinUP Writer ] 
 [1] 2023/06/30 14:38:01.299  INFO |   -> Connecting DmdDevice RGB24 Source to ZeDMD (Rgb24 => Rgb24) 
 [1] 2023/06/30 14:38:01.299  INFO |   -> Connecting DmdDevice RGB24 Source to PinUP Writer (Rgb24 => Gray4) 
 [1] 2023/06/30 14:38:01.299  INFO | Setting up Alphanumeric Passthrough Graph for 2 destination(s) [ ZeDMD, PinUP Writer ] 
 [1] 2023/06/30 14:38:08.756  INFO | [dll] Close(0) 
 [1] 2023/06/30 14:38:08.756  INFO | Closing up. 
 

here the application setup changes window title  "application does not respond" and the music repeats each tone, bang, bang, bang

 

Removing the USB cable from ZeDMD and quit works

 

Tested using 2.2.0 beta 2, on 32+64 bit Windows 11 (computer replaced this spring, system and VPX installed from scratch)

Link to comment
Share on other sites

  • Content Provider
8 hours ago, freezy said:

 

That's this one?

Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at SharpGL.OpenGL.glTexImage2D(UInt32 target, Int32 level, UInt32 internalformat, Int32 width, Int32 height, Int32 border, UInt32 format, UInt32 type, IntPtr pixels)
   at SharpGL.OpenGL.TexImage2D(UInt32 target, Int32 level, UInt32 internalformat, Int32 width, Int32 height, Int32 border, UInt32 format, UInt32 type, IntPtr pixels)
   at LibDmd.Output.Virtual.Dmd.VirtualDmdControl.ogl_OpenGLDraw(Object sender, OpenGLRoutedEventArgs args)

 

Remember if this happens with <2.2.0 as well?

 

I see your "tint amount" is zero. Maybe that's the problem?

 

 

Yes, I tested that on the older builds with 32 bit on 64 bit OS to be sure, and they did the same.

 

It doesn't matter if tint amount is 0 or 1, etc... the tint colour doesn't seem to change when you try to Load a preset. (I noticed this on 2.2.0 beta 1 as well).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...