Michael Scire
bc96ebb74c
os: add FlushDataCache
2021-10-10 00:33:52 -07:00
Michael Scire
a595c232b9
strat: use m_ for member variables
2021-10-10 00:14:06 -07:00
Michael Scire
1ab0bd1765
ams: replace most remaining operator & with std::addressof
2021-10-09 14:49:53 -07:00
Michael Scire
ec65c39d17
strat: refactor address taking of form &var[...]
2021-10-09 12:45:31 -07:00
Michael Scire
b0e520112b
strat: always use explicit result namespacing
2021-10-09 10:36:21 -07:00
Adubbz
303c6eb5f9
settings: implement KeyValueStore ( #1659 )
...
* settings: implement KeyValueStore and dependencies
* settings: update KeyValueStore for recent refactoring
* settings: address feedback
2021-10-09 09:16:40 -07:00
Michael Scire
14c8801259
sm: remove apm:p compatibility hack
...
Homebrew which would hang when doing this were compiled with libnx < 3.0.0.
Homebrew which is compiled with < 3.0.0 cannot send messages to sm, because
of the incorrect serialization problem (which required homebrew recompile when
12.0.0 released).
Thus, there is no case where this makes a difference.
2021-10-08 15:25:52 -07:00
Michael Scire
229651fe72
ams.mitm: avoid using std::unordered_map, it manifests exception code
2021-10-07 22:59:16 -07:00
Michael Scire
e7ca22abd7
jpegdec: save 128KB of memory
2021-10-07 18:03:11 -07:00
Michael Scire
ffc143860b
strat: use ams::Main() instead of main(argc, argv)
2021-10-07 17:44:54 -07:00
Michael Scire
6a53726833
strat: build sysmodules with -Wextra/-Werror
2021-10-06 23:22:54 -07:00
Michael Scire
4866e80769
svc: refactor/rename MemoryInfo fields
2021-10-05 15:16:54 -07:00
Michael Scire
d9159f81d2
ro: double whoops
2021-10-05 12:40:58 -07:00
Michael Scire
306f413874
ro/dmnt: fix process address space detection
2021-10-05 12:34:09 -07:00
Michael Scire
719ead824e
strat: remove map namespace, svc: add address space defs
2021-10-05 12:22:34 -07:00
Michael Scire
69777cf792
strat: use sf::NativeHandle for ipc templating
2021-10-05 00:11:36 -07:00
Michael Scire
d0041a33ac
strat: prefer os::NativeHandle to Handle/svc::Handle where sensible
2021-10-04 17:12:32 -07:00
Michael Scire
6f680fe63b
strat: use svc:: over ::svc
2021-10-04 14:54:13 -07:00
Michael Scire
77fe5cf6f5
ams: the copyright^H^H^H^H^H^H^Hmplex plane is the algebraic closure of the reals
2021-10-04 12:59:10 -07:00
Michael Scire
6f76066d24
os: remove ManagedHandle, refactor to use NativeHandle typename
2021-10-04 12:33:09 -07:00
Michael Scire
a774833790
ro: simplify program id logic
2021-10-01 19:10:19 -07:00
Michael Scire
65fd967550
pm/cfg: simplify initial process id range logic
2021-10-01 17:37:39 -07:00
Michael Scire
18825866ac
strat: automatic program id detection
2021-10-01 17:18:50 -07:00
Michael Scire
7444a68cd1
os: adopt multiwait naming over waitable
2021-09-30 19:00:47 -07:00
Michael Scire
427ab78bc6
pm: implement newer-N-pm's dynamic resource logic
2021-09-29 23:33:25 -07:00
Michael Scire
41ab4c2c68
stratosphere: use SdkMutex/SdkRecursiveMutex over Mutex
2021-09-29 22:52:50 -07:00
Michael Scire
9b04ff0f54
ams-libs: AMS_ASSERT no longer invokes expression
2021-09-29 21:32:40 -07:00
Michael Scire
c949779b3d
stratosphere: grant access to SynchronizePreemptionState
2021-09-29 14:18:03 -07:00
Michael Scire
ab81ed2795
fs.mitm: fix memory leak in romfs build ( closes #1031 )
2021-09-20 17:53:29 -07:00
Michael Scire
3dc51e164f
loader: fix enum cast
2021-09-19 10:42:28 -07:00
Michael Scire
790f7498c1
loader: update for 13.0.0 ncm changes
2021-09-19 10:34:31 -07:00
Michael Scire
05b54c4c2a
erpt: launch sprofile only on 13.0.0+
2021-09-19 10:34:31 -07:00
Michael Scire
bd240b23d8
erpt: skeleton sprofile apis
2021-09-19 10:34:31 -07:00
Michael Scire
568a3b62eb
set.mitm: pointer buffer size was increased to 0x200 in 13.0.0
2021-09-19 10:34:31 -07:00
Michael Scire
8acf0a4fa9
cs: fix allocator aborts
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
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
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
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
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
da208f8001
ams-1.0.0: meso no longer optional, remove conditional logic
2021-09-06 16:26:50 -07:00
SciresM
17ca463c3f
ams: replace sept with tsec firmware ( #1594 )
...
* ams: replace sept with tsec firmware
This replaces sept with a custom tsec key derivation firmware.
NOTE: This does not use any TSEC exploits whatsoever; it is a well-signed
TSEC binary assembled with envyas and signed with the real cauth key.
For more details, contact SciresM#0524.
* fusee: only set SBK if it's readable
2021-08-20 13:13:29 -07:00
Michael Scire
73afa042f1
dmnt: fix opcode decoding ( closes #1575 )
2021-07-22 06:06:48 -07:00
Michael Scire
4cb4707f34
dmnt: add theoretical 'else' support to cheat engine vm conditionals
2021-07-21 19:36:46 -07:00
Michael Scire
389c3b6baa
dmnt: various cheat changes/suggestions that have been cooking a while
2021-07-21 19:21:58 -07:00
Michael Scire
a7c14e03b9
ams: std::optional -> util::optional
2021-07-08 02:37:26 -07:00
Michael Scire
f863164648
ams: basic support for 12.1.0
2021-07-06 07:13:56 -07:00
Michael Scire
846cde52e0
fs.mitm: ns registers program index map info, not am
2021-06-28 22:43:56 -07:00
Michael Scire
a3dd445b32
fs.mitm: add OpenDataStorageWithProgramIndex support (theoretically, closes #1250 )
2021-06-28 22:24:26 -07:00
Michael Scire
8a6afe7909
dns.mitm: fix wildcardcmp failure case ( #1539 )
2021-06-15 16:35:26 -07:00
Michael Scire
8fea8d9b2e
sm: lighten abort restrictions on mitm handle acquisition ( closes #1528 )
2021-05-30 22:53:32 -07:00
Michael Scire
bb4c7a390b
ams: update for 12.0.2
2021-05-12 09:08:47 -07:00
Michael Scire
26fb201518
dns.mitm: handle nullptr hostname
2021-05-10 13:27:14 -07:00
Michael Scire
32f487abfb
sm: update to excise unnecessary library code
2021-05-02 10:33:15 -07:00
Michael Scire
dbcb1e1564
loader: avoid UB when doing count trailing zeros
2021-04-30 10:03:54 -07:00
Michael Scire
15381409dc
fs: fix missed operation rename
2021-04-30 09:02:58 -07:00
Michael Scire
243d7dc777
ams: write-protect stratosphere.romfs
2021-04-30 04:57:46 -07:00
Michael Scire
355010ad84
erpt: implement forced shutdown detection
2021-04-30 04:21:03 -07:00
Michael Scire
21f3d29df7
strat: compat with gcc 11
2021-04-26 20:06:28 -07:00
Michael Scire
9e563d590b
pm: account for 12.0.0 resource limit changes
2021-04-14 00:41:31 -07:00
Michael Scire
2e1a93f1d1
strat: no longer materially constrained by sm session limit
2021-04-13 23:58:10 -07:00
Michael Scire
0ca2f962de
usb: add usb3.0 patches for 12.0.0
2021-04-11 03:42:16 -07:00
Michael Scire
b2b0c50802
pgl: update to use tipc (untested)
2021-04-11 03:42:16 -07:00
Michael Scire
1118421fa6
strat: changes for sm tipc (boots 11.0.1, now)
2021-04-11 03:42:16 -07:00
Michael Scire
9be8b32311
tipc/sm: various fixes for issues
2021-04-11 03:42:16 -07:00
Michael Scire
57c8bc432d
sm: reimplement using tipc instead of cmif (probably broken, untested)
2021-04-11 03:42:16 -07:00
Easy World
e3e3679cfe
Update dmnt_cheat_vm.cpp
...
* fix case fallthrough in function "LogOpcode"
* use same attribute name in one opcode case
2021-04-07 18:46:23 -07:00
Michael Scire
d84dcb653d
ams: prefer construct_at/destroy_at over placement new/explicit destructor
2021-03-21 20:30:40 -07:00
Michael Scire
aff0da9427
ams: remove TYPED_STORAGE() macro in favor of template
2021-03-21 18:47:30 -07:00
SciresM
5362ee9450
[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-03-16 17:13:30 -07:00
SciresM
a6729171d3
set.mitm: fake compatibility for usb!usb30_force_enabled on 9.0.0+ ( #1391 )
...
* set.mitm: fake compatibility for usb!usb30_force_enabled on 9.0.0+
* set.mitm: add value meaning comment for usb!usb30_force_enabled
* loader: pretend to be polite about patch ordering
2021-03-01 14:18:27 -08:00
Michael Scire
18031ae107
tio: fix wrong body size on optimized ListDirectory
2021-02-26 04:49:20 -08:00
Michael Scire
97875c7d2f
tio: fix bug in body receive
2021-02-26 04:49:20 -08:00
Michael Scire
0da3b2b273
tio: implement SdCardObserver (finishes sysmodule)
2021-02-26 04:49:20 -08:00
Michael Scire
3cbd99a709
tio: implement all command processor logic
2021-02-26 04:49:20 -08:00
Michael Scire
6ce2076d92
tio: implement server/dispatch logic.
2021-02-26 04:49:20 -08:00
Michael Scire
cee1ecd06f
tio: add stub sysmodule to host target io server
2021-02-26 04:49:20 -08:00
Michael Scire
953246a175
htc: disable socket driver, needs design thought before we can turn it on for real.
2021-02-24 04:06:54 -08:00
Michael Scire
1c974a387c
htc: implement socket driver (socket api not really impl'd yet)
2021-02-24 04:06:54 -08:00
Michael Scire
ce149f996c
htc: configure usage via system setting
2021-02-24 04:06:54 -08:00
Michael Scire
f28a410ba0
htc: fixes, can now enter ReadyState with wip starlink code
2021-02-24 04:06:54 -08:00
Michael Scire
1bd0094bee
htc: finish last code for Main()
2021-02-24 04:06:54 -08:00
Michael Scire
870b45f208
htc: add htcfs server/service object skeletons
2021-02-24 04:06:54 -08:00
Michael Scire
b898241112
htcs: add hipc server/service object skeletons
2021-02-24 04:06:54 -08:00
Michael Scire
4d86863f2c
htc: ObserverThread (mostly), system now boots + works with htc in bg
2021-02-24 04:06:54 -08:00
Michael Scire
79a3f442d6
htc: implement psc/pm loop
2021-02-24 04:06:54 -08:00
Michael Scire
889f144b27
htc: hook up creation of the htc manager service object
2021-02-24 04:06:54 -08:00
Michael Scire
4408ad6a47
htc: module id names, skeleton rest of main
2021-02-24 04:06:54 -08:00
Michael Scire
0977ee72ca
rapidjson: add customization point for allocation/asserts
2021-02-24 04:06:54 -08:00
Michael Scire
83c1c175ba
htc: skeleton some more of main
2021-02-24 04:06:54 -08:00
Michael Scire
fc060d3777
htc: skeleton main file/sysmodule dir
2021-02-24 04:06:54 -08:00
Michael Scire
eb50e99748
kern: alleviate a little KPort pressure.
2021-02-23 14:31:24 -08:00
Michael Scire
287f4e6fa1
sm: fix abort on RegisterService while at port limit
...
closes #1382
2021-02-23 14:21:46 -08:00
Michael Scire
95a6b0828f
dmnt: set the debug process handle slightly more carefully
2021-02-20 17:37:59 -08:00
Michael Scire
74e4e70053
fs.mitm: fix cache of non-current-process data storages ( closes #1371 )
2021-02-15 19:39:32 -08:00
Michael Scire
c0e3cee657
dns.mitm: allow nullptr for port string ( closes #1352 )
2021-02-03 12:41:23 -08:00
Michael Scire
8eb65ab401
dns.mitm: fix hosts file parsing bug
2021-02-02 17:11:53 -08:00
Michael Scire
bcda834980
dns.mitm: make line ordering explicit, rather than implicit.
...
This doesn't actually change functionality, because this is how std::unordered_map worked anyway...
...but it's better for us to be explicit, I think.
2021-02-02 13:48:40 -08:00
Michael Scire
e521ae805d
dns.mitm: add documentation
2021-02-02 11:41:49 -08:00
Michael Scire
6950989552
dns.mitm: support % in hosts file as stand-in for environment identifier
2021-02-02 11:41:49 -08:00
Michael Scire
ffbdf29c10
dns.mitm: fix ABORT_UNLESS -> ABORT
2021-02-02 11:41:49 -08:00
Michael Scire
135d42ffee
dns.mitm: hint = {} fix in options
2021-02-02 11:41:49 -08:00
Michael Scire
1306d03136
dns.mitm: add GetAddrInfo redir, AtmosphereReloadHostsFile, debug logging control
2021-02-02 11:41:49 -08:00
Michael Scire
97aa209c43
dns.mitm: fix inverted hostname detection
2021-02-02 11:41:49 -08:00
Michael Scire
b30311be65
dns.mitm: support wildcards in hosts
2021-02-02 11:41:49 -08:00
Michael Scire
6694d8c2d9
dns.mitm: edit default behavior/hosts filenames
2021-02-02 11:41:49 -08:00
Michael Scire
658389fc60
dns.mitm: fix issue in host file parsing
2021-02-02 11:41:49 -08:00
Michael Scire
d6477cf024
dns.mitm: parse redirections from hosts file
2021-02-02 11:41:49 -08:00
Michael Scire
400f5142ee
dns: implement GetHostByName redirection (backend TODO)
2021-02-02 11:41:49 -08:00
Michael Scire
8bf8df43e2
dns: skeleton passthrough mitm
2021-02-02 11:41:49 -08:00
Michael Scire
8d10584a51
result: always prefer diag::Abort to fatal
2021-01-28 00:15:24 -08:00
Michael Scire
42964992d1
dmnt: ro:dmnt available on all sysvers
2021-01-27 14:44:25 -08:00
Michael Scire
4a82d9bf28
sm: supercede ams extension via DetachClient
2021-01-27 14:36:15 -08:00
Michael Scire
4190281b2f
ams: communicate status to libnx
2021-01-27 14:20:30 -08:00
Michael Scire
3389aaefc3
strat: update for revised libnx weak alloc funcs
2021-01-22 03:52:10 -08:00
Michael Scire
f8f987aa8d
boot: remove references to memalign/malloc
2021-01-20 23:39:31 -08:00
Michael Scire
e87e146112
ams_mitm: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
5751bcc117
dmnt: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
eb1e979257
creport: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
204539664b
boot2: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
f5c6736431
boot: update for new sf-semantics
2021-01-20 23:39:31 -08:00
Michael Scire
d00ebaa28a
fatal: update screen task to use native window directly
2021-01-20 23:39:31 -08:00
Michael Scire
402e4d1adb
fatal: wip (pending libnx pr) update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
ed7c0605f9
jpegdec: note libjpeg-turbo TODO
2021-01-20 23:39:31 -08:00
Michael Scire
dbe8add4f4
loader: fix failure-to-early-return in launch record management
2021-01-20 23:39:31 -08:00
Michael Scire
e4e278bb3d
util::unique_lock, update loader to new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
3761f80592
string_view: remove now unecessary comment
2021-01-20 23:39:31 -08:00
Michael Scire
9878c18e47
ncm: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
3bb94aa146
util::string_view, update pgl for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
83c04fa5d7
pm: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
dc4ee1a5bc
erpt: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
5191f0e305
ro: reduce memory usage by excising (unused) std::malloc
2021-01-20 23:39:31 -08:00
Michael Scire
170034aed3
ro: update for new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
21236020cb
sm, spl: update to use new sf semantics
2021-01-20 23:39:31 -08:00
Michael Scire
f06de12bea
libstrat: convert to experimental new (super-accurate) sf allocation semantics
2021-01-20 23:39:31 -08:00
Michael Scire
094cede39e
ams: use util::SNPrintf over std:: (size/linker improvements)
2021-01-12 02:59:41 -08:00
Michael Scire
9cfd259c5c
spl: reduce heap size
2021-01-12 02:31:57 -08:00
CaramelDunes
f051f707ed
Do not blank Rsa2048DeviceCertificate or Rsa2048Device as it prevents HOS from booting on newer PRODINFO versions.
2021-01-07 14:09:15 -08:00
Michael Scire
7a9018dc7a
sm: fix wait list reentrancy and state on processing loop entry
2020-12-31 16:01:26 -08:00