| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Allows the use of the macro in constexpr-contexts.
Also avoids some potential problems when nesting braces inside it.
|
| |
|
|\
| |
| | |
dmnt: cheat: Add pause and resume support
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
|
|
|
|
| |
We were previously truncating this to a u32 as there were no known buttons that used the full 64 bits of this type. Fix this now that we know they are used.
|
|
|
|
| |
This allows us to avoid including KProcess' header file in files that only need to get the current process' program id.
|
| |
|
| |
|
|
|
|
|
|
| |
Now that we have most of core free of shadowing, we can enable the
warning as an error to catch anything that may be remaining and also
eliminate this class of logic bug entirely.
|
| |
|
|
|
|
|
|
|
|
|
| |
Resolves shadowing warnings that aren't in a particularly large
subsection of core. Brings us closer to turning -Wshadow into an error.
All that remains now is for cases in the kernel (left untouched for now
since a big change by bunnei is pending), and a few left over in the
service code (will be tackled next).
|
| |
|
|
|
|
|
|
|
|
|
| |
Makes our error coverage a little more consistent across the board by
applying it to Linux side of things as well. This also makes it more
consistent with the warning settings in other libraries in the project.
This also updates httplib to 0.7.9, as there are several warning
cleanups made that allow us to enable several warnings as errors.
|
|
|
|
|
|
| |
We don't need to create two separate instantiations of the same code, we
can simply make the character template argument a regular function
parameter.
|
|
|
|
|
| |
This isn't used within the function at all in any implementations, so we
can remove it entirely.
|
|\
| |
| | |
cheat_engine: Resolve implicit bool->u64 conversion
|
| |
| |
| |
| | |
We can just return zero here.
|
|/
|
|
| |
Same behavior, but makes the member being assigned obvious.
|
|
|
|
| |
Allows for more compact code.
|
|
|
|
| |
Makes the interface future-proofed for supporting other platforms in the event we ever support platforms with differing pointer sizes. This way, we have a type in place that is always guaranteed to be able to represent a pointer exactly.
|
|\
| |
| | |
core_timing: Make usage of nanoseconds more consistent in the interface
|
| |
| |
| |
| | |
Enforces our desired time units directly with a concrete type.
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
| |
This was based on Atmosphére's DMNT Cheat VM:
- https://github.com/Atmosphere-NX/Atmosphere/blob/master/stratosphere/dmnt/source/cheat/impl/dmnt_cheat_vm.hpp
- https://github.com/Atmosphere-NX/Atmosphere/blob/master/stratosphere/dmnt/source/cheat/impl/dmnt_cheat_vm.cpp
From Atmosphére's documentation: "Code type 0xC3 reads or writes a static register with a given register"
There are now only two remaining opcodes to implement (PauseProcess and BreakProcess)
This is untested because I don't have any experience in testing cheats on yuzu
|
|
|
|
|
|
|
| |
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host
Timing, Reworks the Kernel's Scheduler, Introduce Idle State and
Suspended State, Recreates the bootmanager, Initializes Multicore
system.
|
| |
|
|
|
|
| |
- helpful to disambiguate Kernel::Memory namespace.
|
|
|
|
|
|
|
|
|
|
|
| |
Allows reporting more cases where logic errors may exist, such as
implicit fallthrough cases, etc.
We currently ignore unused parameters, since we currently have many
cases where this is intentional (virtual interfaces).
While we're at it, we can also tidy up any existing code that causes
warnings. This also uncovered a few bugs as well.
|
| |
|
|
|
|
|
|
|
|
|
| |
The Write functions are used slightly less than the Read functions,
which make these a bit nicer to move over.
The only adjustments we really need to make here are to Dynarmic's
exclusive monitor instance. We need to keep a reference to the currently
active memory instance to perform exclusive read/write operations.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With all of the trivial parts of the memory interface moved over, we can
get right into moving over the bits that are used.
Note that this does require the use of GetInstance from the global
system instance to be used within hle_ipc.cpp and the gdbstub. This is
fine for the time being, as they both already rely on the global system
instance in other functions. These will be removed in a change directed
at both of these respectively.
For now, it's sufficient, as it still accomplishes the goal of
de-globalizing the memory code.
|
|
|
|
|
|
|
| |
* 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.
|
|\
| |
| | |
dmnt_cheat_vm: Correct register Restore and ClearRegs behavior
|
| |
| |
| |
| |
| | |
Previously these were performing the same behavior as the Save and
ClearSaved opcode types.
|
|/
|
|
|
| |
Amends the initializer lists to be ordered in the same manner that
they're declared within the class.
|
| |
|
| |
|
|
|
| |
This is to go with the Atmosphere VM port, now it just contains the callbacks needed for the interface between DmntCheatVm and yuzu, along with the cheat parsers.
|
|
This was done because the current VM contained many inaccuracies and this also allows cheats to have identical behavior between hardware and yuzu.
|