aboutsummaryrefslogtreecommitdiff
path: root/src/yuzu/bootmanager.h
AgeCommit message (Collapse)Author
2023-01-10qt: unlock during signal emissionLiam
2022-12-23qt: fix 'Pause' menu item (#9497)liamwhite
2022-12-20Merge pull request #9463 from liamwhite/manager-eventsliamwhite
EmuThread: refactor
2022-12-18bootmanager: Use proper camera sizegerman77
2022-12-17bootmanager: Encapsulate all QCamera codegerman77
2022-12-17EmuThread: refactorLiam
2022-12-17Merge pull request #9451 from ameerj/camera-data-arrayliamwhite
camera: Use pre-allocated vector for camera data
2022-12-16camera: Use pre-allocated vector for camera dataameerj
And avoid an unnecessary copy
2022-12-12emu_thread: properly force shutdown for unresponsive guest programsLiam
2022-12-12let games gracefully exitGus Caplan
2022-12-03Merge pull request #9344 from liamwhite/nullbunnei
video_core: add null backend
2022-12-03Merge pull request #9289 from liamwhite/fruit-companyliamwhite
general: fix compile for Apple Clang
2022-11-28video_core: add null backendLiam
2022-11-22general: fix compile for Apple ClangLiam
2022-11-17Qt6: Disable IR Sensor when compiling with Qt6Kyle Kienapfel
Gating the IR Sensor code behind a macro like so `#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA` The YUZU_USE_QT_MULTIMEDIA flag is implemented in later commit Also the locale fix in src/yuzu/main.cpp is now gated against Qt6, as it causes compilation error
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda
[REUSE] is a specification that aims at making file copyright information consistent, so that it can be both human and machine readable. It basically requires that all files have a header containing copyright and licensing information. When this isn't possible, like when dealing with binary assets, generated files or embedded third-party dependencies, it is permitted to insert copyright information in the `.reuse/dep5` file. Oh, and it also requires that all the licenses used in the project are present in the `LICENSES` folder, that's why the diff is so huge. This can be done automatically with `reuse download --all`. The `reuse` tool also contains a handy subcommand that analyzes the project and tells whether or not the project is (still) compliant, `reuse lint`. Following REUSE has a few advantages over the current approach: - Copyright information is easy to access for users / downstream - Files like `dist/license.md` do not need to exist anymore, as `.reuse/dep5` is used instead - `reuse lint` makes it easy to ensure that copyright information of files like binary assets / images is always accurate and up to date To add copyright information of files that didn't have it I looked up who committed what and when, for each file. As yuzu contributors do not have to sign a CLA or similar I couldn't assume that copyright ownership was of the "yuzu Emulator Project", so I used the name and/or email of the commit author instead. [REUSE]: https://reuse.software Follow-up to 01cf05bc75b1e47beb08937439f3ed9339e7b254
2022-07-23yuzu: Add webcam support and rebase to latest masterNarr the Reg
2022-07-23yuzu: Hook qt camera to camera drivergerman77
2022-06-13yuzu: Eliminate variable shadowingMorph
2022-06-10Merge pull request #8318 from Docteh/cmake-qt56-entryMai M
Update some files with Qt 5.15.2 best practices in mind
2022-06-01core/debugger: Implement new GDB stub debuggerLiam
2022-05-29Update some files with Qt 5.15.2 best practices in mindKyle K
There was some discussion about updating to Qt6 and I figured I would work on some smaller parts. For Windows platform the WinMain function has moved from the Qt5::WinMain to a new one called Qt6::EntryPointPrivate Also Qt5 supports versionless CMake targets https://www.qt.io/blog/versionless-cmake-targets-qt-5.15 These other changes in this commit are to support Qt6, but in ways that don't mess with Qt5. src/yuzu/bootmanager.cpp: Qt6 complains about not being able to know to use QPoint or QPointF, picking QPoint src/yuzu/bootmanager.h: Qt6 prefers that QStringList.h be included rather than an empty class definition src/yuzu/configuration/configure_system.cpp: toULongLong intends to return unsigned 64 bit integer, but Settings::values.rng_seed is only 32 bits wide src/yuzu/game_list.cpp: Qt6 returns a different datatype for QStringList.length than Qt5, it used to be int, but in Qt6 its now qsizetype src/yuzu/loading_screen.cpp: Qt5's for QStyleOption.init say to switch to initFrom. The QStyleOption.init doesn't exist in Qt6 src/yuzu/main.cpp: Another QPointer and QStringList.size, lets standardize on size()
2022-05-23input_common: touch: Rewrite touch driver to support multiple touch pointsgerman77
2022-03-20yuzu: Reduce unused includesameerj
2021-11-24yuzu: Fix TAS from rebasegerman77
2021-11-24bootmanager: Use cross-platform keyboard inputgerman77
2021-11-24kraken: Address comments from reviewgerman77
Fix compiler bug
2021-11-24core/hid: Fully implement native mousegerman77
2021-11-24core/hid: Improve accuracy of the keyboard implementationgerman77
2021-11-24yuzu: Use new input on main and bootmanagergerman77
2021-11-24input_common: Rewrite keyboardgerman77
2021-11-21Added TAS controls to the menu under ToolsAdam Heinermann
2021-11-16bootmanager: Fix screenshot resolution factor usageameerj
Fixes screenshots at non integer scaling
2021-10-15bootmanager: Forward declare System and SystemResultStatusMorph
2021-10-15core: Move ResultStatus outside of SystemMorph
Allows it to be a forward declaration in other header files.
2021-10-07yuzu qt: Remove global system instances from config, WaitTree, mainlat9nq
2021-10-01yuzu: main: Register a callback for ExitMorph
2021-06-22bootmanager: Use std::stop_source for stopping emulationReinUsesLisp
Use its std::stop_token to abort shader cache loading. Using std::stop_token instead of std::atomic_bool allows the usage of other utilities like std::stop_callback.
2021-02-27inputCommon: Mouse fixesgerman77
2021-01-15Add mutitouch support for touch screensgerman
2020-12-31yuzu/main: fix mouse not showing on move and port citra-emu/citra#5476gal20
2020-12-18bootmanager: Add a check whether loading is completeMorph
2020-11-25Merge pull request #4976 from comex/poll-eventsRodrigo Locatti
Overhaul EmuWindow::PollEvents to fix yuzu-cmd calling SDL_PollEvents off main thread
2020-11-24frontend: yuzu (qt): Register a callback for ExecuteProgram.bunnei
2020-11-23Overhaul EmuWindow::PollEvents to fix yuzu-cmd calling SDL_PollEvents off ↵comex
main thread 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-29yuzu/main: Amend lifetime issues with InputSubsystemLioncash
Due to the way Qt performs destruction of parent/child widgets, we need to make the lifetime of the input subsystem shared across the main window and the render window.
2020-08-27input_common: Eliminate most global stateLioncash
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-06-27Clang Format.Fernando Sahmkow
2020-06-27General: Recover Prometheus project from harddrive failure Fernando Sahmkow
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host Timing, Reworks the Kernel's Scheduler, Introduce Idle State and Suspended State, Recreates the bootmanager, Initializes Multicore system.
2020-04-07yuzu: Drop SDL2 and Qt frontend Vulkan requirementsReinUsesLisp
Create Vulkan instances and surfaces from the Vulkan backend.