8dabd1a025
PowerPC/MMU: Refactor to class, move to System.
2023-03-28 03:47:51 +02:00
a0974c18cd
RiivolutionPatcher: Use capitalization of file that exists in the host file system if possible.
...
Fixes https://bugs.dolphin-emu.org/issues/13138
2023-02-28 00:56:34 +01:00
bdb19085c4
Common: Add utility function for case-insensitive string comparison.
2023-02-28 00:56:33 +01:00
7cecb28bdf
DolphinQt: Properly lock CPU before accessing emulated memory
...
This fixes a problem I was having where using frame advance with the
debugger open would frequently cause panic alerts about invalid addresses
due to the CPU thread changing MSR.DR while the host thread was trying
to access memory.
To aid in tracking down all the places where we weren't properly locking
the CPU, I've created a new type (in Core.h) that you have to pass as a
reference or pointer to functions that require running as the CPU thread.
2023-02-12 11:27:50 +01:00
7fd552081f
HLE function hooking: Avoid ppcState global.
2023-01-27 15:22:46 +01:00
e5b91f00b0
Common: Replace StringBeginsWith/StringEndsWith with std equivalents
...
Obsoletes these functions in favor of the standard member functions
added in C++20.
2023-01-24 14:58:20 -05:00
839db591d9
HW/Memmap: Refactor Memory to class, move to Core::System.
2022-12-03 13:27:02 +01:00
cc315cb7af
DiscIO/Riivolution: Add dolphin-specific extensions "dolphin_sys_file" and "dolphin_sys_folder" to patch sys files like you would patch regular files.
2022-07-19 00:55:04 +02:00
9e5bc98496
DiscIO/RiivolutionPatcher: Skip main.dol patches if no main.dol was given.
2022-07-19 00:55:03 +02:00
6e5f4125e3
Use Common::ToLower and Common::ToUpper
2022-01-16 17:00:12 -08:00
0fc563ee2e
RiivolutionPatcher: Use case-insensitive filename comparison when searching for files in a folder patch.
2021-11-20 01:15:18 +01:00
fb8b9f3251
Merge pull request #10194 from AdmiralCurtiss/riivolution-edge-cases
...
Fix some Riivolution file patching edge cases.
2021-10-31 21:24:03 +01:00
e51119c4ce
HLE: Fix hooks overlapping Riivolution patches
2021-11-01 00:07:14 +04:00
e91e04fe1e
RiivolutionPatcher: More closely match behavior of filename searching file patches to actual Riivolution.
2021-10-31 05:47:39 +01:00
335a1b5cb5
RiivolutionPatcher: More closely match behavior of folder patches to actual Riivolution.
2021-10-31 05:47:39 +01:00
4f82810845
RiivolutionPatcher: Use FileInfo instead of IOFile when only checking for filesize.
2021-10-24 00:09:09 +02:00
fe7f3a6f26
RiivolutionPatcher: Protect against three or more dots in path traversal.
2021-10-24 00:09:09 +02:00
22c6f2fe3b
RiivolutionPatcher: Handle the possibility of the FST already containing a main.dol file.
2021-10-24 00:09:09 +02:00
ba3373b476
RiivolutionPatcher: Modify memory patching logic to be more accurate to actual Riivolution.
2021-10-24 00:09:09 +02:00
fe242f79ee
Core: Implement Wii NAND path redirects for Riivolution savegame patches.
2021-10-24 00:09:07 +02:00
588c31acb6
RiivolutionPatcher: Ignore last two bits of offset in file patches to match console behavior.
2021-10-24 00:09:07 +02:00
6ec4af7ea4
RiivolutionPatcher: Load external files with a layer of indirection during the patching process to properly resolve the paths given in the XML.
...
This also may eventually allow loading patches from sources other than the 1:1 expected file structure host file system, such as memory or an archive file.
2021-10-24 00:09:07 +02:00
783b180dc8
Core: Add RiivolutionPatcher to apply Riivolution-style patches to a game's file system and memory.
2021-10-24 00:09:06 +02:00