From 4efa5d7dd0bfbdf89a6261af0aef3878ca784b05 Mon Sep 17 00:00:00 2001 From: Michael Scire Date: Wed, 19 Jan 2022 16:28:32 -0800 Subject: [PATCH] ams: first attempt at 13.2.1 support --- fusee/program/source/fusee_setup_horizon.cpp | 2 ++ libraries/libexosphere/include/exosphere/pkg2.hpp | 4 ++-- libraries/libexosphere/source/fuse/fuse_api.cpp | 1 + .../libstratosphere/include/stratosphere/hos/hos_types.hpp | 1 + libraries/libvapours/include/vapours/ams/ams_api_version.h | 4 ++-- .../libvapours/include/vapours/ams/ams_target_firmware.h | 4 +++- 6 files changed, 11 insertions(+), 5 deletions(-) diff --git a/fusee/program/source/fusee_setup_horizon.cpp b/fusee/program/source/fusee_setup_horizon.cpp index d360ed85a..70c530afb 100644 --- a/fusee/program/source/fusee_setup_horizon.cpp +++ b/fusee/program/source/fusee_setup_horizon.cpp @@ -249,6 +249,8 @@ namespace ams::nxboot { return ams::TargetFirmware_12_1_0; } else if (std::memcmp(package1 + 0x10, "20210805", 8) == 0) { return ams::TargetFirmware_13_0_0; + } else if (std::memcmp(package1 + 0x10, "20220105", 8) == 0) { + return ams::TargetFirmware_13_2_1; } break; default: diff --git a/libraries/libexosphere/include/exosphere/pkg2.hpp b/libraries/libexosphere/include/exosphere/pkg2.hpp index 186dde3a7..126112b20 100644 --- a/libraries/libexosphere/include/exosphere/pkg2.hpp +++ b/libraries/libexosphere/include/exosphere/pkg2.hpp @@ -23,8 +23,8 @@ namespace ams::pkg2 { constexpr inline int PayloadCount = 3; - constexpr inline int MinimumValidDataVersion = 0; /* We allow older package2 to load; this value is currently 0x13 in Nintendo's code. */ - constexpr inline int CurrentBootloaderVersion = 0xF; + constexpr inline int MinimumValidDataVersion = 0; /* We allow older package2 to load; this value is currently 0x14 in Nintendo's code. */ + constexpr inline int CurrentBootloaderVersion = 0x10; struct Package2Meta { using Magic = util::FourCC<'P','K','2','1'>; diff --git a/libraries/libexosphere/source/fuse/fuse_api.cpp b/libraries/libexosphere/source/fuse/fuse_api.cpp index e8bf09afa..d31e042ef 100644 --- a/libraries/libexosphere/source/fuse/fuse_api.cpp +++ b/libraries/libexosphere/source/fuse/fuse_api.cpp @@ -167,6 +167,7 @@ namespace ams::fuse { } constexpr const TargetFirmware FuseVersionIncrementFirmwares[] = { + TargetFirmware_13_2_1, TargetFirmware_12_0_2, TargetFirmware_11_0_0, TargetFirmware_10_0_0, diff --git a/libraries/libstratosphere/include/stratosphere/hos/hos_types.hpp b/libraries/libstratosphere/include/stratosphere/hos/hos_types.hpp index 7e855ef5f..f5d64ebbb 100644 --- a/libraries/libstratosphere/include/stratosphere/hos/hos_types.hpp +++ b/libraries/libstratosphere/include/stratosphere/hos/hos_types.hpp @@ -68,6 +68,7 @@ namespace ams::hos { Version_13_0_0 = ::ams::TargetFirmware_13_0_0, Version_13_1_0 = ::ams::TargetFirmware_13_1_0, Version_13_2_0 = ::ams::TargetFirmware_13_2_0, + Version_13_2_1 = ::ams::TargetFirmware_13_2_1, Version_Current = ::ams::TargetFirmware_Current, diff --git a/libraries/libvapours/include/vapours/ams/ams_api_version.h b/libraries/libvapours/include/vapours/ams/ams_api_version.h index 54bce5430..48f86b312 100644 --- a/libraries/libvapours/include/vapours/ams/ams_api_version.h +++ b/libraries/libvapours/include/vapours/ams/ams_api_version.h @@ -17,10 +17,10 @@ #define ATMOSPHERE_RELEASE_VERSION_MAJOR 1 #define ATMOSPHERE_RELEASE_VERSION_MINOR 2 -#define ATMOSPHERE_RELEASE_VERSION_MICRO 5 +#define ATMOSPHERE_RELEASE_VERSION_MICRO 6 #define ATMOSPHERE_RELEASE_VERSION ATMOSPHERE_RELEASE_VERSION_MAJOR, ATMOSPHERE_RELEASE_VERSION_MINOR, ATMOSPHERE_RELEASE_VERSION_MICRO #define ATMOSPHERE_SUPPORTED_HOS_VERSION_MAJOR 13 #define ATMOSPHERE_SUPPORTED_HOS_VERSION_MINOR 2 -#define ATMOSPHERE_SUPPORTED_HOS_VERSION_MICRO 0 +#define ATMOSPHERE_SUPPORTED_HOS_VERSION_MICRO 1 diff --git a/libraries/libvapours/include/vapours/ams/ams_target_firmware.h b/libraries/libvapours/include/vapours/ams/ams_target_firmware.h index 9f21286c3..97c468bd8 100644 --- a/libraries/libvapours/include/vapours/ams/ams_target_firmware.h +++ b/libraries/libvapours/include/vapours/ams/ams_target_firmware.h @@ -66,8 +66,9 @@ #define ATMOSPHERE_TARGET_FIRMWARE_13_0_0 ATMOSPHERE_TARGET_FIRMWARE(13, 0, 0) #define ATMOSPHERE_TARGET_FIRMWARE_13_1_0 ATMOSPHERE_TARGET_FIRMWARE(13, 1, 0) #define ATMOSPHERE_TARGET_FIRMWARE_13_2_0 ATMOSPHERE_TARGET_FIRMWARE(13, 2, 0) +#define ATMOSPHERE_TARGET_FIRMWARE_13_2_1 ATMOSPHERE_TARGET_FIRMWARE(13, 2, 1) -#define ATMOSPHERE_TARGET_FIRMWARE_CURRENT ATMOSPHERE_TARGET_FIRMWARE_13_2_0 +#define ATMOSPHERE_TARGET_FIRMWARE_CURRENT ATMOSPHERE_TARGET_FIRMWARE_13_2_1 #define ATMOSPHERE_TARGET_FIRMWARE_MIN ATMOSPHERE_TARGET_FIRMWARE(0, 0, 0) #define ATMOSPHERE_TARGET_FIRMWARE_MAX ATMOSPHERE_TARGET_FIRMWARE_CURRENT @@ -126,6 +127,7 @@ namespace ams { TargetFirmware_13_0_0 = ATMOSPHERE_TARGET_FIRMWARE_13_0_0, TargetFirmware_13_1_0 = ATMOSPHERE_TARGET_FIRMWARE_13_1_0, TargetFirmware_13_2_0 = ATMOSPHERE_TARGET_FIRMWARE_13_2_0, + TargetFirmware_13_2_1 = ATMOSPHERE_TARGET_FIRMWARE_13_2_1, TargetFirmware_Current = ATMOSPHERE_TARGET_FIRMWARE_CURRENT,