Westworld

VIP Class
  • Content count

    86
  • Joined

  • Last visited

  • Days Won

    5

Westworld last won the day on January 8

Westworld had the most liked content!

About Westworld

  • Rank
    Advanced Member

Profile Information

  • Gender
    Not Telling
  • Location
    Munich, Germany

Recent Profile Visitors

313 profile views
  1. More news. Seems that everything is done already, I just looked at the wrong place. The way I described is the 'wrong' way, that's maybe why it was never finished or documented. The B2SServer, both DLL and EXE, includes already a way to handle alphanumeric LED's in original tables. Not by passing text as I described, but by defining a LED with directly specifying the segments (binary). This looks of course upfront for much more work - but it allows you to handle any symbol or combination. Suddenly I remembered that there is already a great original table using such as backglass, JPSalas Scarface. Load both table and backglass: http://www.vpforums.org/index.php?app=downloads&showfile=7467 Open the backglass with the designer. Open the DMD. You will notice that the DMD contains both alphanumeric LED's and some pictures, used for the 'DMD animation'. Just pictures, but looks much more impressive. Now open the table and look into the script. Look for DD or B2SDMD... There are already many subroutines handling all the work. Encoding of characters to segments, displaying characters, even blinking. All is there - and the table proves that it works great (as long you know how to do it).
  2. to come back to the original request - adding alpha-numeric display for original type games. Browsing through the source code, it seems Herweh started but never finished, or thought it is not needed. The code is partly existing, but it is missing in documentation and not supported by EXE mode. Code says "TODO"... Before we start to modify and enhance the code, I would like to suggest to start with what's existing, to see if that would work and to have a better understanding what's missing. Missing today: - support for EXE mode - support for lowercase character or special characters (supported is A-Z and 0-9) to test it, simply create a backglass, add a 14 segment LED display and use as code: To set a single LED (specify the LED number, starting with 1): Controller.B2SSetLED 12,"A" ' to change the LED #12, set it to uppercase A To set a banch of characters, specify the display number (not LED), starting with 1: Controller.B2SSetLEDDisplay 4,"Test" ' set the 4th display to TEST, all uppercase Run it, remember to set the backglass to run NOT in EXE mode. If you forget that, the backglass will crash (you will get a .NET error and if you click on Details you see it fails for String to Number conversion). For me it works without EXE. Is that answering the concept of the need? What's missing? lowercase, special char and EXE support? More?
  3. no, that list is wrong. I assume the rom name is something like "dm_lx4" or so (don't remember the rom name). When you try to launch from PinballX, the error message shows either the table name (here VPX - Demolition Man 1.2 (Williams1994)) or - if you run into the issue that the name is not found - the Rom name, so dm_lx4.direct2bs not found. In that case, change the xml to: <rom>dm_lx4</rom> Save the XML. Now it will loop through the XML, find dm_lx4, and search for: dm_lx4.direct2bs OR Demolition Man (Williams 1994).direct2bs The name is identified based on the ROM name. Additional info: the naming convention for a direct2bs is normally: tablename.direct2bs (like in your case VPX - Demolition Man 1.2 (Williams1994).direct2bs) OR description.direct2bs (in your case Demolition Man (Williams 1994).direct2bs) tablename is not working in this case! Only romname or description name works. The benefit from using description as name is that you can have several tables using the same backglass and if you replace/update your table you do not need to rename the backglass. That was the original idea and it is still followed here.
  4. This was done in the gamex forum - but as it is not reproducible and happens only on some machines, how should he debug it? CarnyPriest's trick with running Task manager worked for me, 9 of 10 tables run suddenly. Still some did not - and that's why I started to try to find a reason. Of course on my notebook, with Visual Studio (so debugger) everything worked, it happens only on my cabinet and I don't want to install too much software there. That system should run pinball fast and nothing else... I tried to debug by writing logfiles. Doing so I realized that the code fails to read the window title, but I did not understand why. If I would be a professional developer, I would start debugging VPinball 10.2 next, as this application sets the window title. PinballX is not doing so, it calls VPinball with option -play and the table name. That's I do not really think it is pinballx... not so difficult. Just launch all tables from PinballX. I took it as good reason to play though my game list and try each. If one fails, it shows in the error message the ROM name. Then I open the XML file, look for that table (based on the description name displayed in PinballX) and entered the displayed rom name in the <rom> tag. Done.
  5. Did some testing, maybe I was looking in the totally wrong direction... Your video FH.mp4, is it possible that you have set "glow" to maximum and LED skip to 3 or 4? I tried around, and if I set glow to maximum, it looked like your video. setting it to minimum or medium looked very different. Setting it to none or disabling glow gave a very clear (but not looking real) LED. Finally the video is either slow - or skipping some LED information. This can also be set for each backglass (click on backglass, press S). Maybe that was all?
  6. > can you please make a modified dll to fix the issues where it clears the dmds logo after launch in pbx! this modification seems to produce a new issue with PinDMD2. If behaves as if - when PinMame is closed - the driver/display is not cleared anymore. So when you play a table directly from VPinball and quit the application, the DMD is still displaying the latest content. Only way to get another content is to launch another table, launch PinballX (which displays something) or restart the computer. That's a little bit disturbing if you play directly from VPinball another table not using the DMD, like an EM table. The latest content stays there forever. BTW, it does not help for PinballX at all. As soon it launches a table (even if the table is not even existing, so it would return directly), the DMD goes blank/black (and yes, DMD setting is false, it work for backglass but not DMD). Something seems to be different here for PinDMD2. Would it be possible to have a setting in the ini file for PinDMD2 to get the old behavior back?
  7. To have something positive: I could finally get the modular dmd drivers to work on my cabinet, before it crashed more than working. What I did, if it helps others: Renamed old VPinball folder. Used latest VPinballX 10.2 installer, which reinstalls everything clean. Used the PinMame folder installed here - and just copied my old Rom, nvram, pinmame.dll back here, so I had a clean installation, with my old roms and the SAM pinmame, but everything else on default. Finally all issues went away.
  8. thanks for the details, helps a lot. My cabinet has a real DMD, so Funhouse and Taxi uses that display, not the virtual, good reason why I never noticed anything. I can see that Funhouse does not look nice for you. Stretches is a good guess. Just checked the source, it seems to use a lot of hard coded size/position/design values (in pixels), which is later rescaled, which obviously is not helping to improve. Just for testing: could you modify a backglass with the designer, not caring for nice looking, only for scaling, and design it to fit your display and screenres, without rescaling. That would help us to understand where we need to check and hopefully improve. As far as I remember Herweh got the Dream7 Led code from a friend and was happy to have a such a nice drawing. That could explain the difference in scaling. He let's that code draw everything - and then insert it in the backglass, scaling if needed. 2) I do not see any code handling a dimmed display. It creates it one or off. and if on, with or without "glow" effect. There are some hard coded values for Colors like Off, On, Glass, GlassCenter. Alpha values for Glass and Center, values for Glow effect, Bulbsize and if to display WireFrame. That's are all available settings. For everything else it requires a rewrite (Note: I'm not a .Net or Basic Developer. I started with Basic 30 years ago, quick went away to other languages, still can read it a little - and do code changes mostly by copy&paste, looking for something existing which I can reuse). So, it is possible to add another code to display a different design (gas based), but that's out of my scope. It is possible to replace automatic drawing with existing pictures, I think I could do that, but still don't know how many images we need. For A-Z, 0-9 it would be easy, that code already exists, just needs to be rearranged and enhanced. For more chars, like a-z, A-Z, +-*/ etc, code needs to be rewritten, still possible. For every possible combination, we are talking about 16 bit or 65536 char's, I'm not sure it is the right direction to add 65536 pictures? I could try, but where to get the pictures? I found this page: http://35007.de/chargenerator.htm which helps to design chars and understand the concept, even to create SVG images, but they would not look different than the ones from dream7 Summary: I could help you and display predefined images, but need them upfront. Then we can try to understand how many we need and how to ship them (65536 images in a .zip? Named using the binary code, allowing to 1:1 replace the dream7 with predefined ones?). I could also enhance the code for a different automatic drawing, but need help (=code) for that. But I'm not sure I'm the right one for that job... Last point: if it is just scaling and we could understand that better, maybe this can be improved as well, but it will be tricky...
  9. yes, seems thats exactly the problem solved here. But a better way would be to use directly the follow up one: http://vpuniverse.com/forums/forums/topic/2869-b2s-server-new-feature-aspect-ratio/ That one - beside adding another new feature about aspect ratio - enhances the search path. You still can rename the db2s, but it also uses the rom name from PinballX to identify the backglass, which will avoid renaming it, if you care for the usual naming convention.
  10. apollo13 I tried to keep it simple. Default installation setup from Toxie for VPinballX 10.2, so official VPinMame without SAM. Setup for DMDExt as created by VPinBallX Installer. Then I replaced DMDDevice.dll and DMDExt.exe with the files provided here. As I wanted to reduce impact from other stuff I did it on a notebook, so no external DMD connected (there was never one connected, so no driver installed, etc) no PinballX installation, etc. Clean. Nothing installed in System32 or SystemWow64. I'll try the same on my cabinet next weekend. Using VPinMame Setup.exe and Test button works with the integrated virtual DMD, but not with the virtual DMD from DMDDevice.dll. At least how it looks for me now. I normally rarely use that, just thought it could be an easy way to record some DMD videos on a notebook sitting in living room, without the need to install tables, backglasses, etc. Just use the ROMs.
  11. thought about it, and should not be too difficult. We would add a list of 60 or 100 characters (a-z, A-Z, 0-9 and many symbols) and then simply display them. Work, but not impossible Just played Robocop and took more notice of the display while playing. And watched a YouTube movie from a real machine. My backglass uses blue LEDs, while the real one red ones, but that would be easy to change. But, when you play the ball in the upper right corner, it starts a kind of animation, accessing directly the lines in the LED, not using real characters (like upper and lower horizontal bar). Any suggestion/idea how to handle these? These are not real characters, the ROM seems to manipulate directly the segments of the LED. Or better to improve the 16 segment automatic creation and display? Can you describe (or provide) screenshots, what exactly is terrible? I googled for "data east alphanumeric led pinball" and checked the images, but fails to see the difference. But - I'm not really a graphical guy...
  12. Still crashes - but: Running (32 bit) VPinMame and click there test -> Crash Run a VPX table using the same rom -> works! For me that's good enough, I don't need the test feature, I just tried to minimize test environment and that was obviously the wrong idea. Movie recording works fine for me, now recording time starts. Thanks again
  13. Just tried, still crash for me. The log does not show an issue with video anymore, now reports: [1] 2017/01/10 19:44:33.903 INFO | No altcolor folder found, ignoring palettes. [1] 2017/01/10 19:44:33.923 INFO | [vpm] Open() [1] 2017/01/10 19:44:33.923 INFO | [vpm] PM_GameSettings(0) [1] 2017/01/10 19:44:33.923 INFO | Disabling game colorization [1] 2017/01/10 19:44:33.923 INFO | Setting game name: apollo13 [1] 2017/01/10 19:44:33.923 INFO | Setting color: #FFFF5820 [1] 2017/01/10 19:44:33.953 ERROR | Die Datei oder Assembly "dmdext, Version=1.4.0.0, Culture=neutral, PublicKeyToken=null" oder eine Abhängigkeit davon wurde nicht gefunden. Es wurde versucht, eine Datei mit einem falschen Format zu laden. [1] 2017/01/10 19:44:33.975 ERROR | bei PinMameDevice.DmdExt.Init() bei PinMameDevice.DmdDevice.GameSettings(String gameName, UInt64 hardwareGeneration, IntPtr options) Sorry, German system, translated "The file or assembly "dmdext..." or a dependance was not found. It was tried to read a file with a wrong format. My installation: fresh installed general VPX10.2 setup.exe, selecting DMDExt. No real DMD connected. I replaced dmddevice,dll and dmdext.exe, both inside VPinmame folder. For testing I launched dmdext.exe with console as dmdext.exe test -> works, I get the virtual DMD displayed. I added VPinmame folder to PATH. What else could I have missed? thanks...
  14. thanks again for reporting it. I confirm that Metallica did not worked... I corrected the issue and uploaded (see first post) a new version of the compiled Server.exe, as well as the source. The new version also contains a new debug feature (see first post), just in case there is another table failing. This will at least help to understand why...
  15. I try to use the recording feature and fail. It seems to need a video codec, but I'm not sure which one and how/where to install? Trying to install LAV filter (from Pinballx page) did not helped. Running PinMame Test button starts - then crash PinMame. The log shows that it did not found the video codec and failed because that. (For testing I used a Windows 10 notebook with fresh installed general VPX10.2 setup.exe, selecting DMDExt. The notebook did not had a real DMD connected) Log: [1] 2017/01/08 19:32:33.447 INFO | [vpm] Open() [1] 2017/01/08 19:32:33.464 INFO | [vpm] PM_GameSettings(0) [1] 2017/01/08 19:32:33.464 INFO | Disabling game colorization [1] 2017/01/08 19:32:33.469 INFO | Setting game name: apollo13 [1] 2017/01/08 19:32:33.469 INFO | Setting color: #FFFF5820 [1] 2017/01/08 19:32:33.548 INFO | Bit-convertion disabled. [1] 2017/01/08 19:32:33.548 INFO | Opening virtual DMD... [8] 2017/01/08 19:32:33.646 DEBUG | PinDMDv1 device not found. [8] 2017/01/08 19:32:33.664 DEBUG | PinDMDv2 device not found. [8] 2017/01/08 19:32:33.664 DEBUG | PinDMDv3 device not found. [8] 2017/01/08 19:32:33.678 DEBUG | PIN2DMD device not found. [8] 2017/01/08 19:32:33.678 INFO | Added VirtualDMD renderer. [8] 2017/01/08 19:32:33.698 WARN | Error creating X264 encoded stream: No compatible MPEG-4 encoder found.. [8] 2017/01/08 19:32:33.705 INFO | MJPEG encoder found. [8] 2017/01/08 19:32:33.735 INFO | Writing video to C:\Users\Thomas\Desktop\video\apollo13.avi. [8] 2017/01/08 19:32:33.735 INFO | Added video renderer. [8] 2017/01/08 19:32:33.750 INFO | Resizing Virtual DMD to 128x32. [8] 2017/01/08 19:32:33.750 INFO | Sending unprocessed 2-bit data from "Passthrough Source" to "Dmd" [8] 2017/01/08 19:32:33.766 ERROR | Destination "Video Writer" is not 2-bit compatible. [8] 2017/01/08 19:32:33.766 ERROR | bei LibDmd.RenderGraph.AssertCompatibility(IDestination dest, Object castedDest, String what) in C:\Development\dmd-extensions\LibDmd\RenderGraph.cs:Zeile 400. bei LibDmd.RenderGraph.AssertCompatibility(ISource src, Object castedSource, IDestination dest, Object castedDest, String what, String whatDest) in C:\Development\dmd-extensions\LibDmd\RenderGraph.cs:Zeile 388. bei LibDmd.RenderGraph.StartRendering(Action onCompleted, Action`1 onError) in C:\Development\dmd-extensions\LibDmd\RenderGraph.cs:Zeile 234. bei PinMameDevice.DmdExt.<SetupGraphs>b__21_0(RenderGraph graph) bei System.Collections.Generic.List`1.ForEach(Action`1 action) bei PinMameDevice.DmdExt.SetupGraphs() bei PinMameDevice.DmdExt.<CreateVirtualDmd>b__20_0() bei System.Threading.ThreadHelper.ThreadStart_Context(Object state) bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) bei System.Threading.ThreadHelper.ThreadStart() Any suggestion what MPEG-4 encoder is needed/requested?