Commit Graph

85 Commits

Author SHA1 Message Date
Henrik Rydgård
b0a22fb5c7 Redirect the user to download the D3D9 runtime if D3D9 is not available and they don't want to switch to OpenGL.
Maybe should also update the messagebox text somehow...
2018-03-25 00:46:48 +01:00
aliaspider
54d9406713 fix mingw and msvc cmake builds. 2018-03-23 03:18:13 +01:00
Unknown W. Brackets
17bcb080f0 GLES: Fix shutdown while stepping. 2018-02-11 15:19:16 -08:00
Unknown W. Brackets
cdf378d20c GLES: Prevent race condition on shutdown.
emuThreadState might become STOPPED before the last frame has been run,
which can cause WaitUntilQueueIdle to hang.

It's simpler just to wait until StopThread() is called, since it now is.
This will line up properly with run_.
2018-02-11 11:40:11 -08:00
Unknown W. Brackets
586e35ad23 Windows: Prevent shutdown lag for non-GL.
For Vulkan/D3D, it was taking an extra second to quit.
2018-02-10 16:55:51 -08:00
Unknown W. Brackets
2bec3bf3ac Windows: Trigger StopThread() on shutdown.
Otherwise, we end up hanging in the loop waiting for emuThreadState to
become STOPPED.  It actually has, but ThreadFrame() will block until a new
frame is queued... while will never happen, because the emuthread has
stopped.
2018-02-10 16:55:44 -08:00
Henrik Rydgård
ae19c48138 Cleanup the Windows thread stuff to work like the other platforms. Not quite perfect yet. 2018-02-07 16:00:29 +01:00
Henrik Rydgård
7f30037e45 Android: Fix emuthread management to exit cleanly without hanging. Helps with task switching on Android. 2018-02-07 13:11:43 +01:00
Unknown W. Brackets
9945e011c6 GLES: Avoid a shutdown race condition.
Also handle DeviceLost before shutdown better.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
fdca06d208 More work on shutdown, still hanging though. 2018-01-27 15:10:17 +01:00
Henrik Rydgård
af6431986d OpenGL: Now run GL on a secondary thread. Sync issues remain. 2018-01-27 15:10:17 +01:00
Henrik Rydgård
465939e1c8 Minor fixes, indentation and comments 2018-01-27 15:10:17 +01:00
Henrik Rydgård
42f2312030 Remove the old CPU threading remains, start redesigning interfaces. 2018-01-27 15:10:17 +01:00
Unknown W. Brackets
d6da758ed3 GPU: Remove duplicate BACKEND constants. 2017-12-26 15:55:24 -08:00
Henrik Rydgård
2822a4f187 Win32: Use the standard thread APIs to manage the emu thread. 2017-12-19 15:27:56 +01:00
Henrik Rydgård
6a1fa728d8 Remove Globals.h 2017-08-31 17:15:22 +02:00
Henrik Rydgard
5974e0ee6d Work towards a clean vulkan shutdown. 2017-05-07 10:40:11 +02:00
Unknown W. Brackets
793178c106 Windows: Initialize WindowsHost in EmuThread.
This seems like a more appropriate place, and a more appropriate thread,
for it to be initialized on.
2017-05-05 06:53:48 -07:00
Henrik Rydgard
d3ff35b2c0 Fix to partial restarts (when switching backends), plus misc. Helps #9666 2017-05-05 12:31:06 +02:00
Unknown W. Brackets
90f3ae14e0 Windows: Simplify host shutdown.
The whole nativeHost/oldHost thing is unnecessary.

This also fixes gl lost holder mismatches.
2017-04-29 12:04:54 -07:00
Unknown W. Brackets
e8e65881b8 Windows: Avoid restarting completely on GPU change.
This retains the logger, avoids an annoying window open/close, and most
importantly for me: keeps the debugger attached.
2017-04-15 16:33:30 -07:00
Henrik Rydgard
4ced81b1df UWP: Hook up basic touch/mouse input. Start work on loading from a StorageFile. Getting closer to starting to boot a game 2017-03-23 10:02:28 +01:00
Unknown W. Brackets
9e390510df Remove legacy InputState. 2017-03-14 22:07:07 -07:00
Henrik Rydgard
26a2d42731 Big mutex overhaul - remove our custom ones, make them non-recursive where possible 2017-02-28 11:40:29 +01:00
Unknown W. Brackets
1c3e048070 Vulkan: Consistently init the graphicsContext.
This was only happening properly on Windows before.
2016-10-01 11:22:53 -07:00