summaryrefslogtreecommitdiff
path: root/src/core (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Clang formatGravatar David Marcec2019-07-131-2/+4
| | | | | |
* | | | | | "AudioRenderer" thread should have a unique nameGravatar David Marcec2019-07-132-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Creating multiple "AudioRenderer" threads cause the previous thread to be overwritten. The thread will name be renamed to AudioRenderer-InstanceX, where X is the current instance number.
* | | | | | Merge pull request #2717 from SciresM/unmirror_memoryGravatar bunnei2019-07-112-7/+34
|\ \ \ \ \ \ | | | | | | | | | | | | | | Restore memory perms on svcUnmapMemory/UnloadNro
| * | | | | | Restore memory perms on svcUnmapMemory/UnloadNroGravatar Michael Scire2019-07-112-7/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to PR, Yuzu did not restore memory to RW- on unmap of mirrored memory or unloading of NRO. (In fact, in the NRO case, the memory was unmapped instead of reprotected to --- on Load, so it was actually lost entirely...) This PR addresses that, and restores memory to RW- as it should. This fixes a crash in Super Smash Bros when creating a World of Light save for the first time, and possibly other games/circumstances.
* | | | | | | Merge pull request #2723 from lioncash/memGravatar bunnei2019-07-1110-67/+6
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | core/arm: Remove obsolete Unicorn memory mapping
| * | | | | | | yuzu: Remove setting for using UnicornGravatar Lioncash2019-07-114-16/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The JIT is mature enough that this setting can be removed, falling back to Unicorn only on unsupported architectures. Any missing features from Unicorn (of which there are extremely few), are mostly developer-oriented, which most users don't care about. Features should be coordinated with the JIT, not the interpreter, anyhow.
| * | | | | | | core/arm: Remove obsolete Unicorn memory mappingGravatar Lioncash2019-07-116-51/+0
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was initially necessary when AArch64 JIT emulation was in its infancy and all memory-related instructions weren't implemented. Given the JIT now has all of these facilities implemented, we can remove these functions from the CPU interface.
* | | | | | | service/am: Implement IsAutoSleepDisabledGravatar Lioncash2019-07-112-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This simply queries whether or not auto-sleep facilities are disabled and has no special handling. It's a basic getter function.
* | | | | | | service/am: Implement SetAutoSleepDisabledGravatar Lioncash2019-07-112-1/+23
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provides a basic implementation of SetAutoSleepDisabled. Until idle handling is implemented, this is about the best we can do. In the meantime, provide a rough documenting of specifics that occur when this function is called on actual hardware.
* | | | | | Merge pull request #2700 from ogniK5377/GetFriendListGravatar bunnei2019-07-101-1/+34
|\ \ \ \ \ \ | | | | | | | | | | | | | | IFriendService::GetFriendList
| * | | | | | IFriendService::GetFriendListGravatar David Marcec2019-07-091-1/+34
| | |_|/ / / | |/| | | | | | | | | | | | | | | | We don't have any friends implemented in Yuzu yet so it doesn't make sense to return any friends. For now we'll be returning 0 friends however the information provided will allow a proper implementation of this cmd when needed.
* | | | | | Merge pull request #2611 from DarkLordZach/pm-info-cmdGravatar bunnei2019-07-103-16/+116
|\ \ \ \ \ \ | | | | | | | | | | | | | | pm: Implement various pm commands for finding process and title IDs
| * | | | | | pm: Implement pm:shell and pm:dmnt GetApplicationPidGravatar Zach Hilman2019-06-263-7/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Returns the process ID of the current application or 0 if no app is running.
| * | | | | | pm: Implement pm:dmnt GetTitlePidGravatar Zach Hilman2019-06-261-7/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Takes a title ID and searches for a matching process, returning error if it doesn't exist, otherwise the process ID.
| * | | | | | pm: Implement pm:info GetTitleIdGravatar Zach Hilman2019-06-261-2/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Searches the process list for a process with the specified ID, returning the title ID if it exists.
* | | | | | | Merge pull request #2650 from DarkLordZach/mii-iface-verGravatar bunnei2019-07-101-1/+15
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | mii: Implement IDatabaseService SetInterfaceVersion
| * | | | | | mii: Implement IDatabaseService SetInterfaceVersionGravatar Zach Hilman2019-07-061-1/+15
| | | | | | | | | | | | | | | | | | | | | Appears to set a member variable used to affect the API that games access, and the method used to store data.
* | | | | | | Merge pull request #2657 from ogniK5377/npad-assignmentsGravatar Zach Hilman2019-07-086-3/+100
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | hid:StartLrAssignmentMode, hid:StopLrAssignmentMode, hid:SwapNpadAssignment
| * | | | | | | addressed issuesGravatar David Marcec2019-07-081-6/+7
| | | | | | | |
| * | | | | | | hid:StartLrAssignmentMode, hid:StopLrAssignmentMode, hid:SwapNpadAssignmentGravatar David Marcec2019-07-016-3/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | StartLrAssignmentMode and StopLrAssignmentMode don't require any implementation as it's just used for showing the screen of changing the controller orientation if the user wishes to do so. Ever since #1634 this has not been needed as users can specify the controller orientation from the config and swap at any time. We store a private member just in case this gets used for anything extra in the future
* | | | | | | | Merge pull request #2651 from DarkLordZach/apm-boost-mode-1Gravatar bunnei2019-07-0714-57/+258
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | apm: Initial implementation of performance config and boost mode
| * | | | | | | | am: Implement SetCpuBoostMode in terms of APMGravatar Zach Hilman2019-06-285-13/+26
| | | | | | | | |
| * | | | | | | | core: Keep instance of APM ControllerGravatar Zach Hilman2019-06-282-0/+20
| | | | | | | | |
| * | | | | | | | apm: Implement SetCpuBoostModeGravatar Zach Hilman2019-06-282-0/+14
| | | | | | | | |
| * | | | | | | | apm: Add getters for performance config and modeGravatar Zach Hilman2019-06-282-33/+49
| | | | | | | | |
| * | | | | | | | apm: Add apm:am serviceGravatar Zach Hilman2019-06-282-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8.0.0+ identical version of apm
| * | | | | | | | apm: Add Controller class to manage speed data and applicationGravatar Zach Hilman2019-06-283-0/+140
| | |_|/ / / / / | |/| | | | | |
* | | | | | | | Merge pull request #2642 from DarkLordZach/fsp-log-2Gravatar bunnei2019-07-079-28/+99
|\ \ \ \ \ \ \ \ | |_|_|_|/ / / / |/| | | | | | | fsp-srv: Implement Access Logging Functionality
| * | | | | | | fsp-srv: Implement GetAccessLogVersionInfoGravatar Zach Hilman2019-06-282-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Returns some misc. data about logging to help the game determine if it should log.
| * | | | | | | reporter: Add report class for filesystem access logsGravatar Zach Hilman2019-06-282-0/+25
| | | | | | | |
| * | | | | | | fsp-srv: Implement OutputAccessLogToSdCardGravatar Zach Hilman2019-06-287-27/+62
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | Allows games to log data to the SD.
* | | | | | | Merge pull request #2674 from lioncash/reporterGravatar Zach Hilman2019-07-062-15/+35
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | core/reporter: Minor changes
| * | | | | | | core/reporter: Allow moves into SaveToFile()Gravatar Lioncash2019-07-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Taking the json instance as a constant reference, makes all moves into the parameter non-functional, resulting in copies. Taking it by value allows moves to function.
| * | | | | | | core/reporter: Add missing includes and forward declarationsGravatar Lioncash2019-07-052-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds missing inclusions to prevent potential compilation issues.
| * | | | | | | core/reporter: Remove unnecessary namespace qualifiersGravatar Lioncash2019-07-052-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Reporter class is part of the Core namespace, so the System class doesn't need to be qualified.
| * | | | | | | core/reporter: Remove pessimizing move in GetHLERequestContextData()Gravatar Lioncash2019-07-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can inhibit copy-elision, so we can remove this redundant move.
| * | | | | | | core/reporter: Make bracing consistentGravatar Lioncash2019-07-051-8/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes all control statements braced, regardless of their size, making code more uniform.
| * | | | | | | core/reporter: Return in error case in SaveToFile()Gravatar Lioncash2019-07-051-1/+3
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | If the path couldn't be created, then we shouldn't be attempting to save the file.
* | | | | | | Merge pull request #2677 from lioncash/assertGravatar Zach Hilman2019-07-065-43/+48
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | kernel/vm_manager: Handle stack/TLS IO region placement a little better
| * | | | | | | memory: Remove unused includesGravatar Lioncash2019-07-061-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These aren't used within the central memory management code, so they can be removed.
| * | | | | | | memory: Remove unused PageTable forward declarationGravatar Lioncash2019-07-061-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This isn't used by anything in the header file, so it can be removed.
| * | | | | | | kernel/vm_manager: Rename 'new map' to 'stack'Gravatar Lioncash2019-07-063-37/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provides a more accurate name for the memory region and also disambiguates between the map and new map regions of memory, making it easier to understand.
| * | | | | | | kernel/vm_manager: Handle stack/TLS IO region placement betterGravatar Lioncash2019-07-051-2/+13
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Handles the placement of the stack a little nicer compared to the previous code, which was off in a few ways. e.g. The stack (new map) region, shouldn't be the width of the entire address space if the size of the region calculation ends up being zero. It should be placed at the same location as the TLS IO region and also have the same size. In the event the TLS IO region contains a size of zero, we should also be doing the same thing. This fixes our memory layout a little bit and also resolves some cases where assertions can trigger due to the memory layout being incorrect.
* | | | | | | clang-format fixesGravatar Michael Scire2019-07-061-4/+5
| | | | | | |
* | | | | | | am: Implement GetAccumulatedSuspendedTickValueGravatar Michael Scire2019-07-062-7/+19
|/ / / / / /
* | | | | | Merge pull request #2669 from FearlessTobi/move-cpujit-settingGravatar Zach Hilman2019-07-044-5/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | yuzu: Move CPU Jit setting to Debug tab
| * | | | | | yuzu: Remove CPU Jit setting from the UIGravatar fearlessTobi2019-07-044-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | A normal user shouldn't change this, as it will slow down the emulation and can lead to bugs or crashes. The renaming is done in order to prevent users from leaving this on without a way to turn it off from the UI.
* | | | | | | Merge pull request #2555 from lioncash/tlsGravatar Zach Hilman2019-07-046-81/+148
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | kernel/process: Decouple TLS handling from threads
| * | | | | | | kernel/process: Default initialize all member variablesGravatar Lioncash2019-07-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensures a Process instance is always created with a deterministic initial state.
| * | | | | | | kernel/process: Decouple TLS handling from threadsGravatar Lioncash2019-07-034-66/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extracts out all of the thread local storage management from thread instances themselves and makes the owning process handle the management of the memory. This brings the memory management slightly more in line with how the kernel handles these allocations. Furthermore, this also makes the TLS page management a little more readable compared to the lingering implementation that was carried over from Citra.