aboutsummaryrefslogtreecommitdiff
path: root/src/core/core.cpp
Commit message (Collapse)AuthorAgeFilesLines
* general: rename CurrentProcess to ApplicationProcessLiam2023-02-131-21/+21
|
* EmuThread: refactorLiam2022-12-171-12/+6
|
* general: improve handling of system startup failureLiam2022-12-061-1/+3
|
* core: Use atomic instead of a lock to protect is_paused.bunnei2022-11-261-6/+5
| | | | - This allows us to call IsPaused() elsewhere if we are holding the suspend lock.
* kernel: reinitialize after dram layout changeLiam2022-10-301-1/+8
|
* core: barrier service thread shutdownLiam2022-10-231-0/+1
|
* core: Initialize: Add missing braces.bunnei2022-10-181-2/+4
|
* core: core_timing: Re-initialize if single/multicore state changes.bunnei2022-10-181-5/+20
|
* core: Partially persist emulation state across game boots.bunnei2022-10-181-29/+36
|
* NVDRV: Further refactors and eliminate old code.Fernando Sahmkow2022-10-061-11/+0
|
* NVDRV: Refactor Host1xFernando Sahmkow2022-10-061-1/+1
|
* VideoCore: Refactor syncing.Fernando Sahmkow2022-10-061-0/+12
|
* Remove pause callbacks from coretimingKelebek12022-09-131-4/+0
|
* yuzu: Display current game version in multiplayer roomFearlessTobi2022-08-271-0/+9
| | | | Makes it easier for users to recognize connection errors caused by different game versions.
* chore: make yuzu REUSE compliantAndrea Pappacoda2022-07-271-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [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 b2eb10382941bef0914f4a0a4685b9033440aa9f
* network: Move global state into a seperate classFearlessTobi2022-07-251-3/+13
| | | | Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
* core: Fix -Wunused-variableFearlessTobi2022-07-251-1/+3
|
* yuzu: Add ui files for multiplayer roomsFearlessTobi2022-07-251-1/+16
|
* Project AndioKelebek12022-07-221-3/+48
|
* kernel: implement KProcess suspensionLiam2022-06-141-10/+8
|
* core/debugger: fix a number of shutdown deadlocksLiam2022-06-101-0/+6
|
* core/debugger: Implement new GDB stub debuggerLiam2022-06-011-4/+25
|
* Remove unused PrepareReschedule functionMerry2022-04-241-4/+0
|
* core: Reduce unused includesameerj2022-03-191-1/+0
|
* core: Don't shutdown a null GPUlat9nq2022-03-071-1/+3
| | | | | | | When CreateGPU fails, yuzu would try and shutdown the GPU instance regardless of whether any instance was actually created. Check for nullptr before calling its methods to prevent a crash.
* core: hle: kernel: KProcess: Pass in KResourceLimit on process creation.bunnei2022-02-211-1/+10
| | | | - This allows us to have a resource limit per process, rather than use the global system resource limit.
* gpu: Add shut down method to synchronize threads before destructionameerj2022-01-031-0/+2
|
* core: hle: kernel: Reflect non-emulated threads as core 3.bunnei2021-12-061-6/+0
|
* core: Register HIDgerman772021-11-241-3/+11
|
* Merge pull request #7279 from Morph1984/system-get-program-idMorph2021-11-041-1/+5
|\ | | | | general: Get the current process program id directly from the system
| * general: Get the current process program id directly from the systemMorph2021-11-041-0/+4
| | | | | | | | This allows us to avoid including KProcess' header file in files that only need to get the current process' program id.
| * general: Rename GetTitleID to GetProgramIDMorph2021-11-041-1/+1
| |
* | core: Reorder perf_stats destruction order on Shutdownameerj2021-11-041-1/+1
|/ | | | Avoids the gpu_core using perf_stats after it's been freed.
* core: Remove unused includesameerj2021-11-031-4/+0
|
* Revert PR7009Feng Chen2021-10-271-13/+3
|
* settings: Remove std::chrono usageameerj2021-10-171-2/+3
| | | | Alleviates the dependency on chrono for all files that include settings.h
* NvHost/Core: Address Feedback.Fernando Sahmkow2021-10-161-15/+19
|
* Suspend temporallyFernandoS272021-10-161-0/+27
|
* core: Move ResultStatus outside of SystemMorph2021-10-151-24/+25
| | | | Allows it to be a forward declaration in other header files.
* core: Remove static system instanceMorph2021-10-151-14/+1
|
* core: Add Exit and ExitCallbackMorph2021-10-011-0/+13
| | | | This allows ISelfController::Exit to stop the currently running application. This is typically used by homebrew to exit back to the homebrew menu after calling consoleExit with libnx.
* video_core: Fix jthread related hangs when stopping emulationameerj2021-09-231-1/+1
| | | | jthread on some compilers is more picky when it comes to the order in which objects are destroyed.
* gpu: Use std::jthread for async gpu threadameerj2021-09-151-5/+1
|
* core: Destroy main_process during shutdownameerj2021-09-131-3/+12
| | | | The main_process was never being cleaned up, causing a noticeable memory leak after subsequent launches. This change cleans up the memory during Core Shutdown, mitigating the leak.
* Revert "kernel: Various improvements to scheduler"bunnei2021-08-251-0/+6
|
* logging: Fix log filter during initializationameerj2021-08-241-1/+9
| | | | | | The log filter was being ignored on initialization due to the logging instance being initialized before the config instance, so the log filter was set to its default value. This fixes that oversight, along with using descriptive exceptions instead of abort() calls.
* Merge pull request #6869 from yzct12345/shiny-logs-in-the-fireplacebunnei2021-08-221-2/+7
|\ | | | | logging: Simplify and make thread-safe
| * logging: Simplify and make thread-safeyzct123452021-08-131-2/+7
| | | | | | | | | | | | | | | | | | This simplifies the logging system. This also fixes some lost messages on startup. The simplification is simple. I removed unused functions and moved most things in the .h to the .cpp. I replaced the unnecessary linked list with its contents laid out as three member variables. Anything that went through the linked list now directly accesses the backends. Generic functions are replaced with those for each specific use case and there aren't many. This change increases coupling but we gain back more KISS and encapsulation. With those changes it was easy to make it thread-safe. I just removed the mutex and turned a boolean atomic. I was planning to use this thread-safety in my next PR about stacktraces. It was actually async-signal-safety at first but I ended up using a different approach. Anyway getting rid of the linked list is important for that because have the list of backends constantly changing complicates things.
* | core: hle: kernel: Reflect non-emulated threads as core 3.bunnei2021-08-071-6/+0
|/
* general: Rename "Frame Limit" references to "Speed Limit"ameerj2021-07-231-5/+5
| | | | | This setting is best referred to as a speed limit, as it involves the limits of all timing based aspects of the emulator, not only framerate. This allows us to differentiate it from the fps unlocker setting.