Atmosphère 0.7.0 Switch custom firmware out now

12zv1i9.png


Atmosphère, Team ReSwitched's custom firmware for the Nintendo Switch has reached a milestone 0.7.0 release. Tagged as a pre-release, it's the first public official release of Atmosphère, which has been teased for months by SciresM. The wait is now over, and you can enjoy an early version of it by heading over to GitHub to download the pack. Full features are as described by the team below.

0.7.0 is Atmosphère's first official release.

It supports the following featureset:
  • Fusée, a custom bootloader.
    • Supports loading/customizing of arbitrary KIPs from the SD card.
    • Supports compile-time defined kernel patches on a per-firmware basis.
    • All patches at paths like /atmosphere/kip_patches/<user-defined patch name>/<SHA256 of KIP>.ips will be applied to the relevant KIPs, allowing for easy distribution of patches supporting multiple versions.
      • Both the IPS and IPS32 formats are supported.
    • All patches at paths like /atmosphere/kernel_patches/<user-defined patch name>/<SHA256 of Kernel>.ips will be applied to the kernel, allowing for easy distribution of patches supporting multiple versions.
      • Both the IPS and IPS32 formats are supported.
    • Configurable by editing BCT.ini on the SD card.
    • Atmosphère should also be launchable by the alternative hekate bootloader, for those who prefer it.
  • Exosphère, a fully-featured custom secure monitor.
    • Exosphere is a re-implementation of Nintendo's TrustZone firmware, fully replicating all of its features.
    • In addition, it has been extended to provide information on current Atmosphere API version, for homebrew wishing to make use of it.
  • Stratosphère, a set of custom system modules. This includes:
    • A loader system module.
      • Reimplementation of Nintendo's loader, fully replicating all original functionality.
      • Configurable by editing /atmosphere/loader.ini
      • First class support for the Homebrew Loader.
        • An exefs NSP (default "/atmosphere/hbl.nsp") will be used in place of the victim title's exefs.
        • By default, HBL will replace the album applet, but any application should also be supported.
      • Extended to support arbitrary redirection of executable content to the SD card.
        • Files will be preferentially loaded from /atmosphere/titles/<titleid>/exefs/, if present.
        • Files present in the original exefs a user wants to mark as not present may be "stubbed" by creating a .stub file on the SD.
        • If present, a PFS0 at /atmosphere/titles/<titleid>/exefs.nsp will fully replace the original exefs on 2.0.0+
        • Redirection will be optionally toggleable by holding down certain buttons.
      • Full support for patching NSO content is implemented.
        • All patches at paths like /atmosphere/exefs_patches/<user-defined patch name>/<Hex Build-ID for NSO to patch>.ips will be applied, allowing for easy distribution of patches supporting multiple firmare versions and/or titles.
        • Both the IPS and IPS32 formats are supported.
      • Extended to support launching content from loose executable files on the SD card, without requiring any official installation.
        • This is done by specifying FsStorageId_None on launch.
    • A service manager system module.
      • Reimplementation of Nintendo's service manager, fully replicating all original functionality.
      • Compile-time support for reintroduction of "smhax", allowing clients to optionally skip service access verification by skipping initialization.
      • Extended to allow homebrew to acquire more handles to privileged services than Nintendo natively allows.
      • Extended to add a new API for installing Man-In-The-Middle listeners for arbitrary services.
        • API can additionally be used to safely detect whether a service has been registered in a non-blocking way with no side-effects.
        • Full API documentation to come.
    • A process manager system module.
      • Reimplementation of Nintendo's process manager, fully replicating all original functionality.
      • Extended to allow homebrew to acquire handles to arbitrary processes, and thus read/modify system memory without blocking execution.
      • Extended to allow homebrew to retrieve information about system resource limits.
      • Extended by embedding a full, extended implementation of Nintendo's boot2 system module.
        • Title launch order has been optimized in order to grant access to the SD card faster.
        • The error-collection system module is intentionally not launched, preventing many system telemetry error reports from being generated at all.
        • Users may place their own custom sysmodules on the SD card and flag them for automatic boot2 launch by creating a /atmosphere/titles/<title ID>/boot2.flag file on their SD card.
    • A custom fs.mitm system module.
      • Uses Atmosphère's MitM API in order to provide an easy means for users to modify game content.
      • Intercepts all FS commands sent by games, with special handling for commands used to mount RomFS/DLC content to enable easy creation and distribution of game/DLC mods.
        • fs.mitm will parse the base RomFS image for a game, a RomFS image located at /atmosphere/titles/<title ID>/romfs.bin, and all loose files in /atmosphere/titles/<title ID>/romfs/, and merge them together into a single RomFS image.
          • When merging, loose files are preferred to content in the SD card romfs.bin image, and files from the SD card image are preferred to those in the base image.
      • Can additionally be used to intercept commands sent by arbitrary system titles (excepting those launched before SD card is active), by creating a /atmosphere/titles/<title ID>/fsmitm.flag file on the SD card.
      • Can be forcibly disabled for any title, by creating a /atmosphere/titles/<title ID>/fsmitm_disable.flag file on the SD card.
      • Redirection is optionally toggleable by holding down certain buttons (by default, holding R disables redirection).
    • A custom crash report system module.
      • Serves as a drop-in replacement for Nintendo's own creport system module.
      • Generates detailed, human-readable reports on system crashes, saving to /atmosphere/crash_reports/<timestamp>_<title ID>.log.
      • Because reports are not sent to the erpt sysmodule, this disables all crash report related telemetry.
  • General system stability improvements to enhance the user's experience.

