Changes

16,444 bytes added ,  14:46, 12 November 2023
m
no edit summary
Line 7: Line 7:  
|-
 
|-
 
| 0x00010000
 
| 0x00010000
| StartNetworkUpdate
+
| [[NIMU:StartNetworkUpdate|StartNetworkUpdate]]
 
|-
 
|-
 
| 0x00020000
 
| 0x00020000
| GetProgress ([[NIMU:GetUpdateDownloadProgress|GetUpdateDownloadProgress]])
+
| [[NIMU:GetProgress|GetProgress]]
 
|-
 
|-
 
| 0x00030000
 
| 0x00030000
| Cancel
+
| [[NIMU:Cancel|Cancel]]
 
|-
 
|-
 
| 0x00040000
 
| 0x00040000
| CommitSystemTitles ([[NIMU:FinishTitlesInstall|FinishTitlesInstall]])
+
| [[NIMU:CommitSystemTitles|CommitSystemTitles]]
 
|-
 
|-
 
| 0x00050000
 
| 0x00050000
| GetBackgroundEventForMenu (This obtains an event handle. Home Menu will check whether a system update is available when this event is triggered.)
+
| [[NIMU:GetBackgroundEventForMenu|GetBackgroundEventForMenu]]
 
|-
 
|-
 
| 0x00060000
 
| 0x00060000
| GetBackgroundEventForNews
+
| [[NIMU:GetBackgroundEventForNews|GetBackgroundEventForNews]]
 
|-
 
|-
 
| 0x00070000
 
| 0x00070000
| FormatSaveData (This deletes and recreates the system save data 0x0001002C (NIM System SaveData))
+
| [[NIMU:FormatSaveData|FormatSaveData]]
 
|-
 
|-
 
| 0x00080000
 
| 0x00080000
| GetCustomerSupportCode
+
| [[NIMU:GetCustomerSupportCode|GetCustomerSupportCode]]
 
|-
 
|-
 
| 0x00090000
 
| 0x00090000
| IsCommittableAllSystemTitles ([[NIMU:CheckSysupdateAvailable|CheckSysupdateAvailable]])
+
| [[NIMU:IsCommittableAllSystemTitles|IsCommittableAllSystemTitles]]
 
|-
 
|-
 
| 0x000A0000
 
| 0x000A0000
| GetBackgroundProgress (GetState)
+
| [[NIMU:GetBackgroundProgress|GetBackgroundProgress]]
 
|-
 
|-
 
| 0x000B0000
 
| 0x000B0000
| GetSavedHash ([[NIMU:GetSystemTitleHash|GetSystemTitleHash]])
+
| [[NIMU:GetSavedHash|GetSavedHash]]
 
|-
 
|-
 
| 0x000C0082
 
| 0x000C0082
| UnregisterTask
+
| [[NIMU:UnregisterTask|UnregisterTask]]
 
|-
 
|-
 
| 0x000D0080
 
| 0x000D0080
| IsRegistered
+
| [[NIMU:IsRegistered|IsRegistered]]
 
|-
 
|-
 
| 0x000E0080
 
| 0x000E0080
| FindTaskInfo
+
| [[NIMU:FindTaskInfo|FindTaskInfo]]
 
|-
 
|-
 
| 0x000F0042
 
| 0x000F0042
| GetTaskInfos
+
| [[NIMU:GetTaskInfos|GetTaskInfos]]
 
|-
 
|-
 
| 0x00100000
 
| 0x00100000
| DeleteUnmanagedContexts
+
| [[NIMU:DeleteUnmanagedContexts|DeleteUnmanagedContexts]]
 
|-
 
|-
|}
+
| 0x00110000
 
