Jump to content

serum[64].dll in VPinMame directory or not?


zedrummer

Recommended Posts

  • Content Provider

Hello

 

As we used to say that you must not have any Serum dll (either the 32 bits "serum.dll" or the 64 bits "serum64.dll" or both) in your VPinMame directory, I wanted to explain why and why now you can read that you must have it:

There is a Serum dll embedded in recent freezy's dmdexts. But if there is a Serum dll in the VPinMame directory too, this last one prevails, it is used and the one embedded is ignored.

When we told users not to have any Serum dll in their VPinMame directory, it was because many people were having problems making Serum colorizations work and most of them because they had an outdated dll in VPinMame. As the embedded one was the latest (1.6.0), we preferred to tell that you must delete any Serum dll in the directory.

Now that 1.6.1 is out and may be needed for all the colorizations from Guns N'Roses and after, you need to download this version and put it in VPinMame to be sure that all the latest Serums are working as expected.

 

To sum up, the official line should be:

  • You can always have Serum dlls in VPinMame directory, but just be sure to have the latest one BEFORE posting that it doesn't work. For that, I suggest you regularly check the official Github here https://github.com/zesinger/libserum/releases (you can be notified going there https://github.com/zesinger/libserum, clicking "Watch" at the top right and in "Custom" selecting "Releases")
  • Be sure that there are no other Serum dll anywhere else than in this directory.

 

Thanks

Edited by zedrummer
Link to comment
Share on other sites

Thank you for all your work on the serum 'platform'. I really appreciate how you made hardware, driver and the tool for colorization.

 

But doesn't get end users confused to sometimes use an extra dll ?

 

First releases of freezy's dmddevice.dll, the serum.dll was not needed to be in the directory as it was introduced. At a sudden moment, the serum.dll needed to be added as some early serum colorizations didn't  work. When freezy updated his dmdext,  the serum.dll needed to be deleted again, as it causes issues when it was in the directory.

Now a new functionality is added again and dll needs to be downloaded again.

 

Not sure when freezy will release an update on his side, but will that contains latest version of serum.dll and users needs to delete the dll again ?

 

Would it not be better (or more understandable for end users) to remove the serum part from dmdext and always need your latest version of the serum.dll  and treat it as an extra plugin ?

 

Don't get me wrong, but just wanted to make it easy for end users . This year a lot of users had issues with getting all the colorizationfiles to work (just because of the dll hell).

Thankfully multiple people helped them out via forum and even with remote assistant.  

 

Anyway. Keep up the good working!

I have a great respect for devs who makes these kind of stuff, but also great respect and thanks to the colorization team as well (which getting bigger as I noticed)

Link to comment
Share on other sites

  • Content Provider

I understand your concerns, but you must understand that even if Freezy helped me to make the ZeDMD be dmdext compatible, and that I work on my vpin projects to make them dmdext compatible, these are 2 absolutely different projects.

 

So you are absolutely right, and that's what I say in the official line: keep the latest Serum dlls in the VpinMame directory. But the problem was that at some point, everybody had an outdated dll and as dmdext embedded the latest one, the more simple was to tell "remove any serum dll"! We won't communicate this way anymore.

 

You are right to mention the growing Serumer team, they deserve great respect, along with people like Cliffy, Outhere (among many others) providing help as much as they can.

Link to comment
Share on other sites

I can say that, as of today 11/23/2023, serum 1.61 dlls work fine with lucky1's dll's but ONLY with dmd cRZ files. If running a serum alphanumeric like Diner, Bugs Bunny, it will only show a black dmd and the table locks and will not start. It can only be crash closed too.  This is with VPinMAME-sc-3.6-638 x64, vpx 10.8.6 x64 rev 1803 DX. 

If I rename/delete the serum dll's all is well and both types of cRZ files work great.

I haven't tested yet with Freezy's dll's today. Gotta go baste the turkey :)

 

Link to comment
Share on other sites

  • Content Provider

The difference between 1.6.0 and 1.6.1 is only 1 number in the code: the number of maximum displayed sprites per frame has raised from 12 to 16... I can't understand how it could change anything.

I tested it (only with Freezy's) and it works both 32 and 64 bits.

 

 

Edited by zedrummer
Link to comment
Share on other sites

  • 3 months later...

Hi zeddrummer!

My tool "VPin Studio" comes with a system manager that allows to update the basic software components of a VPin. This includes freezy.

I got a support ticket now to add Serum there too, which is what I'm doing right now. What I'm not sure about if I have to add the serum .dll files to the DmdDevice.ini, like this:

 

plugin.1.path = C:\VisualPinball\VPinMAME\serum.dll
plugin.1.path64 = C:\VisualPinball\VPinMAME\serum64.dll
plugin.1.passthrough = false 

 

Or is it maybe enough just to download the Serum .dll files and put them in the MAME folder? 

Link to comment
Share on other sites

  • Content Provider

Hello @Syd711

You don't need to declare anything, if you use Freezy's DLL, it will look for the file with the same architecture (so either serum.dll or serum64.dll) in VPinMame directory and load it if available, or use the embedded one if not found. The latest Freezy's has the latest serum[64].dll embedded, so you shouldn't need to add the serum[64].dll in your vpinmame.

But adding it from https://github.com/zesinger/libserum/releases anyway ensure that whatever Freezy's version, you have the latest serum DLL used.

Link to comment
Share on other sites

26 minutes ago, zedrummer said:

Hello @Syd711

You don't need to declare anything, if you use Freezy's DLL, it will look for the file with the same architecture (so either serum.dll or serum64.dll) in VPinMame directory and load it if available, or use the embedded one if not found. The latest Freezy's has the latest serum[64].dll embedded, so you shouldn't need to add the serum[64].dll in your vpinmame.

But adding it from https://github.com/zesinger/libserum/releases anyway ensure that whatever Freezy's version, you have the latest serum DLL used.

Perfect! Thank you for the quick reply.

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