Commit Graph

251 Commits

Author SHA1 Message Date
Henrik Rydgård
2e85eb5128 More static code analysis fixes 2024-10-28 17:59:06 +01:00
Henrik Rydgård
b10c4f7fae Crashfix, warning fix, cleanup 2024-10-22 14:15:47 +02:00
Henrik Rydgård
1a89c26dc0 Warning fixes 2024-10-03 18:19:11 +02:00
Henrik Rydgård
9b8f18298a Translation fixes, etc
Thanks @TotalCaesar659
2024-09-27 10:15:52 +02:00
Herman Semenov
3c66f149d3 [Common/Core/Windows] Removed excess check pointer before delete or free() 2024-09-17 11:34:42 +02:00
Henrik Rydgård
c2a38181ad Alternate solution for ModNation Racers metadata overwrite (see #18430 comments) 2024-09-10 19:06:22 +02:00
Henrik Rydgård
f18715bb7c Some renaming 2024-07-16 22:04:41 +02:00
Henrik Rydgård
4582ee692a More logging changes 2024-07-16 22:04:41 +02:00
Henrik Rydgård
70cb1104dc Kirk: Remove use of uninitialized stack as a random number source
This confused Valgrind and made me think we had another memory bug.

Turns out this is NOT the cause of #13781, which I still don't
understand.
2024-07-16 22:04:41 +02:00
Henrik Rydgård
cde71fc2b3 Misc cleanup 2024-07-16 22:04:41 +02:00
Henrik Rydgård
f8bf0bfbb5 Add some new logging to sceUtility to try to figure out the Silent Hill problem 2024-07-16 22:04:41 +02:00
Henrik Rydgård
e01ca5b057
Logging API change (refactor) (#19324)
* Rename LogType to Log

* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.

* Mac/ARM64 buildfix

* Do the same with the hle result log macros

* Rename the log names to mixed case while at it.

* iOS buildfix

* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård
dae44c1120 SavedataParam: optimize PSPMatch 2024-05-05 11:51:31 +02:00
Henrik Rydgård
b7f0a9029e More cleanup 2024-04-07 12:36:32 +02:00
Henrik Rydgård
79c553d004 Remove the zero-write in BuildHash 2024-04-07 12:31:45 +02:00
Henrik Rydgård
404600faa3 SavedataParam/ParamSFO: Minor code cleanups 2024-04-07 12:31:45 +02:00
Henrik Rydgård
77133dd82c Fix a long-standing buffer overflow in savedata encryption
BuildHash pads the buffer up to its 16-byte aligned size with zeroes,
so there needs to be space for that. Or, we should just remove that
write, but let's do the smallest change that fixes the bug for now.
2024-04-07 11:42:51 +02:00
Henrik Rydgård
e3177ac870 Make some global string pointers const, not just the strings.
Minor cleanup.
2023-12-29 14:09:45 +01:00
Herman Semenov
2a31f8c6c0 [Common/Core/HLE] Object out of scope optimization for better codegeneration (lower level scope) 2023-12-20 12:33:56 +03:00
Henrik Rydgård
ebaebf5945
Merge pull request #18546 from GermanAizek/make-smart-ptr
[Common Data/Core Dialog HLE/GPU Common Vulkan] Optimize create smart pointers using C++17 std::make_*
2023-12-14 14:02:55 +01:00
Henrik Rydgård
b78c7ad470
Merge pull request #18545 from GermanAizek/const-ref-params
Objects in function parameters have been replaced with constant references
2023-12-14 13:49:33 +01:00
Herman Semenov
08070e7f31 [Common Data/Core Dialog HLE/GPU Common Vulkan] Optimize create smart pointer using C++17 std::make_* 2023-12-14 15:44:16 +03:00
Herman Semenov
af41281761 [Core/Dialog/ELF/FileSystems/HLE/HW/Util] Added const reference for function params 2023-12-14 14:22:24 +03:00
Herman Semenov
315340fc62 Using const reference for C++17 range-based loop and freq used objects 2023-12-13 17:33:01 +01:00
Katharine Chui
652498e995 Handle SCE_UTILITY_SAVEDATA_TYPE_SAVE then SCE_UTILITY_SAVEDATA_TYPE_WRITEDATA
Modnation racers does a normal save for global profile, then
writes an insecure file for keeping track of selected language.
During SCE_UTILITY_SAVEDATA_TYPE_WRITEDATA it also provides no
data for param.sfo, so I'm assuming that utility.prx does not
update param.sfo data in that mode since the PSP save provided on
the issue tracker has information.
2023-11-18 03:48:01 +08:00
Henrik Rydgård
eb21a2e6c9 Break out the OSD data holder from Common/System/System.h, into OSD.cpp/h 2023-06-30 17:15:49 +02:00
Henrik Rydgård
7cc8c6cea4 OSD: Add semantics, move the the OSD state to common (while keeping the renderer in the UI). 2023-06-20 14:40:46 +02:00
Unknown W. Brackets
c122ee0a11 HLE: Add some assorted detected func names.
These come from here:
https://github.com/SiSTR0/sce_symbols/blob/main/psp_names.txt
2023-06-06 23:50:49 -07:00
Henrik Rydgård
ee6234ecb6 I18N: Switch to getting categories by index instead of by string lookup
Also gets rid of the shared_ptr usage, and generally makes things nicer.

Needed for later config refactorings, good to get in early.
2023-04-07 10:35:01 +02:00
Henrik Rydgård
9e125eeba7 Remove NotifyUserMessage from Host 2023-03-25 10:32:09 +01:00
Henrik Rydgård
fd7cc76d95 Remove unnecessary savedata version reporting 2023-01-02 23:22:54 +01:00
Unknown W. Brackets
a7b7bf7826 Global: Set many read-only params as const.
This makes what they do and which args to use clearer, if nothing else.
2022-12-10 21:13:36 -08:00
Henrik Rydgård
f5a7661c51 Add a NOOP state to reduce logspam after error 2022-12-02 22:46:38 +01:00
Unknown W. Brackets
29e7a53b5d Savedata: Update filelist on file erasure.
Also stop reporting as "not coded."
2022-10-16 09:20:04 -07:00
Unknown W. Brackets
db5011d7f1 Savedata: Cache SFO data during processing.
This only caches between touching PSP code, in case something changes.
Reduces cases of multiple SFO lookups and reads.
2022-10-09 14:42:31 -07:00
Unknown W. Brackets
5bed35b293 Savedata: Skip and defer texture exist check.
We can skip if there's no UI.
2022-10-09 14:42:31 -07:00
Unknown W. Brackets
8c1acc30e4 Savedata: Combine file info and dir listing calls. 2022-10-09 14:42:31 -07:00
Unknown W. Brackets
6168e03b4a Savedata: Reduce some duplicate file info lookups. 2022-10-09 14:42:31 -07:00
lainon
b304551747 Code readability, vec reserve() and remove excess c_str() 2022-09-30 12:31:32 +03:00
lainon
fec708489a Correct cleaning string and remove unused vars 2022-09-30 12:26:30 +03:00
Unknown W. Brackets
ce80900b75 Savedata: Return errors more correctly on load.
If the buffer isn't large enough, return an error.  See #14687, thanks
sum2012 and gid15.
For many error cases, ensure SFO data and bind are not updated on failure,
and that dataSize is forced to zero on data errors.
2022-09-13 00:10:27 -07:00
Henrik Rydgård
70b9dcc9a3 Initialize a bunch of Dialog structs 2022-08-18 16:46:22 +02:00
Unknown W. Brackets
b9310f1473 Savedata: Allow no key when not using SECURE modes.
For example, MAKEDATA with no key but explicit secureVersion is fine and
does create data.  However, it should still mark the version in
SAVEDATA_PARAMS, which currently we're failing to do.  Load then does some
form of validation of this version (but it's not an exact check weirdly.)

See #15068.
2022-05-29 13:23:16 -07:00
Unknown W. Brackets
e75d2a097b Savedata: Fix indeterminate timing of field update.
This makes the test pass consistently, instead of depending on thread
timing.
2022-01-26 00:31:30 -08:00
Henrik Rydgård
de3d711616 Move FixPathCase to Common/File/Path 2021-09-11 21:17:23 +02:00
Henrik Rydgård
b05a74803d Remove another redundant check, comment fixes 2021-09-11 20:31:42 +02:00
Henrik Rydgård
71056e3486 SFO return value fix, oops 2021-09-11 20:26:36 +02:00
Henrik Rydgård
36079b86d0 Optimize away a couple of existence checks 2021-09-11 19:53:19 +02:00
Henrik Rydgård
5d53e59c1d Optimize ReadPSPFile (which should probably be replaced with ReadEntireFile anyway) 2021-09-11 19:33:28 +02:00
Henrik Rydgård
8e2b73b05f Optimize MetaFileSystem::ReadEntireFile 2021-09-11 19:32:37 +02:00