| Age | Commit message (Collapse) | Author |
|
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.
|
|
Revert "Devirtualize Register/Unregister and use a wrapper instead."
|
|
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.
|
|
Implements an API agnostic texture view based texture cache. Classes
defined here are intended to be inherited by the API implementation and
used in API-specific code.
This implementation exposes protected virtual functions to be called
from the implementer.
Before executing any surface copies methods (defined in API-specific code)
it tries to detect if the overlapping surface is a superset and if it
is, it creates a view. Views are references of a subset of a surface, it
can be a superset view (the same as referencing the whole texture).
Current code manages 1D, 1D array, 2D, 2D array, cube maps and cube map
arrays with layer and mipmap level views. Texture 3D slices views are
not implemented.
If the view attempt fails, the fast path is invoked with the overlapping
textures (defined in the implementer). If that one fails (returning
nullptr) it will flush and reload the texture.
|
|
core/hle/kernel: Make Mutex a per-process class.
|
|
core/memory: Remove unnecessary includes
|
|
- Fixes graphical issues from transitions in Super Mario Odyssey.
|
|
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.
|
|
input_common/sdl: Correct return values within GetPollers implementations
|
|
Introduced as a result of #2090, we already define the copy constructor
further down below, so this isn't needed.
|
|
Port citra-emu/citra#4244 and citra-emu/citra#4599: Changes to BitField
|
|
file_sys/content_archive: Amend name of Data_Unknown5 enum entry
|
|
common/uint128: Add missing header guard
|
|
|
|
|
|
|
|
|
|
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.
|
|
- Avoid a crash in Octopath Traveler.
|
|
- Avoid a crash in Xenoblade Chronicles 2.
|
|
surface.
- Fixes a crash in Puyo Puyo Tetris.
|
|
|
|
|
|
When #2247 was created, thread_queue_list.h was the only user of
boost-related code, however #2252 moved the page table struct into
common, which makes use of Boost.ICL, so we need to add the dependency
to the common library's link interface again.
|
|
Fix crash caused by #2238.
|
|
common/thread_queue_list: Remove unnecessary dependency on boost
|
|
hwopus: Leverage multistream API for decoding regular Opus packets
|
|
Port citra-emu/citra#4684: "frontend: qt: fix a freeze where if you click on entry in the game list too fast, citra will hang"
|
|
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.
|
|
core/loader: Remove vestigial Linker class
|
|
|
|
|
|
Given the class is now currently unused, it can be removed.
|