Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pinball Arcade Cabinet Support #7

Closed
sebinouse opened this issue Sep 16, 2018 · 8 comments
Closed

Pinball Arcade Cabinet Support #7

sebinouse opened this issue Sep 16, 2018 · 8 comments

Comments

@sebinouse
Copy link

sebinouse commented Sep 16, 2018

I've this error message when I try to launch the cabinet dedicated exe of Pinball Arcade.
img_1480
If I click "Ignore" several times (about x6) the application runs in background behind PinballY, and PinballY does not see the program running.

No issue if I run directly PinballArcadeCabinet.exe from windows explorer with PinballY running in background.

Do we need a specific Visual C++ runtimes version ?
(I've got a Kinect v2 which is not connected for the time being, tell me if it's related)

@mjrgh
Copy link
Owner

mjrgh commented Sep 16, 2018

Hi - that error is coming from Pinball Arcade, and I believe it's because you're trying to launch its EXE directly rather than through Steam. You have to launch it through Steam.exe. One other person ran into this also and the solution was to launch via Steam.exe. I think the program is just not set up to launch directly. I know you said you were able to do that from the Windows desktop, so maybe it's possible, but there must be something different about doing it that way that's letting it find Steam properly. At any rate, I don't know what that special something is, so I'm afraid I can't help you - if you do track it down, though, please let me know so I can pass it along to anyone else who wants to run it that way.

(And no, I don't think it has anything to do with what else you have installed. The error message is coming from DirectX.)

@sebinouse
Copy link
Author

OK I'll try to find out something to make it work.

@mjrgh
Copy link
Owner

mjrgh commented Sep 16, 2018

You might try looking at the Steam forums - if you do a web search for "pinballarcade11.exe", there are a bunch of posts from other people struggling with getting the DX11 version to launch directly. There might be some tricks they've figured out that would also apply to the cabinet version, since that DX assertion error you ran into also happens with the pinballarcade11.exe version when launched directly.

@sebinouse
Copy link
Author

sebinouse commented Sep 18, 2018

I managed to get rid of this error by using a script yo hide PinballY before launching PinballArcade cabinet.

An other user, GAH1068, reported the same issue and was killing PinballY before launch.

System7 = Pinball Arcade Arcooda
System7.Enabled = 1
System7.MediaDir =
System7.DatabaseDir =
System7.Class =
System7.Exe = C:\Scripts\Run_Arcooda.exe
System7.Parameters =
System7.Process = PinballArcadeCabinet.exe
System7.StartupKeys =
System7.TablePath =
System7.NVRAMPath =
System7.DefExt =
System7.DOFTitlePrefix = FX3
System7.RunBeforePre =
System7.RunBefore =
System7.RunAfter =
System7.RunAfterPost =

Run_Arcooda AHK script compiled to exe

;ROTATE SCREEN
Run, "C:\Scripts\display.exe" /device 1 /rotate 90 /display none,, Hide

;LAUNCH
WinHide, PinballY
SetWorkingDir, C:\Program Files (x86)\Steam\steamapps\common\PinballArcade
Process, Close, PinballArcadeCabinet.exe
Run "C:\Program Files (x86)\Steam\steamapps\common\PinballArcade\PinballArcadeCabinet.exe"
WinShow, PinballArcadeCabinet

;PRESS ESC TO QUIT
~Escape::
Process, Close, PinballArcadeCabinet.exe
Run, "C:\Scripts\display.exe" /device 1 /rotate 0 /display none,, Hide
WinShow, PinballY

Sleep 1000
ExitAPP
return

@mjrgh
Copy link
Owner

mjrgh commented Sep 18, 2018

That's a great discovery. There must be some conflict in Pinball Arcade's startup code with having another D3D11 window on the screen at the same time, although I don't know why that should be an issue. At any rate, it's good to hear there's a workaround. I can pass this along to anyone else who runs into it.

@mjrgh
Copy link
Owner

mjrgh commented Sep 20, 2018

Try out the new Alpha 21 when you get a chance. It should eliminate the need to hide any windows. Just follow the new recipe in the System Options help file for Pinball Arcade DX11, substituting the cabinet exe.

The source of the assert failures turned out to be that PinballY was launching Pinball Arcade with the initial window open mode set to "minimized". The Pinball Arcade program was evidently trying to use the 0x0 pixel size of the minimized window to set up its DX11 buffers, which caused all kinds of internal errors. I added a new Window Mode option to the system settings, which you can set to "Show" for Pinball Arcade launches. The DX11 version also needs a couple of environment variables to be set, or it won't launch properly, but I guess that must not be required for the cabinet version given that you got it to launch on its own without them.

@sebinouse
Copy link
Author

I've been testing for several minutes ... and it's working great ! Thanks A LOT !

@mjrgh
Copy link
Owner

mjrgh commented Sep 20, 2018

Great! Thanks for testing it out. I'll close this issue out for now - feel free to reopen it if you run into any new problems with it.

@mjrgh mjrgh closed this as completed Sep 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants