Releases: Atmosphere-NX/Atmosphere
Atmosphère 1.7.1
1.7.1 is Atmosphère's seventy-ninth official release.
Please be sure to update fusee when upgrading to 1.7.1. fusee-primary no longer exists, and will not work any more.
Note: fusee.bin
was updated on 2024/06/11 at 10:30 AM PDT to fix a failure to apply nogc patches on 18.1.0. The updated fusee hash a sha256 hash prefix of 6c0445649c...
With thanks to the @switchbrew team, Atmosphère 1.7.1 is bundled with hbl 2.4.4, and hbmenu 3.6.0.
The following was changed since the last release:
- Support was added for 18.1.0.
- Atmosphère was updated to use GCC 14/newlib (latest devkitA64/devkitARM releases).
- Further changes were for 18.0.0:
loader
was updated to reflect the latest official behavior.
- General system stability improvements to enhance the user's experience.
And the following was changed in 1.7.0:
- Basic support was added for 18.0.0.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- There shouldn't be anything user visible resulting from this, but it will be addressed in a future atmosphère update, once I am not traveling so much.
exosphère
was updated to reflect the latest official secure monitor behavior.mesosphère
was updated to reflect the latest official kernel behavior.spl
was updated to reflect the latest official behavior.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
fusee
no longer supports applying IPS patches to KIPs.- The only KIPs that are ever present are a) atmosphère modules, b) custom system modules, or c) FS.
- The IPS subsystem was originally designed to make nogc patches work for FS, but these are now internal, and it appears the literal only kip patches that exist are for piracy.
- I could not find any kip patches posted anywhere made for any other purpose.
- It fundamentally does not make sense to slow down boot for every normal user for a feature that has no actual use-case, especially when
fusee
seeks to be a minimal bootloader.
- Minor improvements were made to atmosphere's gdbstub, including:
- Support was added for QStartNoAckMode.
- An issue was fixed that could cause a fatal error when creating too many breakpoints.
- A number of minor issues were fixed and improvements were made, including:
pt-BR
(PortugueseBr
) is now accepted as a valid language when overriding game locales.- A bug was fixed that could cause atmosphere to incorrectly serialize output object IDs over IPC when using domain objects.
- A bug was fixed in
pm
's resource limit boost logic that could potentially cause legitimate boosts to fail in certain circumstances. loader
/ro
will now throw a fatal error when using invalid IPS patches that go out of bounds, instead of corrupting memory.- Support was fixed for booting using a memory configuration of half of the true available memory (e.g. forcing a 4GB configuration on an 8GB board).
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.7, please see the official release notes.
Atmosphère 1.7.0
1.7.0 is Atmosphère's seventy-eighth official release.
Please be sure to update fusee when upgrading to 1.7.0. fusee-primary no longer exists, and will not work any more.
With thanks to the @switchbrew team, Atmosphère 1.7.0 is bundled with hbl 2.4.4, and hbmenu 3.6.0.
The following was changed since the last release:
- Basic support was added for 18.0.0.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- There shouldn't be anything user visible resulting from this, but it will be addressed in a future atmosphère update, once I am not traveling so much.
exosphère
was updated to reflect the latest official secure monitor behavior.mesosphère
was updated to reflect the latest official kernel behavior.spl
was updated to reflect the latest official behavior.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
fusee
no longer supports applying IPS patches to KIPs.- The only KIPs that are ever present are a) atmosphère modules, b) custom system modules, or c) FS.
- The IPS subsystem was originally designed to make nogc patches work for FS, but these are now internal, and it appears the literal only kip patches that exist are for piracy.
- I could not find any kip patches posted anywhere made for any other purpose.
- It fundamentally does not make sense to slow down boot for every normal user for a feature that has no actual use-case, especially when
fusee
seeks to be a minimal bootloader.
- Minor improvements were made to atmosphere's gdbstub, including:
- Support was added for QStartNoAckMode.
- An issue was fixed that could cause a fatal error when creating too many breakpoints.
- A number of minor issues were fixed and improvements were made, including:
pt-BR
(PortugueseBr
) is now accepted as a valid language when overriding game locales.- A bug was fixed that could cause atmosphere to incorrectly serialize output object IDs over IPC when using domain objects.
- A bug was fixed in
pm
's resource limit boost logic that could potentially cause legitimate boosts to fail in certain circumstances. loader
/ro
will now throw a fatal error when using invalid IPS patches that go out of bounds, instead of corrupting memory.- Support was fixed for booting using a memory configuration of half of the true available memory (e.g. forcing a 4GB configuration on an 8GB board).
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.7, please see the official release notes.
Atmosphère 1.6.2
1.6.2 is Atmosphère's seventy-seventh official release.
Please be sure to update fusee when upgrading to 1.6.2. fusee-primary no longer exists, and will not work any more.
With thanks to the @switchbrew team, Atmosphère 1.6.2 is bundled with hbl 2.4.4, and hbmenu 3.6.0.
The following was changed since the last release:
- Support was finished for 17.0.0.
erpt
was updated to support the latest official behavior.jpegdec
was updated to support the latest official behavior.pm
was updated to support the latest official behavior.
- General system stability improvements to enhance the user's experience.
And the following was changed in 1.6.1:
- An improved solution to the problem that would cause consoles which had previously re-built their SYSTEM partition to brick on update-to-17.0.0 was added.
- In particular, booting atmosphère will now automatically detect the problem and unbrick any consoles which have fallen into this state.
- Some improvements were made to
haze
, including:- Performance was greatly improved:
- Support was added for GetObjectPropList, which decreases the amount of requests made by ~8x.
- Haze now performs rendering on the GPU, freeing up the CPU to respond to requests in a more timely manner.
- An issue was fixed with how
haze
configuresbMaxPacketSize0
which improves support for USB3.
- Performance was greatly improved:
- General system stability improvements to enhance the user's experience.
And the following was changed in 1.6.0:
- Basic support was added for 17.0.0.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- There shouldn't be anything user visible resulting from this, but it will be addressed in a soon-to-come atmosphère update.
exosphère
was updated to reflect the latest official secure monitor behavior.mesosphère
was updated to reflect the latest official kernel behavior.ncm
was updated to reflect the latest official behavior.erpt
was partially updated to support the latest official behavior.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- Atmosphere's gdbstub now supports waiting to attach to a specific program id on launch (as opposed to any application).
- The monitor command for this is
monitor wait <hex program id>
, where program id can optionally have an0x
prefix.
- The monitor command for this is
- Support was added to
haze
for editing files in-place and performing 64-bit transfers (files larger than 4 GB). bpc.mitm
was enabled on Mariko units, and now triggers pmic-based shutdowns/reboots (thanks @CTCaer).- This should cause the console to no longer wake ~15 seconds after shutdown on Mariko.
- A number of minor issues were fixed and improvements were made, including:
- A workaround was added for a change in 17.0.0 that would cause consoles which had previously re-built their SYSTEM partition to brick on update-to-17.0.0.
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.6, please see the official release notes.
Atmosphère 1.6.1
1.6.1 is Atmosphère's seventy-sixth official release.
Please be sure to update fusee when upgrading to 1.6.1. fusee-primary no longer exists, and will not work any more.
Note: switch/haze.nro
was updated in the release zip on 2023/10/16 at 3:40 PM PDT to fix an issue where haze could fail to work on Windows. The updated zip has a build hash of "7f4450f93".
Please note: Atmosphère 1.6.1 is currently in pre-release, and issues may be found that need to be fixed before full release.
- If any bugs are reported while Atmosphère is in pre-release, they will be fixed and the build will be updated.
- 1.6.1 will transition to release after a short amount of time has passed without pressing bug reports.
With thanks to the @switchbrew team, Atmosphère 1.6.1 is bundled with hbl 2.4.3, and hbmenu 3.5.1.
The following was changed since the last release:
- An improved solution to the problem that would cause consoles which had previously re-built their SYSTEM partition to brick on update-to-17.0.0 was added.
- In particular, booting atmosphère will now automatically detect the problem and unbrick any consoles which have fallen into this state.
- Some improvements were made to
haze
, including:- Performance was greatly improved:
- Support was added for GetObjectPropList, which decreases the amount of requests made by ~8x.
- Haze now performs rendering on the GPU, freeing up the CPU to respond to requests in a more timely manner.
- An issue was fixed with how
haze
configuresbMaxPacketSize0
which improves support for USB3.
- Performance was greatly improved:
- General system stability improvements to enhance the user's experience.
And the following was changed in 1.6.0:
- Basic support was added for 17.0.0.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- There shouldn't be anything user visible resulting from this, but it will be addressed in a soon-to-come atmosphère update.
exosphère
was updated to reflect the latest official secure monitor behavior.mesosphère
was updated to reflect the latest official kernel behavior.ncm
was updated to reflect the latest official behavior.erpt
was partially updated to support the latest official behavior.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- Atmosphere's gdbstub now supports waiting to attach to a specific program id on launch (as opposed to any application).
- The monitor command for this is
monitor wait <hex program id>
, where program id can optionally have an0x
prefix.
- The monitor command for this is
- Support was added to
haze
for editing files in-place and performing 64-bit transfers (files larger than 4 GB). bpc.mitm
was enabled on Mariko units, and now triggers pmic-based shutdowns/reboots (thanks @CTCaer).- This should cause the console to no longer wake ~15 seconds after shutdown on Mariko.
- A number of minor issues were fixed and improvements were made, including:
- A workaround was added for a change in 17.0.0 that would cause consoles which had previously re-built their SYSTEM partition to brick on update-to-17.0.0.
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.6, please see the official release notes.
Atmosphère 1.6.0
1.6.0 is Atmosphère's seventy-fifth official release.
Please be sure to update fusee when upgrading to 1.6.0. fusee-primary no longer exists, and will not work any more.
Please note: Atmosphère 1.6.0 is currently in pre-release, and issues may be found that need to be fixed before full release.
- If any bugs are reported while Atmosphère is in pre-release, they will be fixed and the build will be updated.
- 1.6.0 will transition to release after a short amount of time has passed without pressing bug reports.
With thanks to the @switchbrew team, Atmosphère 1.6.0 is bundled with hbl 2.4.3, and hbmenu 3.5.1.
The following was changed since the last release:
- Basic support was added for 17.0.0.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- There shouldn't be anything user visible resulting from this, but it will be addressed in a soon-to-come atmosphère update.
exosphère
was updated to reflect the latest official secure monitor behavior.mesosphère
was updated to reflect the latest official kernel behavior.ncm
was updated to reflect the latest official behavior.erpt
was partially updated to support the latest official behavior.
- The console should boot and atmosphère should be fully functional. However, not all modules have been fully updated to reflect the latest changes.
- Atmosphere's gdbstub now supports waiting to attach to a specific program id on launch (as opposed to any application).
- The monitor command for this is
monitor wait <hex program id>
, where program id can optionally have an0x
prefix.
- The monitor command for this is
- Support was added to
haze
for editing files in-place and performing 64-bit transfers (files larger than 4 GB). bpc.mitm
was enabled on Mariko units, and now triggers pmic-based shutdowns/reboots (thanks @CTCaer).- This should cause the console to no longer wake ~15 seconds after shutdown on Mariko.
- A number of minor issues were fixed and improvements were made, including:
- A workaround was added for a change in 17.0.0 that would cause consoles which had previously re-built their SYSTEM partition to brick on update-to-17.0.0.
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.6, please see the official release notes.
Atmosphère 1.5.5
1.5.5 is Atmosphère's seventy-fourth official release.
Please be sure to update fusee when upgrading to 1.5.5. fusee-primary no longer exists, and will not work any more.
With thanks to the @switchbrew team, Atmosphère 1.5.5 is bundled with hbl 2.4.3, and hbmenu 3.5.1.
The following was changed since the last release:
- Support was added for 16.1.0.
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.5, please see the official release notes.
Atmosphère 1.5.4
1.5.4 is Atmosphère's seventy-third official release.
Please be sure to update fusee when upgrading to 1.5.4. fusee-primary no longer exists, and will not work any more.
With thanks to the @switchbrew team, Atmosphère 1.5.4 is bundled with hbl 2.4.3, and hbmenu 3.5.1.
The following was changed since the last release:
- Experimental new functionality was implemented to prevent crashing when building romfs for certain games with obscene file counts.
- This includes both Fire Emblem: Engage (~190000 files), and The Legend of Zelda: Tears of the Kingdom (~300000) files.
- The solution involved adding functionality to ams.mitm/pm to dynamically steal memory from the application (and system) pool as needed when the games have romfs mods.
- No memory is taken, and there is no cost to this functionality when playing without mods (or with overrides disabled).
- The Legend of Zelda: Tears of the Kingdom is currently the absolute worst case game, requiring ~48 MB of memory to build a romfs image to play with mods.
- Right now, the memory is sourced as follows: 32 MB (base ams.mitm heap), 10 MB (stolen from application pool), 8 MB (dynamically stolen from system pool).
- This is 50 MB, which allows a little overhead in the worst case (prevents crashing due to exhausting the heap for other allocations in ams.mitm).
- Zelda is remarkably sensitive to memory being stolen from the application pool, tolerating no more than 16 MB on 1.0.0 and 12 MB on 1.1.0. I have chosen to steal 10 MB, to be safe, for now.
- This may break on a future game update, but I will fix it if and when that happens. There is no perfect solution; the game simply requires too much memory to support mods flawlessly, and I am forced to compromise.
- As usual, if you encounter a game that exhausts ams.mitm's memory (crashing it) when loading layeredfs mods, please contact
SciresM#0524
.- "I am jinxing myself by saying this, but it's really hard to imagine any game being worse than The Legend of Zelda: Tears of the Kingdom, but if it happens again I will drop everything to fix it as usual".
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.5, please see the official release notes.
Atmosphère 1.5.3
1.5.3 is Atmosphère's seventy-second official release.
Please be sure to update fusee when upgrading to 1.5.3. fusee-primary no longer exists, and will not work any more.
With thanks to the @switchbrew team, Atmosphère 1.5.3 is bundled with hbl 2.4.3, and hbmenu 3.5.1.
The following was changed since the last release:
- Support was added for 16.0.3.
- Atmosphère was updated to use GCC 13/newlib 4.3.0 (latest devkitA64/devkitARM releases).
- Please note: This introduces a known issue, which is currently being worked on.
- As you may recall from the 1.4.1 changelog, Fire Emblem: Engage requires enormous amounts of memory to support using layeredfs mods with the game.
- Latest newlib slightly increases malloc overhead size, which makes the previous memory increase insufficient.
- A general-case solution to this is in the works, which should hopefully fix the problem in a way that doesn't jinx me for the future.
- Please note: This introduces a known issue, which is currently being worked on.
- A number of minor issues were fixed and improvements were made, including:
- An issue was fixed that caused system font replacement to not work on 16.0.0+.
- An minor accuracy issue was addressed in mesosphere's management of certain memory ranges; this issue would have had zero visible impact to the end-user.
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.5, please see the official release notes.
Atmosphère 1.5.2
1.5.2 is Atmosphère's seventy-first official release.
Please be sure to update fusee when upgrading to 1.5.2. fusee-primary no longer exists, and will not work any more.
Note: switch/haze.nro
was updated in the release zip on 2023/04/18 at 10:15 PM PDT to fix an issue where haze would create files on the device 12 bytes larger than they should be. The updated zip has "-fix1" in its name.
With thanks to the @switchbrew team, Atmosphère 1.5.2 is bundled with hbl 2.4.3, and hbmenu 3.5.1.
The following was changed since the last release:
- A homebrew application (
haze
) was added for performing USB file transfer (with thanks to @liamwhite for both design and implementation).haze
is included with atmosphère, and provides access to the SD card via the PTP/MTP protocol.- Please note: haze will show inside the homebrew menu under the name "USB File Transfer".
- Please note: Atmosphère cannot be updated at runtime, and trying to install an atmosphère update via haze will fail as usual.
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.5, please see the official release notes.
Atmosphère 1.5.1
1.5.1 is Atmosphère's seventieth official release.
Please be sure to update fusee when upgrading to 1.5.1. fusee-primary no longer exists, and will not work any more.
With thanks to the @switchbrew team, Atmosphère 1.5.1 is bundled with hbl 2.4.3, and hbmenu 3.5.1.
The following was changed since the last release:
fatal
was updated to reduce memory footprint.- Starting in 16.0.0, official
fatal
has no framebuffer or rendering logic, and instead calls other system service commands to draw the screen. - However, these commands aren't usable by atmosphère (too small rendering window, bad color support).
- To reduce the relative memory footprint differential between atmosphère and official code, the framebuffer (2 MB) is now dynamically allocated when needed.
- This will try to allocate from multiple pools (preferring System > System_NonSecure > Application).
- This technically requires that 2 MB be available in at least one of these pools for the fatal screen to render (otherwise, a reboot-to-black-and-white-fatal will occur), but this should be a non-issue in almost all cases.
- Starting in 16.0.0, official
- A feature was added to optionally mirror the bluetooth pairing database to the SD card (thanks @ndeadly).
- This allows device pairings to be automatically kept in-sync across sysmmc/all emummcs.
- This is opt-in, and can be controlled by setting
atmosphere!enable_external_bluetooth_db = u8!0x1
. - When enabled, the pairing database will be synchronized to
/atmosphere/bluetooth_devices.db
.
- General system stability improvements to enhance the user's experience.
And the following was changed in 1.5.0:
- Support was added for 16.0.0
mesosphère
was updated to reflect the latest official kernel behavior.ncm
was updated to reflect the latest official behavior.- Many FS apis were updated under the hood to reflect the latest official behavior.
- Please Note: 16.0.0 made breaking changes to a number of system APIs, including in FS/NCM/Shared Font commands that some homebrew programs may use.
- These programs may encounter strange errors, and may need to be recompiled with a libnx updated to support 16.0.0's changes to function properly.
- If you are an impacted developer, please contact
SciresM#0524
on discord for assistance.
- A number of minor issues were fixed and improvements were made, including:
- An issue was fixed that could cause GPIO outputs to be misconfigured under certain circumstances.
- General system stability improvements to enhance the user's experience.
For information on the featureset supported by 1.5, please see the official release notes.