|
UVLoader
Userland Vita Loader
|
Functions to load executable. More...
#include "types.h"Data Structures | |
| struct | Elf32_Ehdr |
| struct | Elf32_Shdr |
| struct | Elf32_Phdr |
Macros | |
| #define | UVL_SEC_MODINFO ".sceModuleInfo.rodata" |
| Name of module information section. | |
| #define | UVL_SEC_MIN_ALIGN 0x100000 |
| Alignment of each section. | |
| #define | UVL_BIN_MAX_SIZE 0x200000 |
| 2MB max, change in the future | |
| #define | ATTR_MOD_INFO 0x8000 |
| module_exports_t attribute | |
| #define | ENTRY_NID 0x935CD196 |
| NID of entry function. | |
ELF identification | |
| #define | EI_NIDENT 16 |
| #define | EI_MAG0 0 |
| #define | EI_MAG1 1 |
| #define | EI_MAG2 2 |
| #define | EI_MAG3 3 |
| #define | EI_CLASS 4 |
| #define | EI_DATA 5 |
| #define | EI_VERSION 6 |
| #define | EI_PAD 7 |
| #define | ELFMAG0 0x7F |
| #define | ELFMAG1 'E' |
| #define | ELFMAG2 'L' |
| #define | ELFMAG3 'F' |
| #define | ELFCLASS32 1 |
| #define | ELFDATA2LSB 1 |
ELF object types | |
| #define | ET_EXEC 0x0002 |
| #define | ET_SCE_EXEC 0xFE00 |
ELF machine types | |
| #define | EM_ARM 40 |
ELF version | |
| #define | EV_CURRENT 1 |
ELF sh section type | |
| #define | SHT_RELA 4 |
| #define | SHT_REL 9 |
ELF ph section type | |
| #define | PT_LOAD 1 |
ELF ph formats | |
| #define | PF_X 1 |
| #define | PF_W 2 |
| #define | PF_R 4 |
SCE identification | |
| #define | MAGIC_LEN 4 |
| #define | SCEMAG0 'S' |
| #define | SCEMAG1 'C' |
| #define | SCEMAG2 'E' |
| #define | SCEMAG3 0 |
| #define | SCEHDR_LEN 0x1000 |
Typedefs | |
ELF data types | |
| typedef void * | Elf32_Addr |
| typedef u32_t | Elf32_Off |
| typedef u32_t | Elf32_Sword |
| typedef u32_t | Elf32_Word |
| typedef u16_t | Elf32_Half |
ELF structures | |
See the ELF specification for more information. | |
| typedef struct Elf32_Ehdr | Elf32_Ehdr_t |
| typedef struct Elf32_Shdr | Elf32_Shdr_t |
| typedef struct Elf32_Phdr | Elf32_Phdr_t |
Functions to load executable.
1.8.2