summaryrefslogtreecommitdiff
path: root/src/core (follow)
Commit message (Collapse)AuthorAgeFilesLines
* set_sys: Move constants to anonymous namespaceGravatar Zach Hilman2019-03-111-1/+1
|
* set_sys: Use official nintendo version stringGravatar Zach Hilman2019-03-104-19/+25
|
* system_version: Correct sizes on VectorVfsFile constructionGravatar Zach Hilman2019-03-101-4/+4
|
* set_sys: Use correct error codes in GetFirmwareVersion*Gravatar Zach Hilman2019-03-101-21/+41
|
* set_sys: Implement GetFirmwareVersion(2) for libnx hosversionGravatar Zach Hilman2019-03-106-3/+128
| | | Uses the synthesized system archive 9 (SystemVersion) and reports v5.1.0-0.0
* clang fixGravatar Hexagon122019-03-091-1/+2
|
* Log 2 new setting valuesGravatar Hexagon122019-03-091-0/+2
|
* Merge pull request #2210 from lioncash/optionalGravatar bunnei2019-03-084-47/+47
|\ | | | | kernel/hle_ipc: Convert std::shared_ptr IPC header instances to std::optional
| * kernel/hle_ipc: Convert std::shared_ptr IPC header instances to std::optionalGravatar Lioncash2019-03-074-47/+47
| | | | | | | | | | | | | | | | | | There's no real need to use a shared lifetime here, since we don't actually expose them to anything else. This is also kind of an unnecessary use of the heap given the objects themselves are so small; small enough, in fact that changing over to optionals actually reduces the overall size of the HLERequestContext struct (818 bytes to 808 bytes).
* | Merge pull request #2195 from lioncash/shared-globalGravatar bunnei2019-03-071-3/+2
|\ \ | |/ |/| kernel/shared_memory: Get rid of the use of global accessor functions within Create()
| * kernel/shared_memory: Get rid of the use of global accessor functions within ↵Gravatar Lioncash2019-03-041-3/+2
| | | | | | | | | | | | | | | | | | | | Create() Given we already pass in a reference to the kernel that the shared memory instance is created under, we can just use that to check the current process, rather than using the global accessor functions. This allows removing direct dependency on the system instance entirely.
* | Merge pull request #2202 from lioncash/port-privGravatar bunnei2019-03-076-36/+78
|\ \ | | | | | | kernel/client_session, kernel/server_session: Make data members private
| * | kernel/server_session: Make data members privateGravatar Lioncash2019-03-055-32/+73
| | | | | | | | | | | | | | | Makes it much nicer to locally reason about server session behavior, as part of its functionality isn't placed around other classes.
| * | kernel/client_session: Make data members privateGravatar Lioncash2019-03-051-4/+5
| | | | | | | | | | | | | | | These can be made private, as they aren't accessed in contexts that require them to be public.
* | | Merge pull request #2206 from lioncash/audio-stopGravatar bunnei2019-03-071-1/+3
|\ \ \ | | | | | | | | service/audio/audout_u: Only actually stop the audio stream in StopAudioOut if the stream is playing
| * | | service/audio/audout_u: Only actually stop the audio stream in StopAudioOut ↵Gravatar Lioncash2019-03-071-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | if the stream is playing The service itself only does further actions if the stream is playing. If the stream is already stopped, then it just exits successfully.
* | | | Merge pull request #2055 from bunnei/gpu-threadGravatar bunnei2019-03-078-22/+22
|\ \ \ \ | | | | | | | | | | Asynchronous GPU command processing
| * | | | gpu: Refactor a/synchronous implementations into their own classes.Gravatar bunnei2019-03-061-2/+7
| | | | |
| * | | | gpu: Move command processing to another thread.Gravatar bunnei2019-03-062-5/+5
| | | | |
| * | | | gpu: Refactor command and swap buffers interface for asynch.Gravatar bunnei2019-03-063-14/+4
| | | | |
| * | | | gpu: Refactor to take RendererBase instead of RasterizerInterface.Gravatar bunnei2019-03-061-1/+1
| | | | |
| * | | | settings: Add new graphics setting for use_asynchronous_gpu_emulation.Gravatar bunnei2019-03-062-0/+3
| | | | |
| * | | | core: Set is_powered_on before GPU is initialized.Gravatar bunnei2019-03-061-1/+3
| |/ / /
* | | | Merge pull request #2197 from lioncash/includeGravatar bunnei2019-03-066-8/+12
|\ \ \ \ | | | | | | | | | | core/hle/ipc: Remove unnecessary includes
| * | | | core/hle/ipc: Remove unnecessary includesGravatar Lioncash2019-03-056-8/+12
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removes a few inclusion dependencies from the headers or replaces existing ones with ones that don't indirectly include the required headers. This allows removing an inclusion of core/memory.h, meaning that if the memory header is ever changed in the future, it won't result in rebuilding the entirety of the HLE services (as the IPC headers are used quite ubiquitously throughout the HLE service implementations).
* | | | Merge pull request #2190 from lioncash/ogl-globalGravatar bunnei2019-03-062-11/+7
|\ \ \ \ | |_|/ / |/| | | core: Remove the global telemetry accessor function
| * | | core/core: Remove the global telemetry accessor functionGravatar Lioncash2019-03-041-4/+0
| | | | | | | | | | | | | | | | With all usages converted off of it, this function can be removed.
| * | | core/core: Replace direct usage of the global system telemetry accessor from ↵Gravatar Lioncash2019-03-041-7/+7
| | |/ | |/| | | | | | | | | | | | | | | | Shutdown() The telemetry instance is actually a member of the class itself, so we can access it directly instead of going through the global accessor.
* | | Merge pull request #2199 from lioncash/arbiterGravatar bunnei2019-03-066-112/+184
|\ \ \ | | | | | | | | kernel/address_arbiter: Convert the address arbiter into a class
| * | | kernel/address_arbiter: Pass in system instance to constructorGravatar Lioncash2019-03-055-23/+42
| | | | | | | | | | | | | | | | | | | | Allows getting rid of reliance on the global accessor functions and instead operating on the provided system instance.
| * | | kernel/address_arbiter: Minor tidying upGravatar Lioncash2019-03-051-18/+18
| | | | | | | | | | | | | | | | | | | | - Invert conditions into guard clases where applicable. - Mark std::vector parameter of WakeThreads as const
| * | | kernel/address_arbiter: Convert the address arbiter into a classGravatar Lioncash2019-03-055-82/+135
| | |/ | |/| | | | | | | | | | | | | Places all of the functions for address arbiter operation into a class. This will be necessary for future deglobalizing efforts related to both the memory and system itself.
* | | hle/service/audio/audout_u: Correct lack of return in failure case of ↵Gravatar Lioncash2019-03-061-0/+1
| | | | | | | | | | | | | | | | | | | | | AppendAudioOutBufferImpl() Previously we were overwriting the error case with a success code further down (which is definitely not what we should be doing here).
* | | Merge pull request #2194 from lioncash/memGravatar bunnei2019-03-063-30/+66
|\ \ \ | | | | | | | | svc: Move memory range checking functions to the VMManager class
| * | | vm_manager: Use range helpers in HeapAlloc() and HeapFree()Gravatar Lioncash2019-03-041-4/+2
| | | | | | | | | | | | | | | | Significantly tidies up two guard conditionals.
| * | | vm_manager: Provide address range checking functions for other memory regionsGravatar Lioncash2019-03-042-4/+35
| | | | | | | | | | | | | | | | | | | | Makes the interface uniform when it comes to checking various memory regions.
| * | | svc: Migrate address range checking functions to VMManagerGravatar Lioncash2019-03-043-23/+30
| | |/ | |/| | | | | | | Provides a bit of a more proper interface for these functions.
* | | Merge pull request #2200 from lioncash/audioGravatar bunnei2019-03-064-10/+21
|\ \ \ | | | | | | | | hle/service/audio: Extract audio error codes to a header
| * | | hle/service/audio: Extract audio error codes to a headerGravatar Lioncash2019-03-054-10/+21
| | |/ | |/| | | | | | | | | | | | | | | | Places all error codes in an easily includable header. This also corrects the unsupported error code (I accidentally used the hex value when I meant to use the decimal one).
* / | kernel/thread: Remove obsolete TODO in Create()Gravatar Lioncash2019-03-051-2/+0
|/ / | | | | | | This is a TODO carried over from Citra that doesn't apply here.
* / Memory: don't lock hle mutex in memory read/writeGravatar Weiyi Wang2019-03-021-6/+0
|/ | | | The comment already invalidates itself: neither MMIO nor rasterizer cache belongsHLE kernel state. This mutex has a too large scope if MMIO or cache is included, which is prone to dead lock when multiple thread acquires these resource at the same time. If necessary, each MMIO component or rasterizer should have their own lock.
* Merge pull request #2180 from lioncash/audrenGravatar bunnei2019-03-011-1/+12
|\ | | | | service/audio: Provide an implementation of ExecuteAudioRendererRendering
| * service/audio: Provide an implementation of ExecuteAudioRendererRenderingGravatar Lioncash2019-03-011-1/+12
| | | | | | | | | | | | | | This service function appears to do nothing noteworthy on the switch. All it does at the moment is either return an error code or abort the system. Given we obviously don't want to kill the system, we just opt for always returning the error code.
* | service/audio/audren_u: Implement OpenAudioRendererAutoGravatar Lioncash2019-03-012-7/+20
|/ | | | | | | This currently has the same behavior as the regular OpenAudioRenderer API function, so we can just move the code within OpenAudioRenderer to an internal function that both service functions call.
* Merge pull request #2174 from lioncash/fwdGravatar bunnei2019-02-271-1/+1
|\ | | | | service/hid: Amend forward declaration of ServiceManager
| * service/hid: Amend forward declaration of ServiceManagerGravatar Lioncash2019-02-271-1/+1
| | | | | | | | | | The SM namespace is within the Service namespace, so this was forward declaring a type that didn't exist.
* | Speed up memory page mapping (#2141)Gravatar Annomatg2019-02-271-6/+11
|/ | | | - Memory::MapPages total samplecount was reduced from 4.6% to 1.06%. - From main menu into the game from 1.03% to 0.35%
* Merge pull request #2169 from lioncash/namingGravatar bunnei2019-02-271-13/+13
|\ | | | | audio_core/audio_renderer: Provide names for some parameters of AudioRendererParameter
| * audio_core/audio_renderer: Name previously unknown parameters of ↵Gravatar Lioncash2019-02-271-13/+13
| | | | | | | | | | | | | | | | | | | | | | AudioRendererParameter Provides names for previously unknown entries (aside from the two u8 that appear to be padding bytes, and a single word that also appears to be reserved or padding). This will be useful in subsequent changes when unstubbing behavior related to the audio renderer services.
* | Merge pull request #2170 from lioncash/emu-windowGravatar bunnei2019-02-272-2/+2
|\ \ | | | | | | core/frontend/emu_window: Make ClipToTouchScreen a const member function