uOFW
Reverse engineered PSP kernel 6.60.
|
#include <loadcore.h>
Data Fields | |
struct SceResidentLibrary * | next |
SceResidentLibraryEntryTable * | libEntryTable |
u8 | version [LIBRARY_VERSION_NUMBER_CATEGORY_SIZE] |
u16 | attribute |
u16 | stubCount |
u16 | vStubCount |
u32 | numExports |
u8 | unk20 |
u8 | unk21 |
u8 | unk22 |
s32 | unk24 |
u32 | unk28 |
u32 * | entryTable |
u32 * | exportsBaseAddr |
u32 | exportsSize |
u32 | midFuncIndex |
u32 | unk48 |
SceStubLibrary * | stubLibs |
u32 | sysTableEntry |
u32 | isUserLib |
u32 | unk64 |
char * | libName |
u32 | libNameInHeap |
u16 | sysTableEntryStartIndex |
u16 | extraExportEntries |
This structure represents a resident library control block. This control block is used to manage a resident library entry table registered to the system.
struct SceResidentLibrary* SceResidentLibrary::next |
Pointer to the next resident library with the same hash value.
SceResidentLibraryEntryTable* SceResidentLibrary::libEntryTable |
Pointer to the corresponding entry table used to register this library.
u8 SceResidentLibrary::version[LIBRARY_VERSION_NUMBER_CATEGORY_SIZE] |
The version of the library. This member is set by the corresponding resident library entry table.
u16 SceResidentLibrary::attribute |
The library's attributes. This member is set by the corresponding resident library entry table.
u16 SceResidentLibrary::stubCount |
The number of exported functions by the resident library. This member is set by the corresponding resident library entry table.
u16 SceResidentLibrary::vStubCount |
The number of exported variables by the resident library. This member is set by the corresponding resident library entry table.
u32 SceResidentLibrary::numExports |
The number of total exports by the resident library (the sum of stubCount and vStubCount).
u8 SceResidentLibrary::unk20 |
Unknown.
u8 SceResidentLibrary::unk21 |
Unknown.
u8 SceResidentLibrary::unk22 |
Unknown.
s32 SceResidentLibrary::unk24 |
Unknown.
u32 SceResidentLibrary::unk28 |
Unknown.
u32* SceResidentLibrary::entryTable |
Pointer to the resident library's array of NIDs, exported subroutine/variable entries. Every subroutine/variable entry has a corresponding NID used to identify it. The NID array comes first, followed by pointers to the exported functions and variables.
u32* SceResidentLibrary::exportsBaseAddr |
A pointer to the first export entry (either a subroutine or variable).
u32 SceResidentLibrary::exportsSize |
The number of exported functions and variables + the number of NIDs used for them.
u32 SceResidentLibrary::midFuncIndex |
The index into the middle of the exported functions/variables array.
u32 SceResidentLibrary::unk48 |
Unknown.
SceStubLibrary* SceResidentLibrary::stubLibs |
Pointer to a linked list of corresponding loaded stub libraries.
u32 SceResidentLibrary::sysTableEntry |
The address of the system call table block belonging to the resident library.
u32 SceResidentLibrary::isUserLib |
Indicates whether the resident library lives in User land or Kernel land.
u32 SceResidentLibrary::unk64 |
Unknown.
char* SceResidentLibrary::libName |
The name of the library.
u32 SceResidentLibrary::libNameInHeap |
Indicates whether the library's name is located in the heap or not.
u16 SceResidentLibrary::sysTableEntryStartIndex |
The entry index into Loadcore's system call table for an exported function of the resident library.
u16 SceResidentLibrary::extraExportEntries |
Extra export entries in the system call table entry belonging to the resident library.