Tutorial Spacedesk multi monitor app for DMDExt and directB2S

AnonTet

Pinball Master
Site Supporters
Joined
Jun 21, 2020
Messages
2,011
Solutions
1
Reaction score
1,172
Points
125
Favorite Pinball Machine
Indiana Jones
This should be usefull for those of you with only one monitor but everyone else may have uses for this.

Regarding pinball though, as you might know, Freezy's DMDExt does not allow to rotate the virtualDMD. This means that if you play in Fullscreen(VP) those beatiful colorized DMDs will be vertical which is not very useful or pretty. In FP Arcade mode the DMD you'll lose the ability to see the backglass.

Please refer to TerryRed's megaguide for caveats and how to install DMDExt but keep reading for a quick how-to below.

So, how to put that virtualDMD on a second "monitor" if you don't have one? I guess everyone has at least one mobile phone so we'll use it. I only have android devices so Apple users, you're on your own to test. The instructions however should be the same.

  • Go to spacedesk website and download the appropriate version for your OS and device (scroll down to look for PC and mobile device options)
  • Install in both windows and device
  • Make sure both your android device and your pc are on the same network.
  • Run the app on your PC and your mobile.
  • If it connects you can see it in "spacedesk Driver Console"
  • Go to Windows display settings and adjust the resolution.
  • Launch a table and move the virtualDMD to your new monitor on your fone amd resized the virtualDMD accordingly
  • Save the DMD position for the table or globally. I use globally so all tables I call will have teh DMD in there

If you use VP AIO installer you already have DMExt but it might be outdated. so go here and download the verison you want. Personally, I downloaded the .zip as portable software is easier to to backup and because I want to have separate instances for FP and VP.

  • You should backup everything 1st
  • For VP unzip the file to overwrite the VP install except the FUTURE PINBALL folder.
  • For FP unzip the file OpenGL32.dll inside the folder "Future Pinball" to you FP home folder
    • unzip the rest to your FP home folder
To make this work for VP
  • launch a table
  • press F1
  • uncheck ShowDMD/Display Window
  • check Use External DMD (dll)
  • check Colorize DMD (4 colors)
  • press OK and reset the table (F3)
  • Click the virtualDMD and move it to your device.
  • Resize the virtualDMD on your device
  • right-click the vitualDMD and either save the position globally or just for that table.