+
| [[NIMU:UpdateAutoTitleDownloadTasksAsync|UpdateAutoTitleDownloadTasksAsync]]
I'm not sure if these commands header exist...
  −
{| class="wikitable" border="1"
   
|-
 
|-
!  Command Header
+
| 0x00120000
!  Description
+
| [[NIMU:StartPendingAutoTitleDownloadTasksAsync|StartPendingAutoTitleDownloadTasksAsync]]
|-
  −
| 0x00110000
  −
| ?
   
|-
 
|-
 
| 0x00130000
 
| 0x00130000
| ?
+
| [[NIMU:GetAsyncResult|GetAsyncResult]]
 
|-
 
|-
 
| 0x00140000
 
| 0x00140000
| ?
+
| [[NIMU:CancelAsyncCall|CancelAsyncCall]]
 
|-
 
|-
 
| 0x00150000
 
| 0x00150000
| ?
+
| [[NIMU:IsPendingAutoTitleDownloadTasks|IsPendingAutoTitleDownloadTasks]]
 +
|-
 +
| 0x00160000
 +
| [[NIMU:GetNumAutoTitleDownloadTasks|GetNumAutoTitleDownloadTasks]]
 
|-
 
|-
 
| 0x00170042
 
| 0x00170042
| ?
+
| [[NIMU:GetAutoTitleDownloadTaskInfos|GetAutoTitleDownloadTaskInfos]]
 
|-
 
|-
 
| 0x00180080
 
| 0x00180080
| ?
+
| [[NIMU:CancelAutoTitleDownloadTask|CancelAutoTitleDownloadTask]]
 +
|-
 +
| 0x00190002
 +
| [[NIMU:SetAutoDbgDat|SetAutoDbgDat]]
 +
|-
 +
| 0x001A0002
 +
| [[NIMU:GetAutoDbgDat|GetAutoDbgDat]]
 +
|-
 +
| 0x001B0042
 +
| [[NIMU:SetDbgTasks|SetDbgTasks]]
 +
|-
 +
| 0x001C0042
 +
| [[NIMU:GetDbgTasks|GetDbgTasks]]
 +
|-
 +
| 0x001D0000
 +
| [[NIMU:DeleteDbgData|DeleteDbgData]]
 +
|-
 +
| 0x001E0042
 +
| [[NIMU:SetTslXml|SetTslXml]]
 +
|-
 +
| 0x001F0000
 +
| [[NIMU:GetTslXmlSize|GetTslXmlSize]]
 +
|-
 +
| 0x00200042
 +
| [[NIMU:GetTslXml|GetTslXml]]
 +
|-
 +
| 0x00210000
 +
| [[NIMU:DeleteTslXml|DeleteTslXml]]
 +
|-
 +
| 0x00220042
 +
| [[NIMU:SetDtlXml|SetDtlXml]]
 +
|-
 +
| 0x00230000
 +
| [[NIMU:GetDtlXmlSize|GetDtlXmlSize]]
 +
|-
 +
| 0x00240042
 +
| [[NIMU:GetDtlXml|GetDtlXml]]
 
|-
 
|-
 
| 0x00250000
 
| 0x00250000
| ?
+
| [[NIMU:UpdateAccountStatus|UpdateAccountStatus]]
 
|-
 
|-
| 0x00260200
+
| 0x00260180
| ?
+
| [[NIMU:StartTitleDownload|StartTitleDownload]]
 
|-
 
|-
 
| 0x00270000
 
| 0x00270000
| ?
+
| [[NIMU:StopTitleDownload|StopTitleDownload]]
 
|-
 
|-
 
| 0x00280000
 
| 0x00280000
| ?
+
| [[NIMU:GetTitleDownloadProgress|GetTitleDownloadProgress]]
 
|-
 
|-
 
| 0x00290246
 
| 0x00290246
| RegisterTask
+
| [[NIMU:RegisterTask|RegisterTask]]
 
|-
 
|-
 
| 0x002A0000
 
| 0x002A0000
| ?
+
| [[NIMU:IsSystemUpdateAvailable|IsSystemUpdateAvailable]]
 
|-
 
|-
 
| 0x002B0000
 
| 0x002B0000
| ?
+
| ? (Response: 0 = 0x002B0040, 1 = Result Code)
 
|-
 
|-
 
| 0x002C0000
 
| 0x002C0000
| ?
+
| [[NIMU:UpdateTickets|UpdateTickets]]
 
|-
 
|-
 
| 0x002D00C0
 
| 0x002D00C0
| ?
+
| [[NIMU:DownloadTitleSeedAsync|DownloadTitleSeedAsync]]
 
|-
 
|-
| 0x00480002
+
| 0x002E0000
| ?
+
| [[NIMU:DownloadMissingTitleSeedsAsync|DownloadMissingTitleSeedsAsync]]
 
|-
 
|-
 
|}
 
|}
   −
= NIM server service "nim:s" =
+
= NIM shop service "nim:s" =
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 132: Line 166:  
| 0x00060080
 
| 0x00060080
 
| [[NIMS:IsTaskRegistered|IsTaskRegistered]]
 
| [[NIMS:IsTaskRegistered|IsTaskRegistered]]
 +
|-
 +
| 0x00070080
 +
| GetTaskInfoFromTitleId
 +
|-
 +
| 0x00080042
 +
| GetTaskList
 +
|-
 +
| 0x0009xxxx
 +
| Returns 0xE0C0D3F4, not implemented.
 
