Line 110: |
Line 110: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | [1.0.0-4.1.0] 0 || [[#IsDebugMode]] | + | | [1.0.0-4.1.0] 0 || [[#GetModuleIdList]] |
| |- | | |- |
− | | 0 ([1.0.0-4.1.0] 1) || [[#GetDebugProcesses]] | + | | 0 ([1.0.0-4.1.0] 1) || [[#GetJitDebugProcessIdList]] |
| |- | | |- |
− | | 1 ([1.0.0-4.1.0] 2) || [[#StartDebugProcess]] | + | | 1 ([1.0.0-4.1.0] 2) || [[#StartProcess]] |
| |- | | |- |
− | | 2 ([1.0.0-4.1.0] 3) || [[#GetTitlePid]] | + | | 2 ([1.0.0-4.1.0] 3) || [[#GetProcessId]] |
| |- | | |- |
− | | 3 ([1.0.0-4.1.0] 4) || [[#EnableDebugForTitleId]] | + | | 3 ([1.0.0-4.1.0] 4) || [[#HookToCreateProcess]] |
| |- | | |- |
− | | 4 ([1.0.0-4.1.0] 5) || [[#GetApplicationPid]] | + | | 4 ([1.0.0-4.1.0] 5) || [[#GetApplicationProcessId]] |
| |- | | |- |
| | 5 ([1.0.0-4.1.0] 6) || [[#EnableDebugForApplication]] | | | 5 ([1.0.0-4.1.0] 6) || [[#EnableDebugForApplication]] |
| |- | | |- |
− | | [6.0.0+] 6 || [[#DisableDebug]] | + | | [6.0.0+] 6 || [[#ClearHook]] |
| |} | | |} |
| | | |
| | | |
− | == IsDebugMode == | + | == GetModuleIdList== |
− | Always returns u32 0 on retail.
| + | Stubbed in all versions of retail firmware (just returns 0). |
| | | |
− | [2.0.0+] Additional check on input that can return 0xC0F. The meaning is probably useless because function is somewhat nopped on non-dev builds anyway. | + | [2.0.0+] When output buffer size is > INT_MAX, returns ResultInvalidSize. |
| | | |
− | == GetDebugProcesses == | + | == GetJitDebugProcessIdList == |
| Returns an array of pids of all processes that have mask 4 set in process flags. | | Returns an array of pids of all processes that have mask 4 set in process flags. |
| | | |
− | [2.0.0+] Additional check on input that can return 0xC0F. The meaning is probably useless because function is somewhat nopped on non-dev builds anyway. | + | [2.0.0+] When output buffer size is > INT_MAX, returns ResultInvalidSize. |
| | | |
− | == StartDebugProcess == | + | == StartProcess == |
| Takes a pid. Last process event must be ProcessEvent_Created or ProcessEvent_DebugAttached. | | Takes a pid. Last process event must be ProcessEvent_Created or ProcessEvent_DebugAttached. |
| | | |
Line 145: |
Line 145: |
| After that, it sets last process state to ProcessEvent_DebugDetached. | | After that, it sets last process state to ProcessEvent_DebugDetached. |
| | | |
− | == GetTitlePid == | + | == GetProcessId == |
| Takes a title-id and returns the pid. | | Takes a title-id and returns the pid. |
| | | |
− | == EnableDebugForTitleId == | + | == HookToCreateProcess == |
| Takes a title-id of the program to debug. Sets this to a global field. | | Takes a title-id of the program to debug. Sets this to a global field. |
| | | |
Line 155: |
Line 155: |
| Returns an event handle that is signaled when the requested title is about to be launched. | | Returns an event handle that is signaled when the requested title is about to be launched. |
| | | |
− | == GetApplicationPid == | + | == GetApplicationProcessId == |
| Returns the pid of the application process. | | Returns the pid of the application process. |
| | | |
− | == EnableDebugForApplication == | + | == HookToCreateApplicationProcess == |
| Does *not* take a specific title-id as input. | | Does *not* take a specific title-id as input. |
| | | |
| Returns an event handle that is triggered for application titles. | | Returns an event handle that is triggered for application titles. |
| | | |
− | == DisableDebug == | + | == ClearHook == |
| Takes in a u32 of bitflags. | | Takes in a u32 of bitflags. |
| | | |