Megamouse
a5368d766a
patch_manager: prefer specific > global (per hash)
2020-06-29 23:56:27 +02:00
Megamouse
cf2e2a0511
patch_manager: one patch per group across hashes
2020-06-29 23:56:27 +02:00
Megamouse
3a17eefde7
patch_manager: restrict All serials to All titles
2020-06-29 23:56:27 +02:00
Megamouse
c72a6f8e6f
patch_manager: prefer serial patches over All
2020-06-29 23:56:27 +02:00
Megamouse
6a486d3402
patch_manager: only apply one patch per group
...
So far this was purely handled in the GUI
2020-06-29 23:56:27 +02:00
Megamouse
e43db24b2c
patch_manager: add All override
...
All can now be used as a key for title, serial and/or app version.
If you check a patch for all ... then the patch will be applied regardless of what's checked for the game specifically, because we do not save 'Unchecked' patches.
2020-06-29 23:56:27 +02:00
Megamouse
12dded403f
patch_manager: implement serials and app_versions
2020-06-29 23:56:27 +02:00
Megamouse
abec850379
patch_manager: add hash to applied log message
2020-06-24 15:31:55 +02:00
Megamouse
431e0eb30c
patch_manager: fix missing config path
2020-06-24 15:31:55 +02:00
Megamouse
5affc459a2
patch manager: Allow partial patch file import
2020-06-21 15:48:30 +02:00
Megamouse
cd4ed11700
patch manager: Add patch removal to context menu
...
Also avoid saving empty patch maps
2020-06-21 15:48:30 +02:00
Megamouse
fd2cd84555
patch manager: Skip lower patch_versions
2020-06-21 15:48:30 +02:00
Megamouse
bf978ac8ca
patch manager: properly check patch versions
...
Also abort patch import of lower patch versions
2020-06-21 15:48:30 +02:00
Megamouse
d3c6472c0f
patch manager: replace Version and Title keys
...
With Patch Version and Game Title
2020-06-21 15:48:30 +02:00
Megamouse
1c7a318413
patch manager: move try catch block to yaml.cpp
2020-06-21 15:48:30 +02:00
Megamouse
591624b96c
patch manager: avoid patch import inconsistencies
...
Save the original patch value instead of the interpreted value
2020-06-21 15:48:30 +02:00
Megamouse
2323cd2a2d
patch manager: move title + serials to patch level
...
Also bump patch file version to 1.1
2020-06-21 15:48:30 +02:00
Megamouse
cc5c89539b
patch manager: improve error handling
...
There shouldn't be much left that can crash this thing
2020-06-21 15:48:30 +02:00
Megamouse
a7ee059419
patch manager: import patches
2020-06-21 15:48:30 +02:00
Malcolm Jestadt
746615a937
Fix embedded spu elf patching
2020-06-13 23:18:44 +02:00
Megamouse
22b1cc765a
patch manager: hotfix for legacy patches
...
Assignment of invalid YAML nodes is not possible after all
2020-06-11 22:23:02 +02:00
Megamouse
4a03f06175
patch manager: add checkbox for "enable legacy"
2020-06-11 16:31:49 +02:00
Megamouse
2dca8d84e1
patch manager
2020-06-11 13:15:25 +02:00
Nekotekina
04dedb17eb
Disable exception handling.
...
Use -fno-exceptions in cmake.
On MSVC, enable _HAS_EXCEPTION=0.
Cleanup throw/catch from the source.
Create yaml.cpp enclave because it needs exception to work.
Disable thread_local optimizations in logs.cpp (TODO).
Implement cpu_counter for cpu_threads (moved globals).
2020-03-12 16:03:08 +03:00
Nekotekina
d9a0619ddd
Remove legacy GENERAL log channel
...
Add some more log channels instead.
2020-02-01 07:49:38 +03:00
Malcolm Jestadt
ad8988afd3
Embedded SPU elf patching
...
- PS3 games include both PPU and SPU code in their PPU executables, so to make patching games that make use of the same SPU libraries easier, we add a system to find and patch them.
- Patches for this system still use SPU LS (Local Storage) addresses despite the fact that we aren't loading anything into SPU LS at this time. The patches are checked against each segment and patched in place.
2020-01-28 02:13:37 +03:00
Nekotekina
dfd50d0185
Implement std::bit_cast<>
...
Partial implementation of std::bit_cast from C++20.
Also fix most strict-aliasing rule break warnings (gcc).
2019-06-02 23:22:16 +03:00
scribam
14dc1fead6
yaml-cpp: update submodule and build integration
2018-06-13 04:25:34 +04:00
Nekotekina
d66e56392e
Handle exceptions at loading patch file
2018-02-08 20:46:13 +03:00
Nekotekina
18d472b7e1
Patch: new 'load' syntax
...
[load, path_name1] - load sequence
[load, path_name2, -0x40] - same, but modify the addresses by -64
2017-09-19 15:07:07 +03:00
Nekotekina
f91f2e3e6d
Patch: add floating point support
...
Also count applied entries
2017-07-17 18:36:54 +03:00
Nekotekina
78b9c64f67
Simple patch engine
2017-03-30 12:04:59 +03:00