Content Provider lucky1 Posted April 16, 2022 Content Provider Share Posted April 16, 2022 Latest version is here Hi all, Although I have invested a lot of time in the latest DmdExt version to update the colorization code to the current state, it still has remaining issues (lcm scenes not displayed properly, and simple palette switches not working properly). Additionally to keep up with future improvements to pin2dmd and pin2dmd editor code, the code in freezy always needs to be updated to use the latest colorizations. Since the implementation of the colorization code in freezy is optimized for the c sharp language it is written in, it is impossible for me to just copy the changes I make to pin2dmd which is written in C++ to the freezy code and it takes me a lot of debugging to make it work the same way. To make it easier for me to add new features while in that same time keeping the vpin community up to date with that latest colorization changes , I came up with the idea to use my own code for the colorization and use freezy ´s dll as a plugin which is taking care of the output to the devices like pc screen, pindmdV3 etc. There have also been differences between the brightness levels on a pin2dmd and a PC screen with freezy. The goal of this dll is to have the experience as close as possible to a real pin2dmd to make it as easy as possible for the colorization authors and to get rid of such differences. The first version already has the latest features of the editor implemented, which is single file export of colorizations (.pac) instead of .pal/.vni combination for easier upload and to make sure only the working combination is installed on your vpin. It also addresses some technical drawbacks of the vni format which should lead to quicker processing and makes sure that real pinball .pal files don´t get mixed up with vpin .pal files which happened a lot in the past. Of course this version supports also the usage of colorizations exported as vni/pal or pal only like the altcolor collection. Please download the DmdDevice.zip (DmdDevice64.zip for vpinmame64 installation) files at my github here https://github.com/lucky01/PIN2DMD/tree/master/integration/pinmame Depending on wether you have VPinMame.dll or VPinMame64.dll installed you need to install the contents of dmddevice.zip or dmddevice64 zip package. For installation just copy the contents of the zip file to your vpinmame installation folder. You may be asked to overwrite a previous installation of dmddevice.dll. If you previously used freezy DmdDevice.dll and want to keep your settings just keep your DmdDevice.ini. Colorization authors please download the latest pin2dmd editor here, check out the .pac export and test with your latest colorizations https://drive.google.com/drive/folders/18wNl_JbPW4XbvLkJQbT_s_DhHZqwq9CI The current version has been thoroughly tested in the last weeks and seems to working fine now with all available colorizations, PuP packs and all supported output devices by the current freezy version. Freezy dmd-extensions is licensed under GPL. Both dmddevice.dll and dmdext.dll (renamed to dmddevice.dll) can be used independently and are separate programs, so the license of the Freezy plug-in makes no requirements about the main program. For pin2dmd users there is absolutely no need to install freezy DmdExt.dll. It is just provided as a optional service for non pin2dmd users. In comliance to the GPL of Freezys dmd-extensions, the source of the version used can be found here https://github.com/lucky01/dmd-extensions/tree/dmdext.dll Link to comment Share on other sites More sharing options...
mellkul Posted April 17, 2022 Share Posted April 17, 2022 5 hours ago, lucky1 said: Hi all, Although I have invested a lot of time in the latest DmdExt version to update the colorization code to the current state, it still has remaining issues (lcm scenes not displayed properly, and simple palette switches not working properly). Additionally to keep up with future improvements to pin2dmd and pin2dmd editor code, the code in freezy always needs to be updated to use the latest colorizations. Since the implementation of the colorization code in freezy is optimized for the c sharp language it is written in, it is impossible for me to just copy the changes I make to pin2dmd which is written in C++ to the freezy code and it takes me a lot of debugging to make it work the same way. To make it easier for me to add new features while in that same time keeping the vpin community up to date with that latest colorization changes , I came up with the idea to use my own code for the colorization and use freezy ´s dll as a plugin which is taking care of the output to the devices like pc screen, pin2dmd etc. The first version already has the latest features of the editor implemented, which is single file export of colorizations (.pac) instead of .pal/.vni combination for easier upload and to make sure only the working combination is installed on your vpin. It also makes sure that real pinball .pal files don´t get mixed up with vpin .pal files which happened a lot in the past Please download the DmdDevice.dll files here and test https://github.com/lucky01/PIN2DMD/tree/master/integration/pinmame and copy the dlls to your pinmame folder. Your custom freezy settings in the dmddevice.ini should work just like before. Colorization authors please download the latest pin2dmd editor here, check out the .pac export and test with your latest colorizations https://drive.google.com/drive/folders/18wNl_JbPW4XbvLkJQbT_s_DhHZqwq9CI In the next weeks I will focus on fixing any remaining issues to make this stable as soon as possible. Please report any issues here. Thanks alot for all the amazing hard work. Is this for real vpin or virtual Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 17, 2022 Author Content Provider Share Posted April 17, 2022 7 hours ago, mellkul said: Thanks alot for all the amazing hard work. Is this for real vpin or virtual It supports the same devices as the latest freezy e.g. pin2dmd, pindmd v1-v3, virtual dmd on pc screen etc Link to comment Share on other sites More sharing options...
Tikimaster Posted April 23, 2022 Share Posted April 23, 2022 I have crashes with mary shellys frankenstein color dmd, went back to "orignal" dlls and it works again. Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 24, 2022 Author Content Provider Share Posted April 24, 2022 16 hours ago, Retsamikit said: I have crashes with mary shellys frankenstein color dmd, went back to "orignal" dlls and it works again. I could reproduce the crash with that table. Should be fixed in the version I just uploaded. Link to comment Share on other sites More sharing options...
Lumby Posted April 25, 2022 Share Posted April 25, 2022 Hi, First of all, thank you for a great effort, for the great work you do. I have tested from the latest version from 24-4-2022, most seem to work really well, but not TNMT where there are some bugs. Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 25, 2022 Author Content Provider Share Posted April 25, 2022 6 hours ago, Lumby said: Hi, First of all, thank you for a great effort, for the great work you do. I have tested from the latest version from 24-4-2022, most seem to work really well, but not TNMT where there are some bugs. Thanks for the feedback ! Should be fixed in the release I just uploaded Link to comment Share on other sites More sharing options...
Lumby Posted April 26, 2022 Share Posted April 26, 2022 17 hours ago, lucky1 said: Thanks for the feedback ! Should be fixed in the release I just uploaded Thanks for the quick response, have tested and it seems to work 1: 1 compared to before with (freezy 1.10.2). Link to comment Share on other sites More sharing options...
okerra Posted April 26, 2022 Share Posted April 26, 2022 On 16/4/2022 at 20:39, lucky1 said: Hola a todos, Aunque he invertido mucho tiempo en la última versión de DmdExt para actualizar el código de colorización al estado actual, todavía tiene problemas pendientes (las escenas de LCM no se muestran correctamente y los interruptores de paleta simples no funcionan correctamente). Además, para mantenerse al día con las mejoras futuras del código del editor pin2dmd y pin2dmd, el código en freezy siempre debe actualizarse para usar las colorizaciones más recientes. Dado que la implementación del código de colorización en freezy está optimizada para el lenguaje c sharp en el que está escrito, me es imposible simplemente copiar los cambios que realizo en pin2dmd, que está escrito en C++ en el código de freezy y me lleva mucho de depuración para que funcione de la misma manera. Para que me sea más fácil agregar nuevas funciones y, al mismo tiempo, mantener actualizada a la comunidad vpin con los últimos cambios de coloración, se me ocurrió la idea de usar mi propio código para la coloración y usar el dll de freezy como un complemento que se ocupa de la salida a los dispositivos como la pantalla de la PC, pin2dmd, etc. La primera versión ya tiene implementadas las últimas funciones del editor, que es la exportación de un solo archivo de colorizaciones (.pac) en lugar de la combinación .pal/.vni para facilitar la carga y asegurarse de que solo la combinación de trabajo esté instalada en su vpin. También se asegura de que los archivos reales de pinball .pal no se mezclen con los archivos vpin .pal, lo que sucedía mucho en el pasado. Descargue los archivos DmdDevice.dll aquí y pruebe https://github.com/lucky01/PIN2DMD/tree/master/integration/pinmame y copie los dlls a su carpeta pinmame. Su configuración personalizada de congelación en dmddevice.ini debería funcionar como antes. Autores de colorización, descarguen el último editor pin2dmd aquí, consulten la exportación .pac y prueben con sus últimas colorizaciones https://drive.google.com/drive/folders/18wNl_JbPW4XbvLkJQbT_s_DhHZqwq9CI En las próximas semanas me concentraré en solucionar los problemas restantes para que esto se estabilice lo antes posible. Informe cualquier problema aquí. I am a Vpin and pin2dmd user, I am always in an internal war between using lucky dll or freeze, lucky will always bring the latest to my pin2dmd, but I like freeze because of the versatility that its .ini offers, I can decide which dmds are shown in my pin2dmd and which ones on my lcd which for sega XL dmds and some Flexdmds i feel is the best, can this be the end of that struggle i have?? If so, what is the correct way to handle it? First of all thanks for the support and great product that is pin2dmd, below I put an example of the way I like to manage Freeze through virtualdmd enabled = true and pin2dmd enbled = false for those cases Thanks Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 26, 2022 Author Content Provider Share Posted April 26, 2022 2 hours ago, okerra said: I am a Vpin and pin2dmd user, I am always in an internal war between using lucky dll or freeze, lucky will always bring the latest to my pin2dmd, but I like freeze because of the versatility that its .ini offers, I can decide which dmds are shown in my pin2dmd and which ones on my lcd which for sega XL dmds and some Flexdmds i feel is the best, can this be the end of that struggle i have?? If so, what is the correct way to handle it? First of all thanks for the support and great product that is pin2dmd, below I put an example of the way I like to manage Freeze through virtualdmd enabled = true and pin2dmd enbled = false for those cases Thanks Since I use freezys dmddevice.dll as a plugin (dmdext.dll) the dmdext.ini supports exactly the same settings as freezys dmddevice.ini. Link to comment Share on other sites More sharing options...
sudsy7 Posted April 27, 2022 Share Posted April 27, 2022 On 4/26/2022 at 8:50 AM, lucky1 said: Since I use freezys dmddevice.dll as a plugin (dmdext.dll) the dmdext.ini supports exactly the same settings as freezys dmddevice.ini. I put the .pac file in the altcolor folder of Pinmame and it works well for output to PC screen. I also have a real pin2dmd hooked up to my PC and I used to be able to output to it by having "Use external DMD" checked in the options dialog box I think, but I cannot seem to get it to work anymore. Can you remind me of what I need to do to in order to get the output to the pin2dmd? Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 27, 2022 Author Content Provider Share Posted April 27, 2022 You need to set enabled = true in the pin2dmd section of the dmdext.ini Link to comment Share on other sites More sharing options...
sudsy7 Posted April 27, 2022 Share Posted April 27, 2022 2 hours ago, lucky1 said: You need to set enabled = true in the pin2dmd section of the dmdext.ini I did that, but still no luck. Here are my settings: Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 28, 2022 Author Content Provider Share Posted April 28, 2022 This is not controlled by any of these settings. The "use external DLL" checkbox only enables wether to use the dmddevice.dll or not generally. Here is a modified DMDExt.ini with pin2dmd enabled. Alternatively you can try to set [pin2dmd] ; if false, doesn't bother looking for a PIN2DMD enabled = native Which bypasses the DMDExt.dll for USB output to pin2dmd and sends the USB data directly from the dmddevice.dll. DmdExt.ini Link to comment Share on other sites More sharing options...
davidcd13 Posted April 28, 2022 Share Posted April 28, 2022 (edited) hello for a pincab with dmd on lcd screen. we must keep the two .ini files dmddevice.ini and your dmdext.ini? aren't they duplicates? or should we copy the contents of dmddevice.ini in dmdext.ini? Thank you for your work. Edited April 28, 2022 by davidcd13 Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 28, 2022 Author Content Provider Share Posted April 28, 2022 28 minutes ago, davidcd13 said: copy the contents of dmddevice.ini in dmdext.ini? Yes or just rename. I changed the name because of the need of two different displays and ini files for Gottlieb Strikes´n Spares. Link to comment Share on other sites More sharing options...
davidcd13 Posted April 28, 2022 Share Posted April 28, 2022 56 minutes ago, lucky1 said: Yes or just rename. I changed the name because of the need of two different displays and ini files for Gottlieb Strikes´n Spares. Great. thank you for your reply Link to comment Share on other sites More sharing options...
sudsy7 Posted April 28, 2022 Share Posted April 28, 2022 2 hours ago, lucky1 said: [pin2dmd] ; if false, doesn't bother looking for a PIN2DMD enabled = native Which bypasses the DMDExt.dll for USB output to pin2dmd and sends the USB data directly from the dmddevice.dll. Changing from "true" to "native" made it work! Thank you for your help. So far, pac file works flawlessly on PC screen and Pin2dmd. Noticed there is now Export Project for "real pin" and for "single real pin". What is the use for "single real pin"? Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 28, 2022 Author Content Provider Share Posted April 28, 2022 8 minutes ago, sudsy7 said: Noticed there is now Export Project for "real pin" and for "single real pin". What is the use for "single real pin"? Limits the use of the export to a specific device by entering the UID of the device. Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 28, 2022 Author Content Provider Share Posted April 28, 2022 11 minutes ago, sudsy7 said: Changing from "true" to "native" made it work! Thank you for your help. So far, pac file works flawlessly on PC screen and Pin2dmd. Strange ! Which USB driver do you use ? Libusb32 or winusb ? Link to comment Share on other sites More sharing options...
sudsy7 Posted April 28, 2022 Share Posted April 28, 2022 (edited) 34 minutes ago, lucky1 said: Strange ! Which USB driver do you use ? Libusb32 or winusb ? When I run Zadig, WinUSB pops up in the driver selection list. Edit: When I look in Device manager, I see Pin2DMD listed under libusbK USB Devices - so I think this one? Edited April 28, 2022 by sudsy7 Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 28, 2022 Author Content Provider Share Posted April 28, 2022 1 hour ago, sudsy7 said: When I run Zadig, WinUSB pops up in the driver selection list. Edit: When I look in Device manager, I see Pin2DMD listed under libusbK USB Devices - so I think this one? I think that is the reason then. Freezy only supports winusb and libusb32 I think. For later applications winusb is recommended for backwards compatibility to older applications linusb32 is the right choice. Link to comment Share on other sites More sharing options...
sudsy7 Posted April 28, 2022 Share Posted April 28, 2022 1 hour ago, lucky1 said: I think that is the reason then. Freezy only supports winusb and libusb32 I think. For later applications winusb is recommended for backwards compatibility to older applications linusb32 is the right choice. OK, maybe later I'll play around with it and change the driver just for kicks, but everything works fine right now so I'm hesitant to mess with it. For real pinball, I think I understand that you can export fsq and pal files that would only work on a specific machine, but when you say enter the UID of the device, what exactly would that be? For instance, on Breakshot when it boots up, there isn't any ID or SN number shown on the DMD. Link to comment Share on other sites More sharing options...
Content Provider lucky1 Posted April 28, 2022 Author Content Provider Share Posted April 28, 2022 11 minutes ago, sudsy7 said: OK, maybe later I'll play around with it and change the driver just for kicks, but everything works fine right now so I'm hesitant to mess with it. For real pinball, I think I understand that you can export fsq and pal files that would only work on a specific machine, but when you say enter the UID of the device, what exactly would that be? For instance, on Breakshot when it boots up, there isn't any ID or SN number shown on the DMD. The same number you need to get a activation key. Onscreen menu - Display UID. Link to comment Share on other sites More sharing options...
okerra Posted April 28, 2022 Share Posted April 28, 2022 Ok I find if there is someone else or someone uses pin2dmd or virtual crash problems only when it is executed with pupack in the TMNT table, can someone confirm this so that it can be checked if it is a real problem? Thanks Link to comment Share on other sites More sharing options...
Recommended Posts