From d0d6731ce98dbe0dd88ddfe2c12f0fc4dc71c731 Mon Sep 17 00:00:00 2001 From: Michael Scire Date: Thu, 12 Sep 2019 01:18:58 -0700 Subject: [PATCH] ams: initial support for 9.0.0 --- include/stratosphere/firmware_version.hpp | 4 +++- include/stratosphere/ncm/ncm_types.hpp | 2 ++ source/cfg/cfg_sd_card.cpp | 3 ++- source/firmware_version.cpp | 8 ++++++++ 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/include/stratosphere/firmware_version.hpp b/include/stratosphere/firmware_version.hpp index 96fd8987..3fc5507c 100644 --- a/include/stratosphere/firmware_version.hpp +++ b/include/stratosphere/firmware_version.hpp @@ -27,7 +27,8 @@ enum FirmwareVersion : u32 { FirmwareVersion_700 = 6, FirmwareVersion_800 = 7, FirmwareVersion_810 = 8, - FirmwareVersion_Current = FirmwareVersion_810, + FirmwareVersion_900 = 9, + FirmwareVersion_Current = FirmwareVersion_900, FirmwareVersion_Max = 32, }; @@ -42,6 +43,7 @@ enum AtmosphereTargetFirmware : u32 { AtmosphereTargetFirmware_700 = 8, AtmosphereTargetFirmware_800 = 9, AtmosphereTargetFirmware_810 = 10, + AtmosphereTargetFirmware_900 = 11, }; FirmwareVersion GetRuntimeFirmwareVersion(); diff --git a/include/stratosphere/ncm/ncm_types.hpp b/include/stratosphere/ncm/ncm_types.hpp index 8edf4a83..722fc4ac 100644 --- a/include/stratosphere/ncm/ncm_types.hpp +++ b/include/stratosphere/ncm/ncm_types.hpp @@ -110,6 +110,7 @@ namespace sts::ncm { static const TitleId Olsc; static const TitleId Dt; static const TitleId Nd; + static const TitleId Ngct; static const TitleId SystemEnd; @@ -279,6 +280,7 @@ namespace sts::ncm { inline constexpr const TitleId TitleId::Olsc = { 0x010000000000003Eul }; inline constexpr const TitleId TitleId::Dt = { 0x010000000000003Ful }; inline constexpr const TitleId TitleId::Nd = { 0x0100000000000040ul }; + inline constexpr const TitleId TitleId::Ngct = { 0x0100000000000041ul }; inline constexpr const TitleId TitleId::SystemEnd = { 0x01000000000007FFul }; diff --git a/source/cfg/cfg_sd_card.cpp b/source/cfg/cfg_sd_card.cpp index 6b4e3db2..9543cf67 100644 --- a/source/cfg/cfg_sd_card.cpp +++ b/source/cfg/cfg_sd_card.cpp @@ -28,7 +28,7 @@ namespace sts::cfg { sm::ServiceName::Encode("pcv"), sm::ServiceName::Encode("gpio"), sm::ServiceName::Encode("pinmux"), - sm::ServiceName::Encode("psc:c") + sm::ServiceName::Encode("psc:m"), }; constexpr size_t NumRequiredServicesForSdCardAccess = util::size(RequiredServicesForSdCardAccess); @@ -46,6 +46,7 @@ namespace sts::cfg { return ResultFsSdCardNotPresent; } } + R_ASSERT(fsMountSdcard(&g_sd_card_filesystem)); g_sd_card_initialized = true; return ResultSuccess; diff --git a/source/firmware_version.cpp b/source/firmware_version.cpp index 77b3a562..4723872c 100644 --- a/source/firmware_version.cpp +++ b/source/firmware_version.cpp @@ -76,6 +76,9 @@ static void _CacheValues(void) case AtmosphereTargetFirmware_810: g_firmware_version = FirmwareVersion_810; break; + case AtmosphereTargetFirmware_900: + g_firmware_version = FirmwareVersion_900; + break; default: std::abort(); break; @@ -139,6 +142,11 @@ void SetFirmwareVersionForLibnx() { minor = 1; micro = 0; break; + case FirmwareVersion_900: + major = 9; + minor = 0; + micro = 0; + break; default: std::abort(); break;