Commit Graph

182 Commits

Author SHA1 Message Date
Unknown W. Brackets
b2b61d58d4 Loader: Support HI16/16 pairs, not just LO16.
Motorstorm: Arctic Edge US uses these pairs for some VFPU loads.
Without relocating these, strange shadows show underneath vehicles.

It appears as if actual firmware pairs with any non-HI16 relocation.
2023-06-18 19:06:29 -07:00
Unknown W. Brackets
a9668bdb60 Debugger: More useful tag for section suballocs. 2023-06-18 19:04:18 -07:00
Henrik Rydgård
4dd4bf24fc
Merge pull request #17561 from unknownbrackets/elf-reloc
Loader: Report on HI16/LO16 r_info mismatch
2023-06-11 23:59:52 +02:00
Unknown W. Brackets
4108eaca42 Loader: Add additional data to missing LO16 report. 2023-06-11 14:41:50 -07:00
Unknown W. Brackets
ef59b60aac Loader: Report on HI16/LO16 r_info mismatch.
Referenced in some LLVM code which checks the index specifically:
c72dea88b6/lld/ELF/Relocations.cpp (L491)

Noted by Kingcom.
2023-06-11 14:37:43 -07:00
Henrik Rydgård
67a35d3476
Merge pull request #17356 from unknownbrackets/minor-cleanup
Cleanup some more string formats, mostly in debugger
2023-05-23 08:29:23 +02:00
Henrik Rydgård
cf9a628a2e AndroidContentURI: Move code from the header to cpp. Some assorted cleanup, add a unit test for Download paths 2023-05-16 16:08:51 +02:00
Henrik Rydgård
a43bdd8169 ReadSFO: Fix memory safety issues 2023-05-01 13:52:16 +02:00
Unknown W. Brackets
46101581c0 Core: Cleanup disasm buffer usage. 2023-04-29 09:07:25 -07:00
Henrik Rydgård
534896d2ab ControlMapper: Allow overriding PSP button event handling through a callback. 2023-03-28 00:23:18 +02:00
Unknown W. Brackets
88ba003f46 ThreadManager: Add a simple priority field.
Currently, not actually respected.
2023-02-02 17:08:24 -08:00
Unknown W. Brackets
dea9cac16c Core: Add range checks to some helpers and similar. 2023-01-09 16:56:18 -08:00
Unknown W. Brackets
9cfcbc46e6 Global: Cleanup initialization/pointer checks.
Cleaning up a lot of cases of uninitialized data, unchecked return values
for failures, and similar.
2022-12-10 21:13:36 -08:00
Henrik Rydgård
50285f6bf6 Revert "Revert "Loader: Validate offsets and truncation in ELF.""
This reverts commit 470edac18a.
2022-10-10 13:29:09 +02:00
Henrik Rydgård
6833589e38 Update elfSize to uncompressed elf size when needed. Fixes infinite loading in Wipeout.
Also minor cleanups.
2022-10-10 12:22:05 +02:00
Henrik Rydgård
470edac18a Revert "Loader: Validate offsets and truncation in ELF."
This reverts commit 4ecdce2a37.
2022-10-10 11:42:24 +02:00
Unknown W. Brackets
4ecdce2a37 Loader: Validate offsets and truncation in ELF. 2022-10-09 16:41:32 -07:00
lainon
b304551747 Code readability, vec reserve() and remove excess c_str() 2022-09-30 12:31:32 +03:00
Henrik Rydgård
ac7ca963db Make valgrind happy 2022-09-23 12:24:43 +02:00
Henrik Rydgård
e6403d7157 Split GetPointer into two versions, to help with const correctness 2022-07-24 13:26:19 +02:00
Unknown W. Brackets
2479d52202 Global: Reduce includes of common headers.
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
Henrik Rydgård
322a8a8b3c More checks in ParamSFO reader. Only problem left is that the strings are null terminated and can walk off the buffer. 2021-10-08 19:09:46 +02:00
Henrik Rydgård
9c017e03f9 Add some basic sanity checks to ParamSFO reader (could add more) 2021-10-07 21:08:12 +02:00
Unknown W. Brackets
cdcd77a931 Core: Correct relocation error check. 2021-06-13 10:51:51 -07:00
Henrik Rydgård
77908cb9e5 atomic include buildfix 2021-06-12 23:20:47 +02:00
Henrik Rydgård
73871b9b7e Implement new thread manager, port stuff to it. 2021-06-12 13:03:53 +02:00
Henrik Rydgård
025bcb1673 Introduce Path, start using it all over the place.
Still lots left to convert!

Convert GetSysDirectory to return Path.

