Commit Graph

34 Commits

Author SHA1 Message Date
Michael Scire
6a5d2ced4b ams: globally prefer R_RETURN to return for ams::Result 2022-04-04 17:46:58 -07:00
Michael Scire
6f4618ea60 ams: use R_SUCCEED, R_THROW globally 2022-04-04 17:46:57 -07:00
Michael Scire
d7a9c7ec4c ams: support building unit test programs on windows/linux/macos 2022-03-23 09:15:46 -07:00
Michael Scire
c5ae3c2449 erpt: add automatic report cleanup mechanism on boot (closes #1795) 2022-03-23 09:15:46 -07:00
Michael Scire
9436b9a555 ams: deduplicate static initialization logic 2022-01-19 16:28:54 -08:00
Michael Scire
a9322a7245 sf: prevent emitting mitm/defer code unless server in process supports it 2021-10-15 23:54:38 -07:00
Michael Scire
3e33fb6361 strat: use m_ for member variables 2021-10-15 23:54:35 -07:00
Michael Scire
c3583b8604 erpt: save 8KB 2021-10-07 23:06:29 -07:00
Michael Scire
2905319d46 strat: use ams::Main() instead of main(argc, argv) 2021-10-07 23:06:29 -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
4ce6273f2b strat: use sf::NativeHandle for ipc templating 2021-10-07 23:06:27 -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
6125281acd os: adopt multiwait naming over waitable 2021-10-07 23:06:23 -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
fe21509991 ams-1.0.0: meso no longer optional, remove conditional logic 2021-09-06 16:32:47 -07:00
Michael Scire
dc3f54a713 ams: std::optional -> util::optional 2021-07-12 01:59:51 -07:00
Michael Scire
2945208d6e erpt: fix 0x100 byte memory leak on creation of new report 2021-07-06 07:28:31 -07:00
Michael Scire
156a5ceba2 libstrat: fix override operator new to be noexcept (closes #1494) 2021-06-08 08:09:21 -07:00
Michael Scire
64ec9a7421 erpt: fix reading files that don't exist 2021-05-12 09:09:40 -07:00
Michael Scire
5deb52d1eb erpt: implement forced shutdown detection 2021-04-30 08:56:10 -07:00
Michael Scire
f9eff4dcdd erpt: Implement 12.0.0 AppletTotalActiveTime tracking 2021-04-30 08:56:10 -07:00
Michael Scire
b7dc7ad44d erpt: implement AppletActiveTimeInfoList 2021-04-29 03:04:52 -07:00
Michael Scire
5921377678 erpt: add (stubbed, TODO after 0.19.0) support for 12.0.0 2021-04-11 03:59:26 -07:00
Michael Scire
637c44f64d libstrat: convert to experimental new (super-accurate) sf allocation semantics 2021-02-02 12:16:20 -08:00
Michael Scire
26369e34f1 ams: use util::SNPrintf over std:: (size/linker improvements) 2021-01-13 10:41:28 -08:00
Michael Scire
49c1ace890 erpt: update for 11.0.0 (closes #1218) 2020-12-03 12:48:16 -08:00
Michael Scire
4958ea6d93 erpt: lightly update (TODO: use context, do new svc stuff) 2020-12-02 06:53:07 -08:00
Michael Scire
72def8c75d erpt: fix attachment-in-save paths (closes #1124, #1145) 2020-10-26 16:03:07 -07:00
SciresM
ecf8389efd sf: Change interface definition methodology (#1074)
* sf: Begin experimenting with new interface declaration format

* sf: convert fs interfaces to new format

* sf: finish conversion of libstrat to new definitions

* sf: convert loader to new format

* sf: convert spl to new format

* sf: update ncm for new format

* sf: convert pm to new format

* sf: convert ro/sm to new format

* sf: update fatal for new format

* sf: support building dmnt under new scheme

* sf: update ams.mitm for new format

* sf: correct invocation def for pointer holder

* fs: correct 10.x+ user bindings for Get*SpaceSize
2020-08-01 15:30:56 -07:00
Michael Scire
47d62b22f2 libstrat: fix bugs/compiler warnings 2020-08-01 15:30:55 -07:00
Michael Scire
716797efc5 erpt: fix access to time service on versions where it is disallowed 2020-04-24 17:29:11 -07:00
Michael Scire
18666a88c0 ams: centralize system thread definitions 2020-04-24 17:29:09 -07:00
Michael Scire
c190d46343 hos::Version: rename enum members 2020-04-15 11:55:01 -07:00
SciresM
78653041d4 erpt: reimplement the sysmodule (#875)
* erpt: reimplement the sysmodule

* fatal: update for latest bindings

* erpt: amend logic for culling orphan attachments
2020-04-15 11:55:01 -07:00