Line 1:
Line 1:
−
==BOSS Service "boss:U"==
+
==BOSS User Service "boss:U"==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 9:
Line 9:
|-
|-
| 0x00020100
| 0x00020100
−
| [[BOSS:SetStorageInfo|SetStorageInfo]]
+
| [[BOSSU:SetStorageInfo|SetStorageInfo]]
|-
|-
| 0x00030000
| 0x00030000
−
| [[BOSS:UnregisterStorage|UnregisterStorage]]
+
| [[BOSSU:UnregisterStorage|UnregisterStorage]]
|-
|-
| 0x00040000
| 0x00040000
−
| GetStorageInfo
+
| [[BOSSU:GetStorageInfo|GetStorageInfo]]
|-
|-
| 0x00050042
| 0x00050042
−
| RegisterPrivateRootCa
+
| [[BOSSU:RegisterPrivateRootCa|RegisterPrivateRootCa]]
|-
|-
| 0x00060084
| 0x00060084
−
| RegisterPrivateClientCert <nowiki>(u32 Size0, u32 Size1, ((Size0<<4) | 10), Buf0, ((Size1<<4) | 10), Buf1)</nowiki> This writes the content of the input buffers into files "bossdb:/%s_CL" and "bossdb:/%s_CLK", where "%s" is generated from the programID.
+
| [[BOSSU:RegisterPrivateClientCert|RegisterPrivateClientCert]] <nowiki>(u32 Size0, u32 Size1, ((Size0<<4) | 10), Buf0, ((Size1<<4) | 10), Buf1)</nowiki> This writes the content of the input buffers into files "bossdb:/%s_CL" and "bossdb:/%s_CLK", where "%s" is generated from the programID.
|-
|-
| 0x00070000
| 0x00070000
−
| GetNewArrivalFlag
+
| [[BOSSU:GetNewArrivalFlag|GetNewArrivalFlag]]
|-
|-
| 0x00080002
| 0x00080002
−
| [[BOSS:RegisterNewArrivalEvent|RegisterNewArrivalEvent]]: Used for sending a handle. This is used with a table of programIDs etc with a maximum of 5 entries.
+
| [[BOSSU:RegisterNewArrivalEvent|RegisterNewArrivalEvent]]: Used for sending a handle. This is used with a table of programIDs etc with a maximum of 5 entries.
|-
|-
| 0x00090040
| 0x00090040
−
| [[BOSS:SetOptoutFlag|SetOptoutFlag]]
+
| [[BOSSU:SetOptoutFlag|SetOptoutFlag]]
|-
|-
| 0x000A0000
| 0x000A0000
−
| [[BOSS:GetOptoutFlag|GetOptoutFlag]]
+
| [[BOSSU:GetOptoutFlag|GetOptoutFlag]]
|-
|-
| 0x000B00C2
| 0x000B00C2
Line 48:
Line 48:
|-
|-
| 0x000F0042
| 0x000F0042
−
| GetStepIdList
+
| [[BOSSU:GetStepIdList|GetStepIdList]]
|-
|-
| 0x00100102
| 0x00100102
Line 54:
Line 54:
|-
|-
| 0x00110102
| 0x00110102
−
| [[BOSS:GetNsDataIdList1|GetNsDataIdList1]]
+
| [[BOSSU:GetNsDataIdList1|GetNsDataIdList1]]
|-
|-
| 0x00120102
| 0x00120102
−
| [[BOSS:GetNsDataIdList2|GetNsDataIdList2]]
+
| [[BOSSU:GetNsDataIdList2|GetNsDataIdList2]]
|-
|-
| 0x00130102
| 0x00130102
−
| [[BOSS:GetNsDataIdList3|GetNsDataIdList3]]
+
| [[BOSSU:GetNsDataIdList3|GetNsDataIdList3]]
|-
|-
| 0x00140082
| 0x00140082
Line 72:
Line 72:
|-
|-
| 0x00170082
| 0x00170082
−
| UpdateTaskInterval
+
| [[BOSSU:UpdateTaskInterval|UpdateTaskInterval]]
|-
|-
| 0x00180082
| 0x00180082
−
| UpdateTaskCount
+
| [[BOSSU:UpdateTaskCount|UpdateTaskCount]]
|-
|-
| 0x00190042
| 0x00190042
−
| GetTaskInterval
+
| [[BOSSU:GetTaskInterval|GetTaskInterval]]
|-
|-
| 0x001A0042
| 0x001A0042
−
| GetTaskCount
+
| [[BOSSU:GetTaskCount|GetTaskCount]]
|-
|-
| 0x001B0042
| 0x001B0042
−
| GetTaskServiceStatus
+
| [[BOSSU:GetTaskServiceStatus|GetTaskServiceStatus]]
|-
|-
| 0x001C0042
| 0x001C0042
Line 96:
Line 96:
|-
|-
| 0x001F0000
| 0x001F0000
−
| [[BOSS:GetTaskFinishHandle|GetTaskFinishHandle]]
+
| [[BOSSU:GetTaskFinishHandle|GetTaskFinishHandle]]
|-
|-
| 0x00200082
| 0x00200082
Line 102:
Line 102:
|-
|-
| 0x00210042
| 0x00210042
−
| GetTaskResult
+
| [[BOSSU:GetTaskResult|GetTaskResult]]
|-
|-
| 0x00220042
| 0x00220042
−
| GetTaskCommErrorCode
+
| [[BOSSU:GetTaskCommErrorCode|GetTaskCommErrorCode]]
|-
|-
| 0x002300C2
| 0x002300C2
−
| GetTaskStatus
+
| [[BOSSU:GetTaskStatus|GetTaskStatus]]
|-
|-
| 0x00240082
| 0x00240082
−
| GetTaskError
+
| [[BOSSU:GetTaskError|GetTaskError]]
|-
|-
| 0x00250082
| 0x00250082
−
| GetTaskInfo
+
| [[BOSSU:GetTaskInfo|GetTaskInfo]]
|-
|-
| 0x00260040
| 0x00260040
−
| [[BOSS:DeleteNsData|DeleteNsData]]
+
| [[BOSSU:DeleteNsData|DeleteNsData]]
|-
|-
| 0x002700C2
| 0x002700C2
Line 126:
Line 126:
|-
|-
| 0x00290080
| 0x00290080
−
| SetNsDataAdditionalInfo
+
| [[BOSSU:SetNsDataAdditionalInfo|SetNsDataAdditionalInfo]]
|-
|-
| 0x002A0040
| 0x002A0040
−
| GetNsDataAdditionalInfo. Writes an output u32 to cmdreply[2].
+
| [[BOSSU:GetNsDataAdditionalInfo|GetNsDataAdditionalInfo]]. Writes an output u32 to cmdreply[2].
|-
|-
| 0x002B0080
| 0x002B0080
−
| SetNsDataNewFlag
+
| [[BOSSU:SetNsDataNewFlag|SetNsDataNewFlag]]
|-
|-
| 0x002C0040
| 0x002C0040
−
| GetNsDataNewFlag
+
| [[BOSSU:GetNsDataNewFlag|GetNsDataNewFlag]]
|-
|-
| 0x002D0040
| 0x002D0040
−
| GetNsDataLastUpdate (u32 NsDataId) Writes an output u64 to cmdreply[2-3], from the content file in extdata.
+
| [[BOSSU:GetNsDataLastUpdate|GetNsDataLastUpdate]] (u32 NsDataId) Writes an output u64 to cmdreply[2-3], from the content file in extdata.
|-
|-
| 0x002E0040
| 0x002E0040
−
| [[BOSS:GetErrorCode|GetErrorCode]]
+
| [[BOSSU:GetErrorCode|GetErrorCode]]
|-
|-
| 0x002F0140
| 0x002F0140
−
| RegisterStorageEntry
+
| [[BOSSU:RegisterStorageEntry|RegisterStorageEntry]]
|-
|-
| 0x00300000
| 0x00300000
−
| GetStorageEntryInfo
+
| [[BOSSU:GetStorageEntryInfo|GetStorageEntryInfo]]
|-
|-
| 0x00310100
| 0x00310100
−
| SetStorageOption
+
| [[BOSSU:SetStorageOption|SetStorageOption]]
|-
|-
| 0x00320000
| 0x00320000
−
| GetStorageOption
+
| [[BOSSU:GetStorageOption|GetStorageOption]]
|-
|-
| 0x00330042
| 0x00330042
−
| [[BOSS:StartBgImmediate|StartBgImmediate]]
+
| [[BOSSU:StartBgImmediate|StartBgImmediate]]
|-
|-
| 0x00340042
| 0x00340042
−
| [[BOSS:GetTaskProperty0|GetTaskProperty0]]
+
| [[BOSSU:GetTaskPriority|GetTaskPriority]]
|-
|-
| 0x003500C2
| 0x003500C2
−
| RegisterImmediateTask
+
| [[BOSSU:RegisterImmediateTask|RegisterImmediateTask]]
|-
|-
| 0x00360084
| 0x00360084
−
| SetTaskQuery <nowiki>(u32 TaskID_Size, u32 BufSize, ((TaskID_Size<<4) | 10), TaskID_buf, ((BufSize<<4) | 10), Buf)</nowiki> BufSize must match 0x60.
+
| [[BOSSU:SetTaskQuery|SetTaskQuery]] <nowiki>(u32 TaskID_Size, u32 BufSize, ((TaskID_Size<<4) | 10), TaskID_buf, ((BufSize<<4) | 10), Buf)</nowiki> BufSize must match 0x60.
|-
|-
| 0x00370084
| 0x00370084
−
| GetTaskQuery <nowiki>(u32 TaskID_Size, u32 BufSize, ((TaskID_Size<<4) | 10), TaskID_buf, ((BufSize<<4) | 10), Buf)</nowiki> BufSize must match 0x60.
+
| [[BOSSU:GetTaskQuery|GetTaskQuery]] <nowiki>(u32 TaskID_Size, u32 BufSize, ((TaskID_Size<<4) | 10), TaskID_buf, ((BufSize<<4) | 10), Buf)</nowiki> BufSize must match 0x60.
|}
|}
−
==Privileged BOSS Service "boss:P"==
+
==BOSS Privileged Service "boss:P"==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 193:
Line 193:
|-
|-
| 0x040600C0
| 0x040600C0
−
| SetOptoutFlagPrivileged
+
| [[BOSSP:SetOptoutFlagPrivileged|SetOptoutFlagPrivileged]]
|-
|-
| 0x04070080
| 0x04070080
−
| GetOptoutFlagPrivileged
+
| [[BOSSP:GetOptoutFlagPrivileged|GetOptoutFlagPrivileged]]
|-
|-
| 0x04080040
| 0x04080040
Line 202:
Line 202:
|-
|-
| 0x04090102
| 0x04090102
−
| UnregisterTaskPrivileged
+
| [[BOSSP:UnregisterTaskPrivileged|UnregisterTaskPrivileged]]
|-
|-
| 0x040A0000
| 0x040A0000
−
| GetAppIdList
+
| [[BOSSP:GetAppIdList|GetAppIdList]]
|-
|-
| 0x040B0080
| 0x040B0080
−
| GetTaskIdListPrivileged
+
| [[BOSSP:GetTaskIdListPrivileged|GetTaskIdListPrivileged]]
|-
|-
| 0x040C00C2
| 0x040C00C2
−
| GetStepIdListPrivileged
+
| [[BOSSP:GetStepIdListPrivileged|GetStepIdListPrivileged]]
|-
|-
| 0x040D0182
| 0x040D0182
Line 220:
Line 220:
|-
|-
| 0x040F0102
| 0x040F0102
−
| GetTaskInfoPrivileged
+
| [[BOSSP:GetTaskInfoPrivileged|GetTaskInfoPrivileged]]
|-
|-
| 0x04100102
| 0x04100102
−
| Same as GetTaskStatusPrivileged, but the input bool is set to false
+
| [[BOSSP:GetTaskStatusPrivileged1|GetTaskStatusPrivileged1]] Same as GetTaskStatusPrivileged, but the input bool is set to false
|-
|-
| 0x04110102
| 0x04110102
−
| GetTaskErrorPrivileged
+
| [[BOSSP:GetTaskErrorPrivileged|GetTaskErrorPrivileged]]
|-
|-
| 0x04120000
| 0x04120000
Line 238:
Line 238:
|-
|-
| 0x041500C0
| 0x041500C0
−
| DeleteNsDataPrivileged
+
| [[BOSSP:DeleteNsDataPrivileged|DeleteNsDataPrivileged]]
|-
|-
| 0x04160142
| 0x04160142
Line 247:
Line 247:
|-
|-
| 0x04180100
| 0x04180100
−
| SetNsDataAdditionalInfoPrivileged
+
| [[BOSSP:SetNsDataAdditionalInfoPrivileged|SetNsDataAdditionalInfoPrivileged]]
|-
|-
| 0x041900C0
| 0x041900C0
−
| GetNsDataAdditionalInfoPrivileged
+
| [[BOSSP:GetNsDataAdditionalInfoPrivileged|GetNsDataAdditionalInfoPrivileged]]
|-
|-
| 0x041A0100
| 0x041A0100
−
| SetNsDataNewFlagPrivileged
+
| [[BOSSP:SetNsDataNewFlagPrivileged|SetNsDataNewFlagPrivileged]]
|-
|-
| 0x041B00C0
| 0x041B00C0
−
| GetNsDataNewFlagPrivileged
+
| [[BOSSP:GetNsDataNewFlagPrivileged|GetNsDataNewFlagPrivileged]]
|-
|-
| 0x041C00C0
| 0x041C00C0
−
| GetNsDataLastUpdatePrivileged
+
| [[BOSSP:GetNsDataLastUpdatePrivileged|GetNsDataLastUpdatePrivileged]]
|-
|-
| 0x041D0040
| 0x041D0040
Line 268:
Line 268:
|-
|-
| 0x041F0040
| 0x041F0040
−
| SetTestModeAvailability (bool test_mode_flag)
+
| [[BOSSP:SetTestModeAvailability|SetTestModeAvailability]] (bool test_mode_flag)
|-
|-
| 0x04200000
| 0x04200000
−
| GetTestModeAvailability. Returns: bool test_mode_flag
+
| [[BOSSP:GetTestModeAvailability|GetTestModeAvailability]]. Returns: bool test_mode_flag
|-
|-
| 0x04210000?
| 0x04210000?
Line 286:
Line 286:
|-
|-
| 0x04250042
| 0x04250042
−
| SetPolicyListEnvId. Sets the policylist env ID (default env ID is "p01"): strncpy("p01", in, 8)
+
| [[BOSSP:SetPolicyListEnvId|SetPolicyListEnvId]]. Sets the policylist env ID (default env ID is "p01"): strncpy("p01", in, 8)
|-
|-
| 0x04260042
| 0x04260042
−
| GetPolicyListEnvId. Gets the policylist env ID (default env ID is "p01"): strcpy(out, "p01")
+
| [[BOSSP:GetPolicyListEnvId|GetPolicyListEnvId]]. Gets the policylist env ID (default env ID is "p01"): strcpy(out, "p01")
|-
|-
| 0x04270042
| 0x04270042
−
| SetPolicyListUrl. Sets a custom policylist URL. Max of 0x200 chars
+
| [[BOSSP:SetPolicyListUrl|SetPolicyListUrl]]. Sets a custom policylist URL. Max of 0x200 chars
|-
|-
| 0x04280042
| 0x04280042
−
| GetPolicyListUrl. Gets the custom policylist URL
+
| [[BOSSP:GetPolicyListUrl|GetPolicyListUrl]]. Gets the custom policylist URL
|-
|-
| 0x04290002
| 0x04290002
Line 313:
Line 313:
|-
|-
| 0x042E00C2
| 0x042E00C2
−
| StartTaskPrivileged
+
| [[BOSSP:StartTaskPrivileged|StartTaskPrivileged]]
|-
|-
| 0x042F00C2
| 0x042F00C2
−
| StartTaskImmediatePrivileged
+
| [[BOSSP:StartTaskImmediatePrivileged|StartTaskImmediatePrivileged]]
|-
|-
| 0x043000C2
| 0x043000C2
−
| CancelTaskPrivileged
+
| [[BOSSP:CancelTaskPrivileged|CancelTaskPrivileged]]
|-
|-
| 0x04310040
| 0x04310040
Line 328:
Line 328:
|-
|-
| 0x04330080
| 0x04330080
−
| GetStorageOptionPrivileged
+
| [[BOSSP:GetStorageOptionPrivileged|GetStorageOptionPrivileged]]
|-
|-
| 0x043400C2
| 0x043400C2
−
| StartBgImmediatePrivileged
+
| [[BOSSP:StartBgImmediatePrivileged|StartBgImmediatePrivileged]]
|-
|-
| 0x04350042
| 0x04350042
Line 340:
Line 340:
|-
|-
| 0x043700C2
| 0x043700C2
−
| GetTaskProperty0Privileged
+
| [[BOSSP:GetTaskPriorityPrivileged|GetTaskPriorityPrivileged]]
|-
|-
| 0x04380000
| 0x04380000
Line 346:
Line 346:
|-
|-
| 0x04390104
| 0x04390104
−
| GetTaskQueryPrivileged
+
| [[BOSSP:GetTaskQueryPrivileged|GetTaskQueryPrivileged]]
|-
|-
| 0x043A0042
| 0x043A0042
Line 361:
Line 361:
|-
|-
| 0x043E0042
| 0x043E0042
−
| <nowiki>(u32 Size, ((Size<<4)|0xA), Buf)</nowiki>. Sets the sprelay URL
+
| [[BOSSP:SetSprelayUrl|SetSprelayUrl]] <nowiki>(u32 Size, ((Size<<4)|0xA), Buf)</nowiki>. Sets the sprelay URL
|-
|-
| 0x043F0042
| 0x043F0042
−
| <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>. Gets the sprelay URL
+
| [[BOSSP:GetSprelayUrl|GetSprelayUrl]] <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>. Gets the sprelay URL
|-
|-
| 0x04400080
| 0x04400080
−
| (u32 interval, u32 unk). Sets the sprelay interval, and other things
+
| [[BOSSP:SetSprelayInterval|SetSprelayInterval]] (u32 interval, u32 unk). Sets the sprelay interval, and other things
|-
|-
| 0x04410000
| 0x04410000
−
| Returns: u32 interval, u32 unk. Gets the sprelay interval, and other things
+
| [[BOSSP:GetSprelayInterval|GetSprelayInterval]] Returns: u32 interval, u32 unk. Gets the sprelay interval, and other things
|-
|-
| 0x04420000
| 0x04420000
Line 388:
Line 388:
|-
|-
| 0x04470002
| 0x04470002
−
| RegisterNewArrivalEventPrivileged
+
| [[BOSSP:RegisterNewArrivalEventPrivileged|RegisterNewArrivalEventPrivileged]]
|-
|-
| 0x04480000?
| 0x04480000?
Line 394:
Line 394:
|-
|-
| 0x04490142
| 0x04490142
−
| RegisterTaskPrivileged
+
| [[BOSSP:RegisterTaskPrivileged|RegisterTaskPrivileged]]
|-
|-
| 0x044A0180
| 0x044A0180
−
| SetStorageInfoPrivileged
+
| [[BOSSP:SetStorageInfoPrivileged|SetStorageInfoPrivileged]]
|-
|-
| 0x044B01C0
| 0x044B01C0
−
| RegisterStorageEntryPrivileged
+
| [[BOSSP:RegisterStorageEntryPrivileged|RegisterStorageEntryPrivileged]]
|-
|-
| 0x044C0080
| 0x044C0080
−
| UnregisterStoragePrivileged
+
| [[BOSSP:UnregisterStoragePrivileged|UnregisterStoragePrivileged]]
|-
|-
| 0x044D0080
| 0x044D0080
−
| GetStorageInfoPrivileged
+
| [[BOSSP:GetStorageInfoPrivileged|GetStorageInfoPrivileged]]
|-
|-
| 0x044E0080
| 0x044E0080
−
| GetStorageEntryInfoPrivileged
+
| [[BOSSP:GetStorageEntryInfoPrivileged|GetStorageEntryInfoPrivileged]]
|-
|-
| 0x044F0102
| 0x044F0102
−
| UpdateTaskIntervalPrivileged
+
| [[BOSSP:UpdateTaskIntervalPrivileged|UpdateTaskIntervalPrivileged]]
|-
|-
| 0x04500102
| 0x04500102
−
| UpdateTaskCountPrivileged
+
| [[BOSSP:UpdateTaskCountPrivileged|UpdateTaskCountPrivileged]]
|-
|-
| 0x045100C2
| 0x045100C2
−
| GetTaskIntervalPrivileged
+
| [[BOSSP:GetTaskIntervalPrivileged|GetTaskIntervalPrivileged]]
|-
|-
| 0x045200C2
| 0x045200C2
−
| GetTaskCountPrivileged
+
| [[BOSSP:GetTaskCountPrivileged|GetTaskCountPrivileged]]
|-
|-
| 0x045300C2
| 0x045300C2
−
| GetTaskServiceStatusPrivileged
+
| [[BOSSP:GetTaskServiceStatusPrivileged|GetTaskServiceStatusPrivileged]]
|-
|-
| 0x04540102
| 0x04540102
−
| GetTaskStatePrivileged
+
| [[BOSSP:GetTaskStatePrivileged|GetTaskStatePrivileged]]
|-
|-
| 0x045500C2
| 0x045500C2
−
| GetTaskResultPrivileged
+
| [[BOSSP:GetTaskResultPrivileged|GetTaskResultPrivileged]]
|-
|-
| 0x045600C2
| 0x045600C2
−
| GetTaskCommErrorCodePrivileged
+
| [[BOSSP:GetTaskCommErrorCodePrivileged|GetTaskCommErrorCodePrivileged]]
|-
|-
| 0x04570142
| 0x04570142
−
| GetTaskStatusPrivileged
+
| [[BOSSP:GetTaskStatusPrivileged|GetTaskStatusPrivileged]]
|-
|-
| 0x04580104
| 0x04580104
−
| SetTaskQueryPrivileged
+
| [[BOSSP:SetTaskQueryPrivileged|SetTaskQueryPrivileged]]
|}
|}
Line 447:
Line 447:
==BOSS Service "boss:M"==
==BOSS Service "boss:M"==
+
+
{| class="wikitable" border="1"
+
|-
+
! Command Header
+
! Description
+
|-
+
| 0x00010002
+
| ?
+
|-
+
| 0x00020000
+
| ?
+
|-
+
| 0x00030040
+
| ?
+
|-
+
| 0x00040000
+
| ?
+
|-
+
| 0x00050000
+
| ?
+
|-
+
| 0x00060000
+
| ?
+
|-
+
| 0x00070000
+
| ?
+
|}
==programIDs==
==programIDs==