Hacking Atmosphere-NX - Custom Firmware in development by SciresM

  • Thread starter Thread starter Waze0613
  • Start date Start date
  • Views Views 2,779,457
  • Replies Replies 9,372
  • Likes Likes 93
Thanks. All 3 right? Does the order matter?
It has been my experience:
1. Update Hekate, Atmosphere, Sys-patch (evidently not needed this time around)
2. Boot into Semi-stock
3. Update firmware using official method
4. Reboot into CFW
5. Update CFW to latest.

But none of it is ready yet, so moot.
 
  • Wow
Reactions: Shaki123
It has been my experience:
1. Update Hekate, Atmosphere, Sys-patch (evidently not needed this time around)
2. Boot into Semi-stock
3. Update firmware using official method
4. Reboot into CFW
5. Update CFW to latest.

But none of it is ready yet, so moot.
I can still enter CFW by the way, but without the Sleep Mode. Do you know if it's still safe to use CFW for playing games and watching movies (NXMP/Switch Wave) while I wait for the Atmosphere updates?

There's so much conflicting info, so I really appreciate your insights and knowledge.
 
I can still enter CFW by the way, but without the Sleep Mode. Do you know if it's still safe to use CFW for playing games and watching movies (NXMP/Switch Wave) while I wait for the Atmosphere updates?

There's so much conflicting info, so I really appreciate your insights and knowledge.
Its going to depend on the software itself. If it can't run, it will crash out and reboot. Shouldn't be any harm in trying, but the repo is being actively committed to so updates may be on the way.
 
  • Love
Reactions: Shaki123
Why the third step (updating the emuMMC FW to 23)?

Once Atmosphère (and Hekate) are updated to support FW 23, CFW should boot just fine to emuMMC, even if emuMMC is at an earlier FW version... right?
I have to be honest with you: I don't know. I've never attempted to run two different FW versions. There's a part of my brain that would be screaming the entire time "THEY'RE NOT THE SAME" and until I figure out how to silence that, I'll have to keep doing it that way.
 
  • Like
Reactions: Nephiel
Once Atmosphère (and Hekate) are updated to support FW 23, CFW should boot just fine to emuMMC, even if emuMMC is at an earlier FW version... right?
When I was checking out SX OS on my Switch, my OFW was (and still is) on 15.x.x or 16.x.x and the emuMMC was downgraded to 11.0.0 so, yeah, CFW booted just fine. You can have an emuMMC on a lower firmware and boot into CFW, I doubt that Atmosphere is any different in that regard.

I believe that you only need Hekate to be updated to support the latest firmware if your OFW is one the latest firmware. If your emuMMC is on a lower firmware, older Atmosphere should work just fine. Haven't tested, though, so I might be wrong. :D
 
For my limited knowledge since is mayor update there can be many changes under the hood, so is safer to wait atmo guys to check stuff.
it's mostly kernel changes (if any) and erpt
you would first implement helpers into libnx then add the commands to atmosphere

nn::erpt::sf::IContext command 15
https://github.com/Atmosphere-NX/At...de/stratosphere/erpt/sf/erpt_sf_i_context.hpp

JSON:
"15": {"vt":  "0x80", "func": "0x710002ED20", "lr": "0x71000303A8", "inbytes":   "0x4", "outbytes":  "0x14", "buffers": [5, 5], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0x4]; out_data[0x14]; buffers=[in, in]"},

nn::sprofile::srv::IProfileReader commands 5, 6, 7, 8, 9,10, 11, 12
https://github.com/Atmosphere-NX/At...profile/srv/sprofile_srv_i_profile_reader.hpp
JSON:
      "5":  {"vt":  "0x48", "func": "0x7100052570", "lr": "0x710004DFC0", "inbytes":   "0xE", "outbytes":   "0x8", "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x8]"},
      "6":  {"vt":  "0x50", "func": "0x7100052580", "lr": "0x710004E16C", "inbytes":   "0xE", "outbytes":   "0x4", "buffers": [6], "name": "NOT_IN_DATABASE", "wire_order": "out_buf0; in_data[0xE]; out_data[0x4]"},
      "7":  {"vt":  "0x58", "func": "0x7100052590", "lr": "0x710004E34C", "inbytes":   "0xE", "outbytes":   "0x4", "buffers": [10], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x4]; buffers=[out]"},
      "8":  {"vt":  "0x60", "func": "0x71000525A0", "lr": "0x710004E53C", "inbytes":   "0xE", "outbytes":   "0x4", "buffers": [10], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x4]; buffers=[out]"},
      "9":  {"vt":  "0x68", "func": "0x71000525B0", "lr": "0x710004E72C", "inbytes":   "0xE", "outbytes":   "0x4", "buffers": [10], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x4]; buffers=[out]"},
      "10": {"vt":  "0x70", "func": "0x71000525C0", "lr": "0x710004E91C", "inbytes":   "0xE", "outbytes":   "0x4", "buffers": [10], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x4]; buffers=[out]"},
      "11": {"vt":  "0x78", "func": "0x71000525D0", "lr": "0x710004EB0C", "inbytes":   "0xE", "outbytes":   "0x4", "buffers": [10], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x4]; buffers=[out]"},
      "12": {"vt":  "0x80", "func": "0x71000525E0", "lr": "0x710004ECEC", "inbytes":   "0xE", "outbytes":   "0x4", "buffers": [10], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x4]; buffers=[out]"}


nn::sprofile::srv::IProfileControllerForDebug command 2002
https://github.com/Atmosphere-NX/At...rofile_srv_i_profile_controller_for_debug.hpp

JSON:
      "2002": {"vt":  "0x30", "lr": "0x710004F77C", "inbytes":   "0xE", "outbytes":   "0x8", "buffers": [6], "name": "NOT_IN_DATABASE", "wire_order": "in_data[0xE]; out_data[0x8]; buffers=[out]"}
 
Last edited by bth,

Site & Scene News

Popular threads in this forum