Tutorial How to have SEPARATE ATMOSPHERE AND SXOS EMUNAND HIDDEN PARTITIONS ON THE SAME SD TUTORIAL!

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
So file based for SX OS is the way to go? That's what I thought, too much at play on a single SD Card, I remember before Hekate introduced the Partition Manager I had to use this Linux script that barely worked in order to get Linux, Android, EmuNAND, and Lakka all working at once. I would hate to have to do anything like that again, so just using a file partition saves me the headache, and cost vs risk isn't too bad. Thanks.

disclaimer: Files based emunand is susceptible to file system corruption. Partition based emunands, while on the same sd card, are isolated from the files system.

It’s the only way I could get all of mine running on the same card. I honestly tried for a long time.

Maybe @mikefor20 or someone else has a better way make this happen.
 
Last edited by binkinator,

OldGnashburg

Cobra Chicken Summoner
Member
Joined
Feb 6, 2017
Messages
465
Trophies
0
Location
Alberta, Canada
XP
2,336
Country
Canada
I did this and the issue I ran into was that SXOS requires that its emunand partition be the first partiton on the sdcard. This is fine if you have Atmos and SXOS dual boot because you only need three partitions (Atmos and SXOS emunand partitions on the ends and fat32 in the middle). This all works using MBR. You can even add L4T without any issues…however, when you add Android, it requires another 1/2 dozen partitions, which requires you to use GPT and GPT uses some of the initial sd card range that SXOS uses for its Emunand so the Header corrupts the partition and SXOS won’t boot anymore. I ”solved” this by running SXOS using a shrunken files based Emunand. I only use SXOS to run mounted XCIs so the need to write to disk (and therefore the risk of corruption) is greatly reduced. Since I don’t install anything, if I lose it all, I don’t have to recover anything anyway so it’s all good…in my mind.

I’m open to suggestions if anyone has worked out a way around this…nit saying it can‘s be done…just wasn’t done by me.
So I've converted an 11.0.0 EmuNAND to an SXOS filebased EmuNAND, I have an Atmosphere partition based EmuNAND, Android, Linux, and Lakka all on the SD, but when I try to launch the sxos payload it just reboots back to Hekate almost instantly. Is it trying to read the partition and not the file-based NAND? How do I force it to go filebased?
 

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
So I've converted an 11.0.0 EmuNAND to an SXOS filebased EmuNAND, I have an Atmosphere partition based EmuNAND, Android, Linux, and Lakka all on the SD, but when I try to launch the sxos payload it just reboots back to Hekate almost instantly. Is it trying to read the partition and not the file-based NAND? How do I force it to go filebased?
What does your hekate_ipl.ini look like?
 

OldGnashburg

Cobra Chicken Summoner
Member
Joined
Feb 6, 2017
Messages
465
Trophies
0
Location
Alberta, Canada
XP
2,336
Country
Canada
What does your hekate_ipl.ini look like?
[config]
autoboot=0
autoboot_list=0
bootwait=5
backlight=220
autohosoff=0
autonogc=1
updater2p=0
bootprotect=0
{}

