summaryrefslogtreecommitdiff
path: root/src/core (follow)
Commit message (Collapse)AuthorAgeFilesLines
* kernel/physical_core: Make use of std::unique_ptrGravatar Lioncash2020-01-302-4/+10
| | | | | | | | | | | | | | | | | | shared_ptr was used in 2d1984c20c75e03ec79eeb3806b12efa1679b977 due to a misunderstanding of how the language generates move constructors and move assignment operators. If a destructor is user-provided, then the compiler won't generate the move constructor and move assignment operators by default--they must be explicitly opted into. The reason for the compilation errors is due to the fact that the language will fall back to attempting to use the copy constructor/copy assignment operators if the respective move constructor or move assignment operator is unavailable. Given that we explicitly opt into them now, the the move constructor and move assignment operators will be generated as expected.
* core/cpu_manager: Remove unused includesGravatar Lioncash2020-01-301-2/+0
| | | | | Nothing from these headers are used within this source file, so we can remove them.
* kernel/physical_core: Remove unused kernel reference member variableGravatar Lioncash2020-01-303-11/+7
| | | | | | | This isn't used within the class, so it can be removed to simplify the overall interface. While we're in the same area, we can simplify a unique_ptr reset() call.
* Merge pull request #3353 from FernandoS27/ariesGravatar bunnei2020-01-3024-515/+541
|\ | | | | System: Refactor CPU Core management and move ARMInterface and Schedulers to Kernel
| * System: Address FeedbackGravatar Fernando Sahmkow2020-01-2711-24/+30
| |
| * System: Correct PrepareReschedule.Gravatar Fernando Sahmkow2020-01-261-1/+1
| |
| * Kernel: Remove a few global instances from the kernel.Gravatar Fernando Sahmkow2020-01-262-2/+2
| |
| * Core: Refactor CpuCoreManager to CpuManager and Cpu to Core Manager.Gravatar Fernando Sahmkow2020-01-2615-128/+115
| | | | | | | | This commit instends on better naming the new purpose of this classes.
| * ArmInterface: Delegate Exclusive monitor factory to exclusive monitor ↵Gravatar Fernando Sahmkow2020-01-263-16/+24
| | | | | | | | interfasce.
| * Core: Refactor CPU Management.Gravatar Fernando Sahmkow2020-01-2510-224/+168
| | | | | | | | This commit moves ARM Interface and Scheduler handling into the kernel.
| * Kernel: Implement Physical Core.Gravatar Fernando Sahmkow2020-01-242-0/+81
| |
* | Merge pull request #3151 from FearlessTobi/fix-koreanGravatar bunnei2020-01-305-27164/+880167
|\ \ | | | | | | system_archive: Fix Korean and Chinese fonts
| * | Disable clang-format for font filesGravatar FearlessTobi2020-01-243-0/+6
| | |
| * | system_archive: Fix Chinese fontGravatar FearlessTobi2020-01-192-13582/+694524
| | | | | | | | | | | | Adds the proper OSS font for the Chinese language.
| * | system_archive: Fix Korean fontGravatar FearlessTobi2020-01-192-13582/+185637
| | | | | | | | | | | | Fixes Korean fonts when using Open-source system archives.
* | | bsd: Stub several more functions.Gravatar bunnei2020-01-252-4/+48
| | | | | | | | | | | | - Required for Little Town Hero to boot further.
* | | Merge pull request #3340 from SciresM/pmdxGravatar bunnei2020-01-242-3/+10
|\ \ \ | |_|/ |/| | loader: provide default arguments (zero byte) to NSOs
| * | loader: provide default arguments (zero byte) to NSOsGravatar Michael Scire2020-01-222-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Certain newer unity games (Terraria, Pokemon Mystery Dungeon) require that the argument region be populated. Failure to do so results in an integer underflow in argument count, and eventually an unmapped read at 0x800000000. Providing this default fixes this. Note that the behavior of official software is as yet unverified, arguments-wise.
* | | Input: UDP Client to provide motion and touch controlsGravatar fearlessTobi2020-01-231-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | An implementation of the cemuhook motion/touch protocol, this adds the ability for users to connect several different devices to citra to send direct motion and touch data to citra. Co-Authored-By: jroweboy <jroweboy@gmail.com>
* | | service: time: Implement ToPosixTimeWithMyRule.Gravatar bunnei2020-01-224-1/+34
|/ / | | | | | | - Used by Pokemon Mystery Dungeon.
* | time: Fix month off-by-one error.Gravatar bunnei2020-01-201-2/+2
| | | | | | | | - Fixes timestamp in ZLA and Astral Chain saves.
* | Merge pull request #3271 from bunnei/time-rewriteGravatar bunnei2020-01-1943-534/+3665
|\ \ | |/ |/| service: time: Rewrite implementation of glue services.
| * service: time: Implement GetStandardLocalSystemClock.Gravatar bunnei2020-01-043-1/+9
| |
| * time: Remove overflow error checking (currently breaks ADO builds).Gravatar bunnei2020-01-042-18/+2
| |
| * service: time: Implement GetClockSnapshotFromSystemClockContext.Gravatar bunnei2020-01-043-3/+27
| |
| * service: time: Implement IsStandardNetworkSystemClockAccuracySufficient.Gravatar bunnei2020-01-045-1/+51
| |
| * system_archive: Add a basic HLE implementation for time zone binary.Gravatar bunnei2020-01-044-1/+675
| |
| * service: time: Rewrite implementation of glue services.Gravatar bunnei2020-01-0435-444/+2834
| |
| * core: Initialize several structs that make use of Common::UUID.Gravatar bunnei2020-01-045-100/+101
| |
* | core/memory: Create a special MapMemoryRegion for physical memory.Gravatar Markus Wick2020-01-184-4/+31
| | | | | | | | This allows us to create a fastmem arena within the memory.cpp helpers.
* | core/hle: Simplify PhysicalMemory usage in vm_manager.Gravatar Markus Wick2020-01-181-23/+11
| |
* | core/loaders: Simplify PhysicalMemory usage.Gravatar Markus Wick2020-01-183-8/+12
| | | | | | | | | | It is currently a std::vector, however we might want to replace it with a more fancy allocator. So we can't use the C++ iterators any more.
* | core/kernel: Fix GetTotalPhysicalMemoryUsed.Gravatar Markus Wick2020-01-111-2/+2
| | | | | | | | | | | | | | | | | | module._memory was already moved over to a new shared_ptr. So code_memory_size was not increased at all. This lowers the heap space and so saves a bit of memory, usually between 50 to 100 MB. This fixes a regression of c0a01f3adc466d07fc27020048e82cca60988970
* | Merge pull request #3272 from bunnei/vi-close-layerGravatar bunnei2020-01-075-11/+48
|\ \ | | | | | | service: vi: Implement CloseLayer.
| * | service: vi: Implement CloseLayer.Gravatar bunnei2020-01-045-11/+48
| |/ | | | | | | - Needed for Undertale.
* | Merge pull request #3261 from degasus/page_tableGravatar bunnei2020-01-062-9/+17
|\ \ | | | | | | core/memory + arm/dynarmic: Use a global offset within our arm page table.
| * | core/memory + arm/dynarmic: Use a global offset within our arm page table.Gravatar Markus Wick2020-01-012-9/+17
| | | | | | | | | | | | | | | | | | This saves us two x64 instructions per load/store instruction. TODO: Clean up our memory code. We can use this optimization here as well.
* | | Merge pull request #3257 from degasus/no_busy_loopsGravatar bunnei2020-01-061-1/+1
|\ \ \ | | | | | | | | video_core: Block in WaitFence.
| * | | video_core: Block in WaitFence.Gravatar Markus Wick2019-12-301-1/+1
| |/ / | | | | | | | | | | | | | | | | | | This function is called rarely and blocks quite often for a long time. So don't waste power and let the CPU sleep. This might also increase the performance as the other cores might be allowed to clock higher.
* | | Merge pull request #2945 from FernandoS27/fix-bcatGravatar bunnei2020-01-051-3/+17
|\ \ \ | |_|/ |/| | nifm: Only return that there's an internet connection when there's a BCATServer
| * | nifm: Only return that there's an internet connection when there's a BCATServerGravatar Fernando Sahmkow2019-11-061-3/+17
| | | | | | | | | | | | | | | This helps games that need internet for other purposes boot as the rest of our internet infrastructure is incomplete.
* | | Merge pull request #3247 from FernandoS27/remap-fixGravatar bunnei2020-01-032-3/+5
|\ \ \ | | | | | | | | NvServices: Correct Ioctl Remap.
| * | | NvServices: Correct Ioctl Remap.Gravatar Fernando Sahmkow2019-12-252-3/+5
| | |/ | |/| | | | | | | | | | This commit corrects a padding value in Ioctl Remap that was actually an offset to the mapping address.
* / | yuzu: Remove Maxwell debuggerGravatar ReinUsesLisp2020-01-022-14/+0
|/ / | | | | | | | | This was carried from Citra and wasn't really used on yuzu. It also adds some runtime overhead. This commit removes it from yuzu's codebase.
* | Merge pull request #3214 from lioncash/svc-funcGravatar bunnei2019-12-122-9/+6
|\ \ | | | | | | kernel/svc: Amend function signature of SignalProcessWideKey
| * | kernel/svc: Correct function signature of SignalProcessWideKeyGravatar Lioncash2019-12-112-9/+6
| | | | | | | | | | | | | | | This function doesn't actually return a result code, so we can amend the signature of it to match.
* | | Kernel: Correct behavior of Address Arbiter threads. (#3165)Gravatar Fernando Sahmkow2019-12-113-24/+67
|/ / | | | | | | | | | | | | | | | | | | | | * Kernel: Correct behavior of Address Arbiter threads. This corrects arbitration threads to behave just like in Horizon OS. They are added into a container and released according to what priority they had when added. Horizon OS does not reorder them if their priority changes. * Kernel: Address Feedback.
* | Merge pull request #3201 from lioncash/dumpGravatar bunnei2019-12-102-2/+24
|\ \ | | | | | | kernel/svc: Provide implementations for svcDumpInfo/svcDumpInfoNew
| * | kernel/svc: Provide implementations for svcDumpInfo/svcDumpInfoNewGravatar Lioncash2019-12-072-2/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | These are fairly trivial to implement, we can just do nothing. This also provides a spot for us to potentially dump out any relevant info in the future (e.g. for debugging purposes with homebrew, etc). While we're at it, we can also correct the names of both of these supervisor calls.
* | | kernel: Remove unnecessary includesGravatar Lioncash2019-12-0715-11/+17
|/ / | | | | | | | | | | Over the course of the changes to the kernel code, a few includes are no longer necessary, particularly with the change over to std::shared_ptr from Boost's intrusive_ptr.