Commit Graph
100 Commits
Author SHA1 Message Date
Michael Scire dfd57b09a3 kern: improve kdebug attach semantics 2021-09-17 18:10:05 -07:00
Michael Scire ecd2392ff4 kern: update KPageTable::Unmap block closing logic 2021-09-17 16:54:49 -07:00
Michael Scire 62fe20693e kern: optimize logging for release kernel strings (saves printf space in .text) 2021-09-17 16:44:57 -07:00
Michael Scire d2664c60a3 kern: add new KMemoryState 2021-09-17 16:26:01 -07:00
Michael Scire 0230609cca kern: KWorkerTaskManager no longer tracks id 2021-09-17 16:20:55 -07:00
Michael Scire e105b39ae7 kern: KSchedulerInterruptTask -> KSchedulerInterruptHandler 2021-09-17 16:18:11 -07:00
Michael Scire 05e9084e93 kern: kill the interrupt task manager thread 2021-09-17 16:12:01 -07:00
Michael Scire a85a87a907 kern: remove per-KInterruptEventTask locks 2021-09-17 15:34:24 -07:00
Michael Scire e10a7e7d65 kern: delete KWritableEvent, devirtualize KReadableEvent Signal/Clear 2021-09-17 15:31:25 -07:00
Michael Scire fe03791d11 kern: KConditionVariable arbiter functions now static 2021-09-17 15:11:58 -07:00
Michael Scire 53aa04303a kern: KAutoObject doesn't need (virtual) destructor 2021-09-17 15:08:13 -07:00
Michael Scire a5aed96b80 kern: optimize handle table layout 2021-09-17 15:03:21 -07:00
Michael Scire 4a1ca5f39b kern: update GetInfo logic for tick count InfoTypes 2021-09-17 14:57:08 -07:00
Michael Scire 71e87ef8d0 kern: port limit is now 0x180 2021-09-17 14:52:36 -07:00
Michael Scire 575f62a41b git subrepo pull emummc
subrepo:
  subdir:   "emummc"
  merged:   "7a3db0fb"
upstream:
  origin:   "https://github.com/m4xw/emuMMC"
  branch:   "develop"
  commit:   "f6608731"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2021-09-16 23:01:54 -07:00
Michael Scire 91c3ed9704 erpt: launch sprofile only on 13.0.0+ 2021-09-16 16:57:04 -07:00
Michael Scire 2554e0c9f1 git subrepo pull emummc
subrepo:
  subdir:   "emummc"
  merged:   "4e1ac0a7"
upstream:
  origin:   "https://github.com/m4xw/emuMMC"
  branch:   "develop"
  commit:   "c6a2e9cc"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2021-09-16 16:52:08 -07:00
Michael Scire 8859aefdd7 git subrepo pull emummc
subrepo:
  subdir:   "emummc"
  merged:   "2e001dd2"
upstream:
  origin:   "https://github.com/m4xw/emuMMC"
  branch:   "develop"
  commit:   "29deabb2"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2021-09-16 16:28:04 -07:00