To make this work for FP
  • go to video options and uncheck Full Screen.
    • It'll make it easier to alttab to the virtualDMD and move it to your device.
  • open a table and check that it has a DMD in the Translite and which is 128x32 in size (see caveats in terryred's megaguide for problem tables)
  • launch the table
  • alt-tab to the virtualDMD and move it to your device screen
  • save it either globally of for that table
  • exit table to FP GUI and revert to Full Screen.
    • you may now want to enable Arcade Mode and set Rotation to 270º (unless your monitor rotates to the left in which case use 90º)
  • launch the table again. If the table has also a screen DMD you might want to hide it. Default FP key is ` but authors sometimes use others.

I have a shortcut in windows start menu that calls a file fpload.bat to open FP GUI. You'll have to adjust the paths to suit your needs.

@echo off
c:
cd "C:\Emus\Future Pinball\DMDext"

start /min "" "dmdext.exe" mirror --source=futurepinball -q --virtual-stay-on-top --fps 60 -g "[GAMENAME]" --use-ini="C:\Emus\Future Pinball\DMDext\DmdDevice.ini"

cd "C:\Emus\Future Pinball\BAM\"
FPLoader.exe

echo.
echo ---------------------------------
echo You can continue AFTER closing FP
echo ---------------------------------
echo.
pause
echo kill DMDExt
taskkill /f /im "dmdext.exe"

echo kill FP.exe
taskkill /f /im "Future Pinball.exe"

I have another file called FPLauncher.bat in my FP folder that opens an .fpt on double-click for when I don't want to edit anything and just play. You'll have to associate your .fpt files with it first.

@echo off
c:
cd "C:\Emus\Future Pinball\DMDext"
start /min "" "dmdext.exe" mirror --source=futurepinball -q --virtual-stay-on-top --fps 60 -g "[GAMENAME]" --use-ini="C:\Emus\Future Pinball\DMDext\DmdDevice.ini"

cd "C:\Emus\Future Pinball\BAM\"

echo.
echo ---------------------------------------------------------------
echo This windows should close automatically AFTER you exit the game
echo ---------------------------------------------------------------
echo.

FPLoader.exe /STAYINRAM /open %1 /PLAY /exit

echo kill DMDExt
taskkill /f /im "dmdext.exe"

echo Make sure Future Pinball.exe is killed
taskkill /f /im "Future Pinball.exe"

Have fun with your new DMD display :)

Attached picture shows it working. It counts as a cab, right? :D
 

Attachments

  • signal-2022-09-18-16-28-42-945.jpg
    signal-2022-09-18-16-28-42-945.jpg
    158.3 KB · Views: 43
Last edited:
Now that you have everything working above, time to use this as a monitor for backglass and DMD for tables that do have B2S files available.

B2S files are only available for VP as far as I know, feel free to correct me.

Before you proceed, make sure your app is connected to your PC. I've read that it is recommended to have the monitors seen by windows DIsplay Settings aligned side-by-side with the following order:

Playfield (ID1) -> Backglass (ID2) -> DMD (ID3)

In this case you'll have just 2 monitors ID1 on the left and ID2 on the right and that's fine. Just make sure you align them properly first. Then
  • go to <drive>:\PATH_TO\Visual Pinball\Tables
  • run B2SBackglassServerRegisterApp.exe as Administrator
  • unzip the attached file to that same folder (ignore b2s_setup.exe - I've deleted it)
  • if you have a ScreenRes.txt rename it to something else as a backup (or delete it)
  • run B2S_ScreenResIdentifier.exe and press ... 2-screen setup
  • accept the software recommendation
    • all goes well 2 of the windows will move into your mobile device
  • save settings and exit
  • Launch a table that as a .directb2s file
  • right-click the backglass and in the options window uncheck Error message without backglass.
    • This prevents annoying popup window saying there's no backglass to load.

To see this in action whenever you have a table with a b2s file just put them side by side. the .b2s file should have the same name as the table and be in the same folder.

That's it.
 

Attachments

  • B2S_ScreenResIdentifier.zip
    20.3 KB · Views: 21
Last edited:
Maybe you could post a photo of the setup with the backglass.
 
I'm sure I have one or 2 around the forum but here they are anyway.
Future pinball, MAME and Visual pinball

Also have one playing shooting games with a sinden lightgun but I'm on it and I don't want to scare anyone :)
 

Attachments

  • 20230205_181052.jpg
    20230205_181052.jpg
    1.9 MB · Views: 17
  • 20230120_173336.jpg
    20230120_173336.jpg
    1.5 MB · Views: 18
  • 20221230_161918.jpg
    20221230_161918.jpg
    1.4 MB · Views: 17
Looks cool! You are probably aware I like to play with a rotated display. I do have an iPad that I could use for a second screen. Nice idea.
 
The rotated display is a must for VP. The main reason I decided to search for a solution without buying a new monitor, actually.
 
Just got this set up on an LG Samsung Aristo 4 phone, to be used as a small screen for the table instructions. Everything is working well, but my question is:



How do you go about powering on/off your "additional monitor", whether it be a tablet or phone using spacedesk?

Would you have to power on your device, manually open spacedesk and connect as monitor, then proceed to open your pinball front end etc...

Thank you for any help and advice :)
 
SpaceDesk starts with the windows at boot.
My tablet is always connected to USB so it's always on standby with the spacedesk app running. I just press the power on button to start it and it automatically connects to the PC.

Exception made IF I reboot my PC because my tablet is old and I'm running the mirror via USB. I have an app to enabled USB tethering that I have to press. Then it switch to spacedesk app and it connects.

VPX doesn't like this so I always go to vpx vido preferences to check that the primary monitor is the "playfield" monitor. And B2S has to be reconfigured. all this takes 1m but it still annoys me :D
 
General chit-chat
Help Users
You can interact with the ChatGPT Bot in any Chat Room and there is a dedicated room. The command is /ai followed by a space and then your ? or inquiry.
ie: /ai What is a EM Pinball Machine?
  • No one is chatting at the moment.
      Chat Bot Mibs Chat Bot Mibs: roachie has left the room.
      Back
      Top