|
|
Line 164: |
Line 164: |
|
| |
|
|
| |
|
| [[Category:Modules]] | | [[Category:Modules]][[Category:Usermode]] |
| [[Category:Userland]] | |
Revision as of 17:18, 6 November 2021
ScePromoterUtil
is a wrapper for SceShellSvc calls that install applications to LiveArea. Specifically, it takes contents decrypted and extracted from packages and moves them to the right directory and adds an icon to LiveArea.
Module
Version |
Name |
World |
Privilege
|
1.80-3.60 |
ScePromoterUtil |
Non-secure |
User
|
Libraries
Known NIDs
Version |
Name |
World |
Visibility |
NID
|
1.69-3.60 |
ScePromoterUtil |
Non-secure |
User |
0x31F237B6
|
ScePromoterUtil
scePromoterUtilityInit
Version |
NID
|
1.69-3.60 |
0x93451536
|
This sets up the library. Call it immediately after loading it.
int scePromoterUtilityInit(void);
scePromoterUtilityExit
Version |
NID
|
1.69-3.60 |
0xC95D24A6
|
This shuts down the library. Call it immediately before unloading it.
int scePromoterUtilityExit(void);
scePromoterUtilityDeletePkg
Version |
NID
|
1.80-3.60 |
0x7D46752F
|
Deletes an icon from LiveArea.
int scePromoterUtilityDeletePkg(void *unk);
scePromoterUtilityUpdateLiveArea
Version |
NID
|
1.80-3.60 |
0x17D73ECA
|
Updates the LiveArea XML.
typedef struct {
char titleid[12]; // target app
char path[128]; // directory of extracted LA update data
} promoter_la_update_t;
int scePromoterUtilityUpdateLiveArea(promoter_la_update_t *args);
scePromoterUtilityUpdateUpgradableStatus
Version |
NID
|
3.60 |
0x82E69783
|
scePromoterUtilityPromotePkg
Version |
NID
|
1.80-3.60 |
0x716C81F4
|
Installs the extracted content at path
to the right location and add a LiveArea icon.
int scePromoterUtilityPromotePkg(char *path, int unk); // set unk = 0
scePromoterUtilityPromotePkgWithRif
Version |
NID
|
1.69-3.60 |
0x86641BC6
|
Same as scePromoterUtilityPromotePkg but also generates a fixed RIF for the installed package.
int scePromoterUtilityPromotePkgWithRif(char *path, int unk); // set unk = 0
scePromoterUtilityPromoteImport
Version |
NID
|
3.60 |
0x4B37808F
|
scePromoterUtilityGetSize
Version |
NID
|
3.60 |
0x1F5EA997
|
scePromoterUtilityGetState
Version |
NID
|
1.69-3.60 |
0xABEC74D2
|
The scePromoterUtilityPromotePkg and scePromoterUtilityPromotePkgWithRif functions happen asynchronously. *state
will be set to 1
when the operation is done.
int scePromoterUtilityGetState(int *state);
scePromoterUtilityGetResult
Version |
NID
|
1.69-3.60 |
0x49B473F0
|
After scePromoterUtilityGetState is set to 1
, this will get the result of the operation.
int scePromoterUtilityGetResult(int *res);
scePromoterUtilityRemoveSavedata
Version |
NID
|
3.60 |
0xCB0A59B0
|
scePromoterUtilityCheckExist
Version |
NID
|
3.60 |
0xBA9871E5
|
Promoter Heartbeat
Version |
NID
|
3.60 |
0x395739DF
|
When *beat
is non-zero, the promote process is still alive.
int promoter_heartbeat(int *beat);