More buildfixing

Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Henrik Rydgård
d775bf4e4c
Merge pull request #14442 from unknownbrackets/path-extension
Update path extension and PSP/GAME/ handling
2021-05-10 21:05:05 +02:00
Henrik Rydgård
9480b6672b Loaders: Rename Path() to GetPath().
Path is going to be a struct name.
2021-05-09 17:10:14 -07:00
Unknown W. Brackets
8544bd0c3e Windows: Avoid C++ files for consistency.
There's already the mingw thing, and we're avoiding these for Android
paths too.  Let's be consistent.
2021-05-09 17:00:48 -07:00
Unknown W. Brackets
4f6aaea1e8 Core: Correct thread dependency in relocations.
Didn't realize it was looking at the later value before relocation.
This still remains about as much faster as before and still beneficial to
thread.
2021-04-25 16:49:52 -07:00
Unknown W. Brackets
572c20b4cd Debugger: Mark ELF sections as suballocations.
Sometimes they're named, it's helpful to see where rodata starts, etc.
2021-04-21 19:45:58 -07:00
Unknown W. Brackets
6ee944a0a6 Module: Process relocations on threads.
There's usually quite some, and using threads can halve the load time.
ELF loading isn't terribly slow, but it adds up.
2021-04-16 00:41:56 -07:00
Unknown W. Brackets
e7012f8f88 Module: Process relocations using unchecked reads.
No need to do checks twice.  Also switch the LO16 part to
Read_Instruction.
2021-04-16 00:32:42 -07:00
Unknown W. Brackets
f6ad90fab8 Module: Correctly handle modules with -1 entry.
It should not try to run, options or not.
2021-03-14 16:52:48 -07:00
Henrik Rydgård
2f3bc2d373
Merge pull request #14056 from unknownbrackets/debugger-mem
Track memory allocations and writes for debug info
2021-02-21 10:18:11 +01:00
aliaspider
9a3e5879bb Global: Correct many endian types and casts. 2021-02-18 22:25:24 -08:00
Unknown W. Brackets
9ead436069 Debugger: Specifically tag relocations.
This is useful info.
2021-02-15 15:01:23 -08:00
Unknown W. Brackets
ca7d127adc Debugger: Notate more cases of memory clears. 2021-02-15 15:01:23 -08:00
Unknown W. Brackets
f7740edc6d Debugger: Add more metadata for memory usage. 2021-02-15 15:01:21 -08:00
Unknown W. Brackets
1b00da2f3a Common: Sign extend w/func not chained casts.
Should be clearer to read and easier to get right.
2021-01-31 01:25:52 -08:00
Henrik Rydgård
ac6715baa9 Improvements to crash screen.
Part of #13299

Use the new tests/cpu/crash tests in pspautotest to test this code
(manually).
2020-12-19 19:48:24 +01:00
shenweip
807de037bb IMP sceKernelFindModuleByUID and sceKernelFindModuleByName. 2020-10-27 20:48:34 +08:00
Henrik Rydgård
4f43cff5ca
Move fileutil, net, image loaders, ui to Common. (#13506)
* Move and rename file_util/fd_util to Common/File/FileUtil and DirListing

Let's also move net while we're at it.

Move the ZIM/PNG loaders over to Common.

Move the UI framework into Common

iOS buildfix

* Buildfix

* Buildfixes

* Apple buildfix

* This typo again..

* UWP buildfix

* Fix build of PPSSPPQt, such as it is (it's not in good condition...)

* Guess what? Another buildfix.
2020-10-04 20:48:47 +02:00
Henrik Rydgård
989e353482 Common.h shouldn't include Log.h.
Buildfixes

More buildfixes. Move JSON code to common.
2020-10-04 11:42:14 +02:00
Henrik Rydgård
b0365bd6ee GE dump loading: Try to use the correct GameID so compat.ini flags apply. 2020-08-30 11:48:58 +02:00
Henrik Rydgård
b652f62d19 SavedataParam: Be careful with const char* to string. Might help #13187 2020-08-26 22:17:42 +02:00
Henrik Rydgård
0586338d5e Add some comments and const-correctness, and a pointer type fix, to the "semaphore" crypto stuff. 2020-08-01 23:11:48 +02:00
Henrik Rydgård
5f57d4775f Add some excessive null checks to GameScreen::render(), might fix the crash seen in #13057 2020-06-29 22:47:34 +02:00
Henrik Rydgård
e2845363e9 Async I/O: Don't delay on close. Fixes #12549 (MGS:PW crash).
Also sneak in a small change in logging.
2020-01-12 18:42:28 +01:00