Commit graph

329 commits

Author SHA1 Message Date
Unknown W. Brackets
2e0eade993 Module: Reinit gpu only on runtime module load.
During initial loading, we load the module in a thread.  It's not
deterministic if the gpu will load before or after the ELF, which can
cause a crash.

There's no real reason to Reinitialize() it there, though.  We already
Reinitialize() on gpu start.
2020-03-08 15:35:21 -07:00
Henrik Rydgård
d79abaa9c5 Add DEFLATE and MD5 to HLE module blacklist. Replaces #12576, fixes #12570
And possibly #12571
2020-01-16 21:59:15 +01:00
Henrik Rydgård
c2e8577756 Loader: If the module range is bad, don't get stuck trying to scan for functions.
Better crash immediately (although that's also not ideal).
2020-01-13 23:28:46 +01:00
Henrik Rydgård
a881d78d64 Warning fix 2020-01-12 18:42:28 +01:00
Davee Morgan
3a5aa915e4 PRX Decryption: add support for gzip compressed executables 2020-01-11 15:05:48 +00:00
Davee Morgan
1d7bbdd006 PRX Decryption: add support for type 0/1/2/5/6 decryption 2020-01-11 15:00:07 +00:00
Henrik Rydgård
29950c0ad5 Update last commit to use IsValidRange instead of IsValidAddress. 2019-10-13 16:21:52 +02:00
Henrik Rydgård
d64f9c44f3 Code analysis: Skip invalid code sections. May help #12414. 2019-10-13 13:25:18 +02:00
Unknown W. Brackets
556b960355 Kernel: Shutdown when module load fails.
This prevents us from trying to reinit next time, which can crash since we
never finished initing in the first place.
2019-07-07 18:06:06 -07:00
Unknown W. Brackets
93069756e6 GE Debugger: Split playback into a separate file. 2019-06-23 18:49:27 -07:00
Unknown W. Brackets
f244b390ae Kernel: Kernel threads can beget kernel threads.
Fixes #7687.
2019-03-23 12:05:06 -07:00
Henrik Rydgård
906d2dff7b Lie about success of loading flash0:/kd/audiocodec_260.prx, just like we already lie about audiocodec.prx.
Fixes #11733
2019-02-10 22:40:34 +01:00
Unknown W. Brackets
f4e8e68c44 Io: Cleanup file not found error codes.
Replay (#10888) caused error to be non zero, which was later translated to
something else, confusingly...
2018-05-06 10:15:05 -07:00
Unknown W. Brackets
892c439fcf Module: Clarify insertSymbols usage. 2018-03-17 13:58:56 -07:00
Unknown W. Brackets
f14f2efa79 Module: Hash functions only once during loading.
This fixes the loading speed regression from #10501.
2018-03-17 13:36:37 -07:00
Unknown W. Brackets
88e01c7944 UI: Show more detailed loading status.
It's sometimes taking longer, so this may make it easier to identify.

See #10673.
2018-03-12 18:06:46 -07:00
Henrik Rydgård
14c93bdc2b Minor code/logging cleanups. 2018-02-27 19:44:11 +01:00
Unknown W. Brackets
6149ac584f jit: Add interface to precompile functions.
This doesn't actually do any preloading yet, it just adds an API.
2018-01-06 16:43:38 -08:00
Unknown W. Brackets
29ed48c32a Module: Avoid scanning stubs if possible.
In this case, we often scan some garbage, but let's reduce it at least.
2018-01-02 22:21:08 -08:00
Unknown W. Brackets
00a05e97ac Module: Scan modules with no sections at all.
Also, fix some off-by-one issues with end addresses.
2018-01-02 22:20:09 -08:00
Unknown W. Brackets
30b2d05bac Module: Correct detection of executable sections. 2018-01-02 21:53:13 -08:00
Unknown W. Brackets
caf6277db7 Module: Reload imports later in save state load.
We want all the modules to have loaded when we start doing this, so that
itnerlinking can properly be handled.  Otherwise, earlier created modules
won't import later ones, and instead generate kernel object errors.
2017-12-27 13:36:26 -08:00
Unknown W. Brackets
b2bb1b676e Reporting: Oops, fix module load log line.
Typo from 0a36549 - meant to disable reporting.
2017-12-01 18:25:06 -08:00
Unknown W. Brackets
0dba5cebb2 Module: Cleanup magic number. 2017-12-01 09:38:23 -08:00
Unknown W. Brackets
0a365495cd Reporting: Stop reporting module load versions.
We've got plenty of data, don't need to report anymore.
2017-12-01 09:29:17 -08:00
Unknown W. Brackets
9a71ac726b Module: Stop reporting bad magic numbers.
We get these a lot, and they seem to be related to corrupt isos, not
related to actual emulation issues we can do anything about.

Even if there's a game trying to load an SFO as a PRX out there somewhere,
we'll never find it among all the noise.
2017-11-30 15:17:02 -08:00
Unknown W. Brackets
039c69f031 SaveState: Fix use-after-resize iterator.
Only on older save states.
2017-11-11 08:08:59 -08:00
Henrik Rydgård
42bdf3e19b ELF loading potential out-of-bounds fix 2017-06-07 00:22:37 +02:00
Henrik Rydgård
b1b3b7c9d7 Refuse to load truncated ~PSP files. 2017-06-06 23:41:23 +02:00
Henrik Rydgård
57a20f02ed Fix minor overallocation during elf loading 2017-06-06 23:20:09 +02:00
Unknown W. Brackets
7e26c75a27 GE Debugger: Pass filename into dump replay. 2017-06-04 15:11:10 -07:00
Unknown W. Brackets
2a388ba785 GE Debugger: Fix replay FPS. 2017-06-04 10:39:02 -07:00
Unknown W. Brackets
73d21ab859 GE Debugger: Initial GE dump replay.
Doesn't work for a few reasons, mainly need existing matrix state/etc.
2017-06-04 10:38:50 -07:00
Unknown W. Brackets
60bf4ff99b GE Debugger: Start a module/thread for dump runs.
Otherwise some things might get confused.
2017-06-03 15:29:12 -07:00
Unknown W. Brackets
36069d1446 GE Debugger: Simple framework to load dumps.
This tries to execute them within the context of the emulator as much as
possible, so we don't have weird bugs.  Going with a file type so we can
easily load the dump by opening the file directly.
2017-06-03 15:29:11 -07:00
Henrik Rydgård
083f7ff280 Strncpy doesn't terminate correctly, switch to truncate_cpy. 2017-05-26 18:26:26 +02:00
Henrik Rydgård
c899882034 Fix issues with software GPU on D3D11 2017-04-11 12:53:11 +02:00
Henrik Rydgård
e74749f2b2 A function renamed, some logging improvements 2017-03-10 00:11:00 +01:00
Henrik Rydgård
440e72d250 Clean up among the logs. Remove MASTER_LOG. 2017-03-06 13:10:23 +01:00
Florent Castelli
373db56a16 blackberry: Remove! 2016-10-11 17:40:32 +02:00
Henrik Rydgard
d3305b88b9 Partially implement KUBridge, trying to help #8925. However, it doesn't even call the function.... Odd. 2016-10-09 12:40:40 +02:00
Henrik Rydgard
853ea02201 Minor cleanups in elfreader 2016-09-18 23:11:41 +02:00
Unknown W. Brackets
e02440b68a Module: Don't report broken stubs from old states. 2016-09-18 09:01:27 -07:00
Unknown W. Brackets
f23391578f Psmf: Ignore stream size with old PsmfPlayer libs.
Until 5.50, the stream size was not used.  See #6574.
2016-08-14 17:24:29 -07:00
Unknown W. Brackets
4b4770bbc5 Log kernel syscalls with a K.
This way they can be properly differentiated.
2016-08-04 09:46:26 -07:00
Unknown W. Brackets
21ba67e1d7 Module: Add legacy save state stub fixup.
Forgot this, when we don't have the stub info.  Stub info is better, since
we might handle things differently.
2016-05-30 02:11:28 -07:00
Unknown W. Brackets
1a3fc9cdeb Module: Avoid writing missing stubs on reimport.
In case they were manually linked, or something.
2016-05-29 08:29:51 -07:00
Unknown W. Brackets
9b706975ad Module: Reimport stubs on load state. 2016-05-29 08:27:19 -07:00
Unknown W. Brackets
47f16ed97b Module: Refactor stub imports to dedicated func. 2016-05-29 08:07:01 -07:00
Henrik Rydgard
4645473dab Remove unused code 2016-05-01 11:35:16 +02:00