Michael Scire
e256261b80
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "ff2883361"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "ff2883361"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-11-04 13:40:55 -07:00
Michael Scire
47218f0da8
ams: overhaul fs.mitm romfs ownership, bump to 1.2.4
2021-11-04 13:38:41 -07:00
Michael Scire
409a48ec73
docs: add changelog for 1.2.3
2021-11-04 00:23:23 -07:00
Michael Scire
0c93cefd39
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "e7b84767c"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "e7b84767c"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-11-04 00:00:26 -07:00
Michael Scire
0bbc907907
git subrepo pull (merge) libraries
...
subrepo:
subdir: "libraries"
merged: "8764bd406"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "12d0ba172"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-11-03 23:59:17 -07:00
Michael Scire
4a4a1f0e87
ams: bump api version to 1.2.3
2021-11-03 23:57:30 -07:00
Michael Scire
705dd95375
dmnt2: fix gdb register output
2021-11-03 23:56:25 -07:00
Michael Scire
2d5751356b
creport: fix errant )
2021-11-03 23:56:25 -07:00
Michael Scire
b140834b7e
dmnt2: try to avoid writing out of bounds when generating packets
2021-11-03 23:56:25 -07:00
Michael Scire
e3d2af6b3f
dmnt2: fix module name detection, add auto-break on hb nro launch
2021-11-03 23:56:25 -07:00
Michael Scire
6145b3b72c
dmnt2: detect thread name, add monitor get mapping(s), increase buffer sizes
2021-11-03 23:56:25 -07:00
Michael Scire
aba7e4ca7d
dmnt2: remove memory-map output which does nothing for us
2021-11-03 23:56:25 -07:00
Michael Scire
4cc5e9cdfd
kern/dmnt2: allow retrieval of process info via extension
...
This also fixes ctrl-c break in gdbstub, and fixes crash on unknown monitor cmd.
2021-11-03 23:56:25 -07:00
Michael Scire
ca0308c7ca
dmnt2: first pass at wait-for-application
2021-11-03 23:56:25 -07:00
Michael Scire
1d908295fe
dmnt2: add monitor get base, TODO responses for monitor wait *
2021-11-03 23:56:25 -07:00
Michael Scire
277bd101c5
dmnt2: add memory-map read, improve module shared-lib names
2021-11-03 23:56:25 -07:00
Michael Scire
3dce23773a
Adding setting usage to dmnt2 means dmnt2 needs settings access
2021-11-03 23:56:25 -07:00
Michael Scire
4489513f7c
dmnt: enable experimental standalone usage of gdbstub, while starlink is in dev
2021-11-03 23:56:25 -07:00
Michael Scire
5eabca7f04
ams.mitm: more romfs building space/time tradeoffs.
...
This is needed for Animal Crossing 2.0.0, which has >99000 fucking files.
We now do several passes over dir/file tables instead of one pass,
doing entire hash tables before we touch dir/file tables. Thus we
no longer need to simultaneously allocate hash table and dir/file table space.
In addition, we now do repeated passes building a segment of hash tables
at a time, when insufficient memory is available. Similar is also now the
case for file/dir tables, we try 0x40000 work buffer and divide by 2
until we successfully alloc. We don't allow a work buffer <0x4000, for
write/perf reasons. If a game triggers that, let me know I guess.
Hard to imagine a worse torture-test for this code than animal crossing.
2021-11-03 23:52:38 -07:00
Michael Scire
a73e0e8f16
ams: add arm/armv8a to gitignore
2021-10-31 11:20:32 -07:00
Michael Scire
2161365f4f
ams: update for awareness of architecture revision
2021-10-31 11:18:17 -07:00
Michael Scire
258a83684e
creport: print symbols if they're present
2021-10-30 14:18:00 -07:00
Michael Scire
d2a757c39e
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "ceff2f371"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "ceff2f371"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-10-30 11:21:54 -07:00
Michael Scire
6cf5205a28
spl: fix legacy physical keyslot compatibility
2021-10-30 11:21:25 -07:00
Michael Scire
b9c90b9234
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "4d0f1b792"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "4d0f1b792"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-10-29 17:47:35 -07:00
Michael Scire
94e18b8c93
ams: bump version to 1.2.2
2021-10-29 17:47:01 -07:00
Michael Scire
4e92687cab
sprofile: various correctness fixes.
2021-10-29 17:38:44 -07:00
Michael Scire
2a0b99d9f9
sprofile: fix off-by-one in struct definition, fix GetImportableProfileUrls
2021-10-29 15:41:25 -07:00
Michael Scire
d1f3c4904b
kern: fix minor assembly bugs, avoid unnecessary function call in KScheduler hotloop
2021-10-28 19:16:23 -07:00
Michael Scire
92321ccbc8
kern: fix 32-bit light ipc svc handler asm
...
Nintendo used to do what we were doing because the function wasn't directly in the handler table,
but we've always been directly in the handler table, so we were trashing the last four arguments to light ipc
when called from aarch32. Nothing uses this, but needed to be fixed.
2021-10-28 15:42:52 -07:00
Michael Scire
db3004e844
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "0a0bd74ca"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "0a0bd74ca"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-10-27 22:57:39 -07:00
Michael Scire
3e97e4addf
init: disable fsdev cwd to prevent abort on fsdev usage (fsdev should not be used)
2021-10-27 22:57:09 -07:00
Michael Scire
4b7b33809f
kern: optimize and bring into line with N our pstate.i management
2021-10-27 15:00:07 -07:00
Michael Scire
e81a1ce5a8
kern: audit (and fix) our hardware maintenance instructions to match official kernel
2021-10-27 12:31:53 -07:00
Michael Scire
fb59d0ad43
Unfuck emummc to not corrupt remote on subrepo push.
...
subrepo:
subdir: "emummc"
merged: "a9d569594"
upstream:
origin: "https://github.com/m4xw/emuMMC "
branch: "develop"
commit: "a9d569594"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-10-26 01:52:41 -07:00
Michael Scire
73b74b904f
docs: add changelog for 1.2.1
2021-10-26 01:46:10 -07:00
Michael Scire
ed41b01b69
git subrepo push emummc
...
subrepo:
subdir: "emummc"
merged: "f11d22d74"
upstream:
origin: "https://github.com/m4xw/emuMMC "
branch: "develop"
commit: "f11d22d74"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-10-26 01:13:50 -07:00
Michael Scire
24143d8813
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "13c6987cc"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "13c6987cc"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-10-26 01:12:06 -07:00
Michael Scire
cb38b0b929
ams: bump version to 1.2.1
2021-10-26 01:09:16 -07:00
Michael Scire
dd04113f5d
emummc/fusee: support 13.1.0 FS
2021-10-26 01:08:37 -07:00
Michael Scire
0e81eac9d1
sprof: update for 13.1.0 (format version 1)
2021-10-26 00:51:44 -07:00
Michael Scire
a14dc6ed89
crypto: implement md5, which now used by sprof
2021-10-25 23:15:50 -07:00
Michael Scire
9cc6be4d57
kern: other dmbs in kernel were already dmb ish
2021-10-25 17:38:50 -07:00
Michael Scire
1d5f66be56
kern: implement 13.1.0 kernel changes
2021-10-25 17:34:47 -07:00
Michael Scire
ebca23305e
kern: simplify random bitmap selection to match latest Nintendo logic
2021-10-25 17:31:14 -07:00
Michael Scire
273f4a87ae
kern: add (and use) generic KSystemControlBase
2021-10-25 17:31:14 -07:00
Michael Scire
1f8bf41f0b
kern/test: add some scheduler tests (yields work correctly, all non-special priorities are cooperative/not pre-emptive
2021-10-25 17:31:14 -07:00
Michael Scire
ad03be9a38
hos: whoops
2021-10-25 17:31:14 -07:00
Michael Scire
d63be0737b
hos: better safe than sorry
2021-10-25 17:31:14 -07:00
Michael Scire
018ae08409
hos: allow turning off ams extension hard-reqs for unit testing
2021-10-25 17:31:14 -07:00
Michael Scire
2a842791eb
kern: add toggleable support for 40-bit physaddr caps
2021-10-25 17:31:14 -07:00
Michael Scire
d8a2b47b0a
util: add trait/macro for is_constexpr_constructible
2021-10-25 17:31:14 -07:00
Michael Scire
7c1347e692
test: add tests for SetMemoryPermission
2021-10-25 17:31:14 -07:00
Michael Scire
0a58e803be
kern/test: add wip qemu-virt board support to mesosphere
2021-10-25 17:31:14 -07:00
Michael Scire
10ed579c38
kernel_ldr: bring initial cache flush in line with Nintendo
2021-10-25 13:38:52 -07:00
Michael Scire
6ad3219656
kern: reflect nintendo cache management behavior for initial processes
2021-10-25 13:02:35 -07:00
Michael Scire
54dde406bc
kern: devirtualize KReadableEvent::Reset, KWorkerTask::DoWorkerTask
2021-10-24 20:41:38 -07:00
Michael Scire
fd187f952e
kern: enable lto for global instants (saves about a page in deduplicated code)
2021-10-24 17:06:43 -07:00
Michael Scire
8a661cee6e
kern: devirtualize KAutoObjectWithList::GetId()
2021-10-24 17:00:05 -07:00
Michael Scire
3e4acc62f3
kern: fix reorder-init in KHandleTable
2021-10-24 13:08:08 -07:00
Michael Scire
d0cd511c0e
kern: devirtualize most things that are free to devirtualize (see #1672 )
2021-10-24 13:04:31 -07:00
Michael Scire
aaa3770806
kern: optimize timespan -> tick codegen, improve .text layout
2021-10-24 01:16:24 -07:00
Michael Scire
89926f44c6
kern: use optimized red black tree finds for remaining holdouts
2021-10-23 21:58:48 -07:00
Michael Scire
436613401a
kern: devirtualize several KAutoObject functions
2021-10-23 21:13:26 -07:00
Michael Scire
2490bbf4f9
kern: KCacheHelper: better reflect nintendo coremask clearing logic
2021-10-23 17:44:30 -07:00
Michael Scire
71e4313d0c
kern: devirtualize remaining vcall for class token/dyncast
2021-10-23 16:04:04 -07:00
SciresM
36e4914be8
kern: avoid constexpr init for many objects (avoids unnecessary memory clear) ( #1668 )
2021-10-23 15:25:20 -07:00
Michael Scire
20716cb3de
kern: use new AtomicRef, use Atomic<bool>
2021-10-20 13:29:38 -07:00
Michael Scire
aed9d3f535
util: better match true std::atomic semantics
2021-10-20 11:02:17 -07:00
Michael Scire
c6d7174dd3
exo: use the fancy new optimal atomics
2021-10-20 08:52:54 -07:00
Michael Scire
d74f364107
kern/util: use custom atomics wrapper to substantially improve codegen
2021-10-19 15:24:15 -07:00
Michael Scire
52332e8d75
kern: use 13.0.0 revised KLightLock logic
2021-10-19 02:45:29 -07:00
Michael Scire
3fc695aff8
kern: fix capability check for thread priorities
2021-10-19 01:41:23 -07:00
Michael Scire
d3eb1268bc
kern: remove spurious assertion
2021-10-19 01:21:23 -07:00
Michael Scire
f3b532070b
kern: update scheduler for 13.0.0 change, fix some ctz/clz bugs
2021-10-19 01:20:28 -07:00
Michael Scire
42b6c2dd95
kern: fix use of plr vs plr_heap, fix close/unlock order in ArbitrateLock
2021-10-19 01:19:31 -07:00
Michael Scire
52c914afcc
ams-libs: move -Wno-invalid-offsetof to cxxflags, not cflags
2021-10-18 13:10:02 -07:00
Michael Scire
692247b26b
ams-libs: use nintendo_nx identifier for source file compat bpmp<->ccplex
2021-10-18 11:10:25 -07:00
Michael Scire
799a9a5f98
lr: fix EraseRedirection hang introduced by refactoring
2021-10-18 11:00:55 -07:00
Michael Scire
889d843718
ams: improve offsetof style consistency
2021-10-18 00:17:13 -07:00
Michael Scire
ec6d1a92ef
util: improve (and use) offsetof that's """standard compliant"""
2021-10-17 21:45:02 -07:00
Michael Scire
ad4c794aea
constexpr: resign ourselves to gcc dropping void -> T support
2021-10-17 02:39:16 -07:00
Michael Scire
96d3187f3e
kern: remove need for explicit reserved member in KAutoObject
2021-10-16 17:17:26 -07:00
Michael Scire
bfffe6b119
kern: devirtualize KAutoObject::DynamicCast<>()
...
This is an optimization that saves the most common type of virtual call in the kernel (DynamicCast)
by storing class token as a member, rather than getting it via virtual call every time.
This does not currently cost any memory space on 64-bit targets, due to pre-existing padding space.
This optimization can be turned off via a compile-time flag for accuracy.
2021-10-16 16:24:06 -07:00
Michael Scire
26c02e2019
kern/util: update structure layouts to match Nintendo (saves 0x10 per KThread/KSession)
2021-10-16 16:13:10 -07:00
Michael Scire
7805a3624e
fusee: accept non-zero rather than rejecting non-one for emummc enable
2021-10-16 12:26:17 -07:00
Michael Scire
64950dbd31
powctl: remove unused arm_neon header after last commit
2021-10-16 10:11:45 -07:00
Michael Scire
03efc31f9c
powctl: don't require arm64 arch for floating -> fixed conversion
2021-10-16 10:04:19 -07:00
Michael Scire
f7f83b4742
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "cf765c094"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "cf765c094"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2021-10-15 23:55:53 -07:00
Michael Scire
8634ea0f7c
docs: add changelog for 1.2.0
2021-10-15 23:54:25 -07:00
Michael Scire
2541f6dd71
tipc: implement special-case templating used by 13.0.0 pgl
2021-10-15 21:23:55 -07:00
Michael Scire
ff5f376c33
tipc: enable named-thread dispatch
2021-10-15 19:59:29 -07:00
Michael Scire
d1bc1a5c57
boot: update for 13.0.0/aula parameter changes ( closes #1477 )
2021-10-15 19:03:11 -07:00
Michael Scire
990daec3a2
powctl: integrate 13.0.0 changes (aula params not done yet)
2021-10-15 16:30:27 -07:00
Michael Scire
c04a262d49
boot: update display logic for 13.0.0 changes
2021-10-14 19:48:13 -07:00
Michael Scire
7e536f74ae
strat: fix some mitm server management logic
2021-10-14 00:40:43 -07:00
Michael Scire
891fa32bf1
tipc/sm: update more fully for 13.0.0 changes
2021-10-13 23:50:57 -07:00
Michael Scire
ca25a884b5
tipc: add additional logic from 13.0.0
2021-10-12 00:57:54 -07:00
Michael Scire
0189c5f1e6
sm/tipc: minor cleanup
2021-10-12 00:20:21 -07:00
Michael Scire
124a1a1ea0
sm: update for 13.0.0, optimize layout to reduce storage size.
2021-10-11 22:16:37 -07:00