|-
 
|-
 
| 0x000A0000
 
| 0x000A0000
Line 138: Line 181:  
| 0x000B0084
 
| 0x000B0084
 
| [[NIMS:SetAttribute|SetAttribute]]
 
| [[NIMS:SetAttribute|SetAttribute]]
 +
|-
 +
| 0x000C0082
 +
| SetAttributeInt32
 +
|-
 +
| 0x000D0082
 +
| Connect
 +
|-
 +
| 0x000E0000
 +
| UnregisterSOAP, aka soap account delete
 +
|-
 +
| 0x000F0042
 +
| SetCountrySOAP, change effective country registry
 +
|-
 +
| 0x00100080
 +
| Returns 0xE0C0D3F4, not implemented, reads for an int64 in IPC.
 +
|-
 +
| 0x001100C4
 +
| Returns 0xE0C0D3F4, not implemented, reads for IPC parameters.
 +
|-
 +
| 0x00120084
 +
| SetExternalAccountSOAP
 +
|-
 +
| 0x00130042
 +
| DeleteExternalAccountSOAP
 +
|-
 +
| 0x00140000
 +
| DeleteSavedCardSOAP
 +
|-
 +
| 0x00150082
 +
| ListCashReplenishAmountsSOAP
 
|-
 
|-
 
| 0x0016020A
 
| 0x0016020A
 
| [[NIMS:ListTitles|ListTitles]]
 
| [[NIMS:ListTitles|ListTitles]]
 +
|-
 +
| 0x0017020A
 +
| ListContentSetsExSOAP
 +
|-
 +
| 0x0018020A
 +
| ListItemsSOAP
 +
|-
 +
| 0x0019028C
 +
| ListContentSetGroupsSOAP
 +
|-
 +
| 0x001E0104
 +
| GetTaxesSOAP
 +
|-
 +
| 0x001F0106
 +
| GetTaxLocationSOAP
 
|-
 
|-
 
| 0x00220080
 
| 0x00220080
Line 150: Line 238:  
| 0x002D0042
 
| 0x002D0042
 
| [[NIMS:DownloadTickets|DownloadTickets]]
 
| [[NIMS:DownloadTickets|DownloadTickets]]
 +
|-
 +
| 0x0036xxxx
 +
| Returns 0xE0C0D3F4, not implemented.
 
|-
 
|-
 
| 0x003C0002
 
| 0x003C0002
Line 165: Line 256:  
| 0x00570082
 
| 0x00570082
 
| [[NIMS:ConnectNoTicketDownload|ConnectNoTicketDownload]]
 
| [[NIMS:ConnectNoTicketDownload|ConnectNoTicketDownload]]
 +
|-
 +
| 0x005B0000
 +
| DeleteInitAccSavedData
 +
|-
 +
| 0x005C0000
 +
| DeleteAccountSavedData
 +
|-
 +
| 0x005F00C0
 +
| DownloadTitleSeed
 
|}
 
|}
   Line 199: Line 299:     
= NIM service "nim:ndm" =
 
= NIM service "nim:ndm" =
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Command Header
 +
!  Description
 +
|-
 +
| 0x00010000
 +
| GetDaemonEventHandle
 +
|-
 +
| 0x00020000
 +
| Does nothing, always returns 0
 +
|-
 +
| 0x00030000
 +
| SetDaemonToWorkingState
 +
|-
 +
| 0x00040040
 +
| SetDaemonToSuspendedState
 +
|-
 +
| 0x00050000
 +
| GetDaemonState
 +
|-
 +
|}
    
= kagiya server =
 
= kagiya server =
Line 258: Line 379:     
=Types=
 
=Types=
==InstallationMode==
+
 
 +
==SystemUpdateProgress==
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x00
 +
| 0x01
 +
| [[#SystemUpdateState|System Update State]]
 +
|-
 +
| 0x01
 +
| 0x03
 +
| Padding
 +
|-
 +
| 0x04
 +
| 0x04
 +
| Last Operation Result Code
 +
|-
 +
| 0x08
 +
| 0x08
 +
| Current Title Downloaded Bytes
 +
|-
 +
| 0x10
 +
| 0x08
 +
| Current Title Total Bytes
 +
|-
 +
| 0x18
 +
| 0x08
 +
| Titles Downloaded
 +
|-
 +
| 0x20
 +
| 0x08
 +
| Titles Total
 +
|}
 +
 
 +
==SystemUpdateState==
 +
 
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 265: Line 425:  
|-
 
|-
 
| 0
 
| 0
| Initial installation
+
| Not Initialized
 
|-
 
|-
 
| 1
 
| 1
| Unknown
+
| Starting System Update
 
|-
 
|-
 
| 2
 
| 2
| Unknown
+
| Fetching System Hash and Account Status
 
|-
 
|-
 
| 3
 
| 3
| Reinstallation
+
| Installing New Tickets
 +
|-
 +
| 4
 +
| Installing Titles
 +
|-
 +
| 5
 +
| Update Complete
 +
|-
 +
| 6
 +
| Failed - System Updates Disabled (Dev Units Only)
 +
|-
 +
| 7
 +
| ? (Only for background updates)
 +
|-
 +
| 8
 +
| ? (Only for background updates)
 
|}
 
