Commit Graph

38 Commits

Author SHA1 Message Date
Michael Scire
d7a9c7ec4c ams: support building unit test programs on windows/linux/macos 2022-03-23 09:15:46 -07:00
Michael Scire
ff28833612 ams: overhaul fs.mitm romfs ownership, bump to 1.2.4 2021-11-04 13:40:36 -07:00
Michael Scire
0238bdf65b tipc: enable named-thread dispatch 2021-10-15 23:54:40 -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
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
69a0ec03e9 strat: use consistent include style for lib headers 2021-10-07 23:06:23 -07:00
Michael Scire
6b66af37cd erpt: skeleton sprofile apis 2021-09-19 10:35:32 -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
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
b70fea933c tio: add stub sysmodule to host target io server 2021-04-11 03:58:56 -07:00
Michael Scire
8d6c9bb9ee htc: skeleton constructors for htcmisc 2021-04-11 03:58:38 -07:00
Michael Scire
e5c573e354 rapidjson: add customization point for allocation/asserts 2021-04-11 03:58:33 -07:00
Michael Scire
1a5134d2d2 htc: skeleton main file/sysmodule dir 2021-04-11 03:58:27 -07:00
Michael Scire
906a450ac3 dns.mitm: parse redirections from hosts file 2021-02-02 12:16:28 -08:00
Michael Scire
d8fd09fd08 dns: skeleton passthrough mitm 2021-02-02 12:16:27 -08:00
Michael Scire
b58f3d9174 ro: reduce memory usage by excising (unused) std::malloc 2021-02-02 12:16:21 -08:00
Michael Scire
23609fb983 exo: implement start of mariko fatal handler 2020-12-02 06:52:57 -08:00
Michael Scire
d2b6c6c818 powctl: implement client api (needs board-specific impl) 2020-12-02 06:52:47 -08:00
Michael Scire
57c40bca06 gpio: add (most of) driver framework for boot sysmodule usage 2020-12-02 06:52:43 -08:00
SciresM
791b402320 sdmmc: implement driver suitable for fs + bootloader
* sdmmc: begin skeletoning sdmmc driver

* sdmmc: add most of SdHostStandardController

* sdmmc: implement most of SdmmcController

* sdmmc: Sdmmc2Controller

* sdmmc: skeleton implementation of Sdmmc1Controller

* sdmmc: complete abstract logic for Sdmmc1 power controller

* sdmmc: implement gpio handling for sdmmc1-register-control

* sdmmc: implement pinmux handling for sdmmc1-register-control

* sdmmc: fix building for arm32 and in stratosphere context

* sdmmc: implement voltage enable/set for sdmmc1-register-control

* util: move T(V)SNPrintf from kernel to util

* sdmmc: implement BaseDeviceAccessor

* sdmmc: implement MmcDeviceAccessor

* sdmmc: implement clock reset controller for register api

* sdmmc: fix bug in WaitWhileCommandInhibit, add mmc accessors

* exo: add sdmmc test program

* sdmmc: fix speed mode extension, add CheckMmcConnection for debug

* sdmmc: add DeviceDetector, gpio: implement client api

* gpio: modernize client api instead of doing it the lazy way

* sdmmc: SdCardDeviceAccessor impl

* sdmmc: update test program to read first two sectors of sd card

* sdmmc: fix vref sel

* sdmmc: finish outward-facing api (untested)

* ams: changes for libvapours including tegra register defs

* sdmmc: remove hwinit
2020-12-02 06:52:42 -08:00
Michael Scire
ba45f73e40 kern: generate fatal error on panic 2020-09-17 08:34:22 -07:00
misson20000
3cb6db0ee2 Add stack overflow detection to fatal error code 2020-08-01 15:31:13 -07:00
Michael Scire
1867bc1264 sysupdater: Add ValidateUpdate, begin implementing Async logic 2020-06-28 19:41:10 -07:00
Michael Scire
8f0ee258ac sysupdater: begin implementing api 2020-06-28 19:41:09 -07:00
SciresM
7d041e853d Switch atmosphere's build target to C++20. (#952)
* ams: update to build with gcc10/c++20

* remove mno-outline-atomics

* ams: take care of most TODO C++20s

* fusee/sept: update for gcc10

* whoosh, your code now uses pre-compiled headers

* make: dependency fixes
2020-05-12 15:44:19 -07:00
Michael Scire
1f35c699a7 ams: revamp target firmware 2020-05-12 15:44:18 -07:00
SciresM
d2de74155d PRODINFO: Revamp blanking/write disallow policy. (#913)
* exo/fusee: hookup new prodinfo settings

* fusee: new scheme doesn't need FLAGS_DEFAULT

* fusee: fix c/p errors

* ams.mitm: completely revamp prodinfo backup mechanism

* ams.mitm: Implement revamped blanking/write policy

* strat: make early boot more debuggable

* exo: condense flag logic
2020-04-24 17:29:12 -07:00
HookedBehemoth
f63e67a1df jpegdec reimplementation (#912)
* add jpegdec reimplementation

* reduce work memory

* fix color space

* jpegdec: cleanup results to use atmosphere style

* fix outdated comments, correct do/while bug

Co-authored-by: Michael Scire <SciresM@gmail.com>
2020-04-24 17:29:10 -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
Michael Scire
d7b011e091 ams: dump tls in fatal error context 2020-03-09 18:03:40 -07:00
Michael Scire
1e9368c770 ams: revamp assertion system 2020-03-02 19:51:04 -08:00
Michael Scire
7ee4ae460e find -exec sed -i'' -e 's/2018-2019 Atmo/2018-2020 Atmo/g' {} + 2020-03-02 19:50:40 -08:00
Michael Scire
ab8dfe40a0 ams: use bitpack for api version 2020-01-03 13:05:36 -08:00
Michael Scire
f3a31bd948 strat: use util::FourCC where relevant 2020-01-03 13:05:33 -08:00
Michael Scire
07af583bb8 Add stratosphere makefile, move common/include to libs 2019-12-09 03:54:45 -08:00
Michael Scire
ef5297acb3 Improve buildsystem, split out generic code 2019-12-08 19:17:05 -08:00
Michael Scire
5797d753bf libstratosphere is now just one lib 2019-12-08 17:01:03 -08:00