:download: GitHub: Atmosphere 0.7.0
 

Zumoly

GBATemp Analyst
Member
Joined
Apr 27, 2018
Messages
1,817
Trophies
0
Location
Yorosso
XP
3,063
Country
Mali
I'm sorry if this is a noobish question, but I'm curious - what exactly is the point of Atmosphere?
I mean, we already have:
- game loading
- updates / DLC loading
- homebrew
- emulators
- USB HDD support
- themes
- cheats

What else is there that we need????

Up until now we did not have full control of the system. Now things can be taken a little further and cool features (like usb over pc ala vitashell) can be achieved.
 

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,106
Trophies
2
XP
32,408
Country
Mexico
  • Like
Reactions: DarthDub

Ev1l0rd

(⌐◥▶◀◤) girl - noirscape
Member
Joined
Oct 26, 2015
Messages
2,004
Trophies
1
Location
Site 19
Website
catgirlsin.space
XP
3,441
Country
Netherlands
Ultra LOL
They used Tetris, Pong and Sudoku as examples for homebrew games?
What the actual FUCK?!
We have every Quake and Doom from the very first one up to Quake 3 and Doom 3 running on this shit, at least try to make it more attractive for the masses for fuck's sake xD
It's a pretty old list for the most part, I'm open to new suggestions for that list, it admittedly is very unappealing.
 
  • Like
Reactions: ShadowOne333

Zumoly

GBATemp Analyst
Member
Joined
Apr 27, 2018
Messages
1,817
Trophies
0
Location
Yorosso
XP
3,063
Country
Mali
So that means no NSPs at all with it?
I mean, it's not only games that are in NSP, a lot of homebrew apps are going this way now, and given how they require sigpatches to run, guess that won't be an option in Atmosphere at all then.

Or is there a workaround to have an Atmosphere with sigpatches?

I think Atmosphere devs provided the barebones to a true CFW. I'm sure down the line we'll see this feature pop up (probably as a kip?):P
 
  • Like
Reactions: ShadowOne333

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,106
Trophies
2
XP
32,408
Country
Mexico
It's a pretty old list for the most part, I'm open to new suggestions for that list, it admittedly is very unappealing.
Well I gotta give credit where it's due, having RetroArch there sure is one way to appeal to it.
As for homebrew games, man are there a LOT.
For one, check all of fgsfds ports.
He has everything from Quake 1, Quake 2, Quake 3, Doom 3 and he's even working on a port of the GZDoom engine, which opens up the possibilities for playing anything like Brutal Doom and other cool mods right on the Switch.
https://github.com/fgsfdsfgs?tab=repositories

