Commit graph

403 commits

Author SHA1 Message Date
Henrik Rydgård
e1a48d74c4 A bit more GetPointer cleanup.
Probably not worth it for performance reasons, but some semantic cleanup
is good, especially the accidental GetPointer -> writable casts without
using GetPointerWrite.

Using Unchecked on already checked pointers, or when we'd crash anyway
if it returned nullptr, is good for clarity.
2023-01-10 12:13:47 +01:00
Unknown W. Brackets
6d9d517700 Reporting: Send game ELF crc with reports.
Getting a lot of spam from homebrew with different IDs that appear to be
the same actual homebrew, in part from ID generation.
2023-01-02 12:23:05 -08: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
Unknown W. Brackets
7e462c087c Loader: Get rid of overalloc on module exec. 2022-10-09 16:42:24 -07:00
Unknown W. Brackets
d473aa6db0 Module: Cleanup file read pattern.
Let's always use ReadEntireFile() when we can.
2022-10-09 14:42:30 -07:00
Unknown W. Brackets
3af8a667e1 Psmf: Fix save states. 2022-10-07 07:03:29 -07:00
sum2012
d716b74480 Fix as @hrydgard suggest 2022-10-07 06:01:53 +08:00
sum2012
776e72715f Forget remove the include 2022-10-05 20:52:47 +08:00
sum2012
de6d747cf0 Store crc change to u32
Should build fixed
2022-10-05 20:36:01 +08:00
sum2012
af93a7185b Add crc record to psmfplayer 2022-10-04 09:50:33 +08:00
sum2012
bbe9c41098 Add crc record into mpeg module 2022-10-04 09:21:11 +08:00
sum2012
95e6eaa601 Add crc calculation in loading module 2022-10-04 08:29:23 +08:00
Unknown W. Brackets
ccd4e92184 Kernel: Use PSPPointer for status objects.
Code makes more sense when reading ->size rather than offset 0.
2022-09-03 10:44:12 -07:00
Henrik Rydgård
6b2a31dff5 Add a check to the elf loader, preventing a crash on bad module info addr 2022-03-13 23:36:18 +01: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
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
4c1ed81d45 Module: Speed up module unload. 2021-04-16 01:03:10 -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
ffd468c3ae Reporting: Add more info to libstubend error. 2021-04-10 18:33:44 -07:00
Unknown W. Brackets
eedd0b32dd Module: Add a missing error return case. 2021-04-10 17:11:40 -07:00
Stefano B
e496c5e8cc Set ent_top/ent_size/stub_top/stub_size of SceModule 2021-03-30 23:15:49 +02: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
4f48ca3d1c Some homebrew like Triple Triad tries to load flash0:/kd/pspnet*.prx. We better just lie. 2021-03-11 00:54:19 +01:00
Henrik Rydgård
8e90d0644f
Merge pull request #14236 from unknownbrackets/reporting
Use full homebrew game title / id in reporting if available
2021-03-08 23:07:23 +01:00
Unknown W. Brackets
43bc865d30 Module: Avoid logging bad pointers when no nids. 2021-03-01 21:07:28 -08:00
Unknown W. Brackets
a76ba9a957 Core: Handle Disc ID a bit more consistently. 2021-02-28 10:52:35 -08:00
Henrik Rydgård
e12888844c
Merge pull request #14189 from sum2012/kernel-patch
sceKernelFindModuleByName:Add delay for Fake module
2021-02-27 18:17:50 +01: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
Unknown W. Brackets
d38c620f90 Module: Block a few network modules already HLE'd. 2021-02-20 19:06:27 -08:00
sum2012
354d263ccf sceKernelFindModuleByName:Add delay for Fake module
Fix #13601
2021-02-21 08:54:11 +08:00
aliaspider
9a3e5879bb Global: Correct many endian types and casts. 2021-02-18 22:25:24 -08:00
Unknown W. Brackets
e7b968be73 Debugger: Notate Memcpys directly as well. 2021-02-15 15:01:23 -08:00
Unknown W. Brackets
88e2b9b740 Debugger: Notate memset tags directly. 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
5d60fa0d0d Common: Maintain C++11 support in sign extend. 2021-01-31 08:44:02 -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
Unknown W. Brackets
70d92139db Headless: Simplify executing a ppdmp via headless. 2021-01-17 18:33:59 -08:00
Unknown W. Brackets
8fe9bedb78 Module: Keep the state for each import.
On exports, we iterate modules then imports.
But on imports, we iterate the exports to find the module, so we need to
keep the state around higher up.
2021-01-16 19:32:37 -08:00
Unknown W. Brackets
6efd1ae7f4 Module: Keep HI16/LO16 in a temp state object.
This doesn't need to live any longer than the link or unlink, so let's
just make that abundantly clear.
2021-01-16 11:57:37 -08:00
Unknown W. Brackets
17f3de66c5 Module: Reverse a single HI16/LO16 pair correctly.
If there is only one imported variable as a HI16/LO16, unloading the
module wasn't properly reversing the link.  See #13104.
2021-01-16 10:04:20 -08:00
Henrik Rydgård
5c0ab8bea3 Guess at a fix for #13698 - sceKernelThreadGetExitStatus probably takes some cycles. 2020-11-23 09:09:36 +01:00
Henrik Rydgård
45218ec73d
Merge pull request #13609 from hrydgard/merge-glsl-hlsl-fragment-shadergens
Merge GLSL and HLSL fragment shader generators into one generic
2020-11-01 09:53:56 +01:00
Henrik Rydgård
ee11f6af76
Merge pull request #13608 from shenweip/stopunloadselfmodule
When stops and unloads self module, make sure that the thread is properly deleted.
2020-10-31 23:03:33 +01:00
Henrik Rydgård
dd00672d88 Just some cleanups that get to tag along 2020-10-31 18:32:49 +01:00
Henrik Rydgård
2f4dfedaa9 Fix loading old savestates.
Was broken in #13592
2020-10-31 18:27:26 +01:00
shenweip
f5afd98226 When stops and unloads self module, make sure that the thread is properly deleted. 2020-10-31 23:25:52 +08:00
shenweip
6c5d4b5fc7 Log the return value. 2020-10-27 22:12:53 +08:00
shenweip
6717c2b55f Fixes mistake. 2020-10-27 20:58:07 +08: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