Commit Graph

1798 Commits

Author SHA1 Message Date
Alula
688091abc9 kern: write thread handle to tls +0x110 on creation 2026-04-04 21:30:18 +02:00
Alula
db41e33507 fusee/exo/ams: update with new keydata/version enums 2026-04-04 21:30:18 +02:00
hexkyz
b794d96c2c erpt: style fix 2026-04-04 21:30:18 +02:00
hexkyz
872d91deaf erpt: add new IDs for 22.0.0 2026-04-04 21:30:18 +02:00
hexkyz
aae3ccf581 Merge pull request #2726 from ndeadly/svc-shim-compat
libstrat: update GetDebugEvent svc shim for compatibility with libnx changes
2026-04-04 21:30:01 +02:00
Michael Scire
bf21711e30 git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "9a8703e71"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "9a8703e71"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2026-04-04 21:29:01 +02:00
Michael Scire
ad04b2215d ams/emummc: update for 21.2.0 2026-01-15 03:46:49 +01:00
Michael Scire
246e29e594 git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "6cc765fca"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "6cc765fca"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2025-12-09 06:42:13 +01:00
Michael Scire
39925c3802 ams: add enum recognition for 21.1.0 2025-12-09 06:42:13 +01:00
Michael Scire
015c80f3f3 kern: eshop actually requires an extra mb 2025-12-04 03:20:15 +01:00
Michael Scire
e197cd0e7c kern: fix comparison typo 2025-12-04 03:20:15 +01:00
Michael Scire
24280084a8 kern: 21.0.0 requires an even smaller memory pool... 2025-12-04 03:20:15 +01:00
NaGa
52dc41b0bb git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "6e2c09c79"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "6e2c09c79"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2025-12-04 03:15:28 +01:00
Michael Scire
80edcb3f69 loader: update for 20.0.0/21.0.0 2025-12-04 03:13:19 +01:00
Michael Scire
0b2a14ae99 pgl/pm: add GetProcessId command 2025-12-04 03:13:08 +01:00
Michael Scire
9be23a366e kern: fix debug build for [[nodiscard]] changes 2025-12-04 03:13:08 +01:00
Michael Scire
c72534def6 kern: fix whoops introduced by nodiscard refactor 2025-12-04 03:13:08 +01:00
Michael Scire
a878a6bbb2 erpt: implement new 21.0.0 commands 2025-12-04 03:13:08 +01:00
Michael Scire
9cdc2c22f6 erpt: fix ids, failed to copy the new categories 2025-12-04 03:13:08 +01:00
Michael Scire
f123104774 fatal: add new HashedTraceContext command 2025-12-04 03:13:08 +01:00
Michael Scire
5eef055d74 erpt: add new IDs for 21.0.0 2025-12-04 03:13:07 +01:00
Michael Scire
d457f05204 kern: exception flags are now atomic.
This is a really weird one, because they didn't actually update the
code which updates these flags in asm, these still use ldrb/orr/strb.
But every access to these via c++ is now an atomic ldxrb/stxrb loop.
Maybe they just forgot to update the asm?
2025-12-04 03:12:52 +01:00
Michael Scire
84454fa095 kern: pass u32 directly to CopyMemoryToUserSize32Bit 2025-12-04 03:12:52 +01:00
Michael Scire
59f3fc70a5 ams: mark ams::Result [[nodiscard]] (partially complete).
NOTE: This work is not yet fully complete; kernel is done, but
it was taking an exceedingly long time to get through libstratosphere.
Thus, I've temporarily added -Wno-error=unused-result for libstratosphere/stratosphere.

All warnings should be fixed to do the same thing Nintendo does as relevant, but this
is taking a phenomenally long time and is not actually the most important work to do,
so it can be put off for some time to prioritize other tasks for 21.0.0 support.
2025-12-04 03:12:52 +01:00
Michael Scire
b7fe85a34c kern: Nintendo now also devirtualizes KAutoObject::DynamicCast 2025-12-04 03:09:41 +01:00
Michael Scire
1978309b3e kern: write cpu tick differential to tls +0x108 on thread switch 2025-12-04 03:09:41 +01:00
Michael Scire
689e25ccb0 fusee/exo/ams: update with new keydata/version enums 2025-12-04 03:09:41 +01:00
Michael Scire
86fd8d66e1 fssystem: fix support for parsing newer-format BKTR NCAs
Apparently, at some point they started allowing maxlayers=3, which caused this code to not work.

