Michael Scire
02e987819b
ncm: work around change in Nintendo save handling behavior
...
Static save files do not require an entry in the save data indexer to mount.
Prior to 17.0.0, save data files were considered static if userid was 0.
In 17.0.0+, only 8000000000000000 is static.
However, some users using cfw do not have an entry for 8000000000000120 in the indexer,
for various reasons (but mostly manual nand-restore, I think). Thus, on boot of 17.0.0+,
FS will say 8000000000000120 is not present (not in indexer), and NCM will create it anew.
The 8000000000000120 save will then be empty, and then the firmware can't boot.
To workaround this, logic has been re-enabled on 17.0.0+ for building the content meta database.
Thus, if the user encounters this error, the 8000000000000120 save will be emptied, but then
it will be automatically reconstructed, fixing the problem.
2023-10-12 08:55:58 -07:00
Michael Scire
2ec3e141c7
bpc.mitm/exo: support pmic reboot/shutdown on mariko (thanks @CTCaer)
2023-10-12 08:55:58 -07:00
Michael Scire
71d0274884
erpt: remove deprecated fields, they didn't actually change IDs, just the mapping between id and name table index
2023-10-12 08:55:58 -07:00
Michael Scire
aa170a72a9
erpt: Add basic (TODO-impl post-prerelease) support for 17.0.0 changes
2023-10-12 08:55:58 -07:00
Michael Scire
9d4cb685a7
fs: update OpenCodeFileSystem abi for 17.0.0
2023-10-12 08:55:58 -07:00
Michael Scire
c95741142e
ncm: update for new 17.0.0 apis
2023-10-12 08:55:58 -07:00
Michael Scire
114b82284d
exo/spl: Add new EsCommonKeyType
2023-10-12 08:55:58 -07:00
Michael Scire
c5d7ca5159
fusee/exo: implement the usual changes for new firmware support
2023-10-12 08:55:58 -07:00
Michael Scire
6d0bf70783
kern: fix assert usage in process load
2023-10-12 08:55:58 -07:00
Michael Scire
aba6ca7329
kern: bump supported version to 17.x
2023-10-12 08:55:58 -07:00
Michael Scire
06a840e550
kern: fix operation type enum-value whoops
2023-10-12 08:55:58 -07:00
Michael Scire
11c02e22e0
kern: implement support for applying relr relocations
2023-10-12 08:55:58 -07:00
Michael Scire
f93aea4c06
kern: split Process/Thread exit to separate WorkerTaskManagers
2023-10-12 08:55:58 -07:00
Michael Scire
4ddfb6183c
kern: split out GetInstructionDataUserMode in exception handler
2023-10-12 08:55:58 -07:00
Michael Scire
3737151a2f
kern: Add special-case for InvalidateProcessDataCache on current process
2023-10-12 08:55:58 -07:00
Michael Scire
2a4d68f916
kern: KPageTable: remove MapFirst operation, replace with MapFirstGroup
2023-10-12 08:55:58 -07:00
Michael Scire
7b523cfc8d
kern: note OnFinalize calls in KPageTable::Finalize
2023-10-12 08:55:58 -07:00
Michael Scire
39a95d4023
kern: implement new default application system resource field in KProcess
2023-10-12 08:55:58 -07:00
Michael Scire
2c5002ce50
kern: update KMemoryRegionType values for new ids + SecureUnknown region
2023-10-12 08:55:58 -07:00
Michael Scire
b7384a8667
kern: KSupervisorPageTable now checks wxn instead of setting it
2023-10-12 08:55:58 -07:00
Michael Scire
85b5f20395
kern: KPageTable::Initialize no longer takes unused process id
2023-10-12 08:55:58 -07:00
Michael Scire
ad5bd81d3f
kern: implement PermissionLock, update KPageTableBase attribute/alignment checks
2023-10-12 08:55:58 -07:00
Michael Scire
777b6d285c
kern: KPageTableBase::CheckMemoryState now invokes a helper
2023-10-12 08:55:58 -07:00
Michael Scire
ae2c25e9c8
kern: update KMemoryState, remove bijection (separate IoRegister/IoMemory)
2023-10-12 08:55:58 -07:00
Michael Scire
3b8f65d502
kern: update initial process load logic to do per-segment mapping/decompression
2023-10-12 08:55:58 -07:00
Michael Scire
cfd2d5b012
kern: clear new pages in init page allocator, not init page table
2023-10-12 08:55:58 -07:00
Michael Scire
c72ba35684
kern: add speculation barriers after eret
2023-10-12 08:55:58 -07:00
Michael Scire
ec96203cb7
kern: remove unnecessary fields from InitArgs (0x80 -> 0x40)
2023-10-12 08:55:58 -07:00
Michael Scire
0daef4a6e8
kern/ldr: move crt0 into .rodata
2023-10-12 08:55:58 -07:00
Michael Scire
4ca3c44e5f
kern: pass ini1 size from loader to kernel, remove slab memset from init0
2023-10-12 08:55:58 -07:00
Liam
159f8d384b
dmnt.gen2: enable attach to arbitrary program id
2023-10-11 19:50:09 -07:00
Michael Scire
de73f6c5bb
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "c3dc418a2"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "c3dc418a2"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-08-21 17:27:16 -07:00
Michael Scire
e488b6ee47
ams: add enum recognition for 16.1.0
2023-08-21 17:26:27 -07:00
Michael Scire
99810dc091
fssystem: fix typo error in BucketTree::Visitor::MoveNext
2023-08-15 14:47:09 -07:00
Liam
e54957285f
libstrat: comment fixes for fssystem
2023-08-12 11:33:29 -07:00
Michael Scire
fca213460b
libstrat: fix more minor style issues pointed out by Pharynx
2023-08-10 11:48:28 -07:00
Michael Scire
4e6bd19fcd
fssystem: fix stupid issue in NodeBuffer move-ctor
...
Code compiles with this constructor deleted, so it wasn't used, but even so...
2023-08-03 16:58:55 -07:00
Michael Scire
8b88351cb4
mitm: fix errant include on non-hos
2023-06-06 19:32:06 -07:00
Michael Scire
3cb54e2b4b
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "f4a966eb4"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "f4a966eb4"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-05-14 03:17:20 -07:00
Michael Scire
e9de11a746
ams: bump version to 1.5.4
2023-05-14 03:16:27 -07:00
SciresM
f2ee44da74
romfs/ams.mitm/pm: refactor to dynamically steal heap for certain games. ( #2122 )
...
* fs.mitm: skeleton the use of special allocation in romfs build
* pm: add api for ams.mitm to steal application memory
* pm/mitm: okay, that api won't work, try a different one
* romfs: revert memory usage increases; we'll handle torture games case-by-case.
* pm/romfs: first (broken?) pass at dynamic heap.
I cannot wait to figure out all the ways this is wrong.
* Release the dynamic heap a little more eagerly
* romfs: animal crossing is also not a nice game
* romfs: fix issues in close-during-build
* romfs: zelda is a blight upon this earth
2023-05-14 03:06:52 -07:00
Michael Scire
7e6c849ca4
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "cd0fc2c1d"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "cd0fc2c1d"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-05-08 18:06:50 -07:00
Michael Scire
b800953d66
ams: recognize 16.0.3('s FS)
2023-05-08 17:51:13 -07:00
Michael Scire
1f5ec68a5c
ams: fix compilation with gcc 13
2023-05-07 03:36:46 -07:00
Michael Scire
ed9e60acb9
kern: track heap in KPageTableBase::MemoryRange
2023-04-30 16:50:53 -07:00
Michael Scire
9f83b3c838
ams: I really need to automate keeping this in sync
2023-04-17 20:57:57 -07:00
Michael Scire
434c8cefc4
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "ecc8b1811"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "ecc8b1811"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-04-17 20:40:41 -07:00
Michael Scire
d8aed7de6d
ams: add 16.0.2 enum
2023-04-17 20:40:02 -07:00
Michael Scire
0c6a06a0cf
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "7340e2eab"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "7340e2eab"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-04-17 14:19:59 -07:00
Michael Scire
5efb4a2a98
docs: bump version, 16.0.1 exists too
2023-04-17 14:19:18 -07:00
Michael Scire
e9b28ab4b1
kern: adjust wording to be more technically correct
2023-03-27 10:54:58 -07:00
Michael Scire
8274081e39
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "b1607dc8a"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "b1607dc8a"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-03-13 17:17:50 -07:00
Michael Scire
f1ad26ce84
ams: bump version
2023-03-13 17:16:51 -07:00
Michael Scire
52f00731d9
settings: add os guard
2023-03-12 22:34:23 -07:00
Michael Scire
476d658a79
ams: allow convertible-to-result in abort print macros
2023-03-11 15:14:33 -07:00
ndeadly
bd9d8fff46
Add system setting to mirror bluetooth pairing database to sd card ( #1787 )
...
* ams_mitm: add ability to mirror bluetooth device pairing database to sd card via a system setting
* ams_mitm: address requested stylistic changes
* ams_mitm: make use of R_SUCCEED macro
* ams_mitm: use settings::BluetoothDevicesSettings instead of libnx type
* ams_mitm: fix logic error when truncating pairing database on read
* Update .ini comment
* ams_mitm: missing R_TRY around call to fs::FlushFile
* stratosphere: remove union from BluetoothDevicesSettings type
---------
Co-authored-by: ndeadly <24677491+ndeadly@users.noreply.github.com>
2023-03-10 10:06:38 -07:00
Michael Scire
61e3f0b391
windows: disable -fdata-sections
...
This causes all data to be emitted as .data$*. This breaks fzero-initialized-in-bss,
because linker puts stuff in .data even when it's all-zero and should end up in .bss.
2023-03-09 23:46:54 -07:00
Michael Scire
cd9b173318
windows: re-enable lto for os/fs libraries
2023-03-09 23:46:31 -07:00
Michael Scire
a8df400825
kern: fix stray addressof operator
2023-03-08 09:46:38 -07:00
Michael Scire
68040e2922
windows: add brave new mingw compat hook for gcc 12.2.0+
2023-03-07 22:07:03 -07:00
Michael Scire
8da4d14e15
kern: minor cleanup (thanks @liamwhite)
2023-03-06 21:18:00 -07:00
Michael Scire
982389dceb
os: add UnsafeMemory apis
2023-03-01 03:20:49 -07:00
Michael Scire
3292ea5970
kern: fix stray comment copy/paste error
2023-02-23 22:00:00 -07:00
Michael Scire
33d42f4831
erpt: update server code for 16.0.0 logic changes
2023-02-23 21:51:51 -07:00
Michael Scire
46094cfb3e
kern: increase non-dynamic heap sizes to 8 GB to match
2023-02-23 19:05:52 -07:00
Michael Scire
618691a500
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "af0d00890"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "af0d00890"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-02-23 09:01:41 -07:00
Michael Scire
8876eedfb0
ncm: alignment was changed for PlaceHolderId/ContentId in 16.0.0
2023-02-22 17:19:51 -08:00
Michael Scire
bbcee8c77c
ncm: fix inversion in activation skipping
2023-02-22 17:19:51 -08:00
Michael Scire
f7915c2c05
ncm: Add IntegratedContent*Impl
2023-02-22 17:19:51 -08:00
Michael Scire
668cabd4a2
ncm: first pass at ContentManagerImpl refactor (missing the IntegratedImpls, won't link)
2023-02-22 17:19:51 -08:00
Michael Scire
d64ab354ad
kern: 16.x web applet crashes on exit with 48 MB stolen (rip)
2023-02-22 17:19:51 -08:00
Michael Scire
59b518783d
ncm: fix copy/paste error in switch case
2023-02-22 17:19:51 -08:00
Michael Scire
6462101b6f
strat: fix sysmodule building, bump version so I don't forget later
2023-02-22 17:19:51 -08:00
Michael Scire
0ea5dbcfbb
libstrat: make build with new ncm/fs api changes (sysmodules probably fail to build)
2023-02-22 17:19:51 -08:00
Michael Scire
bb6446aada
erpt: update for new ids
2023-02-22 17:19:51 -08:00
Michael Scire
e46e7e0eb1
boot2: update for 16.0.0
2023-02-22 17:19:51 -08:00
Michael Scire
e85a512cf4
fusee/exo: implement the usual changes for new firmware support
2023-02-22 17:19:51 -08:00
Michael Scire
7d9fea01c3
kern: bump supported version to 16.x
2023-02-22 17:19:51 -08:00
Michael Scire
406320f6ec
kern: better divide non-secure size, don't waste fatal memory unless necessary
2023-02-22 17:19:51 -08:00
Michael Scire
aad2be0a01
kern: delete creation time field from KProcess
2023-02-22 17:19:51 -08:00
Michael Scire
25383db524
kern: add InfoType_IoRegionHint
2023-02-22 17:19:51 -08:00
Michael Scire
48f4c526f3
kern: refactor priority inheritance to represent locks as C++ objects
2023-02-22 17:19:51 -08:00
Michael Scire
1279d236f3
kern: remove unnecessary interrupt disables from arbiter/condvar
2023-02-22 17:19:51 -08:00
Michael Scire
008eb974d4
kern: KConditionVariable::SignalToAddress now emits dmb before userspace write
2023-02-22 17:19:51 -08:00
Michael Scire
035cebef9d
kern: refactor init (kill identity map, merge cpu on logic)
2023-02-22 17:19:51 -08:00
Michael Scire
8db22967bf
kern: use variable-count parameter arrays for DebugEvents
2023-02-22 17:19:51 -08:00
Michael Scire
db510f96c3
kern: update KSystemControl::InitializePhase1, dynamically scale 39-bit address space regions
2023-02-22 17:19:51 -08:00
Michael Scire
6e2dd791b2
kern: update for new ChangePermissions page table operation
2023-02-22 17:19:51 -08:00
Michael Scire
bff61c68ab
kern: adjust pool allocations
2023-02-22 17:19:51 -08:00
Michael Scire
ca7734ffaf
kern: simplify KSchedulerLock::Lock
2023-02-22 17:19:51 -08:00
Michael Scire
ed22f802ee
kern: allow QueryIoMapping to find Static mappings
2023-02-22 17:19:51 -08:00
Michael Scire
8ffc177b44
kern: update UnmapIoRegion for new Mapping_Memory handling
2023-02-22 17:19:51 -08:00
Michael Scire
c058376b3b
kern: use tree for IoPool regions instead of list
2023-02-22 17:19:51 -08:00
Michael Scire
d5ebf13094
kern: optimize userspace access asm to use cheaper instruction in io memory loops
2023-02-22 17:19:51 -08:00
Michael Scire
695c125721
kern: use different psr masks for 64 and 32-bit El0 threads
2023-02-22 17:19:51 -08:00
Michael Scire
e7e3e7b374
kern: increase stack parameter size by 0x10
2023-02-22 17:19:51 -08:00
Michael Scire
3a5f406c5f
kern: update scheduler for new switch count tracking logic
2023-02-21 03:12:17 -07:00
Michael Scire
8176f085f1
gpio: really not sure how this works before, lol
2023-01-30 23:13:45 -07:00
Michael Scire
7a69f2f062
kern/pm: only steal 8 MB from applet.
...
WebApplet crashes on exit with 16 more MB stolen, apparently.
2023-01-24 19:54:28 -07:00
Michael Scire
32b590e7ab
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "b7711b8fb"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "b7711b8fb"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2023-01-24 14:39:54 -07:00