![]() |
vitasdk
Documentation of the vitasdk
|
Exports for Kernel. More...
Data Structures | |
| struct | SceAppMgrPhotoMountParam |
| struct | SceAppMgrAcInstResult |
| struct | SceAppMgrLaunchParam |
| struct | SceAppMgrLaunchAppByPathOpt |
| Path-mapping options for ksceAppMgrLaunchAppByPath. More... | |
| struct | SceAppMgrDrmOpt |
Typedefs | |
| typedef char | SceTitleId[16] |
Functions | |
| VITASDK_BUILD_ASSERT_EQ (0x10, SceTitleId) | |
| VITASDK_BUILD_ASSERT_EQ (0x84, SceAppMgrPhotoMountParam) | |
| VITASDK_BUILD_ASSERT_EQ (0xE0, SceAppMgrAcInstResult) | |
| int | ksceAppMgrKillProcess (SceUID pid) |
| Kill a process. | |
| VITASDK_BUILD_ASSERT_EQ (0x34, SceAppMgrLaunchParam) | |
| VITASDK_BUILD_ASSERT_EQ (0x814, SceAppMgrLaunchAppByPathOpt) | |
| int | ksceAppMgrLaunchAppByPath (const char *path, const char *args, SceSize arg_size, unsigned int type, const SceAppMgrLaunchParam *launch_param, void *path_mapping_opt) |
| Launch an application from an executable path. | |
| VITASDK_BUILD_ASSERT_EQ (0x28, SceAppMgrDrmOpt) | |
| int | ksceAppMgrAcInstGetAcdirParam (const char *title_id, const char *addcont_id, SceAppMgrAcInstResult *output_data) |
| int | ksceAppMgrAppDataMount (int mount_id, char mount_point[16]) |
| Mount application data for the calling process. | |
| int | ksceAppMgrAppDataMountById (int mount_id, const char *title_id, char mount_point[16]) |
| FW 3.60 accepts mount IDs 104, 106, 107, and 110. | |
| int | ksceAppMgrCheckContentInstallPeriod (ScePID process_id) |
| int | ksceAppMgrCheckPfsMounted (const char *path) |
| int | ksceAppMgrCloudDataClearMcId (int location) |
| int | ksceAppMgrCloudDataDstCreateMount (const char *title_id, char mount_point[16]) |
| int | ksceAppMgrCloudDataSrcMount (int mode, const char *title_id, char mount_point[16]) |
| int | ksceAppMgrDebugSettingNotifyUpdate (int setting) |
| int | ksceAppMgrDrmOpen (const SceAppMgrDrmOpt *drm_opt) |
| int | ksceAppMgrFakeSaveDataCreateMount (const char *path, char mount_point[16]) |
| int | ksceAppMgrGameDataMount (const char *app_path, const char *patch_path, const char *rif_path, char mount_point[16]) |
| int | ksceAppMgrIsExclusiveProcessRunning (const char *title_id) |
| Check whether an exclusive process is running. | |
| int | ksceAppMgrMmsMount (int mount_id, char mount_point[16]) |
| int | ksceAppMgrPhotoMount (const SceAppMgrPhotoMountParam *param) |
| int | ksceAppMgrTrophyMount (int mount_id, ScePID process_id, char mount_point[16]) |
| int | ksceAppMgrUmount (const char *mount_point) |
| int | ksceAppMgrWorkDirMount (int mount_id, char mount_point[16]) |
Exports for Kernel.
Include the header file in your project:
Include the header file in your project:
Link the library to the executable:
| struct SceAppMgrPhotoMountParam |
| Data Fields | ||
|---|---|---|
| SceSize | size | Must be the size of this structure. |
| char | reserved[0x80] | Ignored on FW 3.60. |
| struct SceAppMgrAcInstResult |
| Data Fields | ||
|---|---|---|
| SceUInt8 | keystone[0x60] | Add-on-content keystone. |
| char | game_title[0x80] | NUL-terminated localized game title. |
| struct SceAppMgrLaunchParam |
| Data Fields | ||
|---|---|---|
| SceSize | size | Ignored on FW 3.60; initialize to the size of this structure. |
| unsigned int | unk_4 | |
| 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 | |
| struct SceAppMgrLaunchAppByPathOpt |
Path-mapping options for ksceAppMgrLaunchAppByPath.
FW 3.60 uses the path fields only when size is 0x814. If mapping_file_path is empty, AppMgr looks for configuration.psp2path in the executable's directory. When the selected mapping file contains an app0= entry, that entry takes precedence over app0_path.
An explicit mapping-file path must begin with host0: or sd0: on FW 3.60. The app0: source path is resolved through the current process's FIOS overlays before it is used as the application root.
| Data Fields | ||
|---|---|---|
| SceSize | size | Must be the size of this structure. |
| char | mapping_file_path[0x400] |
Optional path to a configuration.psp2path file. |
| char | app0_path[0x400] |
Optional fallback source path for the app0: mount. |
| SceUInt8 | reserved[0x10] | Ignored on FW 3.60. |
| struct SceAppMgrDrmOpt |
| Data Fields | ||
|---|---|---|
| SceSize | size | Must be the size of this structure. |
| char | addcont_id[20] | NUL-terminated additional-content ID of at most 16 characters. |
| char | mount_point[16] |
addcont0: or addcont1:. |
| typedef char SceTitleId[16] |
Attribute bits accepted in ::SceAppMgrLaunchParam::attr.
FW 3.60 rejects bits outside 0xF02FF000. Bits 0x00002000 and 0x00008000 are accepted but ignored. Bits 0x00040000 and 0x00080000 tell Processmgr to read fields absent from this structure; AppMgr supplies or clears those fields according to the launch class. Bit 0x00100000 is rejected when supplied by the caller, although AppMgr may set it in the Processmgr options it builds internally. Bit 0x00200000 tells Processmgr to read a nonzero unique-heap size from its 0x40-byte process options. This 0x34-byte structure has no corresponding member, so AppMgr leaves SceKernelProcessOpt2::unique_heap_size at zero and process creation fails on FW 3.60.
Bit 0x80000000 prevents Processmgr from calling the process-start callbacks registered through ksceKernelSysrootSetProcessHandler and ksceKernelSysrootRegisterDbgpHandler. Process creation, image loading, and main-thread startup continue normally.
Process-replacement modes for Processmgr's exit-spawn mechanism.
On FW 3.60, calling ksceKernelKillProcess with option 2 prepares to replace the process identified by pid: Processmgr allocates a temporary replacement object and preserves an internal 0x90-byte portion of the exiting process's state. A subsequent create request in enabled mode, with ::SceAppMgrLaunchParam::process_exit_spawn_pid set to the same pid, consumes that temporary object and restores the preserved state into the replacement process. The replacement receives its own PID; the exiting PID only identifies the handoff.
Enabled mode with a zero process ID allocates an ordinary new process object instead, but the mode is still passed to Processmgr's process-event handlers. These fields are used only when SCE_APPMGR_LAUNCH_PARAM_ATTR_PROCESS_EXIT_SPAWN is present in ::SceAppMgrLaunchParam::attr.
| Enumerator | |
|---|---|
| SCE_APPMGR_PROCESS_EXIT_SPAWN_MODE_NORMAL | Allocate an ordinary new process object. |
| SCE_APPMGR_PROCESS_EXIT_SPAWN_MODE_ENABLED | Consume the prepared replacement for a matching nonzero PID. |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x10 | , |
| SceTitleId | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x84 | , |
| SceAppMgrPhotoMountParam | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0xE0 | , |
| SceAppMgrAcInstResult | |||
| ) |
| int ksceAppMgrKillProcess | ( | SceUID | pid | ) |
Kill a process.
| [in] | pid | The process to kill. |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x34 | , |
| SceAppMgrLaunchParam | |||
| ) |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x814 | , |
| SceAppMgrLaunchAppByPathOpt | |||
| ) |
| int ksceAppMgrLaunchAppByPath | ( | const char * | path, |
| const char * | args, | ||
| SceSize | arg_size, | ||
| unsigned int | type, | ||
| const SceAppMgrLaunchParam * | launch_param, | ||
| void * | path_mapping_opt | ||
| ) |
Launch an application from an executable path.
The args block is scanned as a sequence of NUL-terminated strings. -budget big and -budget game select a game launch; -budget small and -budget mini select a mini-application launch; and -budget sys and -budget shell select a system-application launch.
| [in] | path | - Path to the executable to load. |
| [in] | args | - Optional sequence of NUL-terminated argument strings. |
| [in] | arg_size | - Size of the argument block. |
| [in] | type | - Set bit 31 to request a debug launch. |
| [in] | launch_param | - Required launch options. |
| [in] | path_mapping_opt | - Optional path-mapping options. |
| VITASDK_BUILD_ASSERT_EQ | ( | 0x28 | , |
| SceAppMgrDrmOpt | |||
| ) |
| int ksceAppMgrAcInstGetAcdirParam | ( | const char * | title_id, |
| const char * | addcont_id, | ||
| SceAppMgrAcInstResult * | output_data | ||
| ) |
| [in] | title_id | Title ID of exactly 9 characters: four uppercase letters followed by five decimal digits. |
| [in] | addcont_id | Additional-content ID of exactly 16 uppercase alphanumeric characters. |
| [out] | output_data | The 0xE0-byte result. |
| int ksceAppMgrAppDataMount | ( | int | mount_id, |
| char | mount_point[16] | ||
| ) |
Mount application data for the calling process.
FW 3.60 accepts mount IDs 100, 101, 102, 103, 105, 108, 109, 111, and 112.
| [in] | mount_id | Application-data mount ID. |
| [out] | mount_point | Buffer that receives a 16-byte randomized mount point. |
| int ksceAppMgrAppDataMountById | ( | int | mount_id, |
| const char * | title_id, | ||
| char | mount_point[16] | ||
| ) |
FW 3.60 accepts mount IDs 104, 106, 107, and 110.
| [in] | title_id | A NUL-terminated identifier whose required syntax depends on mount_id. |
| [out] | mount_point | Buffer that receives a 16-byte randomized mount point. |
| int ksceAppMgrCheckContentInstallPeriod | ( | ScePID | process_id | ) |
| [in] | process_id | Process ID of type ScePID; 0 selects the calling process. |
| int ksceAppMgrCheckPfsMounted | ( | const char * | path | ) |
| [in] | path | A NUL-terminated ux0: directory path shorter than 0x124 bytes. |
| int ksceAppMgrCloudDataClearMcId | ( | int | location | ) |
| [in] | location | One of SceAppMgrCloudDataMcIdLocation. |
| int ksceAppMgrCloudDataDstCreateMount | ( | const char * | title_id, |
| char | mount_point[16] | ||
| ) |
| [in] | title_id | A NUL-terminated identifier containing at most 31 letters, decimal digits, hyphens, or underscores. |
| [out] | mount_point | Buffer that receives a 16-byte randomized mount point. |
| int ksceAppMgrCloudDataSrcMount | ( | int | mode, |
| const char * | title_id, | ||
| char | mount_point[16] | ||
| ) |
| [in] | mode | Value 1 selects grw0 save data; values 2 and 3 select the per-user ux0 save-data location. |
| [in] | title_id | Title ID of exactly 9 characters: four uppercase letters followed by five decimal digits. |
| [out] | mount_point | Buffer that receives a 16-byte randomized mount point. |
| int ksceAppMgrDebugSettingNotifyUpdate | ( | int | setting | ) |
| [in] | setting | One of SceAppMgrDebugSetting. |
| int ksceAppMgrDrmOpen | ( | const SceAppMgrDrmOpt * | drm_opt | ) |
| int ksceAppMgrFakeSaveDataCreateMount | ( | const char * | path, |
| char | mount_point[16] | ||
| ) |
| [in] | path | Save-data path. |
| [out] | mount_point | A 16-byte mount-point output buffer. |
| int ksceAppMgrGameDataMount | ( | const char * | app_path, |
| const char * | patch_path, | ||
| const char * | rif_path, | ||
| char | mount_point[16] | ||
| ) |
| int ksceAppMgrIsExclusiveProcessRunning | ( | const char * | title_id | ) |
Check whether an exclusive process is running.
| [in] | title_id | Optional exact nine-character title ID; NULL accepts any qualifying exclusive process. |
| int ksceAppMgrMmsMount | ( | int | mount_id, |
| char | mount_point[16] | ||
| ) |
| int ksceAppMgrPhotoMount | ( | const SceAppMgrPhotoMountParam * | param | ) |
| int ksceAppMgrTrophyMount | ( | int | mount_id, |
| ScePID | process_id, | ||
| char | mount_point[16] | ||
| ) |
| int ksceAppMgrUmount | ( | const char * | mount_point | ) |
| int ksceAppMgrWorkDirMount | ( | int | mount_id, |
| char | mount_point[16] | ||
| ) |
| SceSize SceAppMgrPhotoMountParam::size |
Must be the size of this structure.
| char SceAppMgrPhotoMountParam::reserved[0x80] |
Ignored on FW 3.60.
| SceUInt8 SceAppMgrAcInstResult::keystone[0x60] |
Add-on-content keystone.
| char SceAppMgrAcInstResult::game_title[0x80] |
NUL-terminated localized game title.
| SceSize SceAppMgrLaunchParam::size |
Ignored on FW 3.60; initialize to the size of this structure.
| unsigned int SceAppMgrLaunchParam::unk_4 |
| unsigned int SceAppMgrLaunchParam::unk_8 |
| unsigned int SceAppMgrLaunchParam::unk_C |
| unsigned int SceAppMgrLaunchParam::unk_10 |
| unsigned int SceAppMgrLaunchParam::unk_14 |
| unsigned int SceAppMgrLaunchParam::unk_18 |
| unsigned int SceAppMgrLaunchParam::unk_1C |
| unsigned int SceAppMgrLaunchParam::unk_20 |
| unsigned int SceAppMgrLaunchParam::unk_24 |
| unsigned int SceAppMgrLaunchParam::unk_28 |
| unsigned int SceAppMgrLaunchParam::unk_2C |
| unsigned int SceAppMgrLaunchParam::unk_30 |
| SceSize SceAppMgrLaunchAppByPathOpt::size |
Must be the size of this structure.
| char SceAppMgrLaunchAppByPathOpt::mapping_file_path[0x400] |
Optional path to a configuration.psp2path file.
| char SceAppMgrLaunchAppByPathOpt::app0_path[0x400] |
Optional fallback source path for the app0: mount.
| SceUInt8 SceAppMgrLaunchAppByPathOpt::reserved[0x10] |
Ignored on FW 3.60.
| SceSize SceAppMgrDrmOpt::size |
Must be the size of this structure.
| char SceAppMgrDrmOpt::addcont_id[20] |
NUL-terminated additional-content ID of at most 16 characters.
| char SceAppMgrDrmOpt::mount_point[16] |
addcont0: or addcont1:.