Content Provider TerryRed Posted April 14, 2021 Content Provider Share Posted April 14, 2021 (edited) Future Pinball doesn't natively support displaying it's DMD on a separate window or on a real DMD for cabinet users. Until now, the solution to this was to use FP-Intercept (for real DMD only), or to use FutureDMD to display on a virtual DMD. While both solutions did work, there were limitations and quirks with each. For years, Visual Pinball, Pinball FX3/2 and The Pinball Arcade have been using DMDext (freezy) to display their DMD to a real DMD or a virtual DMD. Now thanks to the work of MrMoose74 and freezy, Future Pinball can now join the fun with DMDExt! This guide is now completely updated and renamed as the DMDExt Guide (for Future Pinball) - I now have all my guides and tutorials in PDF format - this new guide has been created to be used with the FP and BAM Essentials AIO package - all my guides and tutorials are now only included with the FP and BAM Essentials AIO package You can download the FP and BAM Essentials AIO package (and DMDExt Guide) here: https://vpuniverse.com/files/file/14807-future-pinball-and-bam-essentials-all-in-one-complete/ A video tutorial that walks you through this guide can be seen here 00:00 Start 01:25 DMDExt - What does it do? 03:14 Guide walkthrough 06:50 How to run DMDExt with FP 08:00 Copy dmddevice.ini to FP folder 09:04 dmddevice.ini settings 11:46 Run DMDExt - set it's position and size 13:16 Styles - window and settings (always appears on PF screen) 16:15 Test DMDExt with Sonic Pinball Mania 17:52 FP must be run in windowed mode to access Styles window 18:34 Test different Styles presets 22:22 Run FP and DMDExt with BAT file 23:45 Setup Popper to run DMDExt 31:04 Test launching FP table and DMDExt from Popper 33:03 Closing Edited yesterday at 09:04 AM by TerryRed Link to comment Share on other sites More sharing options...
Content Provider TerryRed Posted April 14, 2021 Author Content Provider Share Posted April 14, 2021 UPDATE: changed commands to include quotes around [GAMENAME] so they should look like this: start /min "" "dmdext.exe" mirror --source=futurepinball -q --fps 60 -d pindmd2 -g "[GAMENAME]" --use-ini="C:\vPinball\VisualPinball\VPinMAME\DmdDevice.ini" All Pin2DMd, PinDMD, PinDMD2, PinDMD3 owners.... please let me know if the commands above work for you! Link to comment Share on other sites More sharing options...
Content Provider TerryRed Posted April 14, 2021 Author Content Provider Share Posted April 14, 2021 Added a FAQ ****** FAQ ****** Some tables like Tutenkham, Ghostbusters and others show nothing on the DMDExt DMD, and show nothing on the FP Backglass in game. How do I get them to work? some table authors only added code in the script for the HUD DMD (Desktop). you need to change it so that name of HUD DMD (for desktop) is used on the Backglass / Translite DMD. on the Translite Editor, rename the HUD DMD to something else, and rename the DMD on the Backbox to the original name used for the HUD DMD now it should work Some tables have a slim DMD (128x16) which won't display anything on DMDExt on the Translite Editor, change all DMDs to 128x32 On some tables like Robocop, the background image looks corrupted on DMDExt, or on others like Superman it isn't visible at all on DMDExt this is normal and can't yet be remedied. This has nothing to do with DMDExt, but more the OpenGL.DLL used for FP with DMDExt I can't get tables with Gas Segment (alphanumeric) displays to work on DMDext for Future Pinball tables, only the "DMD" can be displayed on DMExt I still have problems getting anything to display on DMDExt with FP having FPLoader.exe (BAM) or dmdext.exe set to Run as Administrator (or not), or the wrong settings for either in this regard may prevent DMDExt from being able to access and mirror the Future Pinball DMD ideally you shouldn't need to have either set to Run as Administrator for everything to work correctly. This will depend on your system's security settings Link to comment Share on other sites More sharing options...
goblindriver Posted April 14, 2021 Share Posted April 14, 2021 This is awesome! Working great for me. Link to comment Share on other sites More sharing options...
Content Provider jino0372 Posted April 14, 2021 Content Provider Share Posted April 14, 2021 It's been a while since I've done much with Future Pinball. This and all of the other cool stuff going on with FP is re-peaking my interest. Thanks Terry for all of the excellent guides and work you've put in to the hobby! I for one appreciate it!! Link to comment Share on other sites More sharing options...
yardley Posted May 11, 2021 Share Posted May 11, 2021 Hey Terry, thanks for the guide. Got it up and running nicely, but I have a weird issue that is happening with FP (and maybe FX2/FX3 as well). Everything works correctly, the DMD is mirrored and all functions seem to work as they should, but I happened to press alt+tab after testing some tables and noticed some lingering command prompt windows in the background. I didn't even see these as I was playing and laughing tables through Popper. Here's a pic of said windows. They will keep appearing if more tables are launched. Any idea what could be causing this? Link to comment Share on other sites More sharing options...
movieguy Posted May 12, 2021 Share Posted May 12, 2021 Im not an expert, but it might help to post the Future Pinball launch script you have setup in Pinup Popper. Link to comment Share on other sites More sharing options...
Content Provider TerryRed Posted May 12, 2021 Author Content Provider Share Posted May 12, 2021 You are most likely not closing out DMDext completely in your Popper close script. Link to comment Share on other sites More sharing options...
yardley Posted May 12, 2021 Share Posted May 12, 2021 1 hour ago, TerryRed said: You are most likely not closing out DMDext completely in your Popper close script. Hi Terry, I have the correct taskkill command in my exit script. I will post my launch and exit scripts, maybe you can spot something. I just tested a few things including a process close ahk script to kill dmdext.exe just for the sake of troubleshooting but still got the command prompt window. Happens every single time, testing with 3 Angels in FP. When checking task manager, dmdext.exe isn't shown under processes even with that command prompt window still open. Launch script: rem switch dmddevice.ini to 1.7.1 if table file name includes frz17, otherwise switch to dmddevice.ini 1.9.0 @echo off (echo("[GAMENAME]")|find /i "frzy17" >nul && ( START /min "" "[STARTDIR]Launch\Freezy1.7.1.bat" )||( START /min "" "[STARTDIR]Launch\Freezy1.9.0.bat" ) timeout 1 rem Run DOFLinx ONLY IF "Custom Var #3" DOES NOT = NO_DOFLinx if NOT "[custom3]"=="NO_DOFLinx" (cd /d "C:\directoutput") if NOT "[custom3]"=="NO_DOFLinx" (START "" "DOFLinx.exe") rem Enable FP Backglass and Arcade Mode REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "ArcadeMode" /t REG_DWORD /d 1 /f REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "SecondMonitorEnable" /t REG_DWORD /d 1 /f rem Disable FP Backglass and Arcade Mode if "Custom Launch Param" = NO_BackGlass if "[custom1]"=="NO_BackGlass" (REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "ArcadeMode" /t REG_DWORD /d 0 /f) if "[custom1]"=="NO_BackGlass" (REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "SecondMonitorEnable" /t REG_DWORD /d 0 /f) rem Run FutureDMD ONLY IF "Custom Var #2" DOES NOT = NO_FutureDMD rem if NOT "[custom2]"=="NO_FutureDMD" (cd "c:\Games\Future Pinball") rem if NOT "[custom2]"=="NO_FutureDMD" (START "" "FutureDMD.exe" table="[GAMENAME]" close=1) rem if NOT "[custom2]"=="NO_FutureDMD" (timeout /t 1) rem Disable DOFLinx if "Custom Var #3" = NO_DOFLinx if "[custom3]"=="NO_DOFLinx" (cd /d "C:\directoutput") if "[custom3]"=="NO_DOFLinx" (taskkill /f /im "DOFLinx.exe") c: cd "C:\Visual Pinball\VPinMAME" start /min "" "dmdext.exe" mirror --source=futurepinball -q --fps 60 -d pin2dmd -g "[GAMENAME]" --use-ini="C:\Visual Pinball\VPinMAME\DmdDevice.ini" rem Launch Future Pinball START "" "[STARTDIR]Launch\VPXSTARTER.exe" 10 5 60 "BSP Software*" START "" "[DIREMU]\FPLoader.exe" /open "[GAMEFULLNAME]" /play /exit /arcaderender /STAYINRAM Exit script: "[STARTDIR]LAUNCH\PUPCLOSER.EXE" WINTIT "Future Pinball" 2 1 taskkill /f /im "DOFLinx.exe" /im "dmdext.exe" REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "ArcadeMode" /t REG_DWORD /d 1 /f REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "SecondMonitorEnable" /t REG_DWORD /d 1 /f Link to comment Share on other sites More sharing options...
movieguy Posted May 14, 2021 Share Posted May 14, 2021 Did you try rem'ing out your DMDExt section and confirming the window is going away? Are you using the 32-bit version of DMDext? Also, I use a modified version of the standard popper script and in there DOFLinx is assumed to be running with windows startup and you change whether it listens for the Future Pinball process to enable/disable its activity. If you can I would try that approach to see if it makes a difference. I would also just try rem'ing out the dmddevice.ini section at the top and see if that makes a difference. Sorry I cant be more help, but when I encounter these issues its usually trial and error until I find a fix. Link to comment Share on other sites More sharing options...
yardley Posted May 15, 2021 Share Posted May 15, 2021 21 hours ago, movieguy said: Did you try rem'ing out your DMDExt section and confirming the window is going away? Are you using the 32-bit version of DMDext? Also, I use a modified version of the standard popper script and in there DOFLinx is assumed to be running with windows startup and you change whether it listens for the Future Pinball process to enable/disable its activity. If you can I would try that approach to see if it makes a difference. I would also just try rem'ing out the dmddevice.ini section at the top and see if that makes a difference. Sorry I cant be more help, but when I encounter these issues its usually trial and error until I find a fix. thanks, I actually figured it out a day or two ago. It was the dmddevice portion of the script. Weird since it works fine with VPX. I simplified the script and it’s working fine now. Curious about your method for DOFLinx integration, mind sharing your script. Link to comment Share on other sites More sharing options...
outhere Posted May 15, 2021 Share Posted May 15, 2021 36 minutes ago, yardley said: thanks, I actually figured it out a day or two ago. It was the dmddevice portion of the script. Weird since it works fine with VPX. I simplified the script and it’s working fine now. Curious about your method for DOFLinx integration, mind sharing your script. https://www.nailbuster.com/wikipinup/doku.php?id=emulator_future_pinball#typical_emulator_setup_for_future_pinball Link to comment Share on other sites More sharing options...
movieguy Posted May 15, 2021 Share Posted May 15, 2021 Just take a look at the part of the script that outthere linked to. You will see in that script that rather than running and kiling DOFLinx, it simply sends commands to remove Future Pinball from something DOFLinx listens for and then adds it back when the table closes. This is the recommended way to run DOFLinx (with it loaded at startup and always on in the background). Link to comment Share on other sites More sharing options...
mrbrightside80 Posted May 28, 2021 Share Posted May 28, 2021 I got Future Pinball all setup, tables imported into popper and all they load. But I haven’t gotten one to display the DMD with freezy 1.9. It launches and closes with the tables and I click and drag it, but it’s just a black screen. Any ideas? Link to comment Share on other sites More sharing options...
movieguy Posted May 29, 2021 Share Posted May 29, 2021 10 hours ago, mrbrightside80 said: I got Future Pinball all setup, tables imported into popper and all they load. But I haven’t gotten one to display the DMD with freezy 1.9. It launches and closes with the tables and I click and drag it, but it’s just a black screen. Any ideas? Can you post your launch script, if using Pinup Popper? You should be starting dmdext with a line that looks something very close to the following: start /min "" "dmdext.exe" mirror --source=futurepinball -q --virtual-stay-on-top --fps 60 -g "[GAMENAME]" --use-ini="C:\vPinball\VisualPinball\VPinMAME\DmdDevice.ini Link to comment Share on other sites More sharing options...
mrbrightside80 Posted May 29, 2021 Share Posted May 29, 2021 11 hours ago, movieguy said: Can you post your launch script, if using Pinup Popper? You should be starting dmdext with a line that looks something very close to the following: start /min "" "dmdext.exe" mirror --source=futurepinball -q --virtual-stay-on-top --fps 60 -g "[GAMENAME]" --use-ini="C:\vPinball\VisualPinball\VPinMAME\DmdDevice.ini Rem :Enable FP Backglass and Arcade Mode REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "ArcadeMode" /t REG_DWORD /d 1 /f REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "SecondMonitorEnable" /t REG_DWORD /d 1 /f :Disable FP Backglass and Arcade Mode if "Custom Launch Param" = PinEvent if "[custom1]"=="PinEvent" (REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "ArcadeMode" /t REG_DWORD /d 0 /f) if "[custom1]"=="PinEvent" (REG ADD "HKCU\Software\Future Pinball\GamePlayer" /v "SecondMonitorEnable" /t REG_DWORD /d 0 /f) Rem :If you use DOFLinx then un-rem the 2 Lines if "[custom1]"=="PinEvent" (cd /d "C:\directoutput") if "[custom1]"=="PinEvent" (DOFLinxMsg "PROCESSES=") Rem :Run DMDExt only if "Custom Var #2" DOES NOT = NO_DMDExt if NOT "[custom2]"=="NO_DMDExt" (c:) if NOT "[custom2]"=="NO_DMDExt" (cd "D:\Pinball\Visual Pinball\VPinMAME") if NOT "[custom2]"=="NO_DMDExt" (start /min "" "dmdext.exe" mirror --source=futurepinball -q --virtual-stay-on-top --fps 60 -g "[GAMENAME]" --use-ini="D:\Pinball\Visual Pinball\VPinMAME\DmdDevice.ini") if NOT "[custom2]"=="NO_DMDExt" (timeout /t 1) Rem :Launch Future Pinball START "" "[STARTDIR]Launch\VPXSTARTER.exe" 10 5 60 "BSP Software*" START "" "[DIREMU]C:\Future Pinball\BAM\FPLoader.exe" /open "[GAMEFULLNAME]" /play /exit /arcaderender /STAYINRAM Link to comment Share on other sites More sharing options...
outhere Posted May 29, 2021 Share Posted May 29, 2021 Try this part (start /min "" "dmdext.exe" mirror -s futurepinball -g "[GAMENAME]" --use-ini=" Link to comment Share on other sites More sharing options...
mrbrightside80 Posted May 29, 2021 Share Posted May 29, 2021 Can I put that anywhere or does it have to be placed somewhere specific? Link to comment Share on other sites More sharing options...
mrbrightside80 Posted May 29, 2021 Share Posted May 29, 2021 11 minutes ago, outhere said: Try this part (start /min "" "dmdext.exe" mirror -s futurepinball -g "[GAMENAME]" --use-ini=" Can I put that anywhere or does it have to be placed somewhere specific? Link to comment Share on other sites More sharing options...
outhere Posted May 29, 2021 Share Posted May 29, 2021 Did you try changing the C to a D if NOT "[custom2]"=="NO_DMDExt" (c:) Link to comment Share on other sites More sharing options...
mrbrightside80 Posted May 29, 2021 Share Posted May 29, 2021 14 minutes ago, outhere said: Did you try changing the C to a D if NOT "[custom2]"=="NO_DMDExt" (c:) Okay I will try both. Where do I put the (start /min "" "dmdext.exe" mirror -s futurepinball -g "[GAMENAME]" --use-ini=" in the script? Or does mine already ahve that? Link to comment Share on other sites More sharing options...
mrbrightside80 Posted May 29, 2021 Share Posted May 29, 2021 24 minutes ago, mrbrightside80 said: Okay I will try both. Where do I put the (start /min "" "dmdext.exe" mirror -s futurepinball -g "[GAMENAME]" --use-ini=" in the script? Or does mine already ahve that? 40 minutes ago, outhere said: Did you try changing the C to a D if NOT "[custom2]"=="NO_DMDExt" (c:) I figured it out! It looks like the open.gl file was not with my future pinball exe Link to comment Share on other sites More sharing options...
Magius74 Posted June 4, 2021 Share Posted June 4, 2021 So I got this working an I love it. I like it better than FutureDMD. But I have a couple of oddities...... I can get the DMD position to save globally but not the size. Actually, It does seem to write the DMD size to the ini file but for some reason does not apply it when launching the DMD. I do have a strange DMD screen that I can only run at 1366x768 resolution (which is not even the native res of the display....but that's a long story). Could the res be the problem since it's not 4:1???? Also, just FYI for anyone testing this. When I installed 1.9 to my vpinmame folder as directed, it broke Pup Pack functionality with FX3. Even though I use PuPDMD, nailbuster's instructions seem to indicate that is still relies on DmdDevice.ini and DmdDevice.dll files, which I overwrote the 1.8 versions when I installed 1.9. So basically I am unsure if DMDExt 1.9 is compatible with PuPDMD. But once I re-installed DMDExt 1.8 into my vpinmame folder it was working again. So basically I just made a DMDExt folder under Future Pinball folder and put 1.9 there, since that is the only thing I am going to use it for right now. I just changed the path in the Launch Script to point to this new folder. SO I basically have two versions of DMDExt installed right now. Link to comment Share on other sites More sharing options...
outhere Posted June 17, 2021 Share Posted June 17, 2021 DMDExt (freezy) and Future Pinball (real and virtual DMD support) <<<-- Top post Freezy beta 1.90 r26 - 32 Bit version dmdext-1.9.0-SNAPSHOT-r26-x86-Release.zip Freezy beta 1.90 r26 - 64 Bit version if needed dmdext-1.9.0-SNAPSHOT-r26-x64-Release.zip Link to comment Share on other sites More sharing options...
bushav Posted June 21, 2021 Share Posted June 21, 2021 Works Great! I love the glow effect in my VPX DMD with 1.9. Looks very different but really cool once I adapted to the change. Thanks so much. This also got Goonies Pup Pack and GB Pup Pack working correctly along with the installation of the latest PuP version 1.4.6 Thanks Guys! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now