Line 18: |
Line 18: |
| | 5 || GetProfile || Returns an [[#IProfile]]. | | | 5 || GetProfile || Returns an [[#IProfile]]. |
| |- | | |- |
− | | 6 || GetProfileDigest || | + | | 6 || [3.0.0+] GetProfileDigest || |
| |- | | |- |
| | 50 || IsUserRegistrationRequestPermitted || | | | 50 || IsUserRegistrationRequestPermitted || |
Line 24: |
Line 24: |
| | 51 || TrySelectUserWithoutInteraction || | | | 51 || TrySelectUserWithoutInteraction || |
| |- | | |- |
− | | 60 || [5.0.0+] ListOpenContextStoredUsers || | + | | 60 || [5.0.0-5.1.0] ListOpenContextStoredUsers || |
| + | |- |
| + | | 99 || [6.0.0+] DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]]. |
| |- | | |- |
| | 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]]. | | | 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]]. |
Line 37: |
Line 39: |
| |- | | |- |
| | 105 || [4.0.0+] CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]]. | | | 105 || [4.0.0+] CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 106 || [9.0.0+] GetProfileSyncNotifier || |
| |- | | |- |
| | 110 || StoreSaveDataThumbnail || | | | 110 || StoreSaveDataThumbnail || |
Line 44: |
Line 48: |
| | 112 || LoadSaveDataThumbnail || | | | 112 || LoadSaveDataThumbnail || |
| |- | | |- |
− | | 113 || GetSaveDataThumbnailExistence || | + | | 113 || [5.0.0+] GetSaveDataThumbnailExistence || |
| + | |- |
| + | | 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]]. |
| + | |- |
| + | | 140 || [6.0.0+] ListQualifiedUsers || |
| |- | | |- |
| | 190 || GetUserLastOpenedApplication || | | | 190 || GetUserLastOpenedApplication || |
| |- | | |- |
− | | 191 || [5.0.0+] ActivateOpenContextHolder || | + | | 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) || |
| |- | | |- |
| | 200 || BeginUserRegistration || | | | 200 || BeginUserRegistration || |
Line 60: |
Line 68: |
| | 204 || SetUserPosition || | | | 204 || SetUserPosition || |
| |- | | |- |
− | | 205 || GetProfileEditor || Returns an [[#IProfileEditor]]. | + | | 205 || GetProfileEditor || Takes an input userID and returns an [[#IProfileEditor]]. |
| |- | | |- |
| | 206 || CompleteUserRegistrationForcibly || | | | 206 || CompleteUserRegistrationForcibly || |
| |- | | |- |
− | | 210 || CreateFloatingRegistrationRequest || Returns an [[#IFloatingRegistrationRequest]]. | + | | 210 || [3.0.0+] CreateFloatingRegistrationRequest || Returns an [[#IFloatingRegistrationRequest]]. |
| + | |- |
| + | | 211 || [8.0.0+] CreateProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x4-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]]. |
| + | |- |
| + | | 212 || [8.0.0+] ResumeProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x14-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]]. |
| |- | | |- |
| | 230 || AuthenticateServiceAsync || Returns an [[#IAsyncContext]]. | | | 230 || AuthenticateServiceAsync || Returns an [[#IAsyncContext]]. |
Line 70: |
Line 82: |
| | 250 || GetBaasAccountAdministrator || Returns an [[#IAdministrator]]. | | | 250 || GetBaasAccountAdministrator || Returns an [[#IAdministrator]]. |
| |- | | |- |
− | | 290 || ProxyProcedureForGuestLoginWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]]. | + | | 290 || ProxyProcedureForGuestLoginWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]] (formerly [[#IOAuthProcedureForGuestLogin]] with [1.0.0-2.3.0]). |
| |- | | |- |
− | | 291 || ProxyProcedureForFloatingRegistrationWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]]. | + | | 291 || [3.0.0+] ProxyProcedureForFloatingRegistrationWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]]. |
| |- | | |- |
| | 299 || SuspendBackgroundDaemon || Returns an [[#ISessionObject]]. | | | 299 || SuspendBackgroundDaemon || Returns an [[#ISessionObject]]. |
| |- | | |- |
− | | 997 || DebugInvalidateTokenCacheForUser || | + | | 997 || [3.0.0+] DebugInvalidateTokenCacheForUser || |
| |- | | |- |
| | 998 || DebugSetUserStateClose || | | | 998 || DebugSetUserStateClose || |
Line 99: |
Line 111: |
| |- | | |- |
| | 100 || SetSystemProgramIdentification || | | | 100 || SetSystemProgramIdentification || |
| + | |- |
| + | | 101 || [7.0.0+] RefreshNotificationTokenAsync || |
| |- | | |- |
| | 110 || [4.0.0+] GetServiceEntryRequirementCache || | | | 110 || [4.0.0+] GetServiceEntryRequirementCache || |
Line 104: |
Line 118: |
| | 111 || [4.0.0+] InvalidateServiceEntryRequirementCache || | | | 111 || [4.0.0+] InvalidateServiceEntryRequirementCache || |
| |- | | |- |
− | | 112 || [4.0.0+] InvalidateTokenCache || | + | | 112 || [4.0.0-6.2.0] InvalidateTokenCache || |
| + | |- |
| + | | 113 || [6.1.0+] GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output. |
| |- | | |- |
| | 120 || GetNintendoAccountId || | | | 120 || GetNintendoAccountId || |
| + | |- |
| + | | 121 || [9.0.0+] CalculateNintendoAccountAuthenticationFingerprint || |
| |- | | |- |
| | 130 || GetNintendoAccountUserResourceCache || | | | 130 || GetNintendoAccountUserResourceCache || |
Line 113: |
Line 131: |
| |- | | |- |
| | 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. | | | 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 133 || [9.0.0+] GetNintendoAccountVerificationUrlCache || |
| + | |- |
| + | | 134 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsync || |
| + | |- |
| + | | 135 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsyncIfSecondsElapsed || |
| |- | | |- |
| | 140 || [5.0.0+] GetNetworkServiceLicenseCache || | | | 140 || [5.0.0+] GetNetworkServiceLicenseCache || |
Line 125: |
Line 149: |
| == IFloatingRegistrationRequest == | | == IFloatingRegistrationRequest == |
| This is "nn::account::baas::IFloatingRegistrationRequest". | | This is "nn::account::baas::IFloatingRegistrationRequest". |
| + | |
| + | Added with [3.0.0+]. |
| | | |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
Line 171: |
Line 197: |
| |- | | |- |
| | 100 || SetSystemProgramIdentification || | | | 100 || SetSystemProgramIdentification || |
| + | |- |
| + | | 101 || [7.0.0+] RefreshNotificationTokenAsync |
| |- | | |- |
| | 110 || [4.0.0+] GetServiceEntryRequirementCache || | | | 110 || [4.0.0+] GetServiceEntryRequirementCache || |
Line 176: |
Line 204: |
| | 111 || [4.0.0+] InvalidateServiceEntryRequirementCache || | | | 111 || [4.0.0+] InvalidateServiceEntryRequirementCache || |
| |- | | |- |
− | | 112 || [4.0.0+] InvalidateTokenCache || | + | | [4.0.0-6.2.0] 112 || InvalidateTokenCache || |
| + | |- |
| + | | 113 || [6.1.0+] GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output. |
| |- | | |- |
| | 120 || GetNintendoAccountId || | | | 120 || GetNintendoAccountId || |
| + | |- |
| + | | 121 || [9.0.0+] CalculateNintendoAccountAuthenticationFingerprint || |
| |- | | |- |
| | 130 || GetNintendoAccountUserResourceCache || | | | 130 || GetNintendoAccountUserResourceCache || |
Line 185: |
Line 217: |
| |- | | |- |
| | 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. | | | 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 133 || [9.0.0+] GetNintendoAccountVerificationUrlCache || |
| + | |- |
| + | | 134 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsync || |
| + | |- |
| + | | 135 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsyncIfSecondsElapsed || |
| |- | | |- |
| | 140 || [5.0.0+] GetNetworkServiceLicenseCache || | | | 140 || [5.0.0+] GetNetworkServiceLicenseCache || |
Line 218: |
Line 256: |
| | 256 || ResumeProcedureToUpdateLinkageStateOfNintendoAccount || Returns an [[#IOAuthProcedure]]. | | | 256 || ResumeProcedureToUpdateLinkageStateOfNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| |- | | |- |
− | | 260 || CreateProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]]. | + | | 260 || [3.0.0+] CreateProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| |- | | |- |
− | | 261 || ResumeProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]]. | + | | 261 || [3.0.0+] ResumeProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| |- | | |- |
| | 280 || ProxyProcedureToAcquireApplicationAuthorizationForNintendoAccount || Returns an [[#IOAuthProcedure]]. | | | 280 || ProxyProcedureToAcquireApplicationAuthorizationForNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| + | |- |
| + | | 290 || [8.0.0+] GetRequestForNintendoAccountUserResourceView || |
| + | |- |
| + | | 300 || [6.0.0+] TryRecoverNintendoAccountUserStateAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 400 || [6.1.0+] IsServiceEntryRequirementCacheRefreshRequiredForOnlinePlay || Takes a total of 0x8-bytes of input, returns an output u8. |
| + | |- |
| + | | 401 || [6.1.0+] RefreshServiceEntryRequirementCacheForOnlinePlayAsync || Takes a total of 0x8-bytes of input, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 900 || [9.0.0+] GetAuthenticationInfoForWin || |
| + | |- |
| + | | 901 || [9.0.0+] ImportAsyncForWin || |
| |- | | |- |
| | 997 || DebugUnlinkNintendoAccountAsync || Returns an [[#IAsyncContext]]. | | | 997 || DebugUnlinkNintendoAccountAsync || Returns an [[#IAsyncContext]]. |
Line 269: |
Line 319: |
| == IOAuthProcedureForExternalNsa == | | == IOAuthProcedureForExternalNsa == |
| This is "nn::account::nas::IOAuthProcedureForExternalNsa". | | This is "nn::account::nas::IOAuthProcedureForExternalNsa". |
| + | |
| + | Added with [3.0.0+]. |
| | | |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
Line 314: |
Line 366: |
| | 101 || IsNetworkServiceAccountReplaced || | | | 101 || IsNetworkServiceAccountReplaced || |
| |- | | |- |
− | | 199 || GetUrlForIntroductionOfExtraMembership || | + | | [2.0.0-5.1.0] 199 || GetUrlForIntroductionOfExtraMembership || |
| |} | | |} |
| | | |
Line 355: |
Line 407: |
| Takes an output type-0x6 buffer, returns the same output u32 as [[#GetImageSize]]. | | Takes an output type-0x6 buffer, returns the same output u32 as [[#GetImageSize]]. |
| | | |
− | The output buffer contains the JPEG profile image icon. | + | The output buffer contains the JPEG profile image icon. This is valid for both Miis and character icons. |
| | | |
| == IProfileEditor == | | == IProfileEditor == |
Line 364: |
Line 416: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || Get | + | | 0 || [[#Get]] |
| |- | | |- |
− | | 1 || GetBase | + | | 1 || [[#GetBase]] |
| |- | | |- |
− | | 10 || GetImageSize | + | | 10 || [[#GetImageSize]] |
| |- | | |- |
− | | 11 || LoadImage | + | | 11 || [[#LoadImage]] |
| |- | | |- |
− | | 100 || Store | + | | 100 || [[#Store]] |
| |- | | |- |
− | | 101 || StoreWithImage | + | | 101 || [[#StoreWithImage]] |
| |} | | |} |
| + | |
| + | === Store === |
| + | Takes a [[#ProfileBase]] and an input type-0x19 buffer for [[#UserData]]. |
| + | |
| + | === StoreWithImage === |
| + | Takes a [[#ProfileBase]], an input type-0x19 buffer for [[#UserData]], and an input type-0x5 buffer. |
| | | |
| == IAsyncContext == | | == IAsyncContext == |
Line 422: |
Line 480: |
| | 5 || GetProfile || Takes an input userID, returns an [[#IProfile]]. | | | 5 || GetProfile || Takes an input userID, returns an [[#IProfile]]. |
| |- | | |- |
− | | 6 || GetProfileDigest || | + | | 6 || [3.0.0+] GetProfileDigest || |
| |- | | |- |
| | 50 || IsUserRegistrationRequestPermitted || | | | 50 || IsUserRegistrationRequestPermitted || |
Line 428: |
Line 486: |
| | 51 || TrySelectUserWithoutInteraction || | | | 51 || TrySelectUserWithoutInteraction || |
| |- | | |- |
− | | 60 || [5.0.0+] ListOpenContextStoredUsers || | + | | 60 || [5.0.0-5.1.0] ListOpenContextStoredUsers || |
| |- | | |- |
− | | 100 || InitializeApplicationInfo || | + | | 99 || [6.0.0+] DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]]. |
| |- | | |- |
− | | 101 || GetBaasAccountManagerForApplication || Returns an [[#IManagerForApplication]]. | + | | 100 || [[#InitializeApplicationInfoV0]] || |
| + | |- |
| + | | 101 || GetBaasAccountManagerForApplication || Takes an input userID, returns an [[#IManagerForApplication]]. |
| |- | | |- |
| | 102 || AuthenticateApplicationAsync || Returns an [[#IAsyncContext]]. | | | 102 || AuthenticateApplicationAsync || Returns an [[#IAsyncContext]]. |
Line 446: |
Line 506: |
| | 130 || [5.0.0+] LoadOpenContext || | | | 130 || [5.0.0+] LoadOpenContext || |
| |- | | |- |
| + | | 131 || [6.0.0+] ListOpenContextStoredUsers || |
| + | |- |
| + | | 140 || [6.0.0+] [[#InitializeApplicationInfo]] || |
| + | |- |
| + | | 141 || [6.0.0+] ListQualifiedUsers || |
| + | |- |
| + | | 150 || [6.0.0+] IsUserAccountSwitchLocked || |
| |} | | |} |
| + | |
| + | InitializeApplicationInfo* is used by the user-process during service init. |
| + | |
| + | == InitializeApplicationInfoV0 == |
| + | Takes a PID and an input u64 pid_placeholder, no output. |
| + | |
| + | == InitializeApplicationInfo == |
| + | Takes a PID and an input u64 pid_placeholder, no output. |
| | | |
| == IGuestLoginRequest == | | == IGuestLoginRequest == |
Line 456: |
Line 531: |
| |- | | |- |
| | 0 || GetSessionId | | | 0 || GetSessionId |
| + | |- |
| + | | [1.0.0-2.3.0] 11 || |
| |- | | |- |
| | 12 || GetAccountId | | | 12 || GetAccountId |
Line 465: |
Line 542: |
| | 15 || GetProfileImage | | | 15 || GetProfileImage |
| |- | | |- |
− | | 21 || LoadIdTokenCache | + | | 21 || [3.0.0+] LoadIdTokenCache |
| |} | | |} |
| | | |
Line 489: |
Line 566: |
| | 160 || [5.0.0+] StoreOpenContext || | | | 160 || [5.0.0+] StoreOpenContext || |
| |- | | |- |
| + | | 170 || [6.0.0+] LoadNetworkServiceLicenseKindAsync || No input, returns an [[#IAsyncNetworkServiceLicenseKindContext]]. |
| + | |} |
| + | |
| + | == IAsyncNetworkServiceLicenseKindContext == |
| + | This is "nn::account::detail::IAsyncNetworkServiceLicenseKindContext". |
| + | |
| + | This was added with [6.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || GetSystemEvent || |
| + | |- |
| + | | 1 || Cancel || |
| + | |- |
| + | | 2 || HasDone || |
| + | |- |
| + | | 3 || GetResult || |
| + | |- |
| + | | 100 || GetNetworkServiceLicenseKind || |
| |} | | |} |
| | | |
Line 510: |
Line 608: |
| | 5 || GetProfile || Returns an [[#IProfile]]. | | | 5 || GetProfile || Returns an [[#IProfile]]. |
| |- | | |- |
− | | 6 || GetProfileDigest || | + | | 6 || [3.0.0+] GetProfileDigest || |
| |- | | |- |
| | 50 || IsUserRegistrationRequestPermitted || | | | 50 || IsUserRegistrationRequestPermitted || |
Line 516: |
Line 614: |
| | 51 || TrySelectUserWithoutInteraction || | | | 51 || TrySelectUserWithoutInteraction || |
| |- | | |- |
− | | 60 || [5.0.0+] ListOpenContextStoredUsers || | + | | 60 || [5.0.0-5.1.0] ListOpenContextStoredUsers || |
| + | |- |
| + | | 99 || [6.0.0+] DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]]. |
| |- | | |- |
| | 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]]. | | | 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]]. |
Line 528: |
Line 628: |
| | 104 || GetProfileUpdateNotifier || Returns an [[#INotifier]]. | | | 104 || GetProfileUpdateNotifier || Returns an [[#INotifier]]. |
| |- | | |- |
− | | 105 || CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]]. | + | | 105 || [4.0.0+] CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 106 || [9.0.0+] GetProfileSyncNotifier || |
| |- | | |- |
| | 110 || StoreSaveDataThumbnail || | | | 110 || StoreSaveDataThumbnail || |
Line 537: |
Line 639: |
| |- | | |- |
| | 113 || [5.0.0+] GetSaveDataThumbnailExistence || | | | 113 || [5.0.0+] GetSaveDataThumbnailExistence || |
| + | |- |
| + | | 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]]. |
| + | |- |
| + | | 140 || [6.0.0+] ListQualifiedUsers || |
| |- | | |- |
| | 190 || GetUserLastOpenedApplication || | | | 190 || GetUserLastOpenedApplication || |
| |- | | |- |
− | | 191 || [5.0.0+] ActivateOpenContextHolder || | + | | 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) || |
| |- | | |- |
− | | 997 || DebugInvalidateTokenCacheForUser || | + | | 997 || [3.0.0+] DebugInvalidateTokenCacheForUser || |
| |- | | |- |
| | 998 || DebugSetUserStateClose || | | | 998 || DebugSetUserStateClose || |
| |- | | |- |
| | 999 || DebugSetUserStateOpen || | | | 999 || DebugSetUserStateOpen || |
| + | |} |
| + | |
| + | == IOAuthProcedureForUserRegistration == |
| + | This is "nn::account::nas::IOAuthProcedureForUserRegistration". |
| + | |
| + | This was added with [8.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || PrepareAsync || No input, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 1 || GetRequest || |
| + | |- |
| + | | 2 || ApplyResponse || |
| + | |- |
| + | | 3 || ApplyResponseAsync || Takes a type-0x9 input buffer, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 10 || Suspend || |
| + | |- |
| + | | 100 || GetAccountId || |
| + | |- |
| + | | 101 || GetLinkedNintendoAccountId || |
| + | |- |
| + | | 102 || GetNickname || |
| + | |- |
| + | | 103 || GetProfileImage || |
| + | |- |
| + | | 110 || RegisterUserAsync || No input, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 111 || GetUid || |
| |} | | |} |
| | | |
Line 562: |
Line 700: |
| | 2 || GetDeviceAccountId || | | | 2 || GetDeviceAccountId || |
| |- | | |- |
− | | 50 || RegisterNotificationTokenAsync || Returns an [[#IAsyncContext]]. | + | | [1.0.0-6.2.0] 50 || RegisterNotificationTokenAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | [1.0.0-6.2.0] 51 || UnregisterNotificationTokenAsync || Returns an [[#IAsyncContext]]. |
| + | |} |
| + | |
| + | = dauth:0 = |
| + | This is "nn::dauth::detail::IService". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || EnsureAuthenticationTokenCacheAsync ([5.0.0-5.1.0] GeneratePostData) |
| + | |- |
| + | | 1 || [6.0.0+] LoadAuthenticationTokenCache |
| + | |- |
| + | | 2 || [6.0.0+] |
| + | |- |
| + | | 10 || [6.0.0+] EnsureEdgeTokenCacheAsync |
| + | |- |
| + | | 11 || [6.0.0+] LoadEdgeTokenCache |
| + | |- |
| + | | 12 || [6.0.0+] |
| + | |} |
| + | |
| + | == IAsyncResult == |
| + | This is "nn::dauth::detail::IAsyncResult". |
| + | |
| + | This was added with [6.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| |- | | |- |
− | | 51 || UnregisterNotificationTokenAsync || Returns an [[#IAsyncContext]]. | + | | 0 || GetResult |
| + | |- |
| + | | 1 || Cancel |
| + | |- |
| + | | 2 || IsAvailable |
| + | |- |
| + | | 3 || GetSystemEvent |
| |} | | |} |
| | | |
Line 571: |
Line 747: |
| |- | | |- |
| ! Offset || Size || Description | | ! Offset || Size || Description |
| + | |- |
| + | | 0x0 || 0x4? || ? |
| + | |- |
| + | | 0x4 || 0x4? || Icon ID. 0 = Mii, the rest are character icon IDs. |
| |- | | |- |
| | 0x8 || 0x1? || Profile icon background color ID | | | 0x8 || 0x1? || Profile icon background color ID |
| |- | | |- |
− | | 0x10 || 0x10 || Some ID related to the Mii? | + | | 0x9 || 0x7 || ? |
| + | |- |
| + | | 0x10 || 0x10 || Some ID related to the Mii? All zeros when a character icon is used. |
| + | |- |
| + | | 0x20 || 0x60 || Usually zeros? |
| |} | | |} |
| | | |
Line 588: |
Line 772: |
| | 0x10 || 0x8 || POSIX UTC timestamp, for last account edit. | | | 0x10 || 0x8 || POSIX UTC timestamp, for last account edit. |
| |- | | |- |
− | | 0x18 || 0x20 || UTF-8 Username | + | | 0x18 || 0x20 || UTF-8 Nickname. Official sw uses strncpy to copy this into another struct (<code>nn::account::Nickname</code>), with a NUL-byte written after the copied data. |
| |- | | |- |
| |} | | |} |