|}
==DownloadState==
+
 
 +
==TitleDownloadProgress==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x00
 +
| 0x01
 +
| [[#TitleDownloadState|Title Download State]]
 +
|-
 +
| 0x01
 +
| 0x03
 +
| Padding
 +
|-
 +
| 0x04
 +
| 0x04
 +
| Last Operation Result Code
 +
|-
 +
| 0x08
 +
| 0x08
 +
| Downloaded Bytes
 +
|-
 +
| 0x10
 +
| 0x08
 +
| Total Bytes
 +
|}
 +
 
 +
==TitleDownloadState==
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 283: Line 487:  
|-
 
|-
 
| 0
 
| 0
| Not initialized
+
| Not Initialized
 
|-
 
|-
 
| 1
 
| 1
| Download initialized
+
| Starting Title Download
 
|-
 
|-
 
| 2
 
| 2
| Downloading, verifying and installing TMD
+
| Downloading and Installing TMD
 
|-
 
|-
 
| 3
 
| 3
| Initializing save data
+
| Committing TMD
 
|-
 
|-
 
| 4
 
| 4
| Downloading and installing contents
+
| Downloading and Installing Contents
 
|-
 
|-
 
| 5
 
| 5
| Waiting before calling [[AM:CommitImportPrograms]]
+
| Contents Installed
 
|-
 
|-
 
| 6
 
| 6
| Running [[AM:CommitImportPrograms]]
+
| [[AM:CommitImportPrograms|Committing Titles]]
 
|-
 
|-
 
| 7
 
| 7
| Title installation finished
+
| Finished
 
|-
 
|-
 
| 8
 
| 8
| Unknown error regarding title version
+
| ? (Unknown error regarding title version?)
 
|-
 
|-
 
| 9
 
| 9
| Creating the .ctx file (or error doing so)?
+
| ? (Creating the .ctx file (or error doing so)?)
 
|-
 
|-
 
| 10
 
| 10
| Irrecoverable error encountered
+
| Background Download Failed
 
|}
 
|}
==TitleConfig==
+
 
 +
==TitleDownloadConfig==
 +
 
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 322: Line 528:  
!  Description
 
!  Description
 
|-
 
|-
| 0x0
+
| 0x00
| 0x8
+
| 0x08
 
| Title ID
 
| Title ID
 
|-
 
|-
| 0x8
+
| 0x08
| 0x4
+
| 0x04
 
| Title version
 
| Title version
 
|-
 
|-
| 0xC
+
| 0x0C
| 0x4
+
| 0x04
| Unknown (always 0)
+
| Unknown (always 0?)
 
|-
 
|-
 
| 0x10
 
| 0x10
| 0x1
+
| 0x01
| Age rating for the HOME Menu parental controls
+
| Age Rating (for HOME Menu parental controls)
 
|-
 
|-
 
| 0x11
 
| 0x11
| 0x1
+
| 0x01
 
