18.0.0 firmware changes from Suyu (plus formatting fixes) (#8)

This commit rolls in changes required for 18.0.0 firmware from Suyus codebase plus some formatting fixes.

Co-authored-by: Exverge <exverge@exverge.xyz>
Reviewed-on: http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/darktux/torzu/pulls/8
Co-authored-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
Co-committed-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
This commit is contained in:
darktux 2024-04-10 11:19:34 +00:00 committed by Dark Tux
commit 69dd658a0b
7 changed files with 44 additions and 23 deletions

View file

@ -179,10 +179,10 @@ public:
{140, nullptr, "GetNetworkServiceLicenseCache"}, // 5.0.0+ {140, nullptr, "GetNetworkServiceLicenseCache"}, // 5.0.0+
{141, nullptr, "RefreshNetworkServiceLicenseCacheAsync"}, // 5.0.0+ {141, nullptr, "RefreshNetworkServiceLicenseCacheAsync"}, // 5.0.0+
{142, nullptr, "RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed"}, // 5.0.0+ {142, nullptr, "RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed"}, // 5.0.0+
{143, nullptr, "GetNetworkServiceLicenseCacheEx"}, {143, nullptr, "GetNetworkServiceLicenseCacheEx"}, // 15.0.0+
{150, nullptr, "CreateAuthorizationRequest"}, {150, nullptr, "CreateAuthorizationRequest"},
{160, nullptr, "RequiresUpdateNetworkServiceAccountIdTokenCache"}, {160, nullptr, "RequiresUpdateNetworkServiceAccountIdTokenCache"}, // 16.0.0+
{161, nullptr, "RequireReauthenticationOfNetworkServiceAccount"}, {161, nullptr, "RequireReauthenticationOfNetworkServiceAccount"}, // 16.0.0+
{170, nullptr, "CreateDeviceHistoryRequest"}, // 17.0.0+ {170, nullptr, "CreateDeviceHistoryRequest"}, // 17.0.0+
{180, nullptr, "GetRequestForNintendoAccountReauthentication"}, // 18.0.0+ {180, nullptr, "GetRequestForNintendoAccountReauthentication"}, // 18.0.0+
{200, nullptr, "IsRegistered"}, {200, nullptr, "IsRegistered"},
@ -323,8 +323,8 @@ public:
{1, &IProfileCommon::GetBase, "GetBase"}, {1, &IProfileCommon::GetBase, "GetBase"},
{10, &IProfileCommon::GetImageSize, "GetImageSize"}, {10, &IProfileCommon::GetImageSize, "GetImageSize"},
{11, &IProfileCommon::LoadImage, "LoadImage"}, {11, &IProfileCommon::LoadImage, "LoadImage"},
{20, nullptr, "GetLargeImageSize"}, // 18.0.0+ {20, &IProfileCommon::GetImageSize, "GetLargeImageSize"}, // 18.0.0+
{21, nullptr, "LoadLargeImage"}, // 18.0.0+ {21, &IProfileCommon::LoadImage, "LoadLargeImage"}, // 18.0.0+
{30, nullptr, "GetImageId"} // 18.0.0+ {30, nullptr, "GetImageId"} // 18.0.0+
}; };
@ -334,7 +334,7 @@ public:
static const FunctionInfo editor_functions[] = { static const FunctionInfo editor_functions[] = {
{100, &IProfileCommon::Store, "Store"}, {100, &IProfileCommon::Store, "Store"},
{101, &IProfileCommon::StoreWithImage, "StoreWithImage"}, {101, &IProfileCommon::StoreWithImage, "StoreWithImage"},
{110, nullptr, "StoreWithLargeImage"} // 18.0.0+ {110, &IProfileCommon::StoreWithImage, "StoreWithLargeImage"} // 18.0.0+
}; };
RegisterHandlers(editor_functions); RegisterHandlers(editor_functions);

View file

