| Age | Commit message (Collapse) | Author |
|
loader/nso: Minor refactoring
|
|
The use of a shared_ptr is an implementation detail of the VMManager
itself when mapping memory. Because of that, we shouldn't require all
users of the CodeSet to have to allocate the shared_ptr ahead of time.
It's intended that CodeSet simply pass in the required direct data, and
that the memory manager takes care of it from that point on.
This means we just do the shared pointer allocation in a single place,
when loading modules, as opposed to in each loader.
|
|
file_sys/cheat_engine: Remove use of global system accessors
|
|
gpu: Rewrite MemoryManager based on the VMManager implementation.
|
|
namespace
Makes it impossible to indirectly violate the ODR in some other
translation unit due to these existing.
|
|
|
|
Instead, pass in the core timing instance and make the dependency
explicit in the interface.
|
|
Now that the NSO header has the proper size, we can just use sizeof on
it instead of having magic constants.
|
|
This source file was utilizing its own version of the NSO header.
Instead of keeping this around, we can have the patch manager also use
the version of the header that we have defined in loader/nso.h
|
|
The total struct itself is 0x100 (256) bytes in size, so we should be
providing that amount of data.
Without the data, this can result in omitted data from the final loaded
NSO file.
|
|
These correspond to the NSOBuildHeader.
|
|
core/hle/kernel: Make Mutex a per-process class.
|
|
core/memory: Remove unnecessary includes
|
|
kernel/vm_manager: Amend flag value for code data
|
|
service/am: Add function table for IDebugFunctions
|
|
file_sys: Implement parser and interpreter for game memory cheats
|
|
We already have the service related stuff set up for this, however, it's
missing the function table.
|
|
respectively
Makes it more evident that one is for actual code and one is for actual
data. Mutable and static are less than ideal terms here, because
read-only data is technically not mutable, but we were mapping it with
that label.
|
|
This should actually be using the data flags, rather than the code
flags.
|
|
In 93da8e0abfcdcc6e3cb5488a0db12373429f1377, the page table construct
was moved to the common library (which utilized these inclusions). Since
the move, nothing requires these headers to be included within the
memory header.
|
|
Port citra-emu/citra#4244 and citra-emu/citra#4599: Changes to BitField
|
|
file_sys/content_archive: Amend name of Data_Unknown5 enum entry
|
|
core/kernel: Migrate CodeSet to its own source files
|
|
- GPU will be released on shutdown, before pages are unmapped.
- On subsequent runs, current_page_table will be not nullptr, but GPU might not be valid yet.
|
|
|
|
|
|
Fix crash caused by #2238.
|
|
hwopus: Leverage multistream API for decoding regular Opus packets
|
|
The segment itself isn't actually modified.
|
|
Given this is utilized by the loaders, this allows avoiding inclusion of
the kernel process definitions where avoidable.
This also keeps the loading format for all executable data separate from
the kernel objects.
|
|
|
|
|
|
Given the class is now currently unused, it can be removed.
|
|
Neither the NRO or NSO loaders actually make use of the functions or
members provided by the Linker interface, so we can just remove the
inheritance altogether.
|
|
|
|
|
|
While we're at it, give each entry some documentation.
|
|
service/am: Supply remaining missing IAudioController functions
|
|
This just acts as a basic setter for a given PID value and performs no
further checking, so we can just store the passed in value.
|
|
All this does is supply a new volume level and a fade time in
nanoseconds for the volume transition to occur within.
|
|
Like the other volume setter, this mainly just sets a data member within
the service, nothing too special.
|
|
This function passes in the desired main applet and library applet
volume levels. We can then just pass those values back within the
relevant volume getter functions, allowing us to unstub those as well.
The initial values for the library and main applet volumes differ. The
main applet volume is 0.25 by default, while the library applet volume
is initialized to 1.0 by default in the services themselves.
|
|
kernel/thread: Amend conditional test and assignment within UpdatePriority()
|
|
core: Move PageTable struct into Common.
|
|
ipc_helpers: Allow pushing and popping floating-point values
|
|
kernel/thread: Actually remove the definition of ExitCurrentThread()
|
|
|
|
memory: Simplify rasterizer cache operations.
|
|
Correct CNTPCT from using CPU Cycles to using Clock Cycles
|
|
Certain values that are passed through the IPC buffer are actually
floating point values, not solely integral values.
|