SVC: Difference between revisions

No edit summary
Line 991: Line 991:
|}
|}


== struct CreateProcessInfo ==
All addresses are given virtual for the process to be created.
All sizes/offsets are in given in 0x1000-pages.


{| class="wikitable" border="1"
!  Type
!  Field
|-
| u8[8]
| Codeset Name
|-
| u32
| .text addr
|-
| u32
| .text size
|-
| u32
| .rodata addr
|-
| u32
| .rodata size
|-
| u32
| .data addr
|-
| u32
| .data size
|-
| u32
| .rodata offset
|-
| u32
| .data offset
|-
| u32
| .bss size + .data size
|-
| u8[8]
| Program ID
|-
| u32[2]
| Unknown/padding
|}


= Processes =
= Processes =
Line 1,128: Line 1,171:
| This only returns error 0xE0E01BF4.
| This only returns error 0xE0E01BF4.
|}
|}
= CreateProcess =
struct CreateProcessInfo {
// All addresses are given virtual for the process to be created.
// All sizes/offsets are in given in 0x1000-pages.
u8  codeset_name[8];
u32 text_addr;
u32 text_size;
u32 ro_addr;
u32 ro_size;
u32 data_addr;
u32 data_size;
u32 ro_offset;
u32 data_offset;
u32 bss_size+data_size;
u8  program_id[8];
u32 hmm?[2];
}


= SVC7B Backdoor =
= SVC7B Backdoor =