@ -14,6 +14,7 @@ IAudioDevice::IAudioDevice(Core::System& system_, u64 applet_resource_user_id, u
: ServiceFramework{system_, "IAudioDevice"}, service_context{system_, "IAudioDevice"}, : ServiceFramework{system_, "IAudioDevice"}, service_context{system_, "IAudioDevice"},
impl{std::make_unique<AudioDevice>(system_, applet_resource_user_id, revision)}, impl{std::make_unique<AudioDevice>(system_, applet_resource_user_id, revision)},
event{service_context.CreateEvent(fmt::format("IAudioDeviceEvent-{}", device_num))} { event{service_context.CreateEvent(fmt::format("IAudioDeviceEvent-{}", device_num))} {
// clang-format off
static const FunctionInfo functions[] = { static const FunctionInfo functions[] = {
{0, D<&IAudioDevice::ListAudioDeviceName>, "ListAudioDeviceName"}, {0, D<&IAudioDevice::ListAudioDeviceName>, "ListAudioDeviceName"},
{1, D<&IAudioDevice::SetAudioDeviceOutputVolume>, "SetAudioDeviceOutputVolume"}, {1, D<&IAudioDevice::SetAudioDeviceOutputVolume>, "SetAudioDeviceOutputVolume"},
@ -27,8 +28,8 @@ IAudioDevice::IAudioDevice(Core::System& system_, u64 applet_resource_user_id, u
{10, D<&IAudioDevice::GetActiveAudioDeviceNameAuto>, "GetActiveAudioDeviceNameAuto"}, {10, D<&IAudioDevice::GetActiveAudioDeviceNameAuto>, "GetActiveAudioDeviceNameAuto"},
{11, D<&IAudioDevice::QueryAudioDeviceInputEvent>, "QueryAudioDeviceInputEvent"}, {11, D<&IAudioDevice::QueryAudioDeviceInputEvent>, "QueryAudioDeviceInputEvent"},
{12, D<&IAudioDevice::QueryAudioDeviceOutputEvent>, "QueryAudioDeviceOutputEvent"}, {12, D<&IAudioDevice::QueryAudioDeviceOutputEvent>, "QueryAudioDeviceOutputEvent"},
{13, D<&IAudioDevice::GetActiveAudioDeviceName>, "GetActiveAudioOutputDeviceName"}, {13, D<&IAudioDevice::GetActiveAudioDeviceName>, "GetActiveAudioOutputDeviceName"}, // 13.0.0+
{14, D<&IAudioDevice::ListAudioOutputDeviceName>, "ListAudioOutputDeviceName"}, {14, D<&IAudioDevice::ListAudioOutputDeviceName>, "ListAudioOutputDeviceName"}, // 13.0.0+
{15, nullptr, "AcquireAudioInputDeviceNotification"}, // 17.0.0+ {15, nullptr, "AcquireAudioInputDeviceNotification"}, // 17.0.0+
{16, nullptr, "ReleaseAudioInputDeviceNotification"}, // 17.0.0+ {16, nullptr, "ReleaseAudioInputDeviceNotification"}, // 17.0.0+
{17, nullptr, "AcquireAudioOutputDeviceNotification"}, // 17.0.0+ {17, nullptr, "AcquireAudioOutputDeviceNotification"}, // 17.0.0+
@ -36,6 +37,7 @@ IAudioDevice::IAudioDevice(Core::System& system_, u64 applet_resource_user_id, u
{19, nullptr, "SetAudioDeviceOutputVolumeAutoTuneEnabled"}, // 18.0.0+ {19, nullptr, "SetAudioDeviceOutputVolumeAutoTuneEnabled"}, // 18.0.0+
{20, nullptr, "IsAudioDeviceOutputVolumeAutoTuneEnabled"} // 18.0.0+ {20, nullptr, "IsAudioDeviceOutputVolumeAutoTuneEnabled"} // 18.0.0+
}; };
// clang-format on
RegisterHandlers(functions); RegisterHandlers(functions);
event->Signal(); event->Signal();

View file

@ -53,7 +53,7 @@ FSP_SRV::FSP_SRV(Core::System& system_)
{1, D<&FSP_SRV::SetCurrentProcess>, "SetCurrentProcess"}, {1, D<&FSP_SRV::SetCurrentProcess>, "SetCurrentProcess"},
{2, nullptr, "OpenDataFileSystemByCurrentProcess"}, {2, nullptr, "OpenDataFileSystemByCurrentProcess"},
{7, D<&FSP_SRV::OpenFileSystemWithPatch>, "OpenFileSystemWithPatch"}, {7, D<&FSP_SRV::OpenFileSystemWithPatch>, "OpenFileSystemWithPatch"},
{8, nullptr, "OpenFileSystemWithId"}, {8, nullptr, "OpenFileSystemWithIdObsolete"}, // 16.0.0+, OpenFileSystemWithId 2.0.0-15.0.1
{9, nullptr, "OpenDataFileSystemByApplicationId"}, {9, nullptr, "OpenDataFileSystemByApplicationId"},
{11, nullptr, "OpenBisFileSystem"}, {11, nullptr, "OpenBisFileSystem"},
{12, nullptr, "OpenBisStorage"}, {12, nullptr, "OpenBisStorage"},
@ -169,6 +169,7 @@ FSP_SRV::FSP_SRV(Core::System& system_)
{1018, nullptr, "SetDebugOption"}, {1018, nullptr, "SetDebugOption"},
{1019, nullptr, "UnsetDebugOption"}, {1019, nullptr, "UnsetDebugOption"},
{1100, nullptr, "OverrideSaveDataTransferTokenSignVerificationKey"}, {1100, nullptr, "OverrideSaveDataTransferTokenSignVerificationKey"},
{1101, nullptr, "OverrideSaveDataTransferKeyForTest"}, // 18.0.0+
{1110, nullptr, "CorruptSaveDataFileSystemBySaveDataSpaceId2"}, {1110, nullptr, "CorruptSaveDataFileSystemBySaveDataSpaceId2"},
{1200, D<&FSP_SRV::OpenMultiCommitManager>, "OpenMultiCommitManager"}, {1200, D<&FSP_SRV::OpenMultiCommitManager>, "OpenMultiCommitManager"},
{1300, nullptr, "OpenBisWiper"}, {1300, nullptr, "OpenBisWiper"},

View file

@ -40,6 +40,13 @@ ISystemLocalCommunicationService::ISystemLocalCommunicationService(Core::System&
{401, nullptr, "FinalizeSystem"}, {401, nullptr, "FinalizeSystem"},
{402, nullptr, "SetOperationMode"}, {402, nullptr, "SetOperationMode"},
{403, C<&ISystemLocalCommunicationService::InitializeSystem2>, "InitializeSystem2"}, {403, C<&ISystemLocalCommunicationService::InitializeSystem2>, "InitializeSystem2"},
{500, nullptr, "EnableActionFrame"}, // 18.0.0+
{501, nullptr, "DisableActionFrame"}, // 18.0.0+
{502, nullptr, "SendActionFrame"}, // 18.0.0+
{503, nullptr, "RecvActionFrame"}, // 18.0.0+
{505, nullptr, "SetHomeChannel"}, // 18.0.0+
{600, nullptr, "SetTxPower"}, // 18.0.0+
{601, nullptr, "ResetTxPower"} // 18.0.0+
}; };
// clang-format on // clang-format on

View file

@ -53,7 +53,14 @@ IUserLocalCommunicationService::IUserLocalCommunicationService(Core::System& sys
{304, C<&IUserLocalCommunicationService::Disconnect>, "Disconnect"}, {304, C<&IUserLocalCommunicationService::Disconnect>, "Disconnect"},
{400, C<&IUserLocalCommunicationService::Initialize>, "Initialize"}, {400, C<&IUserLocalCommunicationService::Initialize>, "Initialize"},
{401, C<&IUserLocalCommunicationService::Finalize>, "Finalize"}, {401, C<&IUserLocalCommunicationService::Finalize>, "Finalize"},
{402, C<&IUserLocalCommunicationService::Initialize2>, "Initialize2"}, {402, C<&IUserLocalCommunicationService::Initialize2>, "Initialize2"}, // 7.0.0+
{500, nullptr, "EnableActionFrame"}, // 18.0.0+
{501, nullptr, "DisableActionFrame"}, // 18.0.0+
{502, nullptr, "SendActionFrame"}, // 18.0.0+
{503, nullptr, "RecvActionFrame"}, // 18.0.0+
{505, nullptr, "SetHomeChannel"}, // 18.0.0+
{600, nullptr, "SetTxPower"}, // 18.0.0+
{601, nullptr, "ResetTxPower"} // 18.0.0+
}; };
// clang-format on // clang-format on

View file

@ -38,7 +38,7 @@ public:
{24, nullptr, "DestroyTokenWithApplicationId"}, {24, nullptr, "DestroyTokenWithApplicationId"},
{25, nullptr, "QueryIsTokenValid"}, {25, nullptr, "QueryIsTokenValid"},
{26, nullptr, "ListenToMyApplicationId"}, {26, nullptr, "ListenToMyApplicationId"},
{27, nullptr, "DestroyTokenAll"}, {27, nullptr, "DestroyTokenAll"}, // 13.0.0+
{28, nullptr, "CreateTokenWithName"}, // 18.0.0+ {28, nullptr, "CreateTokenWithName"}, // 18.0.0+
{29, nullptr, "DestroyTokenWithName"}, // 18.0.0+ {29, nullptr, "DestroyTokenWithName"}, // 18.0.0+
{31, nullptr, "UploadTokenToBaaS"}, {31, nullptr, "UploadTokenToBaaS"},
@ -74,16 +74,16 @@ public:
{154, nullptr, "CreateTokenAsync"}, {154, nullptr, "CreateTokenAsync"},
{155, nullptr, "CreateTokenAsyncWithApplicationId"}, {155, nullptr, "CreateTokenAsyncWithApplicationId"},
{156, nullptr, "CreateTokenWithNameAsync"}, // 18.0.0+ {156, nullptr, "CreateTokenWithNameAsync"}, // 18.0.0+
{161, nullptr, "GetRequestChangeStateCancelEvent"}, {161, nullptr, "GetRequestChangeStateCancelEvent"}, // 10.0.0+
{162, nullptr, "RequestChangeStateForceTimedWithCancelEvent"}, {162, nullptr, "RequestChangeStateForceTimedWithCancelEvent"}, // 10.0.0+
{201, nullptr, "RequestChangeStateForceTimed"}, {201, nullptr, "RequestChangeStateForceTimed"}, // 3.0.0+
{202, nullptr, "RequestChangeStateForceAsync"}, {202, nullptr, "RequestChangeStateForceAsync"}, // 3.0.0+
{301, nullptr, "GetPassword"}, // 18.0.0+ {301, nullptr, "GetPassword"}, // 18.0.0+
{302, nullptr, "GetAllImmigration"}, // 18.0.0+ {302, nullptr, "GetAllImmigration"}, // 18.0.0+
{303, nullptr, "GetNotificationHistories"}, // 18.0.0+ {303, nullptr, "GetNotificationHistories"}, // 18.0.0+
{304, nullptr, "GetPersistentConnectionSummary"}, // 18.0.0+ {304, nullptr, "GetPersistentConnectionSummary"}, // 18.0.0+
{305, nullptr, "GetDigitalTwinSummary"}, // 18.0.0+ {305, nullptr, "GetDigitalTwinSummary"}, // 18.0.0+
{306, nullptr, "GetDigitalTwinValue"}, // 18.0.0+ {306, nullptr, "GetDigitalTwinValue"} // 18.0.0+
}; };
// clang-format on // clang-format on

View file

@ -507,7 +507,11 @@ public:
{6, nullptr, "FlushSessionCache"}, {6, nullptr, "FlushSessionCache"},
{7, nullptr, "SetDebugOption"}, {7, nullptr, "SetDebugOption"},
{8, nullptr, "GetDebugOption"}, {8, nullptr, "GetDebugOption"},
{8, nullptr, "ClearTls12FallbackFlag"}, {9, nullptr, "ClearTls12FallbackFlag"},
{100, nullptr, "CreateContextForSystem"},
{101, nullptr, "SetThreadCoreMask"},
{102, nullptr, "GetThreadCoreMask"},
{103, nullptr, "VerifySignature"}, // 18.0.0+
}; };
// clang-format on // clang-format on