Michael Scire 45e5e8eb8e sprofile: fully reimplement sprof:bg + sprof:sp 2021-09-16 16:14:26 -07:00
Michael Scire f7d5d96e1c sprofile: implement non-importer bgagent commands 2021-09-16 00:07:06 -07:00
Michael Scire 0f62d77197 sprofile: implement OpenProfileUpdateObserver 2021-09-15 23:10:11 -07:00
Michael Scire 39688c7d47 erpt: skeleton sprofile apis 2021-09-15 21:50:06 -07:00
Michael Scire 5c89aaf31a set.mitm: pointer buffer size was increased to 0x200 in 13.0.0 2021-09-15 17:27:36 -07:00
Michael Scire 76bbc3022e ams: update current target firmware 2021-09-15 17:15:15 -07:00
Michael Scire 2cf53dd75f fusee: bump package2 check 2021-09-15 16:31:02 -07:00
Michael Scire 0587509a3e exo: more fixes for 13.0.0 2021-09-15 16:28:31 -07:00
Michael Scire c5b3f4e2ec fusee/exo: update for new dram id changes 2021-09-15 16:25:32 -07:00
Michael Scire 00a0a4f44b fusee/exo: update for recognition of 13.0.0 2021-09-15 16:08:57 -07:00
Michael Scire 724bd2b4d2 boot2: launch nintendo lm from built in system, not none 2021-09-12 12:40:27 -07:00
Michael Scire 50c1b628a8 linguist: add vanity corrections 2021-09-11 20:03:42 -07:00
Michael Scire f2da92184b cs: fix launching of tio server 2021-09-11 19:41:47 -07:00
Michael Scire a595091be0 cs: fix screenshot packet semantics 2021-09-11 19:41:47 -07:00
Michael Scire 0ec23e74b5 cs: implement TakeScreenShot command 2021-09-11 19:41:47 -07:00
Michael Scire 8acf0a4fa9 cs: fix allocator aborts 2021-09-11 19:41:47 -07:00
Michael Scire ebb0bd2b41 kern: improve single-step around user-exception entry 2021-09-11 19:41:47 -07:00
Michael Scire c10265676f kern: fix spsr register in RestoreContext 2021-09-11 19:41:47 -07:00
Michael Scire 9e7b56b33c kern: optimize hw-single-step management 2021-09-11 19:41:47 -07:00
Michael Scire 05ea0c53d7 dmnt: use hardware single step extension if available 2021-09-11 19:41:47 -07:00
Michael Scire 4075d24e0c kern: add hardware single step extension 2021-09-11 19:41:47 -07:00
Michael Scire 904ab19823 dmnt: implement remaining basic gdbstub packets 2021-09-11 19:41:47 -07:00
Michael Scire 534c2c76f5 dmnt: reload modules on NRO load/unload 2021-09-11 19:41:47 -07:00
Michael Scire d216a77187 dmnt: first pass at breakpoints/watchpoints 2021-09-11 19:41:47 -07:00
Michael Scire 1401f3520e dmnt: refactor to use process accessor 2021-09-11 19:41:47 -07:00
Michael Scire c6fad1b0ee osdbg: implement thread info api 2021-09-11 19:41:47 -07:00
Michael Scire 9f1f0c7cbd dmnt: add attach support to gdbstub 2021-09-11 19:41:47 -07:00
Michael Scire 649a0052d0 dmnt: refactor/add support for getting process list in gdb 2021-09-11 19:41:47 -07:00
Michael Scire a7f9729f63 dmnt: begin working on packet parser 2021-09-11 19:41:47 -07:00
Michael Scire f85df27875 dmnt: add basic gdb packet receive logic 2021-09-11 19:41:47 -07:00
Michael Scire db7268de2e dmnt2: add logging logic, for use with gdbstub development 2021-09-11 19:41:47 -07:00
Michael Scire a2c0cc924b fix dmnt.gen2 title id (not sure how I typo'd this) 2021-09-11 19:41:47 -07:00
Michael Scire 206516411f boot2: launch dmnt.gen2 over dmnt, when using htc 2021-09-11 19:41:47 -07:00
Michael Scire b61797224d tma2: include sysmodules in stratosphere.romfs 2021-09-11 19:41:47 -07:00
Michael Scire 899efec302 cs: implement GetFirmwareVersion command 2021-09-11 19:41:47 -07:00
Michael Scire 1a1b1355ba scs: implement EventHandlerThread for shell 2021-09-11 19:41:47 -07:00
Michael Scire aa2dce7316 scs: implement DoShellServer 2021-09-11 19:41:47 -07:00
SciresM e9849c74cf 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-11 19:32:14 -07:00
Michael Scire bfeba7c1e8 build: fix building with directory existing 2021-09-09 00:15:35 -07:00
Michael Scire 31d44d821f fusee: fix log_inverted flag parse 2021-09-08 14:32:15 -07:00
Michael Scire 44beeecc9e fusee: fix prodinfo blanking flag detection for sysmmc (closes #1610) 2021-09-07 04:34:57 -07:00
Michael Scire 844e88bdfe git subrepo push libraries
subrepo:
  subdir:   "libraries"
  merged:   "0c0bb815"
upstream:
  origin:   "https://github.com/Atmosphere-NX/Atmosphere-libs"
  branch:   "master"
  commit:   "0c0bb815"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2021-09-06 16:33:59 -07:00
Michael Scire a1af1af74d docs: mention custom splash script in changelog
Also, bring commit count for the fusee_cpp PR to a nice point before merging.
2021-09-06 16:26:50 -07:00
Michael Scire 5e64460bb9 utils: add script for inserting custom image into package3 2021-09-06 16:26:50 -07:00
Michael Scire 960161741d ams: docs/build update 2021-09-06 16:26:50 -07:00
Michael Scire 443271de35 fusee: accept spaces inside ini values (we still left/right strip) 2021-09-06 16:26:50 -07:00
Michael Scire 4ad300c33c fusee: add package3 magic 2021-09-06 16:26:50 -07:00
Michael Scire 715eacbf8e fusee: accept ini files without empty line at end 2021-09-06 16:26:50 -07:00
Michael Scire dda7ea6ac2 fusee: attempt reboot to self if possible, better abort/fatal handlers 2021-09-06 16:26:50 -07:00
Michael Scire 005aac5a2b package3: fix hekate compatibility (use real sizes) 2021-09-06 16:26:50 -07:00
Michael Scire 1e4356cdb9 build: fix clean target 2021-09-06 16:26:50 -07:00
Michael Scire e0f45d54f1 stratosphere: remove 0.19.0 update cleanup logic. 2021-09-06 16:26:50 -07:00
Michael Scire 8da223468f fusee: remove TODO comments in buildscript 2021-09-06 16:26:50 -07:00
Michael Scire 045f9b2f15 fusee: fix buildsystem, rename secondary -> package3 2021-09-06 16:26:50 -07:00
Michael Scire b7521465ee fusee: tactically don't trash PLLA1, fixes audio corruption on boot 2021-09-06 16:26:50 -07:00
Michael Scire a8f898b591 patches: nogc patches now embedded in fusee rather than being .ips 2021-09-06 16:26:50 -07:00
Michael Scire 158da95b9f config: BCT.ini no longer exists 2021-09-06 16:26:50 -07:00
Michael Scire 36c470ad11 ams-1.0.0: bump version number well ahead of time 2021-09-06 16:26:50 -07:00
Michael Scire 62f8408a2e fusee_cpp: rename source dir to fusee 2021-09-06 16:26:50 -07:00
Michael Scire a6ea490615 fusee: delete fusee (this will break build temporarily) 2021-09-06 16:26:50 -07:00
Michael Scire da208f8001 ams-1.0.0: meso no longer optional, remove conditional logic 2021-09-06 16:26:50 -07:00
Michael Scire 320f0bbcfd fusee_cpp: improve/fix file-based emummc 2021-09-06 16:26:50 -07:00
Michael Scire 2247f97cdc fusee: fix sd card size detection for emummc 2021-09-06 16:26:50 -07:00
Michael Scire 0ef9f7ccc8 fusee_cpp: improved relocation logic 2021-09-06 16:26:50 -07:00
Michael Scire 596f5c3f52 fusee_cpp: various fixes, unpatched erista boots now 2021-09-06 16:26:50 -07:00
Michael Scire e5106ffa2c fusee_cpp: implement package2 rebuild/kip patching 2021-09-06 16:26:50 -07:00
Michael Scire 968ced677e fusee_cpp: fix mariko mtc (mariko now gets as far as erista) 2021-09-06 16:26:50 -07:00
Michael Scire 5950ff5b5e fusee_cpp: validate mtc overlay before jumping to it.
mtc will jump back to us, so we need a compatible binary.

This also makes some changes to our layout to minimize the likelihood of
an incompatible mtc binary (I made some arbitrary .text/.rodata/.rwdata changes)
and saw identical mtc binaries, so hopefully this all works out.
2021-09-06 16:26:50 -07:00
Michael Scire b520f5c53b fusee_cpp: emummc implies decompressed text segment 2021-09-06 16:26:50 -07:00
Michael Scire c5d021c172 fusee_cpp: implement ips patching of kips 2021-09-06 16:26:50 -07:00
Michael Scire 07779b787a fusee_cpp: implement nogc patches 2021-09-06 16:26:50 -07:00
Michael Scire cefdda77e5 fusee_cpp: implement KIP selection 2021-09-06 16:26:50 -07:00
Michael Scire 622650623c fusee_cpp: we're over the size limit with mtc in nv-text 2021-09-06 16:26:50 -07:00
Michael Scire 7ea9b533d9 fusee_cpp: only check pk11 header2 on mariko (thanks @slp32) 2021-09-06 16:26:50 -07:00
Michael Scire c2a930965a fusee_cpp: import mariko mtc 2021-09-06 16:26:50 -07:00
Michael Scire c4fee796ea fusee_cpp: begin mariko mtc work 2021-09-06 16:26:50 -07:00
Michael Scire 598edc0a46 fusee_cpp: move mtc code/used-tables to nv memory (needed for mariko downtrain fix) 2021-09-06 16:26:50 -07:00
Michael Scire 40e2d4bbe6 fusee_cpp: implement cpu startup 2021-09-06 16:26:50 -07:00
Michael Scire 648ad51056 fusee_cpp: fix some careless search/replace mistakes 2021-09-06 16:26:50 -07:00
Michael Scire e0a41e9d33 fusee_cpp: implement exosphere load/configuration 2021-09-06 16:26:50 -07:00
Michael Scire 1dd0297db3 fusee_cpp: implement warmboot firmware load 2021-09-06 16:26:50 -07:00
Michael Scire 4355a2b036 fusee_cpp: implement read/decryption of package2 2021-09-06 16:26:50 -07:00