uOFW
Reverse engineered PSP kernel 6.60.
|
#include <loadcore.h>
Data Fields | |
u32 | unk0 |
u32 | modeAttribute |
u32 | apiType |
u32 | unk12 |
SceSize | execSize |
SceSize | maxAllocSize |
SceUID | decompressionMemId |
void * | fileBase |
u32 | elfType |
void * | topAddr |
u32 | entryAddr |
u32 | unk44 |
SceSize | modCodeSize |
SceSize | textSize |
SceSize | dataSize |
SceSize | bssSize |
u32 | partitionId |
u32 | isKernelMod |
u32 | isDecrypted |
u32 | moduleInfoOffset |
SceModuleInfo * | moduleInfo |
u32 | isCompressed |
u16 | modInfoAttribute |
u16 | execAttribute |
SceSize | decSize |
u32 | isDecompressed |
u32 | isSignChecked |
char * | secureInstallId |
SceSize | overlapSize |
void * | exportsInfo |
SceSize | exportsSize |
void * | importsInfo |
SceSize | importsSize |
void * | strtabOffset |
u8 | numSegments |
u8 | padding [3] |
u32 | segmentAddr [SCE_KERNEL_MAX_MODULE_SEGMENT] |
u32 | segmentSize [SCE_KERNEL_MAX_MODULE_SEGMENT] |
SceUID | memBlockId |
u32 | segmentAlign [SCE_KERNEL_MAX_MODULE_SEGMENT] |
u32 | maxSegAlign |
This structure represents executable file information used to load the file.
u32 SceLoadCoreExecFileInfo::unk0 |
Unknown.
u32 SceLoadCoreExecFileInfo::modeAttribute |
The mode attribute of the executable file. One of SceExecFileModeAttr.
u32 SceLoadCoreExecFileInfo::apiType |
The API type.
u32 SceLoadCoreExecFileInfo::unk12 |
Unknown.
SceSize SceLoadCoreExecFileInfo::execSize |
The size of the executable, including the ~PSP header.
SceSize SceLoadCoreExecFileInfo::maxAllocSize |
The maximum size needed for the decompression.
SceUID SceLoadCoreExecFileInfo::decompressionMemId |
The memory ID of the decompression buffer.
void* SceLoadCoreExecFileInfo::fileBase |
Pointer to the compressed module data.
u32 SceLoadCoreExecFileInfo::elfType |
Indicates the ELF type of the executable. One of SceExecFileElfType.
void* SceLoadCoreExecFileInfo::topAddr |
The start address of the TEXT segment of the executable in memory.
u32 SceLoadCoreExecFileInfo::entryAddr |
The entry address of the module. It is the offset from the start of the TEXT segment to the program's entry point.
u32 SceLoadCoreExecFileInfo::unk44 |
Unknown.
SceSize SceLoadCoreExecFileInfo::modCodeSize |
The total size of the loadable segments of the executable. Contains for example the size of the .text, .data and .bss segment.
SceSize SceLoadCoreExecFileInfo::textSize |
The size of the TEXT segment.
SceSize SceLoadCoreExecFileInfo::dataSize |
The size of the DATA segment.
SceSize SceLoadCoreExecFileInfo::bssSize |
The size of the BSS segment.
u32 SceLoadCoreExecFileInfo::partitionId |
The memory partition of the executable.
u32 SceLoadCoreExecFileInfo::isKernelMod |
Indicates whether the executable is a kernel module or not. Set to 1 for kernel module, 0 for user module.
u32 SceLoadCoreExecFileInfo::isDecrypted |
Indicates whether the executable is decrypted or not. Set to 1 if it is successfully decrypted, 0 for encrypted.
u32 SceLoadCoreExecFileInfo::moduleInfoOffset |
The offset from the start address of the TEXT segment to the SceModuleInfo section.
SceModuleInfo* SceLoadCoreExecFileInfo::moduleInfo |
The pointer to the module's SceModuleInfo section.
u32 SceLoadCoreExecFileInfo::isCompressed |
Indicates whether the module is compressed or not. Set to 1 if it is compressed, otherwise 0.
u16 SceLoadCoreExecFileInfo::modInfoAttribute |
The module's attributes. One or more of SceModuleAttribute and SceModulePrivilegeLevel.
u16 SceLoadCoreExecFileInfo::execAttribute |
The attributes of the executable file. One of SceExecFileAttr.
SceSize SceLoadCoreExecFileInfo::decSize |
The size of the decompressed module, including its headers.
u32 SceLoadCoreExecFileInfo::isDecompressed |
Indicates whether the module is decompressed or not. Set to 1 for decompressed, otherwise 0.
u32 SceLoadCoreExecFileInfo::isSignChecked |
Indicates whether the module was signChecked or not. Set to 1 for signChecked, otherwise 0. A signed module has a "mangled" executable header, in other words, the "~PSP" signature can't be seen.
char* SceLoadCoreExecFileInfo::secureInstallId |
Unknown.
SceSize SceLoadCoreExecFileInfo::overlapSize |
The size of the GZIP compression overlap.
void* SceLoadCoreExecFileInfo::exportsInfo |
Pointer to the first resident library entry table of the module.
SceSize SceLoadCoreExecFileInfo::exportsSize |
The size of all resident library entry tables of the module.
void* SceLoadCoreExecFileInfo::importsInfo |
Pointer to the first stub library entry table of the module.
SceSize SceLoadCoreExecFileInfo::importsSize |
The size of all stub library entry tables of the module.
void* SceLoadCoreExecFileInfo::strtabOffset |
Pointer to the string table section.
u8 SceLoadCoreExecFileInfo::numSegments |
The number of segments in the executable.
u8 SceLoadCoreExecFileInfo::padding[3] |
Reserved.
u32 SceLoadCoreExecFileInfo::segmentAddr[SCE_KERNEL_MAX_MODULE_SEGMENT] |
An array containing the start address of each segment.
u32 SceLoadCoreExecFileInfo::segmentSize[SCE_KERNEL_MAX_MODULE_SEGMENT] |
An array containing the size of each segment.
SceUID SceLoadCoreExecFileInfo::memBlockId |
The ID of the ELF memory block containing the TEXT, DATA and BSS segment.
u32 SceLoadCoreExecFileInfo::segmentAlign[SCE_KERNEL_MAX_MODULE_SEGMENT] |
An array containing the alignment information of each segment.
u32 SceLoadCoreExecFileInfo::maxSegAlign |
The largest value of the segmentAlign array.