If you have mulitple displays on your cabinet and find that randomly your backglass or vpx is showing on the wrong monitor…THEN YOU ARE NOT ALONE!
First, this has nothing to do with PinUP Popper. PinUP is designed with PIXEL x-position, y-position so windows monitor #'s are never used inside of PinUP stuffs so no need to touch any PinUP stuff.
OK, so what is the actually problem? Well windows can change the actually display #'s randomly on bootup. So with programs like B2S, if its setup to use Screen#2 and now windows changed the BG to Screen#3…you can see how that screws up your backglass. Similar to VPX, it can just randomly start on your DMD monitor for no reason. Yes, a few warm-reboots may get things back to normal.
BUT…. who wants to warm-reboot a bunch of times to start playing on their cab….if only there was….'NailBuster solution incoming“ :)
OK, first things first. The lastest B2S Server allows it to use pixel position instead of monitor #!! Awesome (Thanks RobX)…. so first we change b2s to use pixel x-position so that b2s always shows at correct location.
You need to manually open up your screenres.txt file (tables folder) and use line #6. Line 6 is x position for the backglass relative to the upper left corner of the Playfield screen so if you put a @3840
See here for help https://www.nailbuster.com/wikipinup/doku.php?id=b2s_dimension_location
then it will use @xposition instead of monitor#. The 'trick' here is you NEED to know the starting xposition of your normal backglass montior…It depends on your windows montior layout and other screen resolutions to know what your pixel xposition(left pixel) of your BG montior is. Im not going to get into that but for example, if you have a 4K playfield and BG to the right of it then @3840 would be your xposition for b2s.
For VPX, it use to use your primary display in prior versions but that changed and can get 'confused' by windows ID's changing. I wrote a small utility that you can run on windows startup (or you can do it on popper vpx launch).
For FP, same, as it can get 'hosed' by windows display #'s changing on a bootup. I wrote a small utility that you can run on windows startup (or you can do it on popper Future pinball launch).
This utilty will change a registry key to the proper montior id/name so that vpx and fp (and others) can work always on every bootup.
Grab util from here (remember to unblock zip!) and place into PinupSystem\Launch subfolder.
https://nailbuster.com/uploads/PuPWinIDFix.zip
The program is run with 4 parameters. <xpos> <ypos> <regkey> <0/1=to update key with DispName or DispID#>
So you will need to know a windows pixel location to convert to monitor. Your primary display is always going to be like xpos=1, ypos=1. Your backglass for a 4K setup could be xpos=4000,ypos=1.
Here's a sample of lines in my windows startup batch (before i run popper) First line is for VPX fixing, the next 2 lines is to fix Future pinball.
timeout /t 3 c:\PinUPSystem\Launch\PUPWinIDFix.exe 1 1 "Software\Visual Pinball\VP10\Player" "Display" 1 c:\PinUPSystem\Launch\PUPWinIDFix.exe 1 1 "Software\Future Pinball\GamePlayer\" "PlayfieldMonitorID" 0 c:\PinUPSystem\Launch\PUPWinIDFix.exe 4000 1 "Software\Future Pinball\GamePlayer\" "BackboxMonitorID" 0
note: One quick fyi, if you are rotating your emulators and Popper windows are moved by windows during rotate, on return to Popper you simply go into any game-menu and Popper will re-check all windows positions and auto-move back for you.