summaryrefslogtreecommitdiffstats
path: root/src/yuzu_tester/emu_window (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-01-15cmake: Remove yuzu_testerReinUsesLisp2-183/+0
We never ended up using yuzu_tester. Removing it saves code duplication with yuzu_cmd, and distribution size on prebuilt packages. For unit testing, we can use catch2 from guest code and dump the results to a file. Then execute yuzu from a script on ci if we want this to be automated.
2020-11-23Overhaul EmuWindow::PollEvents to fix yuzu-cmd calling SDL_PollEvents off main threadcomex2-5/+0
EmuWindow::PollEvents was called from the GPU thread (or the CPU thread in sync-GPU mode) when swapping buffers. It had three implementations: - In GRenderWindow, it didn't actually poll events, just set a flag and emit a signal to indicate that a frame was displayed. - In EmuWindow_SDL2_Hide, it did nothing. - In EmuWindow_SDL2, it did call SDL_PollEvents, but this is wrong because SDL_PollEvents is supposed to be called on the thread that set up video - in this case, the main thread, which was sleeping in a busyloop (regardless of whether sync-GPU was enabled). On macOS this causes a crash. To fix this: - Rename EmuWindow::PollEvents to OnFrameDisplayed, and give it a default implementation that does nothing. - In EmuWindow_SDL2, do not override OnFrameDisplayed, but instead have the main thread call SDL_WaitEvent in a loop.
2020-08-27input_common: Eliminate most global stateLioncash2-3/+8
Abstracts most of the input mechanisms under an InputSubsystem class that is managed by the frontends, eliminating any static constructors and destructors. This gets rid of global accessor functions and also allows the frontends to have a more fine-grained control over the lifecycle of the input subsystem. This also makes it explicit which interfaces rely on the input subsystem instead of making it opaque in the interface functions. All that remains to migrate over is the factories, which can be done in a separate change.
2020-04-07yuzu: Drop SDL2 and Qt frontend Vulkan requirementsReinUsesLisp2-8/+0
Create Vulkan instances and surfaces from the Vulkan backend.
2020-03-26Address review and fix broken yuzu-tester buildJames Rowe2-18/+33
2020-02-26frontend: sdl2: emu_window: Implement separate presentation thread.bunnei2-7/+0
2020-01-29yuzu: Implement Vulkan frontendReinUsesLisp2-1/+21
Adds a Qt and SDL2 frontend for Vulkan. It also finishes the missing bits on Vulkan initialization.
2019-06-10yuzutest: Support multiple tests per executableZach Hilman1-7/+6
2019-06-10yuzu_tester: Add SDL2-based EmuWindow that doesn't show the windowZach Hilman2-0/+164