diff --git a/config_templates/override_config.ini b/config_templates/override_config.ini index 8fd1d87fe..647357e70 100644 --- a/config_templates/override_config.ini +++ b/config_templates/override_config.ini @@ -1,5 +1,5 @@ [hbl_config] -; title_id=010000000000100D +; program_id=010000000000100D ; override_any_app=true ; path=atmosphere/hbl.nsp ; override_key=!R diff --git a/docs/changelog.md b/docs/changelog.md index de0f5c3f2..87e259076 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,4 +1,32 @@ # Changelog +## 0.10.1 ++ A bug was fixed that caused memory reallocation to the system pool to work improperly on firmware 5.0.0 and above. + + Atmosphere was always trying to deallocate memory away from the applet pool and towards the system pool. + + The intent of this is to facilitate running more custom sysmodules/atmosphere binaries. + + However, while memory was always successfully taken away from the applet pool, on 5.0.0+ granting it to the system pool did not work for technical reasons. + + If you are interested in the technical details, talk to SciresM. + + This has now been fixed by adding new kernel patches, and memory is correctly granted to the system pool as intended. ++ Atmosphere's library system has been overhauled: + + libstratosphere's repository has been rebranded, more generally, to "Atmosphere-libs". + + In addition to libstratosphere, a new general library for not-stratosphere-specific code has been added. + + This is currently named `libvapours`. + + In the future, kernel functionality will be available as `libmesosphere`. + + The build system for stratosphere system modules has been similarly overhauled. ++ A number of other bugs were fixed, including: + + A bug was fixed that could cause memory corruption when redirecting certain Romfs content. + + A bug was fixed that could cause an infinite loop when redirecting certain Romfs content. + + A bug was fixed that could cause certain NROs to fail to load. + + This caused the latest version of Super Smash Bros to display "An error has occurred" on launch. + + A bug was fixed that caused input/output array sizes for certain circumstances to be calculated incorrectly. + + This caused cheats to fail to function properly. + + C++ exception code is now more thoroughly removed from stratosphere executables. + + This saves a minor amount of memory. + + A number of minor logic inversions were fixed in libstratosphere. + + These did not affect any code currently used by released Atmosphere binaries. ++ *Please note**: Because this update is releasing so soon after 0.10.0, the removal of the temporary hid-mitm has been postponed to 0.10.2. + + Please ensure your homebrew is updated. ++ Random number generation now uses TinyMT instead of XorShift. ++ General system stability improvements to enhance the user's experience. ## 0.10.0 + Support was added for 9.1.0 + **Please note**: The temporary hid-mitm added in Atmosphere 0.9.0 will be removed in Atmosphere 0.10.1. @@ -26,7 +54,7 @@ + Atmosphere now uses the /atmosphere/contents directory, instead of /atmosphere/titles. + This goes along with a refactoring to remove all reference to "title id" from code, as Nintendo does not use the term. + To make this transition easier, a temporary functionality has been added that migrates folders to the new directory. - + When booting into 0.10.0, Atmosphere will rename /atmosphere/titles/ to /atmosphere/contents/. + + When booting into 0.10.0, Atmosphere will rename /atmosphere/titles/`` to /atmosphere/contents/``. + This functionality may or may not be removed in some future update. + This should solve any transition difficulties for the typical user. + Please make sure that any future mods you install extract to the correct directory. diff --git a/libraries/libvapours/include/vapours/ams/ams_api_version.h b/libraries/libvapours/include/vapours/ams/ams_api_version.h index e0bdb766c..340811e73 100644 --- a/libraries/libvapours/include/vapours/ams/ams_api_version.h +++ b/libraries/libvapours/include/vapours/ams/ams_api_version.h @@ -17,7 +17,7 @@ #define ATMOSPHERE_RELEASE_VERSION_MAJOR 0 #define ATMOSPHERE_RELEASE_VERSION_MINOR 10 -#define ATMOSPHERE_RELEASE_VERSION_MICRO 0 +#define ATMOSPHERE_RELEASE_VERSION_MICRO 1 #define ATMOSPHERE_RELEASE_VERSION ATMOSPHERE_RELEASE_VERSION_MAJOR, ATMOSPHERE_RELEASE_VERSION_MINOR, ATMOSPHERE_RELEASE_VERSION_MICRO diff --git a/stratosphere/ams_mitm/source/amsmitm_fs_utils.cpp b/stratosphere/ams_mitm/source/amsmitm_fs_utils.cpp index 7d0c8592e..4ddd23f86 100644 --- a/stratosphere/ams_mitm/source/amsmitm_fs_utils.cpp +++ b/stratosphere/ams_mitm/source/amsmitm_fs_utils.cpp @@ -154,7 +154,7 @@ namespace ams::mitm::fs { return fsFsOpenDirectory(fs, fixed_path, mode, out); } - /* TODO: Remove this in Atmosphere 0.10.1. */ + /* TODO: Remove this in Atmosphere 0.10.2. */ Result RenameProgramDirectoryForCompatibility(const char *dir_name) { R_TRY(EnsureSdInitialized()); char titles_fixed_path[ams::fs::EntryNameLengthMax + 1]; diff --git a/stratosphere/ams_mitm/source/amsmitm_fs_utils.hpp b/stratosphere/ams_mitm/source/amsmitm_fs_utils.hpp index 6adbcaac8..3828ee3a4 100644 --- a/stratosphere/ams_mitm/source/amsmitm_fs_utils.hpp +++ b/stratosphere/ams_mitm/source/amsmitm_fs_utils.hpp @@ -38,7 +38,7 @@ namespace ams::mitm::fs { Result OpenAtmosphereSdRomfsDirectory(FsDir *out, ncm::ProgramId program_id, const char *path, u32 mode); Result OpenAtmosphereRomfsDirectory(FsDir *out, ncm::ProgramId program_id, const char *path, u32 mode, FsFileSystem *fs); - /* TODO: Remove this in Atmosphere 0.10.1. */ + /* TODO: Remove this in Atmosphere 0.10.2. */ Result RenameProgramDirectoryForCompatibility(const char *dir_name); bool HasSdRomfsContent(ncm::ProgramId program_id); diff --git a/stratosphere/ams_mitm/source/amsmitm_initialization.cpp b/stratosphere/ams_mitm/source/amsmitm_initialization.cpp index 87ffee4bc..7b29ce9e2 100644 --- a/stratosphere/ams_mitm/source/amsmitm_initialization.cpp +++ b/stratosphere/ams_mitm/source/amsmitm_initialization.cpp @@ -211,7 +211,7 @@ namespace ams::mitm { CreateAutomaticBackups(); /* Rename program folders in the titles directory. */ - /* TODO: Remove this in Atmosphere 0.10.1. */ + /* TODO: Remove this in Atmosphere 0.10.2. */ RenameTitlesDirectoryProgramFoldersForCompatibility(); /* If we're emummc, persist a write-handle to prevent other processes from touching the image. */ diff --git a/stratosphere/ams_mitm/source/hid_mitm/hid_mitm_service.hpp b/stratosphere/ams_mitm/source/hid_mitm/hid_mitm_service.hpp index 3ca28a5b4..9eebac113 100644 --- a/stratosphere/ams_mitm/source/hid_mitm/hid_mitm_service.hpp +++ b/stratosphere/ams_mitm/source/hid_mitm/hid_mitm_service.hpp @@ -26,7 +26,7 @@ namespace ams::mitm::hid { }; public: static bool ShouldMitm(const sm::MitmProcessInfo &client_info) { - /* TODO: Remove in Atmosphere 0.10.1. */ + /* TODO: Remove in Atmosphere 0.10.2. */ /* We will mitm: * - hbl, to help homebrew not need to be recompiled. */