| Age | Commit message (Collapse) | Author |
|
|
|
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.
|
|
|
|
Restore memory perms on svcUnmapMemory/UnloadNro
|
|
core/arm: Remove obsolete Unicorn memory mapping
|
|
This simply queries whether or not auto-sleep facilities are disabled
and has no special handling. It's a basic getter function.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
IFriendService::GetFriendList
|
|
pm: Implement various pm commands for finding process and title IDs
|
|
mii: Implement IDatabaseService SetInterfaceVersion
|
|
|
|
|
|
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.
|
|
This sets the DeviceMapped attribute for GPU-mapped memory blocks,
and prevents merging device mapped blocks. This prevents memory
mapped from the gpu from having its backing address changed by
block coalesce.
|
|
hid:StartLrAssignmentMode, hid:StopLrAssignmentMode, hid:SwapNpadAssignment
|
|
|
|
apm: Initial implementation of performance config and boost mode
|
|
fsp-srv: Implement Access Logging Functionality
|
|
|
|
|
|
|
|
Copies the raw personal ticket data into the buffer provided.
|
|
Copies the raw common ticket data for the specified rights ID into the buffer provided.
|
|
Returns the size of the buffer needed to hold the personal ticket associated with the rights ID.
|
|
Returns the size of the buffer needed to hold the common ticket associated with the rights ID.
|
|
Returns an application-specific number of entries of personal tickets, starting at offset 0.
|
|
Returns an application specified count of entries of common tickets, starting at offset 0.
|
|
Returns the number of personalized (console/user-unique) tickets in the KeyManager.
|
|
Returns the number of common (non-console-unique) tickets in the KeyManager.
|
|
Takes a rights ID as input and returns the associated title key, if it exists.
|
|
Takes a ticket and certificate and installs it to the KeyManager.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This implements svcMapPhysicalMemory/svcUnmapPhysicalMemory for Yuzu,
which can be used to map memory at a desired address by games since
3.0.0.
It also properly parses SystemResourceSize from NPDM, and makes
information available via svcGetInfo.
This is needed for games like Super Smash Bros. and Diablo 3 -- this
PR's implementation does not run into the "ASCII reads" issue mentioned
in the comments of #2626, which was caused by the following bugs in
Yuzu's memory management that this PR also addresses:
* Yuzu's memory coalescing does not properly merge blocks. This results
in a polluted address space/svcQueryMemory results that would be
impossible to replicate on hardware, which can lead to game code making
the wrong assumptions about memory layout.
* This implements better merging for AllocatedMemoryBlocks.
* Yuzu's implementation of svcMirrorMemory unprotected the entire
virtual memory range containing the range being mirrored. This could
lead to games attempting to map data at that unprotected
range/attempting to access that range after yuzu improperly unmapped
it.
* This PR fixes it by simply calling ReprotectRange instead of
Reprotect.
|
|
Prior to execution within a process beginning, the process establishes
its own TLS region for uses (as far as I can tell) related to exception
handling.
Now that TLS creation was decoupled from threads themselves, we can add
this behavior to our Process class. This is also good, as it allows us
to remove a stub within svcGetInfo, namely querying the address of that
region.
|
|
Keeps this particular set of behavior isolated to its own function.
|
|
Appears to set a member variable used to affect the API that games access, and the method used to store data.
|
|
core/reporter: Minor changes
|
|
kernel/vm_manager: Handle stack/TLS IO region placement a little better
|
|
|
|
|
|
These aren't used within the central memory management code, so they can
be removed.
|
|
This isn't used by anything in the header file, so it can be removed.
|