Looking at latest FS, they always reference DataStorage instead of level+2 for the final level.

This fixes parsing update romfs for newer games, e.g. Super Mario Galaxy 2.
2025-12-04 03:07:59 +01:00
Michael Scire
a1a88e5c42 ams: bump version, add enum support for 20.5.0 2025-10-07 21:21:17 +02:00
Michael Scire
93e73a3c36 ams: bump version, add enum support for 20.4.0 2025-09-12 19:13:09 +02:00
comex
7c54aff4d4 build: portability fixes
- Invoke Python scripts with `python3` if `python` is not available.

  Despite SciresM preferring Python 2, the scripts used in the build all
  worked in Python 3 already, so this is just a Makefile change.

- Export `MAKE` to work around a GNU bug.

  See the comment for details.

- `rmdir --ignore-fail-on-non-empty` -> `rmdir 2>/dev/null`

  macOS `rmdir` doesn't support `--ignore-fail-on-non-empty`.

  This is a slight downgrade in functionality, because now we ignore all
  errors from `rmdir` rather than just 'Directory not empty'.  I could
  have avoided this with a more complicated fix, but the benefit strikes
  me as not worth the complexity.  Let me know if you disagree.

- Append `$(DEVKITPRO)/tools/bin/` to `$PATH` when invoking
  `build_romfs`.

  This avoids the need to add devkitPro directories to `$PATH` when
  building Atmosphere.

  If you already have `build_romfs` in your PATH, then that will still
  take precedence.  (This seemed like the nicer option, though I don't
  have strong opinions.)
2025-09-12 19:10:47 +02:00
comex
e9147d8e1d haze: fix duplicate-macro warnings
haze was including both `<switch.h>` and `vapours/types.hpp` which both
define `R_SUCCEEDED` and `R_FAILED`, producing compiler warnings.

The intent is that `vapours/types.hpp` only gets included when targeting
not-Switch and/or not-EL0.  But the check didn't account for
Troposphère.  Fix that.
2025-09-12 19:10:47 +02:00
Michael Scire
412b11451d ams: bump version, support 20.3.0 2025-09-12 19:09:13 +02:00
Michael Scire
2bbef1e64f ams: bump version, add 1.9.2 changelog 2025-09-12 19:09:12 +02:00
Michael Scire
9cde2f57fa ams: add enum version support for 20.1.x/20.2.0 2025-09-12 19:09:12 +02:00
Michael Scire
8d4a7d21a9 git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "0f72b2ceb"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "0f72b2ceb"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2025-06-14 21:07:38 +02:00
Michael Scire
8adaf8dc79 kern: move spendsgir static assert 2025-06-14 21:07:06 +02:00
Michael Scire
ad92c908c4 erpt: update IDs for 20.1.0 2025-06-14 21:06:09 +02:00
Michael Scire
b3dcb7d590 kern: save/restore spendsgir in KInterruptController::Save/RestoreCoreLocal 2025-06-14 21:06:09 +02:00
Michael Scire
8665036092 kern: wait 100us after synchronizing cores before saving interrupt state on sleep 2025-06-14 21:06:09 +02:00
Michael Scire
50956fce6f kern: use KLightLock for KCoreBarrierInterruptHandler 2025-06-14 21:06:09 +02:00
Michael Scire
99136146dd Add version enums for 20.1.0 2025-06-14 21:06:09 +02:00
Christoph Baumann
63a12453f3 fix memory mode 2025-05-22 22:50:11 +02:00
Christoph Baumann
5819f3a830 add exosphere.ini option to determine memory mode from physical memory instead of boot config 2025-05-21 01:17:18 +02:00
Christoph Baumann
77a01f0a9b allow emmc writes (to write warmboot to emusd), allow unaligned emmc writes 2025-05-20 23:52:02 +02:00
Christoph Baumann
7584ec3060 support file based/sd partition emusd configs 2025-05-20 20:38:41 +02:00
Christoph Baumann
6f3f468a5b fusee: read from emuSD, if enabled 2025-05-15 13:32:40 +02:00
Christoph Baumann
886fa9cc97 Add support for file/partition based emummc on emmc,
Add support for emuSD
2025-05-12 02:06:28 +02:00
Michael Scire
1d3f3c6e56 git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "9e8cbe3fa"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "9e8cbe3fa"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2025-05-09 12:11:13 -07:00
Michael Scire
4d4f0ba968 svc: bump supported kernel version 2025-05-09 12:05:01 -07:00