summaryrefslogtreecommitdiffstats
path: root/src/core/memory/dmnt_cheat_vm.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* core: Make variable shadowing a compile-time errorLioncash2021-05-161-1/+2
| | | | | | 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.
* dmnt_cheat_vm: Make use of designated initializersLioncash2020-08-031-105/+121
| | | | Allows for more compact code.
* clang-formatVolcaEM2020-07-151-1/+2
|
* dmnt_cheat_vm: Implement opcode 0xC3 (ReadWriteStaticRegister)VolcaEM2020-07-151-0/+28
| | | | | | | | | | | | 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
* core: memory: Move to Core::Memory namespace.bunnei2020-04-171-2/+2
| | | | - helpful to disambiguate Kernel::Memory namespace.
* CMakeLists: Specify -Wextra on linux buildsLioncash2020-04-161-2/+3
| | | | | | | | | | | 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.
* dmnt_cheat_vm: Correct register Restore and ClearRegs behaviorLioncash2019-10-181-2/+2
| | | | | Previously these were performing the same behavior as the Save and ClearSaved opcode types.
* dmnt_cheat_vm: Make Cheat VM compliant to code styleZach Hilman2019-09-221-745/+751
|
* memory: Port Atmosphere's DmntCheatVmZach Hilman2019-09-221-0/+1206
This was done because the current VM contained many inaccuracies and this also allows cheats to have identical behavior between hardware and yuzu.