Commit graph

40 commits

Author SHA1 Message Date
Michael Scire
7472bc1c7f Improve exception wrapping 2019-12-08 03:29:47 -08:00
Michael Scire
746dbfe018 ams_mitm: Implement emummc Nintendo folder redirection 2019-12-07 12:41:28 -08:00
Michael Scire
ad64cb5212 os/dd: primitive fixes 2019-12-07 12:41:28 -08:00
Michael Scire
ea3ebbaa7d strat: TitleId -> ProgramId, titles->contents 2019-12-07 12:41:28 -08:00
Michael Scire
d7a06057eb strat: split out common functionality for future meso use 2019-12-07 12:41:28 -08:00
Michael Scire
8cb77ac136 namespace sts -> namespace ams
namespace sts::ams -> ams::exosphere, ams::.

This is to facilitate future use of ams:: namespace code in
mesosphere, as we'll want to include ams::util, ams::result, ams::svc...
2019-12-07 12:41:28 -08:00
Michael Scire
4059dc6187 Results: Implement namespaced, type-safe results.
Because I was working on multiple things at once, this commit also:
- Adds wrappers for/linker flags to wrap CXX exceptions to make them
  abort. This saves ~0x8000 of memory in every system module.
- Broadly replaces lines of the pattern if (cond) { return ResultX; }
  with R_UNLESS(!cond, ResultX());.
- Reworks the R_TRY_CATCH macros (and the result macros in general).
2019-12-07 12:41:28 -08:00
Michael Scire
0b22af1206 libstrat: namespace remaining non-namespaced code. more new-ipc updates 2019-12-07 12:41:28 -08:00
Michael Scire
635ae4e3da spl: update for new-ipc (fixes two bugs in sf) 2019-12-07 12:41:28 -08:00
Michael Scire
609a302e16 os: implement waitable management.
This implements waitable management for Events (and
implements Events). It also refactors PM to use new
Event/Waitable semantics, and also adds STS_ASSERT
as a macro for asserting a boolean expression. The
rest of stratosphere has been refactored to use
STS_ASSERT whenever possible.
2019-12-07 12:41:28 -08:00
Michael Scire
bb223eb5ae libstrat: namespace hossynch.hpp 2019-12-07 12:41:28 -08:00
Michael Scire
362ee3cdb0 autobackup: dump bis keys (closes #583). 2019-08-05 19:35:04 -07:00
Michael Scire
32a90334bb spl: rsa service does not need a dispatch table 2019-07-17 20:58:46 -07:00
Michael Scire
2d0c881ffe strat: go all in on ncm::TitleId 2019-07-11 22:24:59 -07:00
Connor
6f85b11fcc Fix for 4.X units (new strato rework broke a method in spl) (#616)
* Fix for 4.X units (new strato rework broke a method in spl)

* Fixed formatting in spl
2019-07-01 03:53:46 -07:00
Michael Scire
18ca8aaf5b stratosphere: all in on enum class CommandId 2019-06-27 23:34:53 -07:00
Michael Scire
d0d4888184 boot/spl: update for spl-in-libstrat 2019-06-22 12:23:46 -07:00
Michael Scire
f9b48f06a3 spl: refactor into sts namespace 2019-06-21 01:36:00 -07:00
Michael Scire
d3d6c552b7 stratosphere: remove trailing whitespace 2019-06-20 13:00:32 -07:00
Michael Scire
cead8a36ea stratosphere: more result cleanup 2019-06-20 02:00:59 -07:00
Michael Scire
a0cf3bbed8 spl: refactor to use R_TRY 2019-06-17 09:00:15 -07:00
Michael Scire
93fb060fac boot: Implement DetectBootReason 2019-05-02 19:33:12 -07:00
Michael Scire
3207c38a44 spl: use deprecated ssl decrypt command on 4.x in child interfaces 2019-04-26 03:20:12 -07:00
Michael Scire
5952ebab54 spl: amend range for DecryptRsaPrivateKeyDeprecated 2019-04-26 03:13:15 -07:00
Michael Scire
21db90bae9 spl: make ssl key decryption work on >= 5.0.0 2019-04-26 02:32:23 -07:00
Michael Scire
0d4a0348b5 spl: Loosen keyslot restrictions on 1.0.0 2019-04-25 11:36:23 -07:00
Michael Scire
edcfbf4254 spl: Implement DeprecatedService. 2019-04-25 11:12:30 -07:00
Michael Scire
d984621150 spl: Implement FsService lotus commands (gamecards work now) 2019-04-25 07:06:27 -07:00
Michael Scire
4b8ebfa7c3 spl: fix CryptAesCtr (eshop games work now) 2019-04-25 06:00:34 -07:00
Michael Scire
bc44e02aed spl: fix vtables/other issues, now boots (not all commands work) 2019-04-25 05:27:35 -07:00
Michael Scire
85e8506fa8 spl: Implement non-Lotus FsService commands. 2019-04-25 00:33:10 -07:00
Michael Scire
5633444d5e spl: implement ManuService 2019-04-25 00:01:47 -07:00
Michael Scire
99106076e6 spl: Finish implementing EsService. 2019-04-24 23:42:49 -07:00
Michael Scire
0a194cb6a6 spl: add spl:ssl/spl:es to main, fix cmd ids 2019-04-24 23:16:47 -07:00
Michael Scire
f4a8124dc3 spl: implement SslService, some of EsService 2019-04-24 23:10:13 -07:00
Michael Scire
9ea1a2a941 spl: Implement RsaService 2019-04-24 21:42:39 -07:00
Michael Scire
bfa84e27c1 spl: implement CryptoService. 2019-04-24 21:00:39 -07:00
Michael Scire
ccbab35deb spl: finish GeneralService. 2019-04-24 06:10:30 -07:00
Michael Scire
2dfa1c96d1 spl: continue implementing. 2019-04-24 05:38:11 -07:00
Michael Scire
9858d6fc95 spl: Start skeletoning spl. 2019-04-24 01:19:38 -07:00