Commit Graph

384 Commits

Author SHA1 Message Date
Michael Scire
96190af3dc util: fix consteval CountTrailingZeroes impl 2021-10-15 23:54:38 -07:00
Michael Scire
3744ee6fff ams: bump api verrsion pre-emptively to 1.2.0 2021-10-15 23:54:37 -07:00
Michael Scire
3218308524 loader: refactor ro manager/improve accuracy 2021-10-15 23:54:36 -07:00
Michael Scire
0abb1e474e spl: refactor for accuracy/move into libstrat 2021-10-15 23:54:36 -07:00
Michael Scire
5872a51c18 svc: use m_ for member variables 2021-10-15 23:54:35 -07:00
Michael Scire
116e41f790 exo/vapours: refactor member variables to m_ over this-> 2021-10-15 23:54:34 -07:00
Michael Scire
3b5f56ab9f ams: replace most remaining operator & with std::addressof 2021-10-15 23:54:34 -07:00
Adubbz
ea0bb620f2 settings: implement KeyValueStore (#1659)
* settings: implement KeyValueStore and dependencies

* settings: update KeyValueStore for recent refactoring

* settings: address feedback
2021-10-15 23:54:33 -07:00
Michael Scire
fd1b6d4578 libstrat: enable -Wextra, -Werror
This caught an embarrassingly large number of bugs.
2021-10-07 23:06:28 -07:00
Michael Scire
390ce66da1 svc: refactor/rename MemoryInfo fields 2021-10-07 23:06:28 -07:00
Michael Scire
782e449543 strat: remove map namespace, svc: add address space defs 2021-10-07 23:06:27 -07:00
Michael Scire
612b9e2f01 strat: prefer os::NativeHandle to Handle/svc::Handle where sensible 2021-10-07 23:06:26 -07:00
Michael Scire
5a71876ca8 strat: use svc:: over ::svc 2021-10-07 23:06:26 -07:00
Michael Scire
002422d5dc ams: the copyright^H^H^H^H^H^H^Hmplex plane is the algebraic closure of the reals 2021-10-07 23:06:25 -07:00
Michael Scire
57f439afe7 result: improve Includes codegen 2021-10-07 23:06:24 -07:00
Michael Scire
7665721e03 ams-libs: AMS_ASSERT no longer invokes expression 2021-10-07 23:06:21 -07:00
Michael Scire
8ecddf498a kern: use util::BitFlagSet for capability flags 2021-10-07 23:06:18 -07:00
Michael Scire
e05183a6f4 ams: bump version to 1.1.1 2021-09-24 09:17:12 -07:00
Michael Scire
33ae401bc8 svc: bump supported version 2021-09-19 10:35:39 -07:00
Michael Scire
ecb607bade kern/svc: implement IoPool/Region svc support 2021-09-19 10:35:39 -07:00
Michael Scire
b579a6d75e svc/kern/dd: remove MapDeviceAddressSpace() 2021-09-19 10:35:39 -07:00
Michael Scire
22bb619873 kern: add new KMemoryState 2021-09-19 10:35:37 -07:00
Michael Scire
b4c67d9c3b kern: update GetInfo logic for tick count InfoTypes 2021-09-19 10:35:35 -07:00
Adubbz
66104b830a ncm: skeleton new commands 2021-09-19 10:35:34 -07:00
Michael Scire
a8bccc95ab sprofile: fully reimplement sprof:bg + sprof:sp 2021-09-19 10:35:33 -07:00
Michael Scire
8a35d51406 sprofile: implement non-importer bgagent commands 2021-09-19 10:35:33 -07:00
Michael Scire
196c524768 sprofile: implement OpenProfileUpdateObserver 2021-09-19 10:35:33 -07:00
Michael Scire
6c012b8371 ams: update current target firmware 2021-09-19 10:35:32 -07:00
Michael Scire
a669f3dcfa fusee/exo: update for recognition of 13.0.0 2021-09-19 10:35:31 -07:00
Michael Scire
33d58424c7 kern: add hardware single step extension 2021-09-19 10:35:28 -07:00
Michael Scire
7bb3153938 osdbg: implement thread info api 2021-09-19 10:35:27 -07:00
SciresM
277d2193e2 LogManager: implement system module, client api, logging api (#1617)
Some notes:

* Unless `atmosphere!enable_log_manager` is true, Nintendo's log manager will be used instead.
  * This prevents paying memory costs for LM when not enabling logging.
  * To facilitate this, Atmosphere's log manager has a different program id from Nintendo's.
  * `atmosphere!enable_htc` implies `atmosphere!enable_log_manager`.
* LogManager logs to tma, and the SD card (if `lm!enable_sd_card_logging` is true, which it is by default).
* Binary logs are saved to `lm!sd_card_log_output_directory`, which is `atmosphere/binlogs` by default.
2021-09-19 10:35:25 -07:00
Michael Scire
7375d583c6 fusee: tactically don't trash PLLA1, fixes audio corruption on boot 2021-09-06 16:32:49 -07:00
Michael Scire
9c523b98fd ams-1.0.0: bump version number well ahead of time 2021-09-06 16:32:48 -07:00
Michael Scire
95eca16642 fusee_cpp: import mariko mtc 2021-09-06 16:32:43 -07:00
Michael Scire
6c6694d2c9 fusee_cpp: begin mariko mtc work 2021-09-06 16:32:43 -07:00
Michael Scire
a64b838b9c fusee_cpp: implement cpu startup 2021-09-06 16:32:42 -07:00
Michael Scire
0d31962902 fusee_cpp: import full erista mtc logic 2021-09-06 16:32:39 -07:00
Michael Scire
91d23d9634 fusee_cpp: implement erista pll selection logic for mtc 2021-09-06 16:32:38 -07:00
Michael Scire
797c61b066 fusee_cpp: implement bpmp overclock 2021-09-06 16:32:37 -07:00
Michael Scire
ba768c7f62 fusee_cpp: cache cleanup, confirmed working on hardware 2021-09-06 16:32:36 -07:00
Michael Scire
08b7808b2a fusee_cpp: implement sd card init 2021-09-06 16:32:36 -07:00
Michael Scire
6016ab3447 fusee_cpp: implement sdram lp0 scratch param save 2021-09-06 16:32:35 -07:00
Michael Scire
fdab233923 fusee_cpp: implement SDRAM initialization 2021-09-06 16:32:35 -07:00
Michael Scire
26d94b940e fusee-cpp: a little more init in SecureInitialize 2021-09-06 16:32:34 -07:00
Michael Scire
660f1c61f2 fusee-cpp: finish SecureInitialize 2021-09-06 16:32:34 -07:00
Michael Scire
98df0a1906 fusee-cpp: implement SecureInitialize besides InitializeClock() 2021-09-06 16:32:34 -07:00
Michael Scire
6550e73754 fusee-cpp: sketch out remainder of secure initialize 2021-09-06 16:32:33 -07:00
Michael Scire
bc3bcb02ce fusee-cpp: Implement mbist workaround 2021-09-06 16:32:33 -07:00
Michael Scire
2d2f6d4237 ams: bump version to 0.20.1 2021-09-06 16:32:32 -07:00
Michael Scire
87a1de0b1d ams: bump to 0.2.0
NOTE: Release will not occur until hekate is ready to handle new sept-less release format.
2021-08-20 13:34:02 -07:00
Michael Scire
dc3f54a713 ams: std::optional -> util::optional 2021-07-12 01:59:51 -07:00
Michael Scire
eb667fea51 ams: basic support for 12.1.0 2021-07-06 07:28:33 -07:00
Michael Scire
11ea38a7d7 ams: bump version to 0.19.4 2021-06-08 08:09:23 -07:00
Michael Scire
9ac6f527e2 ams: update for 12.0.2 2021-05-12 09:09:44 -07:00
Michael Scire
acee57e888 loader: avoid UB when doing count trailing zeros 2021-04-30 10:04:09 -07:00
Michael Scire
d78e6dfd60 ams: bump api version to 0.19.2 2021-04-30 08:56:10 -07:00
Michael Scire
5deb52d1eb erpt: implement forced shutdown detection 2021-04-30 08:56:10 -07:00
Michael Scire
888b39fa50 ams: assume gcc 11 2021-04-29 03:04:54 -07:00
Michael Scire
d8e35f2277 exo/meso: update for gcc 11 compatibility 2021-04-29 03:04:54 -07:00
Michael Scire
2d67f66c44 util: add compile-time validation tests for intrusive red black trees 2021-04-29 03:04:53 -07:00
Michael Scire
2ccba9adbb util: implement red black trees as templates over macros 2021-04-29 03:04:53 -07:00
Michael Scire
86c2eec8e9 ams: bump to 0.19.1 2021-04-12 17:14:19 -07:00
Michael Scire
2542f282e0 sm: reimplement using tipc instead of cmif (probably broken, untested) 2021-04-11 03:59:24 -07:00
Michael Scire
8301b868fd tipc: fix compilation issues with core serialization routines 2021-04-11 03:59:21 -07:00
Michael Scire
7145b887bd tipc: tentative core serialization logic (missing imports, won't compile) 2021-04-11 03:59:21 -07:00
Michael Scire
4346c028a8 ams: add target firmware 12.0.0, fusee recognition 2021-04-11 03:59:20 -07:00
Michael Scire
f863ad0a32 kern: mesosphere now implements kernel/sdk 12.3 2021-04-11 03:59:20 -07:00
Michael Scire
3ebf91304e kern: update Initialize0 for new changes 2021-04-11 03:59:15 -07:00
Michael Scire
afaccc9576 svc: sanitize booleans in autogenerated abi stubs 2021-04-11 03:59:07 -07:00
Michael Scire
9b47aa6e08 ams: prefer construct_at/destroy_at over placement new/explicit destructor 2021-04-11 03:59:04 -07:00
Michael Scire
1861791c1c ams: remove TYPED_STORAGE() macro in favor of template 2021-04-11 03:59:03 -07:00
Michael Scire
db61376b5b ams: bump version to 0.19.0.
Release (probably) not actually imminent, I just don't want to forget.
2021-04-11 03:59:02 -07:00
Michael Scire
f09107ff50 kern: add extension InfoType for retrieving current process handle. 2021-04-11 03:59:01 -07:00
SciresM
e000dc9745 [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-04-11 03:59:01 -07:00
Michael Scire
09f34b1323 ams: implement socket api for htclow socket driver 2021-04-11 03:58:55 -07:00
Michael Scire
7d528a30df htc: implement socket driver (socket api not really impl'd yet) 2021-04-11 03:58:54 -07:00
Michael Scire
353e7f1a2c htc: implement htcmisc service object commands 2021-04-11 03:58:54 -07:00
Michael Scire
013a073a34 htcs: implement rpc tasks 2021-04-11 03:58:51 -07:00
Michael Scire
2850786a0b htcs: hook up HtcsService to rpc client 2021-04-11 03:58:51 -07:00
Michael Scire
4006c4e7b9 htcs: fix magic template argument deduction, do Close/Connect/Bind 2021-04-11 03:58:51 -07:00
Michael Scire
a14d7222d0 htcs: hook up CreateSocket/RpcClient Begin<>/End<> 2021-04-11 03:58:50 -07:00
Michael Scire
9c78a955ce htcs: hook up manager impl to (unimplemented) service 2021-04-11 03:58:50 -07:00
Michael Scire
98b482a766 htcs: hook manager up to (unimplemented) manager impl 2021-04-11 03:58:49 -07:00
Michael Scire
099594469b htcs: hook service objects up to (unimplemented) manager apis 2021-04-11 03:58:49 -07:00
Michael Scire
149cfe4abc htc: Implement (almost) all host-directory commands 2021-04-11 03:58:47 -07:00
Michael Scire
1af323f5b8 htcfs: implement OpenDirectory/CloseDirectory 2021-04-11 03:58:47 -07:00
Michael Scire
b56c5aaaeb htc: implement htcfs protocol bringup 2021-04-11 03:58:46 -07:00
Michael Scire
435211a044 htclow: add Channel wrapper class 2021-04-11 03:58:44 -07:00
Michael Scire
bd05b91eb0 htc: Implement RpcClient::ReceiveThread + SendThread 2021-04-11 03:58:41 -07:00
Michael Scire
8d3f11796a htc: add RpcTaskQueue/RpcTaskIdFreeList 2021-04-11 03:58:40 -07:00
Michael Scire
3d4fa15b09 htc: implement htcmisc rpc tasks 2021-04-11 03:58:39 -07:00
Michael Scire
6a99b7fcd5 htc: implement mux side of connecting (and more) 2021-04-11 03:58:38 -07:00
Michael Scire
fda4ddca62 htc: declare and begin impl of HtclowManagerImpl interface 2021-04-11 03:58:37 -07:00
Michael Scire
042de46692 htc: implement HtclowDriver 2021-04-11 03:58:35 -07:00
Michael Scire
e1b47dab0e htc: implement remaining worker thread send logic (for channel mux) 2021-04-11 03:58:34 -07:00
Michael Scire
cb8ed30517 htc: add remaining worker receive thread logic 2021-04-11 03:58:32 -07:00
Michael Scire
c44177cbcc htc: implement service channel parsing (ReceiveReadyPacket) 2021-04-11 03:58:32 -07:00
Michael Scire
c19e50bff1 htc: implement much of worker receive logic 2021-04-11 03:58:31 -07:00
Michael Scire
9fd6ed27af htc: implement htclow listener thread 2021-04-11 03:58:30 -07:00