summaryrefslogtreecommitdiff
path: root/include/kernel/appmgr.h
blob: d5f46745d04c4a8ad80521b76d948d69acef0d58 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
	Vita Development Suite Libraries
*/

#ifndef _VDSUITE_KERNEL_APPMGR_H
#define _VDSUITE_KERNEL_APPMGR_H

#include_next <appmgr.h>

#ifdef __cplusplus
extern "C" {
#endif

/**
 * @brief       Kill a process.
 * @param[in]   pid The process to kill.
 * @return      Zero on success, else < 0.
 */
int sceAppMgrKillProcess(SceUID pid);

typedef struct
{
    SceSize size;
    unsigned int unk_4; //<! set to 0x80000000 to break on launch
    unsigned int unk_8;
    unsigned int unk_C;
    unsigned int unk_10;
    unsigned int unk_14;
    unsigned int unk_18;
    unsigned int unk_1C;
    unsigned int unk_20;
    unsigned int unk_24;
    unsigned int unk_28;
    unsigned int unk_2C;
    unsigned int unk_30;
} SceAppMgrLaunchParam;

/**
 * @brief       Launch an application for debugging
 *
 * @param[in] path  Path to the executable to load
 * @param[in] args  Arguments to pass to the executable and to configure appmgr
 * @param[in] arg_size  The size of the args passed in
 * @param[in] type  Set to 0x80000000 for debugging launch
 * @param[in] param pointer to launch params
 * @param unk unknown, set to nullptr
 *
 * @return   pid on success, else < 0.
 */
int sceAppMgrLaunchAppByPath(const char *path, const char *args, SceSize arg_size, unsigned int type, const SceAppMgrLaunchParam *param, void *unk);

SceInt32 sceAppMgrDrmOpen(const SceAppMgrDrmAddcontParam *pParam);

SceInt32 sceAppMgrDrmClose(const SceAppMgrDrmAddcontParam *pParam);

#ifdef __cplusplus
}
#endif

#endif /* _VDSUITE_KERNEL_APPMGR_H */