As for other games, there's Duke Nukem 3D ported, KgDoom, Chocolate Doom, Wolfenstein 3D through Wolf4SDL, Descent 1 & 2, and perhaps many, many more I'm not even aware of at the moment.
But by far the most impressive ports so far are those of @fgsfds, no doubt. Full on OpenGL HW acceleration use, and it shows in all of the Quake and Doom 3 ports.

PS: Btw, if you were the one that made the guide, no offence or anything, I know the listed games that might appeal are not top priority, but thought they could surely add to the attractiveness of the CFW, and homebrew as a whole.
 
Last edited by ShadowOne333,
  • Like
Reactions: Ev1l0rd

Zumoly

GBATemp Analyst
Member
Joined
Apr 27, 2018
Messages
1,817
Trophies
0
Location
Yorosso
XP
3,063
Country
Mali
That's just it, RetroArch for example, absolutely needs to be in NSP format for the complex cores like N64, PSX, otherwise, they won't run well at all, ever. Preventing NSP app loading is a total dick move IMO.

No NSP app support, no go.

I don't think the devs said they wouldn't support homebrew access ti the extra ram no? Heck they could even come up with a custom hb launcher which grants this access (looking at reimplemented task manager here).
 

Ev1l0rd

(⌐◥▶◀◤) girl - noirscape
Member
Joined
Oct 26, 2015
Messages
2,004
Trophies
1
Location
Site 19
Website
catgirlsin.space
XP
3,441
Country
Netherlands
Well I gotta give credit where it's due, having RetroArch there sure is one way to appeal to it.
As for homebrew games, man are there a LOT.
For one, check all of fgsfds ports.
He has everything from Quake 1, Quake 2, Quake 3, Doom 3 and he's even working on a port of the GZDoom engine, which opens up the possibilities for playing anything like Brutal Doom and other cool mods right on the Switch.
https://github.com/fgsfdsfgs?tab=repositories

As for other games, there's Duke Nukem 3D ported, KgDoom, Chocolate Doom, Wolfenstein 3D through Wolf4SDL, Descent 1 & 2, and perhaps many, many more I'm not even aware of at the moment.
But by far the most impressive ports so far are those of @fgsfds, no doubt. Full on OpenGL HW acceleration use, and it shows in all of the Quake and Doom 3 ports.

PS: Btw, if you were the one that made the guide, no offence or anything, I know the listed games that might appeal are not top priority, but thought they could surely add to the attractiveness of the CFW, and homebrew as a whole.
Yeah, I wrote it. That said, the guide is technically a fork of a much older one and that list was kinda there as a base, with me only having added RetroArch and SudokuNX to it, so zero offense taken at all lol.

Added Chocolate Doom, Doom 3, Quake, Wolfenstein 3D and Duke Nukem 3D to the list of games, thanks for the suggestions.
 
Last edited by Ev1l0rd,
  • Like
Reactions: ShadowOne333

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,106
Trophies
2
XP
32,408
Country
Mexico
Yeah, I wrote it. That said, the guide is technically a fork of a much older one and that list was kinda there as a base, with me only having added RetroArch and SudokuNX to it, so zero offense taken at all lol.

Added Chocolate Doom, Doom 3, Quake, Wolfenstein 3D and Duke Nukem 3D to the list of games, thanks for the suggestions.
Welcome :)
I tried to list as most as I could out of memory, there might be others but I'm not aware of those.
 
  • Like
Reactions: Ev1l0rd

the_randomizer

The Temp's official fox whisperer
Member
Joined
Apr 29, 2011
Messages
31,284
Trophies
2
Age
38
Location
Dr. Wahwee's castle
XP
18,967
Country
United States
I don't think the devs said they wouldn't support homebrew access ti the extra ram no? Heck they could even come up with a custom hb launcher which grants this access (looking at reimplemented task manager here).

Then RetroArch and N64 would be useless on here, because it HAS to have access to more RAM, otherwise, it will run like hot garbage in the future. No offense to them, but that's a bullshit decision. Why would anyone use this if it's this limiting?


No mention of NSP app installs (no extra RAM access, RAM-dependent apps will run worse), turnoff IMO.
 
Last edited by the_randomizer,

Rahkeesh

