Commit graph

260 commits

Author SHA1 Message Date
Lioncash
d8da1cd44d sceKernelModule: Remove unused array in __KernelLoadPBP 2014-12-10 23:38:35 -05:00
Lioncash
cac632424c Core: Add missing override specifiers 2014-12-08 15:20:31 -05:00
Lioncash
4ccb838306 Core: Mark some module functions as static 2014-12-08 04:40:08 -05:00
Unknown W. Brackets
49aff7c75d Correct unload of imported vars.
From level99procrastinator, just slightly adjusted.
2014-11-05 22:57:25 -08:00
Unknown W. Brackets
a391296c17 Small optimization to func/var import.
Should compare the nid first, of course, faster and less likely to match
anyway.
2014-11-02 17:53:46 -08:00
sum2012
55cb292bad Correct sceKernelSelfStopUnloadModule 's name and logging 2014-08-29 20:36:21 +08:00
sum2012
26b25052c2 Fix sceKernelSelfStopUnloadModule parameters
According to http://code.google.com/p/jpcsp/source/detail?r=3597
2014-08-29 20:31:25 +08:00
Henrik Rydgard
0f973a3276 Get it running on Android again 2014-08-23 09:48:08 +02:00
Henrik Rydgard
dfbb0bdea2 Hack: Return -1 specifically for trying to load SFO's as modules. Works around #6748
Will test properly later and return the correct value but this should be zero-impact.
2014-08-21 10:34:56 +02:00
Unknown W. Brackets
dc16ad3744 Report forwarding module load to loadexec.
Shouldn't do this probably.
2014-08-17 14:26:01 -07:00
Unknown W. Brackets
abacba4e31 Clarify some module loading code. 2014-08-17 14:26:00 -07:00
Unknown W. Brackets
a16ccf52e7 Allocate kernel modules that fail to decrypt.
This corrects some memory semantics to match real firmware.
2014-08-17 14:25:59 -07:00
Unknown W. Brackets
71e8c0f6e0 Sum all .bss* sections when counting bss size. 2014-08-17 14:25:58 -07:00
Unknown W. Brackets
0a14fd5ee9 Skip zero size segments in module segment info. 2014-08-17 14:25:58 -07:00
Unknown W. Brackets
bf03e32027 Add a safety check for freeing kernel modules. 2014-08-17 14:25:57 -07:00
Unknown W. Brackets
7c37d64717 Load kernel modules into kernel memory.
This way they don't eat up user memory space.
2014-08-17 14:25:55 -07:00
Unknown W. Brackets
99d96218e1 Correct some loadmodule error codes. 2014-08-17 14:25:55 -07:00
Unknown W. Brackets
cf4b607113 Validate the elf position argument more. 2014-08-17 14:25:54 -07:00
Unknown W. Brackets
1d310ad8bb Allocate module memory from top/bottom per request. 2014-08-17 14:25:54 -07:00
Unknown W. Brackets
1d195a37e4 Cleanup modules on unloadself. 2014-08-17 14:25:53 -07:00
Unknown W. Brackets
2f90c8d35a Fix a bad == comparison typo. 2014-07-15 23:33:01 -07:00
Unknown W. Brackets
ff7c3ab10d Oops, would still infinite loop on a bad module.
Should really fix #6552 this time.
2014-07-15 07:14:13 -07:00
Unknown W. Brackets
2da02f97c8 Null check modules on loadexec.
Should fix #6552.
2014-07-14 22:14:23 -07:00
Henrik Rydgård
c4bebda182 Merge pull request #6549 from unknownbrackets/modules
Correct some module func return values, info values, and clear on unload
2014-07-14 14:11:29 +02:00
Unknown W. Brackets
bddeba5901 Add a safety check for lots of segments. 2014-07-13 23:51:36 -07:00
Unknown W. Brackets
4ced0e86b1 Return an error code when module load fails.
If we're out of memory, we need to tell the game, of course.
2014-07-13 22:00:33 -07:00
Unknown W. Brackets
7c4aab3cc2 Warn on exports from syslib.
They don't seem to hook up properly on hardware by the module name.
2014-07-13 22:00:33 -07:00
Unknown W. Brackets
292a9ea567 Clear module text and bss on unload.
Text is set to break instructions, data/bss to -1.  Matches results on a
PSP.
2014-07-13 22:00:32 -07:00
Unknown W. Brackets
ede29179c6 Cleanup remaining modules on loadexec. 2014-07-13 22:00:31 -07:00
Unknown W. Brackets
729377881c Protect against modules with no start address.
Generally, fake ones.
2014-07-13 19:58:30 -07:00
Unknown W. Brackets
4a94a30ba6 Calculate the module info data/text/bss size. 2014-07-13 19:53:00 -07:00
Unknown W. Brackets
1c7873e2f5 Fill the module info segment addresses and sizes. 2014-07-13 19:16:25 -07:00
Unknown W. Brackets
399d4d1ba9 Correct sceKernelModuleStart() return value. 2014-07-13 15:16:03 -07:00
Unknown W. Brackets
8dd783f719 Correct HLE function name per sha. 2014-07-13 11:03:23 -07:00
Karen Tsai
1d1096633f Removed some extraneous tabs in sceKernelModule.cpp 2014-07-02 13:21:27 -04:00
sum2012
96c6a53e58 Fix space bug 2014-07-02 20:27:17 +08:00
sum2012
0256c7e056 Use with same code with sceKernelStopUnloadSelfModuleWithStatus 2014-07-02 20:08:27 +08:00
sum2012
eecd9038cd Init exitCode variable 2014-07-02 08:00:41 +08:00
sum2012
bc4a9149d3 Correct sceKernelSelfStopUnloadModule
Fix #4237
2014-07-02 07:25:49 +08:00
Henrik Rydgård
bfffe33438 Merge pull request #6469 from unknownbrackets/logging
Enforce semicolons at the end of log lines
2014-06-30 11:44:02 +02:00
Unknown W. Brackets
c6f5ddd7a4 Reset replacements on loadexec.
Just to make sure we don't get confused.
2014-06-30 00:27:05 -07:00
Unknown W. Brackets
0a33eb4c42 Fix missing log semicolons only affecting logging. 2014-06-29 19:09:39 -07:00
Unknown W. Brackets
5db79dcf11 Fix some missing semicolons on log statements. 2014-06-29 19:09:37 -07:00
Unknown W. Brackets
ec94498342 When scanning or relocating, check replacements.
Just to make sure we don't wrongly detect the length or unresolve a var
wrong etc.
2014-06-23 08:18:56 -07:00
Unknown W. Brackets
90b30f8bfe Use module start func, not entry, if specified.
Fixes #5539, Ranshima Monogatari Rare Land Story.  Still logging in case
it causes a problem.
2014-06-07 06:28:23 -07:00
Unknown W. Brackets
a7b9ce205b Enable function replacements by default.
So things like Star Ocean work, and game memcpy()'s to GPU work.

This will make game start on mobile a bit slower, though.  And there could
still be bugs so leaving as an option, but seems pretty stable.  Didn't
realize it wasn't enabled by default.
2014-06-07 00:13:45 -07:00
Unknown W. Brackets
c1fdb5fc5b Might as well allow imports to blacklisted.
If someone's trying to read their code.
2014-05-24 17:15:25 -07:00
Unknown W. Brackets
8ef00232d3 Parse exports of blacklisted modules.
But ignore them.  This allows us to get the devkit version and other
potentially useful information.
2014-05-24 17:13:26 -07:00
Unknown W. Brackets
67fc607671 Oops, dumb mistake in reporting. 2014-05-21 01:17:15 -07:00
Unknown W. Brackets
5c13d482e0 When reporting module versions, include devkit ver.
Looks like this'll be the ticket for scePsmfPlayer, which has different
functionality in different versions (including when and how end of video
is flagged, which FF2 depends on.)

Now let's see what versions are out there.
2014-05-21 01:11:33 -07:00