Jason Carr Posted June 6, 2019 Share Posted June 6, 2019 4 minutes ago, MazJohn [Mr Arcade] said: Jason, OK, so when i changed the default script in retroarch to "sleep 50" and re-started big-box, I can now no longer exit a game using the defined "hold button" and "close active window" using my Xbox one controller.... I assume this is to be expected behavior since the default script is no longer running...... ? I then reset to use the default retroarch script again, and within 3 game exits, it crashed again on the third try. This time it didnt even come back with an error dump at all... it just competely exited Launchbox xompletely and I am returned immediately to the windows desktop. (running 9.8 official) Thank you.... Okay, thanks for that testing. What happens if you use Escape to exit Retroarch instead of controller automation? Quote Link to comment Share on other sites More sharing options...
MazJohn [Mr Arcade] Posted June 6, 2019 Author Share Posted June 6, 2019 18 minutes ago, Jason Carr said: Okay, thanks for that testing. What happens if you use Escape to exit Retroarch instead of controller automation? Interestingly, with default script, using the escape key to exit games from retroarch did not result in a crash in about 20 tries on exit.... I then i started exiting games again using the Xbox one controller, using the assigned "hold button" and "close active window" (shoulder buttons 5&6).... got 2 crashes straight to desktop again out of about 20 tries. No error dump provided, just sent directly back to the windows 10 desktop.... Hopefully this might help in some way to narrow it down.... If you still need more extensive testing to pinpoint root cause , let me know- i could continue over a longer time period to collect results. thanks... Quote Link to comment Share on other sites More sharing options...
Jason Carr Posted June 6, 2019 Share Posted June 6, 2019 1 minute ago, MazJohn [Mr Arcade] said: Interestingly, with default script, using the escape key to exit games from retroarch did not result in a crash in about 20 tries on exit.... I then i started exiting games again using the Xbox one controller, using the assigned "hold button" and "close active window" (shoulder buttons 5&6).... got 2 crashes straight to desktop again out of about 20 tries. No error dump provided, just sent directly back to the windows 10 desktop.... Hopefully this might help in some way to narrow it down.... If you still need more extensive testing to pinpoint root cause , let me know- i could continue over a longer time period to collect results. thanks... It sounds like the issue is somehow caused by the AutoHotkey script then, which is what I figured. The default AutoHotkey script is this: SetTitleMatchMode, 2 If WinActive(""DOSBox"") { Send {Ctrl down} Sleep 50 Send {F9 down} Sleep 50 Send {F9 up} Sleep 50 Send {Ctrl up} Exit } If WinActive(""Project64"") { Process, Close, Project64.exe Exit } If WinActive(""redream"") { Send {Alt down} Sleep 50 Send {F4 down} Sleep 50 Send {F4 up} Sleep 50 Send {Alt up} Exit } Send {Escape down} Sleep 50 Send {Escape up} Sleep 500 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {Alt down} Sleep 50 Send {F4 down} Sleep 50 Send {F4 up} Sleep 50 Send {Alt up} Exit It seems like something in that script is causing the issue. Try replacing the Retroarch AutoHotkey script with the below: Send {Escape down} Sleep 50 Send {Escape up} Quote Link to comment Share on other sites More sharing options...
MazJohn [Mr Arcade] Posted June 6, 2019 Author Share Posted June 6, 2019 (edited) 43 minutes ago, Jason Carr said: It sounds like the issue is somehow caused by the AutoHotkey script then, which is what I figured. The default AutoHotkey script is this: SetTitleMatchMode, 2 If WinActive(""DOSBox"") { Send {Ctrl down} Sleep 50 Send {F9 down} Sleep 50 Send {F9 up} Sleep 50 Send {Ctrl up} Exit } If WinActive(""Project64"") { Process, Close, Project64.exe Exit } If WinActive(""redream"") { Send {Alt down} Sleep 50 Send {F4 down} Sleep 50 Send {F4 up} Sleep 50 Send {Alt up} Exit } Send {Escape down} Sleep 50 Send {Escape up} Sleep 500 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {Alt down} Sleep 50 Send {F4 down} Sleep 50 Send {F4 up} Sleep 50 Send {Alt up} Exit It seems like something in that script is causing the issue. Try replacing the Retroarch AutoHotkey script with the below: Send {Escape down} Sleep 50 Send {Escape up} Jason, Ok, so I tested with the above provided retroarch exit script. counted 30 game exit attempts made- and NO CRASHES occured so far.... I typically would think I would have gotten at least 1 crash by now.... ( using Xbox controller automation with hold button and close active window) Edited June 6, 2019 by MazJohn [Mr Arcade] Quote Link to comment Share on other sites More sharing options...
Jason Carr Posted June 6, 2019 Share Posted June 6, 2019 2 hours ago, MazJohn [Mr Arcade] said: Jason, Ok, so I tested with the above provided retroarch exit script. counted 30 game exit attempts made- and NO CRASHES occured so far.... I typically would think I would have gotten at least 1 crash by now.... ( using Xbox controller automation with hold button and close active window) Awesome, okay, that confirms that it's the default AutoHotkey script that's causing the problem. Can you try the below script to see if it fixes it? If so, I can update the default script: SetTitleMatchMode, 2 If WinActive(""DOSBox"") { Send {Ctrl down} Sleep 50 Send {F9 down} Sleep 50 Send {F9 up} Sleep 50 Send {Ctrl up} Exit } If WinActive(""Project64"") { Process, Close, Project64.exe Exit } If WinActive(""redream"") { Send {Alt down} Sleep 50 Send {F4 down} Sleep 50 Send {F4 up} Sleep 50 Send {Alt up} Exit } Send {Escape down} Sleep 50 Send {Escape up} Sleep 500 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {Alt down} Sleep 50 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {F4 down} Sleep 50 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {F4 up} Sleep 50 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {Alt up} Exit Quote Link to comment Share on other sites More sharing options...
MazJohn [Mr Arcade] Posted June 6, 2019 Author Share Posted June 6, 2019 (edited) 5 hours ago, Jason Carr said: Awesome, okay, that confirms that it's the default AutoHotkey script that's causing the problem. Can you try the below script to see if it fixes it? If so, I can update the default script: SetTitleMatchMode, 2 If WinActive(""DOSBox"") { Send {Ctrl down} Sleep 50 Send {F9 down} Sleep 50 Send {F9 up} Sleep 50 Send {Ctrl up} Exit } If WinActive(""Project64"") { Process, Close, Project64.exe Exit } If WinActive(""redream"") { Send {Alt down} Sleep 50 Send {F4 down} Sleep 50 Send {F4 up} Sleep 50 Send {Alt up} Exit } Send {Escape down} Sleep 50 Send {Escape up} Sleep 500 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {Alt down} Sleep 50 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {F4 down} Sleep 50 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {F4 up} Sleep 50 If WinActive(""LaunchBox"") { Exit } If WinActive(""Fusion"") { Exit } Send {Alt up} Exit using that script i get the above error on exit with xbox controller automation. Edited June 6, 2019 by MazJohn [Mr Arcade] Quote Link to comment Share on other sites More sharing options...
Jason Carr Posted June 6, 2019 Share Posted June 6, 2019 Hmm, okay. Did you copy and paste it? Maybe the forums messed up the quotes. I'll put a beta to test. Quote Link to comment Share on other sites More sharing options...
Jason Carr Posted June 6, 2019 Share Posted June 6, 2019 Just put out beta 2. You can test by resetting to the default exit script for Retroarch. If everything works, I'll go ahead and put out the official. Quote Link to comment Share on other sites More sharing options...
MazJohn [Mr Arcade] Posted June 6, 2019 Author Share Posted June 6, 2019 (edited) 7 hours ago, Jason Carr said: Just put out beta 2. You can test by resetting to the default exit script for Retroarch. If everything works, I'll go ahead and put out the official. Regrettably, got a crash on beta 2 after 8 game exit attempts ... error dDebug 2019-06-06 05-43-50 PM.logump and log file attached. I do appreciate all you have aready done to try and help.... Cannot set Visibility to Visible or call Show, ShowDialog, Close, or WindowInteropHelper.EnsureHandle while a Window is closing. App: Big BoxDebug 2019-06-06 05-43-50 PM.log Version: 9.9-beta-2 Type: System.InvalidOperationException Site: Void VerifyNotClosing() Source: PresentationFramework at System.Windows.Window.VerifyNotClosing() at System.Windows.Window.InternalClose(Boolean shutdown, Boolean ignoreCancel) at System.Windows.Application.DoShutdown() at System.Windows.Application.ShutdownImpl() at System.Windows.Application.ShutdownCallback(Object arg) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) Recent Log: 5:44:49 PM Music.StopAndResumeBackground Start 5:44:49 PM Music.Kill Start 5:44:49 PM Music.Kill Finished 5:44:50 PM Music.StopAndResumeBackground Start 5:44:50 PM Music.StopAndResumeBackground Start 5:44:51 PM Music.Pause Start 5:44:51 PM Music.Pause Start 5:44:52 PM Music.Pause Start 5:46:11 PM Music.Resume Start 5:46:13 PM Music.Kill Start 5:46:13 PM Music.Kill Finished 5:46:16 PM Music.StopAndResumeBackground Start 5:46:17 PM Music.StopAndResumeBackground Start 5:46:17 PM Music.StopAndResumeBackground Start 5:46:19 PM Music.StopAndResumeBackground Start 5:46:19 PM Music.StopAndResumeBackground Start 5:46:20 PM Music.StopAndResumeBackground Start 5:46:20 PM Music.Kill Start 5:46:20 PM Music.Kill Finished 5:46:21 PM Music.StopAndResumeBackground Start 5:46:21 PM Music.StopAndResumeBackground Start 5:46:23 PM Music.Pause Start 5:46:23 PM Music.Pause Start 5:46:23 PM Music.Pause Start 5:49:32 PM Music.Resume Start 5:49:35 PM Music.Kill Start 5:49:35 PM Music.Kill Finished 5:49:39 PM Music.StopAndResumeBackground Start 5:49:39 PM Music.StopAndResumeBackground Start 5:49:41 PM Music.StopAndResumeBackground Start 5:49:41 PM Music.Kill Start 5:49:41 PM Music.Kill Finished 5:49:42 PM Music.StopAndResumeBackground Start 5:49:42 PM Music.StopAndResumeBackground Start 5:49:43 PM Music.Pause Start 5:49:43 PM Music.Pause Start 5:49:44 PM Music.Pause Start 5:50:20 PM Music.Resume Start 5:50:22 PM Music.Kill Start 5:50:22 PM Music.Kill Finished 5:50:24 PM Music.StopAndResumeBackground Start 5:50:24 PM Music.StopAndResumeBackground Start 5:50:25 PM Music.StopAndResumeBackground Start 5:50:25 PM Music.Kill Start 5:50:25 PM Music.Kill Finished 5:50:31 PM Music.StopAndResumeBackground Start 5:50:31 PM Music.Kill Start 5:50:31 PM Music.Kill Finished 5:50:33 PM Music.StopAndResumeBackground Start 5:50:33 PM Music.StopAndResumeBackground Start 5:50:34 PM Music.StopAndResumeBackground Start 5:50:34 PM Music.Kill Start 5:50:34 PM Music.Kill Finished 5:50:34 PM Music.StopAndResumeBackground Start 5:50:34 PM Music.StopAndResumeBackground Start 5:50:35 PM Music.Pause Start 5:50:35 PM Music.Pause Start 5:50:36 PM Music.Pause Start 5:50:45 PM Music.Resume Start 5:50:47 PM Music.Kill Start 5:50:47 PM Music.Kill Finished 5:50:49 PM Music.StopAndResumeBackground Start 5:50:49 PM Music.StopAndResumeBackground Start 5:50:50 PM Music.StopAndResumeBackground Start 5:50:50 PM Music.Kill Start 5:50:50 PM Music.Kill Finished 5:50:51 PM Music.StopAndResumeBackground Start 5:50:51 PM Music.StopAndResumeBackground Start 5:50:53 PM Music.Pause Start 5:50:53 PM Music.Pause Start 5:50:53 PM Music.Pause Start 5:51:10 PM Music.Pause Start 5:51:10 PM Music.Kill Start 5:51:10 PM Music.Kill Finished 5:51:13 PM Exception Edited June 6, 2019 by MazJohn [Mr Arcade] Quote Link to comment Share on other sites More sharing options...
Jason Carr Posted June 7, 2019 Share Posted June 7, 2019 Okay, so weird. It seems like AutoHotkey scripts are just not detecting windows like they should on your system. Doesn't really make much sense to me. We could spend all year troubleshooting AutoHotkey scripts, but I don't see much benefit to that since we can't really fix AutoHotkey itself anyways. At least we know a script that works. But the problem is, if I remove everything else from the default script, it will break the exit functionality for other emulators that is currently working for other folks out of the box. So I guess for now, we'll just have to go with what we have, and you can change your emulators to use the minimal script that worked. Quote Link to comment Share on other sites More sharing options...
MazJohn [Mr Arcade] Posted June 14, 2019 Author Share Posted June 14, 2019 Thank you Jason, Will go with minimal script for the time being... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.