Well-Known Member
Member
Joined
Apr 3, 2018
Messages
2,178
Trophies
1
Age
42
XP
3,240
Country
United States
NSP isn't forever the only way to launch an app that has full memory is I think the point. The current release may do diddly squat, but being able to arbitrarily run any executable means the tools are there to achieve this in the future.
 

hippy dave

BBMB
Member
Joined
Apr 30, 2012
Messages
9,769
Trophies
2
XP
28,011
Country
United Kingdom
Time to stop whining about nsp app installs. It just needs one patch to be built for your particular firmware version and thrown in the right place in the atmosphere folder. The glorious Raugo just built it for 5.1.0 with exfat support (patches are different for the same firmware version with and without exfat support activated), and shared it here in the Atmosphere thread. People will build other versions for every other firmware in the next day or two (don't pester Raugo). It's tested working on my 5.1.0w/exfat, I can run the devmenu nsp and homebrew menu nsp that I previously had installed with sx os, that wouldn't run on atmosphere until I installed this patch.

edit from the future: go here instead for all your needed patches in one place, for all firmware versions.
 
Last edited by hippy dave,

OrGoN3

Well-Known Member
Member
Joined
Apr 23, 2007
Messages
3,239
Trophies
1
XP
3,222
Country
United States
  • Like
Reactions: Zumoly

Ev1l0rd

(⌐◥▶◀◤) girl - noirscape
Member
Joined
Oct 26, 2015
Messages
2,004
Trophies
1
Location
Site 19
Website
catgirlsin.space
XP
3,441
Country
Netherlands
No mention of NSP app installs (no extra RAM access, RAM-dependent apps will run worse), turnoff IMO.
The only application that needed NSP installation from what I know were retroNX/retroArchs beta N64 cores, which iirc I read would be adjusted when a stable release for those comes out to not need an NSP installation.

As long as NSP/expanded memory is not a major need for homebrew, I see no reason to add it to the guide yet. Once it becomes a need, I'll look into adding it.
 

OrGoN3

Well-Known Member
Member
Joined
Apr 23, 2007
Messages
3,239
Trophies
1
XP
3,222
Country
United States
The only application that needed NSP installation from what I know were retroNX/retroArchs beta N64 cores, which iirc I read would be adjusted when a stable release for those comes out to not need an NSP installation.

As long as NSP/expanded memory is not a major need for homebrew, I see no reason to add it to the guide yet. Once it becomes a need, I'll look into adding it.
You have added nx-hbloader v2.0.0. Did your mind change already or just added it for the masses?

Edit: Also, thanks for the guide. It's easy to read, easy to understand, easy to follow. If anyone finds it difficult to follow, then they shouldn't be doing this in the first place, lol. ^_^
 

Ev1l0rd

(⌐◥▶◀◤) girl - noirscape
Member
Joined
Oct 26, 2015
Messages
2,004
Trophies
1
Location
Site 19
Website
catgirlsin.space
XP
3,441
Country
Netherlands
You have added nx-hbloader v2.0.0. Did your mind change already or just added it for the masses?

Edit: Also, thanks for the guide. It's easy to read, easy to understand, easy to follow. If anyone finds it difficult to follow, then they shouldn't be doing this in the first place, lol. ^_^
Oh wait, it's just changing the nsp? In that case, consider it done lol.

I thought the nsp had to be installed. If that's not needed, then it works:tm:.
 
  • Like
Reactions: OrGoN3

OrGoN3

Well-Known Member
Member
Joined
Apr 23, 2007
Messages
3,239
Trophies
1
XP
3,222
Country
United States
Oh wait, it's just changing the nsp? In that case, consider it done lol.

I thought the nsp had to be installed. If that's not needed, then it works:tm:.
I'm not sure, actually. I just noticed you added the nsp to the downloaded files. It might need to be installed. I have no idea. The release notes for nx-hbloader say "The provided binary is an ExeFS PFS0 .nsp, which can be placed at /atmosphere/hbl.nsp, or loaded through some other ExeFS replacement method.". I'm not sure if that counts as loading it as an applet or not, as it still supports that.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Sorry for accidentally bending over