Michael Scire
88dd414721
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "44279dbac"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "44279dbac"
git-subrepo:
version: "0.4.1"
origin: "https://github.com/ingydotnet/git-subrepo "
commit: "a04d8c2"
2021-04-11 04:02:17 -07:00
Michael Scire
03a98635d8
fs: add (stubbed) OperateRangeWithBuffer implementation
2021-04-11 03:42:16 -07:00
Michael Scire
461e2ced6f
erpt: add (stubbed, TODO after 0.19.0) support for 12.0.0
2021-04-11 03:42:16 -07:00
Michael Scire
b2d2f65b87
boot2: grc is no longer launched by boot2 on 12.0.0+
2021-04-11 03:42:16 -07:00
Michael Scire
b2b0c50802
pgl: update to use tipc (untested)
2021-04-11 03:42:16 -07:00
Michael Scire
1118421fa6
strat: changes for sm tipc (boots 11.0.1, now)
2021-04-11 03:42:16 -07:00
Michael Scire
b1b3914ccf
tipc: Result is first raw data word, not last
2021-04-11 03:42:16 -07:00
Michael Scire
9be8b32311
tipc/sm: various fixes for issues
2021-04-11 03:42:16 -07:00
Michael Scire
57c8bc432d
sm: reimplement using tipc instead of cmif (probably broken, untested)
2021-04-11 03:42:16 -07:00
Michael Scire
58776f5ba8
tipc: server processor fixes (compiles!)
2021-04-11 03:42:16 -07:00
Michael Scire
affeeb2724
tipc: implement ServerManager processing logic
2021-04-11 03:42:16 -07:00
Michael Scire
822875ecf5
tipc: implement framework/server support logic (except for actual processing)
2021-04-11 03:42:16 -07:00
Michael Scire
e3a65b1405
tipc: fix deserialization of buffers
2021-04-11 03:42:16 -07:00
Michael Scire
20a7fa1588
tipc: hard-enforce boolean constraints in command processing generation
2021-04-11 03:42:16 -07:00
Michael Scire
315b7bdf22
tipc: implement service object interface generation
2021-04-11 03:42:16 -07:00
Michael Scire
ec988c5a99
tipc: first draft object allocation logic
2021-04-11 03:42:16 -07:00
Michael Scire
21b883a75c
tipc: fix compilation issues with core serialization routines
2021-04-11 03:42:16 -07:00
Michael Scire
e93d71d932
tipc: tentative core serialization logic (missing imports, won't compile)
2021-04-11 03:42:16 -07:00
Michael Scire
dc6a0d7562
ams: add target firmware 12.0.0, fusee recognition
2021-04-11 03:42:16 -07:00
Michael Scire
1d2be0a2eb
kern: mesosphere now implements kernel/sdk 12.3
2021-04-11 03:42:16 -07:00
Michael Scire
96937a611d
kern: fuck the KPolice^H^H^H^H^H^HPageGroups
2021-04-11 03:42:16 -07:00
Michael Scire
dc7862882f
kern: who needs __purecall?
2021-04-11 03:42:16 -07:00
Michael Scire
6faa3534bf
kern: update pinning semantics for terminating threads
2021-04-11 03:42:16 -07:00
Michael Scire
afb1d68d06
kern: ensure handle table is finalized when deferring termination
2021-04-11 03:42:16 -07:00
Michael Scire
911e431d65
kern: simplify handle table registration for port/session
2021-04-11 03:42:16 -07:00
Michael Scire
ee91063bbb
kern: update kdebug process management semantics
2021-04-11 03:42:16 -07:00
Michael Scire
cbdf33260e
kern: update port/session state semantics
2021-04-11 03:42:16 -07:00
Michael Scire
c62a7381f8
kern: update KLightConditionVariable
2021-04-11 03:42:16 -07:00
Michael Scire
b4498734e4
kern: optimize KHandleTable to use indices instead of pointers
2021-04-11 03:42:16 -07:00
Michael Scire
4407237f5b
kern: KAutoObject destruction is now scheduled for next dpc-time
2021-04-11 03:42:16 -07:00
Michael Scire
15956fcf9a
kern: update for new slab resource counts/extents
2021-04-11 03:42:16 -07:00
Michael Scire
6a368d3d1a
kern: reallocate pool distributions for 8GB units
2021-04-11 03:42:16 -07:00
Michael Scire
8e4be9aef9
kern: simplify global rng initialization
2021-04-11 03:42:16 -07:00
Michael Scire
0f8b7be2d2
kern: load initial process binary from user pool, rather than from pt heap
2021-04-11 03:42:16 -07:00
Michael Scire
a1e137cc1c
kern: update Initialize0 for new changes
2021-04-11 03:42:16 -07:00
Michael Scire
504472af4e
kern: update KConditionVariable::WaitForAddress/Wait
2021-04-11 03:42:16 -07:00
Michael Scire
19b253fd17
kern: trivially optimize userspace io memory write
2021-04-11 03:42:16 -07:00
Michael Scire
01f5c89902
kern: add bounds checking to KHandleTable::Register/Unreserve
2021-04-11 03:42:16 -07:00
Michael Scire
44ccbc2a7b
kern: update set/way cache operations for new semantics
2021-04-11 03:42:16 -07:00
Michael Scire
6e4664ee05
kern: if a page table region is zero-size, nothing overlaps it
2021-04-11 03:42:16 -07:00
Michael Scire
85f9355184
kern: use KScopedLightLockPair helper for page table pair-locks
2021-04-11 03:42:16 -07:00
Michael Scire
60b5bd73b7
kern: track mapped ipc server memory in page table
2021-04-11 03:42:16 -07:00
Michael Scire
53e7aa0a20
kern: add KPageTableBase::Read/WriteDebugIoMemory
2021-04-11 03:42:16 -07:00
Michael Scire
561a16a348
kern: flush memory before reading in KPageTableBase::ReadDebugMemory
2021-04-11 03:42:16 -07:00
Michael Scire
1fce7b08b1
kern: update KMemoryBlockManagerUpdaterAllocator for new ctor/init semantics
2021-04-11 03:42:16 -07:00
Michael Scire
c216f92a91
kern: swap tpidr_el1/cntv_cval_el0 as scratch vs exception stack
2021-04-11 03:42:16 -07:00
Michael Scire
2f930c2d5f
kern: support immortal processes
2021-04-11 03:42:16 -07:00
Michael Scire
256eb92f4c
kern: update process/thread for new running/termination semantics
2021-04-11 03:42:16 -07:00
Michael Scire
ec1d9c4c49
kern: unconditionally set thread state when appropriate
2021-04-11 03:42:16 -07:00
Michael Scire
3356eddcba
kern: update kernel waiter management rules
2021-04-11 03:42:16 -07:00
Michael Scire
f67d1b7026
kern: update KInterruptEvent to store core id
2021-04-11 03:42:16 -07:00
Michael Scire
e64fef109c
kern: update pinned thread priority rules
2021-04-11 03:42:16 -07:00
Michael Scire
1b2cf173b3
kern: add new checks to SetThreadPriority/CoreMask
2021-04-11 03:42:16 -07:00
Michael Scire
2fb258ca7e
kern: update KInitialPageTable/KInitialPageAllocator
2021-04-11 03:42:16 -07:00
Michael Scire
962cf97150
kern: KLinkedList no longer exists
2021-04-11 03:42:16 -07:00
Michael Scire
b3bd443636
svc: sanitize booleans in autogenerated abi stubs
2021-04-11 03:42:16 -07:00
Michael Scire
4b9e7c7d27
kern: bump svc limit to 192 from 128
2021-04-11 03:42:16 -07:00
hexkyz
46612156f4
exo: add new dram ID
2021-04-11 03:42:16 -07:00
Michael Scire
75a2052144
ncm: fix GameCardStorageRoot mount point ( closes #1404 )
2021-03-24 07:17:03 -07:00
Adubbz
5666c59657
ncm: Updated ListContentId for 11.0.0
2021-03-22 14:58:28 -07:00
Michael Scire
c99ce36d7d
ams: convert to util::ConstructAt where appropriate
2021-03-21 20:36:49 -07:00
Michael Scire
d84dcb653d
ams: prefer construct_at/destroy_at over placement new/explicit destructor
2021-03-21 20:30:40 -07:00
Michael Scire
aff0da9427
ams: remove TYPED_STORAGE() macro in favor of template
2021-03-21 18:47:30 -07:00
Michael Scire
8d9174b227
ams: bump version to 0.19.0.
...
Release (probably) not actually imminent, I just don't want to forget.
2021-03-21 13:16:49 -07:00
Michael Scire
c8404e8452
boot2: clean up pre-0.19.0 ams contents on upgrade
2021-03-21 13:16:30 -07:00
Michael Scire
79e4c82d7e
ams: distribute sysmodules in single file as stratosphere.romfs
2021-03-21 13:16:30 -07:00
Michael Scire
a7564cf303
kern: add extension InfoType for retrieving current process handle.
2021-03-17 17:48:30 -07:00
SciresM
5362ee9450
[tma2] [Ongoing] Continue implementing modules for tma2. ( #1388 )
...
* cs: add stub sysmodule to host command shell server
* cs: implement logic for main (linker error paradise, for now)
* cs: implement more of the system module's skeleton
* htcs: update client type names for libnx pr merge
2021-03-16 17:13:30 -07:00
Michael Scire
021d4c88fa
kern: use fix usage of incorrect page table for UserBuffer ipc
2021-03-13 15:14:36 -08:00
Michael Scire
deb4aece9a
kern: fix inverted conditional in KDebugBase::SetThreadContext
2021-03-11 12:53:43 -08:00
SciresM
a6729171d3
set.mitm: fake compatibility for usb!usb30_force_enabled on 9.0.0+ ( #1391 )
...
* set.mitm: fake compatibility for usb!usb30_force_enabled on 9.0.0+
* set.mitm: add value meaning comment for usb!usb30_force_enabled
* loader: pretend to be polite about patch ordering
2021-03-01 14:18:27 -08:00
Michael Scire
c9015581ca
boot2: fix tma launch when htc is disabled
2021-02-26 08:08:05 -08:00
Michael Scire
35c816d62f
htclow: fix ordering of channels, uninitialized bug in service json parse
2021-02-26 04:49:20 -08:00
Michael Scire
c7e4f963e8
fs: fix GetFileTimeStampRawForDebug
2021-02-26 04:49:20 -08:00
Michael Scire
0da3b2b273
tio: implement SdCardObserver (finishes sysmodule)
2021-02-26 04:49:20 -08:00
Michael Scire
cee1ecd06f
tio: add stub sysmodule to host target io server
2021-02-26 04:49:20 -08:00
Michael Scire
953246a175
htc: disable socket driver, needs design thought before we can turn it on for real.
2021-02-24 04:06:54 -08:00
Michael Scire
d8faa37de0
socket: fix config size calculations
2021-02-24 04:06:54 -08:00
Michael Scire
64c7c6b2a5
ams: implement socket api for htclow socket driver
2021-02-24 04:06:54 -08:00
Michael Scire
1c974a387c
htc: implement socket driver (socket api not really impl'd yet)
2021-02-24 04:06:54 -08:00
Michael Scire
b5ab491603
htc: implement htcmisc service object commands
2021-02-24 04:06:54 -08:00
Michael Scire
8b32b9eadf
kern: Increase reserved system memory, require mesosphere for htc/tma
2021-02-24 04:06:54 -08:00
Michael Scire
ce149f996c
htc: configure usage via system setting
2021-02-24 04:06:54 -08:00
Michael Scire
0ec54ed492
htcs: fixes, echo server is now fully functional
2021-02-24 04:06:54 -08:00
Michael Scire
72de4d85f3
htcs: implement remaining client bindings
2021-02-24 04:06:54 -08:00
Michael Scire
d0673aa2fb
htcs: implement client socket bindings
2021-02-24 04:06:54 -08:00
Michael Scire
f7fcb54622
htcs: implement virtual socket collection
2021-02-24 04:06:54 -08:00
Michael Scire
ec643789ab
htcs: implement data channel manager
2021-02-24 04:06:54 -08:00
Michael Scire
70caadafd5
htcs: implement rpc tasks
2021-02-24 04:06:54 -08:00
Michael Scire
7667104961
htcs: hook up HtcsService to rpc client
2021-02-24 04:06:54 -08:00
Michael Scire
0c791f2279
htcs: fix magic template argument deduction, do Close/Connect/Bind
2021-02-24 04:06:54 -08:00
Michael Scire
f71943c03a
htcs: declare all rpc tasks
2021-02-24 04:06:54 -08:00
Michael Scire
536e3e99a8
htcs: hook up CreateSocket/RpcClient Begin<>/End<>
2021-02-24 04:06:54 -08:00
Michael Scire
abff428212
htcs: hook up manager impl to (unimplemented) service
2021-02-24 04:06:54 -08:00
Michael Scire
1541985222
htcs: hook manager up to (unimplemented) manager impl
2021-02-24 04:06:54 -08:00
Michael Scire
61929d6e21
htcs: hook service objects up to (unimplemented) manager apis
2021-02-24 04:06:54 -08:00
Michael Scire
f0ef9fb918
htc: fixes for WriteFileLarge/sending over data channel
2021-02-24 04:06:54 -08:00
Michael Scire
7621bd4e13
htcfs: fix CreateFile packet header
2021-02-24 04:06:54 -08:00
Michael Scire
d20bceff75
htc: implement the remaining commands for htcfs
2021-02-24 04:06:54 -08:00
Michael Scire
1961cb1034
htc: ReadDirectoryLarge/data channel support
2021-02-24 04:06:54 -08:00
Michael Scire
9daec3a66a
htc: Implement (almost) all host-directory commands
2021-02-24 04:06:54 -08:00
Michael Scire
e79417c37c
htcfs: implement OpenDirectory/CloseDirectory
2021-02-24 04:06:54 -08:00
Michael Scire
b371487525
sf: optimize argument parsing for const LargeData &
2021-02-24 04:06:54 -08:00
Michael Scire
5c97469348
htc: implement htcfs protocol bringup
2021-02-24 04:06:54 -08:00
Michael Scire
99a38dce32
htc: fix event wait loops for rpc clients
2021-02-24 04:06:54 -08:00
Michael Scire
f28a410ba0
htc: fixes, can now enter ReadyState with wip starlink code
2021-02-24 04:06:54 -08:00
Michael Scire
5fc1981061
htc: fix htcfs sf definition
2021-02-24 04:06:54 -08:00
Michael Scire
1bd0094bee
htc: finish last code for Main()
2021-02-24 04:06:54 -08:00
Michael Scire
870b45f208
htc: add htcfs server/service object skeletons
2021-02-24 04:06:54 -08:00
Michael Scire
9fbbb9fadb
htclow: add Channel wrapper class
2021-02-24 04:06:54 -08:00
Michael Scire
dec06ff649
htc: add htcfs service api definitions
2021-02-24 04:06:54 -08:00
Michael Scire
b898241112
htcs: add hipc server/service object skeletons
2021-02-24 04:06:54 -08:00
Michael Scire
10255f7f51
htc: skeleton HtcsManagerImpl, implement HtcsMonitor
2021-02-24 04:06:54 -08:00
Michael Scire
cb5a706659
htcs: add sf interface info/types
2021-02-24 04:06:54 -08:00
Michael Scire
4d86863f2c
htc: ObserverThread (mostly), system now boots + works with htc in bg
2021-02-24 04:06:54 -08:00
Michael Scire
79a3f442d6
htc: implement psc/pm loop
2021-02-24 04:06:54 -08:00
Michael Scire
7485a1968a
htc: implement HtcmiscImpl::ServerThread/HtcmiscRpcServer::ReceiveThread
2021-02-24 04:06:54 -08:00
Michael Scire
3be005b638
htc: Implement RpcClient::ReceiveThread + SendThread
2021-02-24 04:06:54 -08:00
Michael Scire
d60b1abed0
htc: Implement HtcmiscImpl::ClientThread
2021-02-24 04:06:54 -08:00
Michael Scire
1867c31f63
htc: add RpcTaskQueue/RpcTaskIdFreeList
2021-02-24 04:06:54 -08:00
Michael Scire
82757cd1b4
htc: nullptr != false
2021-02-24 04:06:54 -08:00
Michael Scire
f5e98de1a3
htc: add RpcTaskTable
2021-02-24 04:06:54 -08:00
Michael Scire
0880cebc4d
htc: implement htcmisc rpc tasks
2021-02-24 04:06:54 -08:00
Michael Scire
1f03b11dbc
htc: skeleton constructors for htcmisc
2021-02-24 04:06:54 -08:00
Michael Scire
b925344c3b
htc: implement remainder of Mux/Tasks
2021-02-24 04:06:54 -08:00
Michael Scire
42cf3f50d7
htc: implement mux side of connecting (and more)
2021-02-24 04:06:54 -08:00
Michael Scire
70aae4e27a
htc: fix driver manager c/p error
2021-02-24 04:06:54 -08:00
Michael Scire
87165e0f08
htc: implement remaining htclow::HtclowManagerImpl funcs (mux impls pending)
2021-02-24 04:06:54 -08:00
Michael Scire
e20c2450ce
htc: declare and begin impl of HtclowManagerImpl interface
2021-02-24 04:06:54 -08:00
Michael Scire
968ce12492
htc: optimize Mux::QuerySendPacket
2021-02-24 04:06:54 -08:00
Michael Scire
00ab210e66
mux: optimize many accesses to O(log(n)) vs Nintendo's O(log(n)^2)
2021-02-24 04:06:54 -08:00
Michael Scire
4cb6c63516
htc: implement HtclowDriver
2021-02-24 04:06:54 -08:00
Michael Scire
1963ae7ec0
htc: begin skeletoning types for HtcmiscImpl
2021-02-24 04:06:54 -08:00
Michael Scire
889f144b27
htc: hook up creation of the htc manager service object
2021-02-24 04:06:54 -08:00
Michael Scire
4408ad6a47
htc: module id names, skeleton rest of main
2021-02-24 04:06:54 -08:00
Michael Scire
4ed665bcd3
htc: implement remaining worker thread send logic (for channel mux)
2021-02-24 04:06:54 -08:00
Michael Scire
df3d62df84
htc: send logic for HtcctrlService, bugfixes (thanks @misson20000)
2021-02-24 04:06:54 -08:00
Michael Scire
0977ee72ca
rapidjson: add customization point for allocation/asserts
2021-02-24 04:06:54 -08:00
Michael Scire
2cdfde6637
htc: add remaining worker receive thread logic
2021-02-24 04:06:54 -08:00
Michael Scire
6fc24d8883
htc: implement service channel parsing (ReceiveReadyPacket)
2021-02-24 04:06:54 -08:00
Michael Scire
4e9bc617bb
rapidjson: import -master as ams::rapidjson
2021-02-24 04:06:54 -08:00
Michael Scire
679fec2ddc
htc: implement much of worker receive logic
2021-02-24 04:06:54 -08:00
Michael Scire
8f85cc17dc
htc: fix copy/paste error in usb driver
2021-02-24 04:06:54 -08:00
Michael Scire
e40eece74e
htc: free ourselves from the tyranny of numerical enums
2021-02-24 04:06:54 -08:00
Michael Scire
2341f18edd
htc: implement htclow listener thread
2021-02-24 04:06:54 -08:00
Michael Scire
c9c41e0e8d
htc: actually use the usb driver
2021-02-24 04:06:54 -08:00
Michael Scire
c59388caf1
htc: implement complete usb driver
2021-02-24 04:06:54 -08:00
Michael Scire
c878123274
htc: implement (fixing linker errors) through HtclowManagerImpl::OpenDriver
2021-02-24 04:06:54 -08:00
Michael Scire
1687bf2e07
htclow: fix copyright headers, skeleton more manager types
2021-02-24 04:06:54 -08:00
Michael Scire
cf99f54a34
htc: skeleton much of the type hierarchy for htclow manager
2021-02-24 04:06:54 -08:00