| [[Filesystem_services#MediaType|Media Type]]
 
| [[Filesystem_services#MediaType|Media Type]]
 
|-
 
|-
 
| 0x12
 
| 0x12
| 0x2
+
| 0x02
 
| Padding
 
| Padding
 
|-
 
|-
 
| 0x14
 
| 0x14
| 0x4
+
| 0x04
 
| Unknown (always 0?)
 
| Unknown (always 0?)
 
|}
 
|}
==TitleProgress==
+
 
 +
==BackgroundTitleDownloadConfig==
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x000
 +
| 0x018
 +
| [[#TitleDownloadConfig|Title Download Config]]
 +
|-
 +
| 0x018
 +
| 0x001
 +
| Unknown
 +
|-
 +
| 0x019
 +
| 0x001
 +
| Unknown
 +
|-
 +
| 0x01A
 +
| 0x006
 +
| Padding
 +
|-
 +
| 0x020
 +
| 0x008
 +
| Requester Title ID
 +
|-
 +
| 0x028
 +
| 0x090
 +
| Title Name (UTF-16)
 +
|-
 +
| 0x0B8
 +
| 0x002
 +
| Title Name Forced NUL Terminator (always 0)
 +
|-
 +
| 0x0BA
 +
| 0x048
 +
| Developer Name (UTF-16)
 +
|-
 +
| 0x102
 +
| 0x002
 +
| Developer Name Forced NUL Terminator (always 0)
 +
|}
 +
 
 +
==BackgroundTitleDownloadTaskInfo==
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x000
 +
| 0x104
 +
| [[#BackgroundTitleDownloadConfig|Background Title Download Config]]
 +
|-
 +
| 0x104
 +
| 0x004
 +
| Padding
 +
|-
 +
| 0x108
 +
| 0x018
 +
| [[#TitleDownloadProgress|Title Download Progress]]
 +
|}
 +
 
 +
==AutoTitleDownloadTaskInfo==
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Length
 +
!  Description
 +
|-
 +
| 0x000
 +
| 0x008
 +
| Task ID
 +
|-
 +
| 0x008
 +
| 0x008
 +
| Title ID
 +
|-
 +
| 0x010
 +
| 0x004
 +
| Title Version
 +
|-
 +
| 0x014
 +
| 0x014
 +
| Unknown
 +
|-
 +
| 0x028
 +
| 0x008
 +
| Required Storage Space
 +
|-
 +
| 0x030
 +
| 0x004
 +
| Last Operation Result code
 +
|-
 +
| 0x034
 +
| 0x004
 +
| Last Operation Customer Support Code
 +
|-
 +
| 0x038
 +
| 0x090
 +
| Title Name (UTF-16)
 +
|-
 +
| 0x0C8
 +
| 0x002
 +
| Title Name Forced NUL Terminator (always 0)
 +
|-
 +
| 0x0CA
 +
| 0x048
 +
| Developer Name (UTF-16)
 +
|-
 +
| 0x112
 +
| 0x002
 +
| Developer Name Forced NUL Terminator (always 0)
 +
|-
 +
| 0x114
 +
| 0x024
 +
| Unknown
 +
|}
 +
 
 +
==InstallationMode==
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Value
 +
!  Description
 +
|-
 +
| 0
 +
| Initial Installation
 +
|-
 +
| 1
 +
| Unknown
 +
|-
 +
| 2
 +
| Unknown
 +
|-
 +
| 3
 +
| Re-installation
 +
|}
 +
 
 +
==Autodbg==
 +
 
 +
Despite this being for debug purposes, it's used in retail if present.
 +
 
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 357: Line 710:  
!  Description
 
!  Description
 
|-
 
|-
| 0x0
+
| 0x000
| 0x4
+
| 0x004
| [[#DownloadState|Download State]]
+
| Debug flags
 
|-
 
|-
| 0x4
+
| 0x004
| 0x4
+
| 0x004
| Last result code in NIM related to the installation
+
| Number of debug tasks in dbgtasks.dat
 
|-
 
|-
| 0x8
+
| 0x008
| 0x8
+
| 0x100
| Amount of bytes that have been downloaded
+
| Debug URL dst.xml override
 +
|}
 +
 
 +
===Autodbg flag bits===
 +
 
 +
{| class="wikitable" border="1"
 
|-
 
|-
| 0x10
+
!  Bit
| 0x8
+
!  Description
| Total bytes that need to be downloaded
+
|-
 +
| 0
 +
| Use the tasks stored in dbgtasks.dat
 +
|-
 +
| 1
 +
| Use provided debug dtl.xml URL override
 +
|-
 +
| 2
 +
| Disable the download of dtl.xml
 +
|-
 +
| 3
 +
| Skip connecting to SOAP EC and download ETickets with a false success result during TSL processing
 +
|-
 +
| 4
 +
| Fake assume always ticket is present during TSL task condition processing
 +
|-
 +
| 5
 +
| Skip NPNS notification fetch for auto title downloads with a false success result
 +
|}
 +
 
 +
=Error Results=
 +
 
 +
==NIM Results==
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Result
 +
!  Description
 +
|-
 +
| 0xE0E0D001
 +
| Non-null terminated string on IPC parameter for given length.
 +
|-
 +
| 0xD960D003
 +
| SOAP EC/NUP manager internal error number translation of unhandled values or -4199.
 +
|-
 +
| 0xD960D004
 +
| Unexpected/invalid state enums. (generic)
 +
|-
 +
| 0xC820D005
 +
| Invalid state under one title install manager.
 +
|-
 +
| 0xD8A0D006
 +
| Error state enum value. (generic)
 +
|-
 +
| 0xC920D008
 +
| When content downloading, HTTP Status was not 200 or 206 when connecting, and when status is 206, the Content-Range values failed sanity check.
 +
|-
 +
| 0xC920D009
 +
| Mismatch system title hash with server system title hash.
 +
|-
 +
| 0xC960D00C
 +
| Failed to convert country enum value in CFG save block 0xB0000 to country ISO 3166-1 Alpha-2 code.
 +
|-
 +
| 0xC960D00D
 +
| CFG didn't reply any serial number or dummy serial number "000000000000000" was given.
 +
|-
 +
| 0xC860D00E
 +
| Max total size exceeded for system update pending titles. (128 MiB)
 +
|-
 +
| 0xC880D00F
 +
| *to be filled*
 +
|-
 +
| 0xC8E0D011
 +
| Bad condition, title id for purpose or size under one title install manager.
 +
|-
 +
| 0xC960D012
 +
| Invalid .dat or less than expected size of buffer length read from .dat save files during raw data load.
 +
|-
 +
| 0xC960D013
 +
| Daemon service is suspended.
 +
|-
 +
| 0xC8A0D014
 +
| *to be filled*
 +
|-
 +
| 0xC960D015
 +
| Version mismatch for reinstall condition.
 +
|-
 +
| 0xC960D016
 +
| Used in a few contexts where length does not match expected or the limit. Example, seed data size from HTTP is not 16 bytes.
 +
|-
 +
| 0xC920D017
 +
| SetIVSData will not perform, conditions are not adequate to set IVS. In Service Standby mode or not registered successfully in IAS.
 +
|-
 +
| 0xC920D019
 +
| Certain EC connect flows disallowed to continue while IVS is waiting to be synced from servers. System Transfer has previously occurred and IVS is pending.
 +
|-
 +
| 0xC920D01A
 +
| For nim:s IPC cmd id 0x40, IVS not flagged for synchronization on target console on EC connect after system transfer.
 +
|-
 +
| 0xC960D01B
 +
| Failed to convert language enum value in CFG save block 0xA0002 to language ISO 639-1 code.
 +
|-
 +
| 0xE0E0D01C
 +
| Invalid installation mode for some IPC contexts.
 +
|-
 +
| 0xE0C0D01E
 +
| May be either:
 +
* Trying to set autodbg or dbgtasks with too many tasks on nim:u IPC cmd ids 0x19 and 0x1B, respectively.
 +
* Non debug ENVINFO when calling debug version of get balance nim:s IPC cmd id 0x56.
 +
* A boolean parameter for nim:s IPC cmd id 0x58 was set false.
 +
|-
 +
| 0xD860D020
 +
| May be either:
 +
* Result translation of 0xC860D06E if returned by the early attributes filter handler.
 +
* If the internal Work-only heap fails to initialize with buffer length lesser than 32 bytes. This buffer is given over IPC.
 +
|-
 +
| 0xC860D021
 +
| Task manager has run out of task slots.
 +
|-
 +
| 0xC920D022
 +
| Buffer size too small for ticket length on nim:aoc IPC cmd id 0x1B.
 +
|-
 +
| 0xD880D023
 +
| When Account Id missing for nim:aoc IPC cmd id 0x1B and 0x20 or when Account Id or Token are missing for nim:s IPC cmd id 0x53.
 +
|-
 +
| 0xD860D024
 +
| Failed to initialize Data Heap using buffer given over IPC.
 +
|-
 +
| 0xD920D025
 +
| SOAP reply implied that Service Standby mode is enabled. Certain EC flows cancelled.
 +
|-
 +
| 0xC8A0D026
 +
| May be either:
 +
* Result translation, NIM ran into NPNS result 0xD8A15C06 or NIM result 0xD960D02B.
 +
* System updates pending while trying to SOAP EC connect with ETicket download while processing auto downloads.
 +
|-
 +
| 0xC8A0D027
 +
| This occurs under certain code paths.
 +
<ol>
 +
<li>Result translation of result error from:</li>
 +
<ul><li>HTTP module</li></ul>
 +
<ul><li>SSL module</li></ul>
 +
<ul><li>NIM module if description is between 100 to 299 (inclusive), 200 descriptions to fit the reserved range of the SOAP manager internal error range of -4000 to -4199 </li></ul>
 +
<li>Unexpected HTTP status, followed up also by generating error integer with 54400 + http status, result value used as a 005-xxxx error</li>
 +
</ol>
 +
|-
 +
| 0xD960D028
 +
| Generic XML parsing error. Not related to SOAP XML.
 +
|-
 +
| 0xD960D029
 +
| XML processor stub function called. Not related to SOAP XML.
 +
|-
 +
| 0xD960D02A
 +
| Generic XML data processing error: bad length or insufficient memory. Not related to SOAP XML.
 +
|-
 +
| 0xD960D02B
 +
| Result translation of 0xD960D028.
 +
|-
 +
| 0xD960D02C
 +
| Auto download programmed max task count exceeded trying to add more to list. (64)
 +
|-
 +
| 0xD960D02D
 +
| tsl.xml or tsl.xml.tmp couldn't be opened. FS result translation of description between 100 and 179, inclusive.
 +
|-
 +
| 0xD960D02E
 +
| During tsl.xml task condition check. Still unclear, type of task check
 +
|-
 +
| 0xD960D030
 +
| During tsl.xml task condition check. Ticket missing for title when expected. Will not occur with autodbg flag bit 4 set.
 +
|-
 +
| 0xD960D031
 +
| During tsl.xml task condition check. Title already installed when not overwrite mode.
 +
|-
 +
| 0xD960D032
 +
| During tsl.xml task condition check. Task for title already exists with same or higher version in task.dat.
 +
|-
 +
| 0xD960D033
 +
| During tsl.xml task condition check. Task for title already exists in task.dat.
 +
|-
 +
| 0xD8E0D034
 +
| During tsl.xml task condition check. Unexpected task title type.
 +
|-
 +
| 0xD960D035
 +
| During tsl.xml task condition check. Tsl.xml task will not be processed while max programmed maximum for tasks pending in task.dat is equal or exceeded. (10)
 +
|-
 +
| 0xD960D037
 +
| Failed to load saved dtl.xml with result error of FS with description between 100 and 179, inclusive.
 +
|-
 +
| 0xD960D038
 +
| During tsl.xml task condition check. Not enough space for target SDMC user title.
 +
|-
 +
| 0xD8A0D03A
 +
| No valid NPNS X-Device-Token was available while trying to fetch it from CFG save block 0xF0006.
 +
|-
 +
| 0xD940D03B
 +
| Selected tsl.xml task was cancelled with nim:u IPC cmd id 0x18.
 +
|-
 +
| 0xD960D03C
 +
| Result translation for 0xD960D028 while trying to read XML. Not related to SOAP XML.
 +
|-
 +
| 0xD8A0D03D
 +
| During tsl.xml task condition check. SDMC not inserted or non-writable for SDMC title. (bad media status)
 +
|-
 +
| 0xD960D03E
 +
| During tsl.xml task condition check. Not enough space for target TWL user title.
 +
|-
 +
| 0xD940D03F
 +
| NPNS notification url is not HTTPS.
 +
|-
 +
| 0xD940D040
 +
| NIM ran into NPNS result 0xD8A15C07. Result translation.
 +
|-
 +
| 0xD860D041
 +
| During tsl.xml task condition check. Pending task count of task.dat and installed SDMC user title count exceed programmed max. (300)
 +
|-
 +
| 0xD860D042
 +
| During tsl.xml task condition check. Pending task count of task.dat and installed TWL user title count exceed programmed max. (40)
 +
|-
 +
| 0xD880D043
 +
| HTTP 404 while fetching title crypto seed from kagiya.
 +
|-
 +
| 0xD880D044
 +
| HTTP 503 while fetching title crypto seed from kagiya.
 +
|-
 +
| 0xC960D065
 +
| SOAP EC/NUP manager internal error number translation of value -4001
 +
|-
 +
| 0xE0C0D066
 +
| SOAP EC/NUP manager internal error number translation of value -4002
 +
|-
 +
| 0xE0E0D068
 +
| SOAP EC/NUP manager internal error number translation of value -4004
 +
|-
 +
| 0xC860D069
 +
| SOAP EC/NUP manager internal error number translation of value -4005
 +
|-
 +
| 0xC880D06A
 +
| SOAP EC/NUP manager internal error number translation of value -4006
 +
|-
 +
| 0xC8A0D06B
 +
| SOAP EC/NUP manager internal error number translation of value -4007
 +
|-
 +
| 0xC8A0D06C
 +
| SOAP EC/NUP manager internal error number translation of value -4008
 +
|-
 +
| 0xC860D06E
 +
| SOAP EC/NUP manager internal error number translation of value -4010
 +
|-
 +
| 0xC920D073
 +
| SOAP EC/NUP manager internal error number translation of value -4015
 +
|-
 +
| 0xC900D075
 +
| SOAP EC/NUP manager internal error number translation of value -4017
 +
|-
 +
| 0xC860D076
 +
| SOAP EC/NUP manager internal error number translation of value -4018
 +
|-
 +
| 0xC920D077
 +
| SOAP EC/NUP manager internal error number translation of value -4019
 +
|-
 +
| 0xC900D084
 +
| SOAP EC/NUP manager internal error number translation of value -4032
 +
|-
 +
| 0xC900D085
 +
| SOAP EC/NUP manager internal error number translation of value -4033
 +
|-
 +
| 0xC920D086
 +
| SOAP EC/NUP manager internal error number translation of value -4034
 +
|-
 +
| 0xC920D08A
 +
| SOAP EC/NUP manager internal error number translation of value -4038
 +
|-
 +
| 0xC900D08B
 +
| SOAP EC/NUP manager internal error number translation of value -4039
 +
|-
 +
| 0xC920D08C
 +
| SOAP EC/NUP manager internal error number translation of value -4040
 +
|-
 +
| 0xE0A0D08D
 +
| SOAP EC/NUP manager internal error number translation of value -4041
 +
|-
 +
| 0xC920D08F
 +
| SOAP EC/NUP manager internal error number translation of value -4043
 +
|-
 +
| 0xC920D095
 +
| SOAP EC/NUP manager internal error number translation of value -4049
 +
|-
 +
| 0xE0E0D099
 +
| SOAP EC/NUP manager internal error number translation of value -4053
 +
|-
 +
| 0xC900D09F
 +
| SOAP EC/NUP manager internal error number translation of value -4059
 +
|-
 +
| 0xE100D0A0
 +
| SOAP EC/NUP manager internal error number translation of value -4060
 +
|-
 +
| 0xE100D0A1
 +
| SOAP EC/NUP manager internal error number translation of value -4061
 +
|-
 +
| 0xC920D0A4
 +
| SOAP EC/NUP manager internal error number translation of value -4064
 +
|-
 +
| 0xC920D0A7
 +
| SOAP EC/NUP manager internal error number translation of value -4067
 +
|-
 +
| 0xC920D0A8
 +
| SOAP EC/NUP manager internal error number translation of value -4068
 +
|-
 +
| 0xE0A0D0A9
 +
| SOAP EC/NUP manager internal error number translation of value -4069
 +
|-
 +
| 0xC920D0AD
 +
| SOAP EC/NUP manager internal error number translation of value -4073
 +
|-
 +
| 0xC920D0B1
 +
| SOAP EC/NUP manager internal error number translation of value -4077
 +
|-
 +
| 0xC920D0B3
 +
| SOAP EC/NUP manager internal error number translation of value -4079
 +
|-
 +
| 0xC920D0B5
 +
| SOAP EC/NUP manager internal error number translation of value -4081
 +
|}
 +
 
 +
==NPNS Results==
 +
 
 +
NPNS has a module number for results, but no module exists, but can be at least in part found inside NIM.
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Result
 +
!  Description
 +
|-
 +
| 0xC9215C00
 +
| Result translation, HTTP result 0xD8A0A018.
 +
|-
 +
| 0xD8615C01
 +
| Allocation error, insufficient memory.
 +
|-
 +
| 0xD8A15C02
 +
| HTTP non 2xx, json message processing, default error code switch result error.
 +
|-
 +
| 0xD8A15C03
 +
| JSON processing errors.
 +
|-
 +
| 0xD8A15C04
 +
| Notifications array bigger than expected.
 +
|-
 +
| 0xD8A15C05
 +
| HTTP Empty body response.
 +
|-
 +
| 0xD8A15C06
 +
| HTTP non 2xx, json message processing, error code 1003 given in json body.
 +
|-
 +
| 0xD8A15C07
 +
| HTTP non 2xx, json message processing, error code 1000 given in json body.
 +
|-
 +
| 0xD8A15C08
 +
| HTTP non 2xx, json message processing, error code 1004 given in json body.
 +
|}
 +
 
 +
==Other Results==
 +
 
 +
Any other result that is not given by other modules as a response, but found internally in NIM.
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Result
 +
!  Module value
 +
!  Description
 +
|-
 +
| 0xD8600801
 +
| Util (2)
 +
| Encoding errors. In NIM, if error while encoding base64 for X-Authentication-Key or X-Authentication-Data HTTP parameters.
 
|}
 
|}
24

edits