From ae1318a93be8bbb6044fc21195ca9bde33715d8b Mon Sep 17 00:00:00 2001 From: Jarrod Norwell Date: Sat, 30 Mar 2024 01:46:54 +0800 Subject: [PATCH 1/2] Added v17.0.0 stubs, fixed RPC and updated externals --- externals/SDL | 2 +- externals/Vulkan-Headers | 2 +- externals/Vulkan-Utility-Libraries | 2 +- externals/VulkanMemoryAllocator | 2 +- externals/cpp-httplib | 2 +- externals/cubeb | 2 +- externals/ffmpeg/ffmpeg | 2 +- externals/libadrenotools | 2 +- externals/libusb/libusb | 2 +- externals/opus | 2 +- externals/vcpkg | 2 +- externals/xbyak | 2 +- src/core/hle/api_version.h | 12 ++++++------ src/core/hle/service/acc/acc.cpp | 7 +++++++ src/core/hle/service/acc/acc_su.cpp | 3 +++ src/core/hle/service/apm/apm_interface.cpp | 1 + src/core/hle/service/audio/audio_controller.cpp | 4 ++-- src/core/hle/service/audio/audio_device.cpp | 4 ++++ src/core/hle/service/audio/audren_u.cpp | 8 ++++++-- src/core/hle/service/hid/hid_debug_server.cpp | 7 +++++-- src/core/hle/service/hid/hid_server.cpp | 4 ++++ src/core/hle/service/hid/hid_system_server.cpp | 3 +++ src/core/hle/service/nim/nim.cpp | 1 + src/core/hle/service/npns/npns.cpp | 8 ++++++++ .../hle/service/ns/application_manager_interface.cpp | 4 ++++ src/core/hle/service/sockets/bsd.cpp | 1 + src/hid_core/resources/npad/npad_types.h | 1 + src/sudachi/discord_impl.cpp | 2 +- 28 files changed, 69 insertions(+), 25 deletions(-) diff --git a/externals/SDL b/externals/SDL index d79f865..ad92c9e 160000 --- a/externals/SDL +++ b/externals/SDL @@ -1 +1 @@ -Subproject commit d79f8652510b8bd1f89c90be2ab65fc8940056eb +Subproject commit ad92c9e30093676a3fd84d1974b821857d8bae58 diff --git a/externals/Vulkan-Headers b/externals/Vulkan-Headers index f030d9d..cfebfc9 160000 --- a/externals/Vulkan-Headers +++ b/externals/Vulkan-Headers @@ -1 +1 @@ -Subproject commit f030d9dd8ca297b84b10330cee87f72acc3b0aab +Subproject commit cfebfc96b2b0bce93da7d12f2c14cc01793ae25c diff --git a/externals/Vulkan-Utility-Libraries b/externals/Vulkan-Utility-Libraries index ddf2f1a..d90f5c7 160000 --- a/externals/Vulkan-Utility-Libraries +++ b/externals/Vulkan-Utility-Libraries @@ -1 +1 @@ -Subproject commit ddf2f1a3b0631f759b82ec4a1f17a418d73f684d +Subproject commit d90f5c7eb1dcfe6ee21363d3c73200425eb6e8b8 diff --git a/externals/VulkanMemoryAllocator b/externals/VulkanMemoryAllocator index 2f382df..19b940e 160000 --- a/externals/VulkanMemoryAllocator +++ b/externals/VulkanMemoryAllocator @@ -1 +1 @@ -Subproject commit 2f382df218d7e8516dee3b3caccb819a62b571a2 +Subproject commit 19b940e864bd3a5afb3c79e3c6788869d01a19eb diff --git a/externals/cpp-httplib b/externals/cpp-httplib index 6791a83..548dfff 160000 --- a/externals/cpp-httplib +++ b/externals/cpp-httplib @@ -1 +1 @@ -Subproject commit 6791a8364d1644b44e0fb13fca472c398f78eb67 +Subproject commit 548dfff0aef25e36e971af96b49ce7fbb72d840e diff --git a/externals/cubeb b/externals/cubeb index 74d6b05..1572ea3 160000 --- a/externals/cubeb +++ b/externals/cubeb @@ -1 +1 @@ -Subproject commit 74d6b0546576d9ee13a078ed51f87a6eede62014 +Subproject commit 1572ea3e8d50514d3adaba1ad17272f57b5b331c diff --git a/externals/ffmpeg/ffmpeg b/externals/ffmpeg/ffmpeg index d65908c..02eb2fc 160000 --- a/externals/ffmpeg/ffmpeg +++ b/externals/ffmpeg/ffmpeg @@ -1 +1 @@ -Subproject commit d65908c3d416e331e075c3a5ffe7bc670112a018 +Subproject commit 02eb2fc577e926e9f927829f1d8c8cdb8f31cbbd diff --git a/externals/libadrenotools b/externals/libadrenotools index 5cd3f5c..deec5f7 160000 --- a/externals/libadrenotools +++ b/externals/libadrenotools @@ -1 +1 @@ -Subproject commit 5cd3f5c5ceea6d9e9d435ccdd922d9b99e55d10b +Subproject commit deec5f75ee1a8ccbe32c8780b1d17284fc87b0f1 diff --git a/externals/libusb/libusb b/externals/libusb/libusb index 6cf58ba..233a8de 160000 --- a/externals/libusb/libusb +++ b/externals/libusb/libusb @@ -1 +1 @@ -Subproject commit 6cf58bac95ff62cd3453cba2c898993b40e1da66 +Subproject commit 233a8de6f9bfb47d767f9d3272532abfce71d05f diff --git a/externals/opus b/externals/opus index c1f0f54..95dbea8 160000 --- a/externals/opus +++ b/externals/opus @@ -1 +1 @@ -Subproject commit c1f0f54018bf1f6f86710be1517313fb7b49556c +Subproject commit 95dbea83486b90256785aa3c75dd2827f591a34c diff --git a/externals/vcpkg b/externals/vcpkg index 90542a4..3c76dc5 160000 --- a/externals/vcpkg +++ b/externals/vcpkg @@ -1 +1 @@ -Subproject commit 90542a476c8ef3288039e2443a775e48db279173 +Subproject commit 3c76dc55f8bd2b7f4824bcd860055094bfbbb9ea diff --git a/externals/xbyak b/externals/xbyak index 9c0f5d3..80477f6 160000 --- a/externals/xbyak +++ b/externals/xbyak @@ -1 +1 @@ -Subproject commit 9c0f5d3ecb06d2c93c2b59becb9b3b763213e74e +Subproject commit 80477f635345e8f13efc512d84b01b94cad92cd9 diff --git a/src/core/hle/api_version.h b/src/core/hle/api_version.h index ff8b737..95c25de 100644 --- a/src/core/hle/api_version.h +++ b/src/core/hle/api_version.h @@ -11,9 +11,9 @@ namespace HLE::ApiVersion { // Horizon OS version constants. -constexpr u8 HOS_VERSION_MAJOR = 17; -constexpr u8 HOS_VERSION_MINOR = 0; -constexpr u8 HOS_VERSION_MICRO = 1; +constexpr u8 HOS_VERSION_MAJOR = 12; +constexpr u8 HOS_VERSION_MINOR = 1; +constexpr u8 HOS_VERSION_MICRO = 0; // NintendoSDK version constants. @@ -21,9 +21,9 @@ constexpr u8 SDK_REVISION_MAJOR = 1; constexpr u8 SDK_REVISION_MINOR = 0; constexpr char PLATFORM_STRING[] = "NX"; -constexpr char VERSION_HASH[] = "30dd7d0584cd38e3a1db26a5719566d21d77110e"; -constexpr char DISPLAY_VERSION[] = "17.0.1"; -constexpr char DISPLAY_TITLE[] = "NintendoSDK Firmware for NX 17.0.1-1.0"; +constexpr char VERSION_HASH[] = "76b10c2dab7d3aa73fc162f8dff1655e6a21caf4"; +constexpr char DISPLAY_VERSION[] = "12.1.0"; +constexpr char DISPLAY_TITLE[] = "NintendoSDK Firmware for NX 12.1.0-1.0"; // Atmosphere version constants. diff --git a/src/core/hle/service/acc/acc.cpp b/src/core/hle/service/acc/acc.cpp index a6ebbd1..2ebe508 100644 --- a/src/core/hle/service/acc/acc.cpp +++ b/src/core/hle/service/acc/acc.cpp @@ -102,6 +102,7 @@ public: {150, nullptr, "CreateAuthorizationRequest"}, {160, nullptr, "RequiresUpdateNetworkServiceAccountIdTokenCache"}, {161, nullptr, "RequireReauthenticationOfNetworkServiceAccount"}, + {170, nullptr, "CreateDeviceHistoryRequest"} // 17.0.0+ }; // clang-format on @@ -180,6 +181,7 @@ public: {150, nullptr, "CreateAuthorizationRequest"}, {160, nullptr, "RequiresUpdateNetworkServiceAccountIdTokenCache"}, {161, nullptr, "RequireReauthenticationOfNetworkServiceAccount"}, + {170, nullptr, "CreateDeviceHistoryRequest"}, // 17.0.0+ {200, nullptr, "IsRegistered"}, {201, nullptr, "RegisterAsync"}, {202, nullptr, "UnregisterAsync"}, @@ -686,6 +688,11 @@ public: {103, nullptr, "GetProfileImage"}, {110, nullptr, "RegisterUserAsync"}, {111, nullptr, "GetUid"}, + {200, nullptr, "ApplyResponseForUserCreationAsync"}, // 17.0.0+ + {205, nullptr, "SuspendAfterApplyResponse"}, // 17.0.0+ + {210, nullptr, "IsProfileAvailable"}, // 17.0.0+ + {220, nullptr, "RegisterUserAsyncWithoutProfile"}, // 17.0.0+ + {221, nullptr, "RegisterUserWithProfileAsync"} // 17.0.0+ }; // clang-format on diff --git a/src/core/hle/service/acc/acc_su.cpp b/src/core/hle/service/acc/acc_su.cpp index b713317..e1f9ab1 100644 --- a/src/core/hle/service/acc/acc_su.cpp +++ b/src/core/hle/service/acc/acc_su.cpp @@ -50,6 +50,9 @@ ACC_SU::ACC_SU(std::shared_ptr module_, std::shared_ptr {210, nullptr, "CreateFloatingRegistrationRequest"}, {211, nullptr, "CreateProcedureToRegisterUserWithNintendoAccount"}, {212, nullptr, "ResumeProcedureToRegisterUserWithNintendoAccount"}, + {213, nullptr, "CreateProcedureToCreateUserWithNintendoAccount"}, // 17.0.0+ + {214, nullptr, "ResumeProcedureToCreateUserWithNintendoAccount"}, // 17.0.0+ + {215, nullptr, "ResumeProcedureToCreateUserWithNintendoAccountAfterApplyResponse"}, // 17.0.0+ {230, nullptr, "AuthenticateServiceAsync"}, {250, nullptr, "GetBaasAccountAdministrator"}, {290, nullptr, "ProxyProcedureForGuestLoginWithNintendoAccount"}, diff --git a/src/core/hle/service/apm/apm_interface.cpp b/src/core/hle/service/apm/apm_interface.cpp index 963b13a..ea0ac92 100644 --- a/src/core/hle/service/apm/apm_interface.cpp +++ b/src/core/hle/service/apm/apm_interface.cpp @@ -109,6 +109,7 @@ APM_Sys::APM_Sys(Core::System& system_, Controller& controller_) {5, nullptr, "LoadAndApplySettings"}, {6, &APM_Sys::SetCpuBoostMode, "SetCpuBoostMode"}, {7, &APM_Sys::GetCurrentPerformanceConfiguration, "GetCurrentPerformanceConfiguration"}, + {8, nullptr, "GetCurrentPerformanceMode"} // 17.0.0+ }; // clang-format on diff --git a/src/core/hle/service/audio/audio_controller.cpp b/src/core/hle/service/audio/audio_controller.cpp index 2e8ab35..9c2abbc 100644 --- a/src/core/hle/service/audio/audio_controller.cpp +++ b/src/core/hle/service/audio/audio_controller.cpp @@ -33,8 +33,8 @@ IAudioController::IAudioController(Core::System& system_) {16, nullptr, "SetInputTargetForceEnabled"}, {17, D<&IAudioController::SetHeadphoneOutputLevelMode>, "SetHeadphoneOutputLevelMode"}, {18, D<&IAudioController::GetHeadphoneOutputLevelMode>, "GetHeadphoneOutputLevelMode"}, - {19, nullptr, "AcquireAudioVolumeUpdateEventForPlayReport"}, - {20, nullptr, "AcquireAudioOutputDeviceUpdateEventForPlayReport"}, + {19, nullptr, "SetForceMonauralOutputModeEnabled"}, // (AcquireAudioVolumeUpdateEventForPlayReport 3.0.0-13.2.1) 17.0.0+ + {20, nullptr, "IsForceMonauralOutputModeEnabled"}, // (AcquireAudioOutputDeviceUpdateEventForPlayReport 3.0.0-13.2.1) 17.0.0+ {21, nullptr, "GetAudioOutputTargetForPlayReport"}, {22, D<&IAudioController::NotifyHeadphoneVolumeWarningDisplayedEvent>, "NotifyHeadphoneVolumeWarningDisplayedEvent"}, {23, nullptr, "SetSystemOutputMasterVolume"}, diff --git a/src/core/hle/service/audio/audio_device.cpp b/src/core/hle/service/audio/audio_device.cpp index 36864b3..0c61472 100644 --- a/src/core/hle/service/audio/audio_device.cpp +++ b/src/core/hle/service/audio/audio_device.cpp @@ -29,6 +29,10 @@ IAudioDevice::IAudioDevice(Core::System& system_, u64 applet_resource_user_id, u {12, D<&IAudioDevice::QueryAudioDeviceOutputEvent>, "QueryAudioDeviceOutputEvent"}, {13, D<&IAudioDevice::GetActiveAudioDeviceName>, "GetActiveAudioOutputDeviceName"}, {14, D<&IAudioDevice::ListAudioOutputDeviceName>, "ListAudioOutputDeviceName"}, + {15, nullptr, "AcquireAudioInputDeviceNotification"}, // 17.0.0+ + {16, nullptr, "ReleaseAudioInputDeviceNotification"}, // 17.0.0+ + {17, nullptr, "AcquireAudioOutputDeviceNotification"}, // 17.0.0+ + {18, nullptr, "ReleaseAudioOutputDeviceNotification"} // 17.0.0+ }; RegisterHandlers(functions); diff --git a/src/core/hle/service/audio/audren_u.cpp b/src/core/hle/service/audio/audren_u.cpp index 00253d4..e1d4545 100644 --- a/src/core/hle/service/audio/audren_u.cpp +++ b/src/core/hle/service/audio/audren_u.cpp @@ -266,6 +266,10 @@ public: {12, &IAudioDevice::QueryAudioDeviceOutputEvent, "QueryAudioDeviceOutputEvent"}, {13, &IAudioDevice::GetActiveAudioDeviceName, "GetActiveAudioOutputDeviceName"}, {14, &IAudioDevice::ListAudioOutputDeviceName, "ListAudioOutputDeviceName"}, + {15, nullptr, "AcquireAudioInputDeviceNotification"}, // 17.0.0+ + {16, nullptr, "ReleaseAudioInputDeviceNotification"}, // 17.0.0+ + {17, nullptr, "AcquireAudioOutputDeviceNotification"}, // 17.0.0+ + {18, nullptr, "ReleaseAudioOutputDeviceNotification"} // 17.0.0+ }; RegisterHandlers(functions); @@ -424,8 +428,8 @@ private: }; AudRenU::AudRenU(Core::System& system_) - : ServiceFramework{system_, "audren:u"}, - service_context{system_, "audren:u"}, impl{std::make_unique(system_)} { + : ServiceFramework{system_, "audren:u"}, service_context{system_, "audren:u"}, + impl{std::make_unique(system_)} { // clang-format off static const FunctionInfo functions[] = { {0, &AudRenU::OpenAudioRenderer, "OpenAudioRenderer"}, diff --git a/src/core/hle/service/hid/hid_debug_server.cpp b/src/core/hle/service/hid/hid_debug_server.cpp index f01bab8..c998122 100644 --- a/src/core/hle/service/hid/hid_debug_server.cpp +++ b/src/core/hle/service/hid/hid_debug_server.cpp @@ -17,8 +17,8 @@ namespace Service::HID { IHidDebugServer::IHidDebugServer(Core::System& system_, std::shared_ptr resource, std::shared_ptr settings) - : ServiceFramework{system_, "hid:dbg"}, resource_manager{resource}, firmware_settings{ - settings} { + : ServiceFramework{system_, "hid:dbg"}, resource_manager{resource}, + firmware_settings{settings} { // clang-format off static const FunctionInfo functions[] = { {0, nullptr, "DeactivateDebugPad"}, @@ -88,6 +88,7 @@ IHidDebugServer::IHidDebugServer(Core::System& system_, std::shared_ptr r {210, C<&IHidServer::EndPermitVibrationSession>, "EndPermitVibrationSession"}, {211, C<&IHidServer::IsVibrationDeviceMounted>, "IsVibrationDeviceMounted"}, {212, C<&IHidServer::SendVibrationValueInBool>, "SendVibrationValueInBool"}, + {213, nullptr, "SendVibrationValueInMode"}, // 17.0.0+ + {214, nullptr, "SendVibrationValuesInMode"}, // 17.0.0+ {300, C<&IHidServer::ActivateConsoleSixAxisSensor>, "ActivateConsoleSixAxisSensor"}, {301, C<&IHidServer::StartConsoleSixAxisSensor>, "StartConsoleSixAxisSensor"}, {302, C<&IHidServer::StopConsoleSixAxisSensor>, "StopConsoleSixAxisSensor"}, @@ -139,6 +141,8 @@ IHidServer::IHidServer(Core::System& system_, std::shared_ptr r {308, nullptr, "SetSevenSixAxisSensorFusionStrength"}, {309, nullptr, "GetSevenSixAxisSensorFusionStrength"}, {310, C<&IHidServer::ResetSevenSixAxisSensorTimestamp>, "ResetSevenSixAxisSensorTimestamp"}, + {311, nullptr, "ForceActivateConsoleSixAxisSensor"}, // 17.0.0+ + {312, nullptr, "ForceDeactivateConsoleSixAxisSensor"}, // 17.0.0+ {400, C<&IHidServer::IsUsbFullKeyControllerEnabled>, "IsUsbFullKeyControllerEnabled"}, {401, nullptr, "EnableUsbFullKeyController"}, {402, nullptr, "IsUsbFullKeyControllerConnected"}, diff --git a/src/core/hle/service/hid/hid_system_server.cpp b/src/core/hle/service/hid/hid_system_server.cpp index 24e4bdf..75d1a3a 100644 --- a/src/core/hle/service/hid/hid_system_server.cpp +++ b/src/core/hle/service/hid/hid_system_server.cpp @@ -221,6 +221,9 @@ IHidSystemServer::IHidSystemServer(Core::System& system_, std::shared_ptr Date: Sat, 30 Mar 2024 01:47:24 +0800 Subject: [PATCH 2/2] Updated cubeb and tzdb --- externals/cubeb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/externals/cubeb b/externals/cubeb index 1572ea3..7d6c2fd 160000 --- a/externals/cubeb +++ b/externals/cubeb @@ -1 +1 @@ -Subproject commit 1572ea3e8d50514d3adaba1ad17272f57b5b331c +Subproject commit 7d6c2fdb7981d0dfe8b68748ed1b1c8b1c67aa9e