| Age | Commit message (Collapse) | Author |
|
With all of the interfaces ready for migration, it's trivial to migrate
over GetPointer().
|
|
Amends a few interfaces to be able to handle the migration over to the
new Memory class by passing the class by reference as a function
parameter where necessary.
Notably, within the filesystem services, this eliminates two ReadBlock()
calls by using the helper functions of HLERequestContext to do that for
us.
|
|
A fairly straightforward migration. These member functions can just be
mostly moved verbatim with minor changes. We already have the necessary
plumbing in places that they're used.
IsKernelVirtualAddress() can remain a non-member function, since it
doesn't rely on class state in any form.
|
|
Migrates all of the direct mapping facilities over to the new memory
class. In the process, this also obsoletes the need for memory_setup.h,
so we can remove it entirely from the project.
|
|
* core_timing: Use better reference tracking for EventType.
- Moves ownership of the event to the caller, ensuring we don't fire events for destroyed objects.
- Removes need for unique names - we won't be using this for save states anyways.
|
|
- Fixes shutdown crash and crash in Pokemon SwSh.
|
|
service: Update function tables
|
|
kernel objects. (#3154)
* kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects.
- See https://github.com/citra-emu/citra/pull/4710 for details.
|
|
|
|
|
|
Kernel: Correct behavior of Condition Variables to be more similar to real hardware.
|
|
Kernel: Correct Cancel Synchronization.
|
|
service/am: Remove unnecessary Skip calls
|
|
am: Stub QueryApplicationPlayStatistics
|
|
|
|
When the target is 0, all threads must be processed.
|
|
hardware.
This commit ensures cond var threads act exactly as they do in the real
console. The original implementation uses an RBTree and the behavior of
cond var threads is that at the same priority level they act like a
FIFO.
|
|
This commit corrects the behavior of cancel synchronization when the
thread is running/ready and ensures the next wait is cancelled as it's
suppose to.
|
|
core: Make most implicit type conversion warnings errors on MSVC
|
|
We can simplify these by wrapping the necessary members in structs and
then simply reading out the whole struct.
|
|
Maintains implementation parity between QueryApplicationPlayStatistics
and QueryApplicationPlayStatisticsByUid.
These function the same behaviorally underneath the hood, with the only
difference being that one allows specifying a UID.
|
|
Implement stub for IApplicationFunctions::QueryApplicationPlayStatisticsByUid
|
|
Keeps the function tables up to date.
Updated based off information from Switchbrew.
|
|
These functions are marked for deprecation and it's recommended that the
*_ret variants be used instead.
|
|
These are fairly trivial to resolve and most of the changes entail
using RESULT_UNKNOWN over ResultCode(-1).
|
|
Uncovered a bug within Thread's SetCoreAndAffinityMask() where an
unsigned variable (ideal_core) was being compared against "< 0", which
would always be a false condition.
We can also get rid of an unused function (GetNextProcessorId) which contained a sign
mismatch warning.
|
|
Will be used to reduce the overall duplication of the same magic value
all over the codebase in following changes.
|
|
The constructor was implicitly using signed->unsigned conversions to
produce 0xFFFFFFFF. We can just specify this explicitly with UINT32_MAX.
|
|
|
|
kernel: Improve events
|
|
hid: Stub SetNpadJoyAssignmentModeSingle and GetNpadHandheldActivationMode
|
|
- Zero initialization here is useful for determinism.
|
|
|
|
- This does not actually seem to exist in the real kernel - games reset these automatically.
# Conflicts:
# src/core/hle/service/am/applets/applets.cpp
# src/core/hle/service/filesystem/fsp_srv.cpp
|
|
|
|
SetApplicationCopyrightImage and SetApplicationCopyrightVisibility
These commands require Screenshots to be implemented anyway, so they are safe to stub for now.
|
|
This is only compared against, so it can be made const.
|
|
|
|
Reduces the overall amount of code.
|
|
Adjusts the formatting of a few of the comments an ensures they get
recognized as proper Doxygen comments.
|
|
Kernel: Implement a New Thread Scheduler V2
|
|
hid/npad: Minor cleanup
|
|
ConnectAllDisconnectedControllers()
We should be setting the connection state to true, otherwise we aren't
actually making the controllers connected like the function name
indicates.
|
|
While not an issue, it does prevent fallthrough from occurring if
anything is ever added after this case (unlikely to occur, but this
turns a trivial "should not cause issues" into a definite "won't cause
issues).
|
|
Performs the same behavior, but is built into the core language itself.
No functional change.
|
|
The const qualified variant can also be called in non-const contexts, so
we can remove the non-const variant to eliminate a bit of code
duplication.
|
|
Clearly separate these from the variable declarations to make them more
visible.
|
|
over a map
While a map is an OK way to do lookups (and usually recommended in most
cases), this is a map that lives for the entire duration of the program
and only deallocates its contents when the program terminates.
Given the total size of the map is quite small, we can simply use a
std::array of pairs and utilize std::find_if to perform the same
behavior without loss of performance.
This eliminates a static constructor and places the data into the
read-only segment.
While we're at it, we can also handle malformed inputs instead of
directly dereferencing the resulting iterator.
|
|
This doesn't modify instance state, so it can be made const qualified.
|
|
General fixes to Async GPU
|