Line 35: |
Line 35: |
| |- | | |- |
| | 5 || 0x20 || [2.0.0+] LaunchFlags_SignalOnStart | | | 5 || 0x20 || [2.0.0+] LaunchFlags_SignalOnStart |
| + | |} |
| + | |
| + | = ProcessEventInfo = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Size |
| + | ! Description |
| + | |- |
| + | | 0x0 |
| + | | 0x4 |
| + | | ProcessEvent |
| + | |- |
| + | | 0x4 |
| + | | 0x4 |
| + | | Padding/Reserved |
| + | |- |
| + | | 0x8 |
| + | | 0x8 |
| + | | ProcessId |
| + | |- |
| |} | | |} |
| | | |
Line 114: |
Line 135: |
| | 0 ([1.0.0-4.1.0] 1) || [[#GetJitDebugProcessIdList]] | | | 0 ([1.0.0-4.1.0] 1) || [[#GetJitDebugProcessIdList]] |
| |- | | |- |
− | | 1 ([1.0.0-4.1.0] 2) || [[#StartProcess]] | + | | 1 ([1.0.0-4.1.0] 2) || [[#StartProcess]] |
| + | |- |
| + | | 2 ([1.0.0-4.1.0] 3) || [[#GetProcessId]] |
| |- | | |- |
− | | 2 ([1.0.0-4.1.0] 3) || [[#GetProcessId]] | + | | 3 ([1.0.0-4.1.0] 4) || [[#HookToCreateProcess]] |
| |- | | |- |
− | | 3 ([1.0.0-4.1.0] 4) || [[#HookToCreateProcess]] | + | | 4 ([1.0.0-4.1.0] 5) || [[#GetApplicationProcessId]] |
| |- | | |- |
− | | 4 ([1.0.0-4.1.0] 5) || [[#GetApplicationProcessId]] | + | | 5 ([1.0.0-4.1.0] 6) || [[#HookToCreateApplicationProcess]] |
| |- | | |- |
− | | 5 ([1.0.0-4.1.0] 6) || [[#HookToCreateApplicationProcess]] | + | | [6.0.0+] 6 || [[#ClearHook]] |
| |- | | |- |
− | | [6.0.0+] 6 || [[#ClearHook]] | + | | [14.0.0+] 7 || GetProgramId |
| |} | | |} |
| | | |
Line 176: |
Line 199: |
| |- | | |- |
| | 0 || [[#GetProgramId]] | | | 0 || [[#GetProgramId]] |
| + | |- |
| + | | 1 || [14.0.0+] GetAppletCurrentResourceLimitValues |
| + | |- |
| + | | 2 || [14.0.0+] GetAppletPeakResourceLimitValues |
| |} | | |} |
| | | |
Line 208: |
Line 235: |
| | 7 ([4.0.0-4.1.0] 9) || [4.0.0+] [[#BoostSystemMemoryResourceLimit]] | | | 7 ([4.0.0-4.1.0] 9) || [4.0.0+] [[#BoostSystemMemoryResourceLimit]] |
| |- | | |- |
− | | 8 || [7.0.0+] [[#BoostSystemThreadResourceLimit]] | + | | 8 || [7.0.0+] [[#BoostApplicationThreadResourceLimit]] |
| |- | | |- |
| | 9 || [8.0.0+] [[#GetBootFinishedEventHandle]] | | | 9 || [8.0.0+] [[#GetBootFinishedEventHandle]] |
| + | |- |
| + | | 10 || [14.0.0+] BoostSystemThreadResourceLimit |
| |} | | |} |
| | | |
| == LaunchProgram == | | == LaunchProgram == |
− | Takes launch_flags, title-id, and storageID. See [[#Process launch]]. | + | Takes an u32 launch_flags and [[NCM_services#ProgramLocation|ProgramLocation]]. Returns the u64 title PID. |
| | | |
− | Returns the u64 title PID.
| + | See [[#Process launch]]. |
| | | |
| == GetProcessEventInfo == | | == GetProcessEventInfo == |
Line 270: |
Line 299: |
| This is used directly by [[NS_Services#IApplicationManagerInterface|ns:am2 BoostSystemMemoryResourceLimit]]. | | This is used directly by [[NS_Services#IApplicationManagerInterface|ns:am2 BoostSystemMemoryResourceLimit]]. |
| | | |
− | == BoostSystemThreadResourceLimit == | + | == BoostApplicationThreadResourceLimit == |
− | Calls svcSetResourceLimitLimitValue to increase the limit on system threads by an amount calculated dynamically during setup. | + | Calls svcSetResourceLimitLimitValue to increase the limit on application threads by an amount calculated dynamically during setup. |
| | | |
| This function can only increase the limit once, on further calls it will call svcSetResourceLimitLimitValue with the same value it called the first time. | | This function can only increase the limit once, on further calls it will call svcSetResourceLimitLimitValue with the same value it called the first time. |
| | | |
− | On normal [[7.0.0]] retail firmware, this will double the limit on system threads from 0x60 to 0xC0. | + | On normal [[7.0.0]] retail firmware, this will double the limit on application threads from 0x60 to 0xC0. |
| | | |
| == GetBootFinishedEventHandle == | | == GetBootFinishedEventHandle == |