Returns error in game budget apps, works fine in system mode apps.
int sceAppMgrGetBudgetInfo(sceAppMgrBudgetInfo* info);
typedef struct sceAppMgrBudgetInfo {
SceSize size; //must be 0x88
uint32_t mode; //2 = Mode_ApplicationA, 3 = Mode_ApplicationB (allow phycont), 4 = Mode_Application (allow 0x0E208060, allow phycont)
uint32_t unk_4;
uint32_t budgetLPDDR2; //LPDDR2 budget in bytes
uint32_t freeLPDDR2; //Free LPDDR2 memory in bytes
uint32_t allow0x0E208060; //1 if 0x0E208060 usage is allowed, otherwise 0
uint32_t unk_14; //only if 0x0E208060 is used, otherwise 0
uint32_t budget0x0E208060; //0x0E208060 budget in bytes
uint32_t free0x0E208060; //Free 0x0E208060 memory in bytes
uint32_t unk_20; //always 0
uint32_t unk_24; //only if phycont is used, otherwise 0
uint32_t budgetPHYCONT; //PHYCONT budget in bytes
uint32_t freePHYCONT; //Free PHYCONT memory in bytes
uint32_t allow; //Some memory type?
char unk_34[0x20]; //Some memory type?
uint32_t unk_54;
uint32_t budgetCDRAM; //CDRAM budget in bytes
uint32_t freeCDRAM; //Free CDRAM memory in bytes
char reserved_60[0x24];
} sceAppMgrBudgetInfo;