[Atmosphere EmuNAND]
fss0=atmosphere/package3
cal0blank=1
kip1patch=nosigchk
kip1=atmosphere/kips/*
icon=bootloader/res/atmosphere.bmp
{}
[SXOS Boot]
payload=bootloader/payloads/sxos.bin
logopath=bootloader/res/bootlogo_sx.bmp
icon=bootloader/res/icon_sxos.bmp
{}
[Atmosphere SysNAND]
fss0=atmosphere/package3
cal0blank=1
kip1=atmosphere/kips/*
emummc_force_disable=1
icon=bootloader/res/sys_cfw_boot.bmp
{}
[SXOS]
payload=bootloader/payloads/sxos.bin
logopath=bootloader/res/bootlogo_sx.bmp
icon=bootloader/res/icon_sxos.bmp
{}
{-------- Stock ---------}
[Stock SYS]
fss0=atmosphere/package3
stock=1
emummc_force_disable=1
icon=bootloader/res/stock_boot.bmp

All the files seem to be the right stuff.
 

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
[config]
autoboot=0
autoboot_list=0
bootwait=5
backlight=220
autohosoff=0
autonogc=1
updater2p=0
bootprotect=0
{}

[Atmosphere EmuNAND]
fss0=atmosphere/package3
cal0blank=1
kip1patch=nosigchk
kip1=atmosphere/kips/*
icon=bootloader/res/atmosphere.bmp
{}
[SXOS Boot]
payload=bootloader/payloads/sxos.bin
logopath=bootloader/res/bootlogo_sx.bmp
icon=bootloader/res/icon_sxos.bmp
{}
[Atmosphere SysNAND]
fss0=atmosphere/package3
cal0blank=1
kip1=atmosphere/kips/*
emummc_force_disable=1
icon=bootloader/res/sys_cfw_boot.bmp
{}
[SXOS]
payload=bootloader/payloads/sxos.bin
logopath=bootloader/res/bootlogo_sx.bmp
icon=bootloader/res/icon_sxos.bmp
{}
{-------- Stock ---------}
[Stock SYS]
fss0=atmosphere/package3
stock=1
emummc_force_disable=1
icon=bootloader/res/stock_boot.bmp

All the files seem to be the right stuff.

Assuming you've confirmed this file does in fact exist: bootloader/payloads/sxos.bin
What happens if you inject your sxos.bin file directly during RCM?

e: some big brain reading about files based emunand. The pdf they put together is pretty darn cool.
https://gbatemp.net/threads/sxos-and-atmosphere-sharing-emunand-android-10-accessing-fat32.587563/
(meaning it’s not directly applicable to your use case but…it‘s just for edutainment and better understanding of how GPT and SXOS clash)
 
Last edited by binkinator,

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
Same thing, just boots into Hekate, and yeah sxos.bin is in the right path. Is there a config to force SXOS to launch a file-based EmuNAND?
That shouldn't be. It should be giving you SXOS failure messages at worst and handing off to boot.dat at best.

Here are some specs (size and md5 checksum) on my sxos.bin file so we can make sure you have the right file.

# ls -la sxos.bin
-rw-r--r-- 1 wwiii wwiii 27748 Sep 28 2021 sxos.bin
# md5sum.exe sxos.bin   bash  18:21:4
3a21fe841873361be05384459cb64e81 *sxos.bin
 
Last edited by binkinator,

mikefor20

We
OP
Member
Joined
Jan 12, 2009
Messages
1,638
Trophies
0
Location
Mushroom Kingdom ( o Y o )
XP
2,867
Country
United States
So I've converted an 11.0.0 EmuNAND to an SXOS filebased EmuNAND, I have an Atmosphere partition based EmuNAND, Android, Linux, and Lakka all on the SD, but when I try to launch the sxos payload it just reboots back to Hekate almost instantly. Is it trying to read the partition and not the file-based NAND? How do I force it to go filebased?
I don't condone nor support file based emunands. They are unstable. This tutorial was designed to avoid shoddy file based emunands. There is a ton of tutorials about them. This thread is for dual hidden partitions. You can have android and linux too..

Please discuss file based emunand methods elsewhere.


Thanks
 

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
I don't condone nor support file based emunands. They are unstable. This tutorial was designed to avoid shoddy file based emunands. There is a ton of tutorials about them. This thread is for dual hidden partitions. You can have android and linux too..

Please discuss file based emunand methods elsewhere.


Thanks
That was my bad, man. I mentioned it first. I agree files based emunand is susceptible to file system corruption. Added disclaimers and will take it elsewhere to keep your partition based tut thread clean.
 

OldGnashburg

Cobra Chicken Summoner
Member
Joined
Feb 6, 2017
Messages
465
Trophies
0
Location
Alberta, Canada
XP
2,336
Country
Canada
I got it working now, I have no idea how. Clearly black magic. And I have clean backup of my (currently) empty SX OS file based EmuNAND, which I will only be using for HDD loading, so not worried about corruption since I'll barely be writing to it. I have a proper partition based Atmosphere EmuNAND. Now I have a Switch with Atmosphere, SX OS, Linux, Android & Lakka, it's perfect.
 
  • Love
Reactions: binkinator

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
I got it working now, I have no idea how. Clearly black magic. And I have clean backup of my (currently) empty SX OS file based EmuNAND, which I will only be using for HDD loading, so not worried about corruption since I'll barely be writing to it. I have a proper partition based Atmosphere EmuNAND. Now I have a Switch with Atmosphere, SX OS, Linux, Android & Lakka, it's perfect.
Awesome! Nicely done and congratulations!

I agree that since we’re only mounting XCIs the risk, while not completely eliminated, is greatly reduced.
 

OldGnashburg

Cobra Chicken Summoner
Member
Joined
Feb 6, 2017
Messages
465
Trophies
0
Location
Alberta, Canada
XP
2,336
Country
Canada
I don't condone nor support file based emunands. They are unstable. This tutorial was designed to avoid shoddy file based emunands. There is a ton of tutorials about them. This thread is for dual hidden partitions. You can have android and linux too..

Please discuss file based emunand methods elsewhere.


Thanks
Would you have a solution for creating a setup for Partition based EmuNAND and SX OS + Linux + Android + Lakka? Manually creating just the EmuNAND partitions isn't difficult, but once you throw Android and Linux into the equation, things become extremely complex and a binkinator pointed out, things break by doing so because of MBR and GPT issues.
 
  • Like
Reactions: binkinator

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
I would LOVE to have SXOS using a partition based emunand for my Atmosphere, SXOS, Android, L4T and LAKKA enabled Switch. I’ve tried numerous ways to make it happen.

The problem statement is this:

Basically, the problem is the combination of these three [two] facts:
- android 10 requires a GPT partition layout, which uses sectors 1,2,... to describe the partitions.
- SXOS hidden partition style emunand is stored in the fixed sectors 1 ( TX NAND mark ) and starting on sector 2 ( actual emunand contents ).

e: from the attached doc btw
 

Attachments

  • AndroidSXOSAndAtmosphereWithSharedEmunand11.pdf.pdf
    2.8 MB · Views: 19

OldGnashburg

Cobra Chicken Summoner
Member
Joined
Feb 6, 2017
Messages
465
Trophies
0
Location
Alberta, Canada
XP
2,336
Country
Canada
I would LOVE to have SXOS using a partition based emunand for my Atmosphere, SXOS, Android, L4T and LAKKA enabled Switch. I’ve tried numerous ways to make it happen.

The problem statement is this:

Basically, the problem is the combination of these three [two] facts:
- android 10 requires a GPT partition layout, which uses sectors 1,2,... to describe the partitions.
- SXOS hidden partition style emunand is stored in the fixed sectors 1 ( TX NAND mark ) and starting on sector 2 ( actual emunand contents ).

e: from the attached doc btw
Okay interesting, the way I read it there might be way? Cool. Btw, I'm having issues, I'm going to assume it has to do with my Game Card reader fuses. Only workaround (that I know of) is AutoNoGC, but if I have that enabled I can't leave a GameCard in when I boot into SX OS, which can be annoying, and if I forget I need to power off the whole Switch, and then put it back into RCM and push another payload. How did you work around this? I have tested XCI HDD loading yet, but don't you need a function GC Reader?
 

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
Okay interesting, the way I read it there might be way? Cool. Btw, I'm having issues, I'm going to assume it has to do with my Game Card reader fuses. Only workaround (that I know of) is AutoNoGC, but if I have that enabled I can't leave a GameCard in when I boot into SX OS, which can be annoying, and if I forget I need to power off the whole Switch, and then put it back into RCM and push another payload. How did you work around this? I have tested XCI HDD loading yet, but don't you need a function GC Reader?
That’s my trick…I never buy game cards!

In all seriousness trying to juggle between Atmosphere at 14.1.2 and SXOS stuck at 11.0.0, I would forget about trying to preserve the feature for the outdated SXOS and just run my game cards on Atmosphere with latest and greatest FW both for HOS and the GC. I have GC disabled and don’t have issues mounting XCIs.

e:

on second thought, if you haven’t upgraded GC firmware beyond what’s required for 11.0.0, maybe just keep it enabled and down rev on SXOS and permanently disable for Atmosphere.
 
Last edited by binkinator,

OldGnashburg

Cobra Chicken Summoner
Member
Joined
Feb 6, 2017
Messages
465
Trophies
0
Location
Alberta, Canada
XP
2,336
Country
Canada
That’s my trick…I never buy game cards!

In all seriousness trying to juggle between Atmosphere at 14.1.2 and SXOS stuck at 11.0.0, I would forget about trying to preserve the feature for the outdated SXOS and just run my game cards on Atmosphere with latest and greatest FW both for HOS and the GC. I have GC disabled and don’t have issues mounting XCIs.

e:

on second thought, if you haven’t upgraded GC firmware beyond what’s required for 11.0.0, maybe just keep it enabled and down rev on SXOS and permanently disable for Atmosphere.
So XCI's work. My SysNAND is on latest, EmuNAND is like one or 2 FW behind, and SX OS EmuNAND is on 11.0.0. So keep AutoNoGC enabled? What do you mean by Down Rev on SXOS and permanently disable for Atmosphere?

And lol, at this point over the last 4 years I've probably spent nearly 1500 (in Canadian money, games are $80 here) on legit purchases just for my Switch. The Nintendo folder on my SD card alone is like 200GB or whatever, and that's with a large chunk of my games being cartridge only. Which is why I'm extremely frustrated that SX OS is the only way I can mount XCI's off HDD. When I have a partition based EmuNAND add another 232GB, plus ROM's and ISO's for Lakka/Retroarch plus 128GB for Linux, plus 32GB for Android. I have a 1TB microSD, they don't make anything bigger and I'm already just using half of it without pirating a single thing.
 

dmc310

Well-Known Member
Member
Joined
Dec 28, 2013
Messages
265
Trophies
0
Age
32
XP
268
Country
United States
So I had atmosphere and sx os on my sysnand and it never touched online but I recently decided to completely revert my switch to stock clean ofw to play online, would I be able to have SX OS and atmosphere EmuNAND and just have a stock OFW when I want to play legit?
 

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
So I had atmosphere and sx os on my sysnand and it never touched online but I recently decided to completely revert my switch to stock clean ofw to play online, would I be able to have SX OS and atmosphere EmuNAND and just have a stock OFW when I want to play legit?

You would need to restore a backup from the last time your Switch checked in w/ Ninty. This would ensure the logs matched up. Log discrepancies are reported to be a bannable offense. You certainly wouldn’t want to do nothing about the logs you currently have in Sysnand because they will have a record of anything dirty you might have done, such as install XCIs or NSPs. One way to remedy the dirty log issue is to clean them with Haku33. Clean logs are suspicious as well but there are folks that say they’ ve done it and not been banned so it’s a decision you will have to make yourself.

bottom line: best way is to restore a clean backup. Everything else adds a non-zero amount of risk.

Once everything is clean, you absolutely can run Atmos and SXOS on Emunand Offline and clean OFW to play Online. This is how I run my Switch and it was done pretty closely inline with this guide.
 
  • Like
Reactions: dmc310

dmc310

Well-Known Member
Member
Joined
Dec 28, 2013
Messages
265
Trophies
0
Age
32
XP
268
Country
United States
Thank you for the response I did restore back to a previous nand before it touched cfw I think? I also went thru Tegraexplorer payload and used the systemwipe script is that a less effective method than Haku33 I am already on 14.1.0 and using it online but now wanted to set up an emunand with Atmosphere and SX OS if I can idk if it will work now that I am on 14.1.0 officially stock I appreciate the help
 

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
2,968
Trophies
2
XP
2,163
Country
United States
Thank you for the response I did restore back to a previous nand before it touched cfw I think? I also went thru Tegraexplorer payload and used the systemwipe script is that a less effective method than Haku33 I am already on 14.1.0 and using it online but now wanted to set up an emunand with Atmosphere and SX OS if I can idk if it will work now that I am on 14.1.0 officially stock I appreciate the help
You absolutely can. Start at the beginning of this tutorial and methodi walk through it. You will need to use the daybreak.nro that comes with atmosphere to “downgrade” the emunand you want to use for SXOS but other than that you just start at the top and work through each step.
 
  • Like
Reactions: dmc310
General chit-chat
Help Users
    KenniesNewName @ KenniesNewName: They're like $5 on Amazon