aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle
AgeCommit message (Collapse)Author
2019-04-15Merge pull request #2382 from lioncash/tablebunnei
service: Update service function tables
2019-04-15Merge pull request #2393 from lioncash/svcbunnei
kernel/svc: Implement svcMapProcessCodeMemory/svcUnmapProcessCodeMemory
2019-04-15kernel/thread: Remove BoostPriority()Lioncash
This is a holdover from Citra that currently remains unused, so it can be removed from the Thread interface.
2019-04-13Merge pull request #2378 from lioncash/robunnei
ldr: Minor amendments to IPC-related parameters
2019-04-13Merge pull request #2357 from zarroboogs/force-30fps-modebunnei
Add a toggle to force 30FPS mode
2019-04-13Merge pull request #2381 from lioncash/fsbunnei
fsp_srv: Minor cleanup related changes
2019-04-12kernel/svc: Implement svcUnmapProcessCodeMemoryLioncash
Essentially performs the inverse of svcMapProcessCodeMemory. This unmaps the aliasing region first, then restores the general traits of the aliased memory. What this entails, is: - Restoring Read/Write permissions to the VMA. - Restoring its memory state to reflect it as a general heap memory region. - Clearing the memory attributes on the region.
2019-04-12kernel/svc: Implement svcMapProcessCodeMemoryLioncash
This is utilized for mapping code modules into memory. Notably, the ldr service would call this in order to map objects into memory.
2019-04-11Merge pull request #2360 from lioncash/svc-globalbunnei
kernel/svc: Deglobalize the supervisor call handlers
2019-04-11Merge pull request #2388 from lioncash/constexprbunnei
kernel: Make handle type declarations constexpr
2019-04-11kernel: Make handle type declarations constexprLioncash
Some objects declare their handle type as const, while others declare it as constexpr. This makes the const ones constexpr for consistency, and prevent unexpected compilation errors if these happen to be attempted to be used within a constexpr context.
2019-04-11service: Update service function tablesLioncash
Updates function tables based off information from SwitchBrew.
2019-04-10ldr: Mark IsValidNROHash() as a const member functionLioncash
This doesn't modify instance state, so it can be made const.
2019-04-10ldr: Amend parameters for LoadNro/UnloadNro LoadNrr/UnloadNrrLioncash
The initial two words indicate a process ID. Also UnloadNro only specifies one address, not two.
2019-04-10fsp_srv: Remove unnecessary parameter popping in IDirectory's Read()Lioncash
IDirectory's Read() function doesn't take any input parameters. It only uses the output parameters that we already provide.
2019-04-10fsp_srv: Log out option values in IFile's Read and Write functionsLioncash
These indicate options that alter how a read/write is performed. Currently we don't need to handle these, as the only one that seems to be used is for writes, but all the custom options ever seem to do is immediate flushing, which we already do by default.
2019-04-09kernel/server_session: Remove obsolete TODOsLioncash
These are holdovers from Citra.
2019-04-09Merge pull request #1957 from DarkLordZach/title-providerbunnei
file_sys: Provide generic interface for accessing game data
2019-04-09kernel/process: Set page table when page table resizes occur.Lioncash
We need to ensure dynarmic gets a valid pointer if the page table is resized (the relevant pointers would be invalidated in this scenario). In this scenario, the page table can be resized depending on what kind of address space is specified within the NPDM metadata (if it's present).
2019-04-09added a toggle to force 30fps modezarroboogs
2019-04-07kernel/svc: Deglobalize the supervisor call handlersLioncash
Adjusts the interface of the wrappers to take a system reference, which allows accessing a system instance without using the global accessors. This also allows getting rid of all global accessors within the supervisor call handling code. While this does make the wrappers themselves slightly more noisy, this will be further cleaned up in a follow-up. This eliminates the global system accessors in the current code while preserving the existing interface.
2019-04-07Merge pull request #2361 from lioncash/pagetablebunnei
core/memory: Minor simplifications to page table management
2019-04-07kernel: Handle page table switching within MakeCurrentProcess()Lioncash
Centralizes the page table switching to one spot, rather than making calling code deal with it everywhere.
2019-04-06kernel/server_session: Return a std::pair from CreateSessionPair()Lioncash
Keeps the return type consistent with the function name. While we're at it, we can also reduce the amount of boilerplate involved with handling these by using structured bindings.
2019-04-06kernel/server_port: Return a std::pair from CreatePortPair()Lioncash
Returns the same type that the function name describes.
2019-04-05Merge pull request #2325 from lioncash/namebunnei
kernel/server_session: Provide a GetName() override
2019-04-05Merge pull request #2334 from lioncash/overridebunnei
core: Add missing override specifiers where applicable
2019-04-05Merge pull request #2339 from lioncash/rankbunnei
service/fsp_srv: Update SaveDataInfo and SaveDataDescriptor structs
2019-04-05Merge pull request #2329 from lioncash/sanitizebunnei
kernel/svc: Properly sanitize mutex address in WaitProcessWideKeyAtomic
2019-04-05Merge pull request #2344 from lioncash/resultbunnei
hle/result: Remove unnecessary bitfield entry for ResultCode
2019-04-05hle/result: Remove unnecessary bitfield entry for ResultCodeLioncash
This is a hold over from the 3DS error codes in Citra.
2019-04-05service/fsp_srv: Don't pass SaveDataDescriptor instances by value.Lioncash
Passing around a 64 byte data struct by value is kind of wasteful, instead pass a reference to the struct.
2019-04-05service/fsp_srv: Remove unnecessary unknown member in OpenSaveDataFileSystemLioncash
The unknown member here is actually padding due to being passed as a struct. We can do the same, and remove the need to pop a padding word.
2019-04-05service/fsp_srv: Update SaveDataInfo and SaveDataDescriptor structsLioncash
I realized that I updated the documentation on SwitchBrew a while ago, but never actually updated the structs within yuzu.
2019-04-05Merge pull request #2338 from lioncash/fsbunnei
filesystem: Use a std::string_view in OpenFile()
2019-04-04filesystem: Use a std::string_view in OpenFile()Lioncash
Rather than make a full copy of the path, we can just use a string view and truncate the viewed portion of the string instead of creating a totally new truncated string.
2019-04-04hle/service: Resolve unused variable warningsLioncash
In several places, we have request parsers where there's nothing to really parse, simply because the HLE function in question operates on buffers. In these cases we can just remove these instances altogether. In the other cases, we can retrieve the relevant members from the parser and at least log them out, giving them some use.
2019-04-04core: Add missing override specifiers where applicableLioncash
Applies the override specifier where applicable. In the case of destructors that are defaulted in their definition, they can simply be removed. This also removes the unnecessary inclusions being done in audin_u and audrec_u, given their close proximity.
2019-04-03Merge pull request #2328 from lioncash/transferbunnei
service/am: Correct behavior of CreateTransferMemoryStorage()
2019-04-03Merge pull request #2324 from lioncash/enum-unusedbunnei
kernel/object: Remove unused handle type entry
2019-04-03kernel/svc: Properly sanitize mutex address in WaitProcessWideKeyAtomicLioncash
We need to be checking whether or not the given address is within the kernel address space or if the given address isn't word-aligned and bail in these scenarios instead of trashing any kernel state.
2019-04-03service/am: Correct behavior of CreateTransferMemoryStorage()Lioncash
For whatever reason, shared memory was being used here instead of transfer memory, which (quite clearly) will not work based off the name of the function. This corrects this wonky usage of shared memory.
2019-04-03kernel/transfer_memory: Add accessors to data and sizesLioncash
Also amend erroneous use of size_t. We should be using u64 here.
2019-04-03Merge pull request #2294 from lioncash/fatalbunnei
service/am: Implement EnterFatalSection/LeaveFatalSection
2019-04-03Merge pull request #2305 from lioncash/sharedbunnei
kernel/shared_memory: Sanitize supplied size when unmapping
2019-04-03Merge pull request #2314 from lioncash/constbunnei
kernel/thread: Minor interface cleanup
2019-04-03kernel/server_session: Provide a GetName() overrideLioncash
Given server sessions can be given a name, we should allow retrieving it instead of using the default implementation of GetName(), which would just return "[UNKNOWN KERNEL OBJECT]".
2019-04-03kernel/object: Remove unused handle type entryLioncash
The AddressArbiter type isn't actually used, given the arbiter itself isn't a direct kernel object (or object that implements the wait object facilities). Given this, we can remove the enum entry entirely.
2019-04-02Merge pull request #2270 from lioncash/plistbunnei
kernel/svc: Implement svcGetProcessList and svcGetThreadList
2019-04-02Merge pull request #2313 from lioncash/reslimitbunnei
kernel/resource_limit: Remove the name member from resource limits