mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-11-14 10:09:32 +01:00
Detect the main VSH module and log
This commit is contained in:
1 parent
606c233ee1
commit
02aedb598d
2 files changed
+13
-1
No files matched your search
@@ -1304,6 +1304,11 @@ static PSPModule *__KernelLoadELFFromPtr(const u8 *ptr, size_t elfSize, u32 load
|
||||
|
||||
module->nm.nsegment = reader.GetNumSegments();
|
||||
module->nm.attribute = modinfo->moduleAttrs;
|
||||
if ((module->nm.attribute & PSP_MODULE_VSH_MODE) != 0) {
|
||||
// Used by the PSP's Visual Shell (VSH/XMB) and modules it loads, such as vshmain.prx.
|
||||
// We don't do anything special with this yet, just recognizing it for now.
|
||||
INFO_LOG(Log::sceModule, "VSH mode module detected: %s", modinfo->name);
|
||||
}
|
||||
module->nm.version[0] = modinfo->moduleVersion & 0xFF;
|
||||
module->nm.version[1] = modinfo->moduleVersion >> 8;
|
||||
module->nm.data_size = 0;
|
||||
|
||||
@@ -28,8 +28,15 @@
|
||||
class PointerWrap;
|
||||
struct SceKernelSMOption;
|
||||
|
||||
// Known bits of PspModuleInfo::moduleAttrs.
|
||||
enum {
|
||||
PSP_MODULE_USER_MODE = 0x0000,
|
||||
PSP_MODULE_VSH_MODE = 0x0800,
|
||||
PSP_MODULE_KERNEL_MODE = 0x1000,
|
||||
};
|
||||
|
||||
struct PspModuleInfo {
|
||||
u16_le moduleAttrs; //0x0000 User Mode, 0x1000 Kernel Mode
|
||||
u16_le moduleAttrs; //0x0000 User Mode, 0x0800 VSH Mode, 0x1000 Kernel Mode
|
||||
u16_le moduleVersion;
|
||||
// 28 bytes of module name, packed with 0's.
|
||||
char name[28];
|
||||
|
||||
Reference in new issue
Block a user