Difference between revisions of "Loader services"

From Nintendo Switch Brew
Jump to navigation Jump to search
(ldr:pm - GetProgramInfo)
Line 14: Line 14:
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Cmd || Name
+
! Cmd || Name || Arguments
 
|-
 
|-
| 0 ||
+
| 0 || ||
 
|-
 
|-
| 1 ||
+
| 1 || GetProgramInfo || Takes in a storageID + titleID, writes output to a C descriptor buffer.
 
|-
 
|-
| 2 ||
+
| 2 || ||  
 
|-
 
|-
| 3 ||
+
| 3 || ||
 
|}
 
|}
  

Revision as of 05:06, 15 July 2017

ldr:dmnt

Cmd Name
0
1
2

ldr:pm

Cmd Name Arguments
0
1 GetProgramInfo Takes in a storageID + titleID, writes output to a C descriptor buffer.
2
3

ldr:ro

Cmd Name
0 #LoadNro
1 UnloadNro
2 #LoadNrr
3 UnloadNrr
4 #Initialize

LoadNro

Word Value
0 0x00000004
1 0x80000012
2 0x00000001
0-1 Pid
0 "SCFI"
1 0x00000000
2 Always 0.
3 Nro heap address
4 Nro size
5 Bss backing heap address
6 Bss size

LoadNrr

Word Value
0 0x00000004
1 0x8000000E
2 0x00000001
0-1 Pid
0 "SFCI"
1 0x00000002
2 Always 0.
3 Nrr address
4 Nrr size

Initialize

Word Value
0 0x00000004
1 0x8000000A
2 0x00000003
0-1 Pid
2 Process handle (0xFFFF8001)
0 "SFCI"
1 0x00000004
2 Always 0.

ldr:shel

Cmd Name
0 #LoadProcess
1 #ClearProcessList

LoadProcess

Takes a type-0x19 input buffer with launch arguments (as string), an u32 (size of arguments string), and an input title-id.

Loads a process for the specified title-id and passes along the supplied arguments. Loaded processes are kept in a queue waiting for PM to launch them. The maximum number of waiting processes in this list is 10.

ClearProcessList

Clears the loaded processes waiting queue.