Michael Scire
c6b9a0c4bf
sf: PrepareForErrorReply is common to all objects
2019-12-07 12:41:28 -08:00
Michael Scire
93a218abeb
libstrat: enable lto
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
15773e4755
libstrat: fix domain issues. in/out objects now work.
2019-12-07 12:41:28 -08:00
Michael Scire
4f455dacf4
sf: implement mitm forwarding + domains.
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
ae2fa2fa60
boot: reduce memory footprint
2019-12-07 12:41:28 -08:00
Michael Scire
6abd756e0c
boot2: move to separate process
2019-12-07 12:41:28 -08:00
Michael Scire
535e49a38d
strat: statically allocate additional threads
2019-12-07 12:41:28 -08:00
Michael Scire
fbb5730369
strat: update for latest libnx commit
2019-12-07 12:41:28 -08:00
Michael Scire
e5d62025d3
dmnt: update for new-ipc
2019-12-07 12:41:28 -08:00
Michael Scire
89c6fc6437
creport: update for new-ipc
2019-12-07 12:41:28 -08:00
Michael Scire
799c158b86
fatal: update for new-ipc
2019-12-07 12:41:28 -08:00
Michael Scire
8d16d2152b
boot: update for api changes
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
59140d8dfa
sf-impl: remove debug condition
2019-12-07 12:41:28 -08:00
Michael Scire
2cb8aadafc
pm: statically allocate more resources to save memory
2019-12-07 12:41:28 -08:00
Michael Scire
aa0826bb70
pm: update for new-ipc
2019-12-07 12:41:28 -08:00
Michael Scire
8bd2a9a23b
ldr: fix copy/paste, only 1 ldr:pm session needed
2019-12-07 12:41:28 -08:00
Michael Scire
2f959785e1
loader: update for new-ipc
2019-12-07 12:41:28 -08:00
Michael Scire
88a86a3363
sf: implement CopyFromCurrentDomain
2019-12-07 12:41:28 -08:00
Michael Scire
0c7827104f
hipc: begin implementing domains. fixes ro + sm together
2019-12-07 12:41:28 -08:00
Michael Scire
c8ed190e5c
new-ipc: implement deferral. sm now works.
2019-12-07 12:41:28 -08:00
Michael Scire
f4dcd1db9b
sf: implement service framework enough for ro to work.
...
This completely re-does the whole interface for ipc servers.
2019-12-07 12:41:28 -08:00
Michael Scire
bd341d5c00
libstrat: update for latest libnx, delete ipc in prep for rewrite
2019-12-07 12:41:28 -08:00
Michael Scire
add18d868f
sts: add STS_UNREACHABLE_DEFAULT_CASE()
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
e07011be32
mitm: fix long-standing C descriptor issue.
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
542833866e
git subrepo push stratosphere/libstratosphere
...
subrepo:
subdir: "stratosphere/libstratosphere"
merged: "8bae7b4a"
upstream:
origin: "https://github.com/Atmosphere-NX/libstratosphere "
branch: "master"
commit: "8bae7b4a"
git-subrepo:
version: "0.4.0"
origin: "https://github.com/ingydotnet/git-subrepo "
commit: "5d6aba9"
2019-09-18 12:43:47 -07:00
Michael Scire
89c484414b
dmnt: Truncate cheat names after maxlen instead of failing
2019-09-18 11:54:30 -07:00
Michael Scire
fe2dd671fb
dmnt: fix edge case in debug events thread
2019-09-18 11:54:30 -07:00
Michael Scire
8abee1bdaa
dmnt: fix some bugs in init
2019-09-18 11:54:30 -07:00
Michael Scire
78a730ddf6
dmnt: refactor to use sts:: namespace.
2019-09-18 11:54:30 -07:00
Michael Scire
a750e55f75
tmp-hid-mitm: less aggressively enable controllers
...
This fixes a crash in SSBU and possibly other games.
2019-09-14 13:37:31 -07:00
Michael Scire
a6e405c988
ldr: fix hbl_html redirection invocation
2019-09-14 10:43:39 -07:00
Michael Scire
6613fda4b1
ams_mitm: add temporary hid mitm on 9.x for compat
2019-09-14 10:43:39 -07:00
Michael Scire
93d83c5bb9
ams: initial support for 9.0.0
2019-09-14 10:43:39 -07:00
Michael Scire
6ee8720028
boot: fix pinmux init off-by-one
2019-08-29 00:18:40 -07:00
Michael Scire
600d68bd1a
ams_mitm: fix bis key generation for newer hardware
2019-08-29 00:14:23 -07:00
hexkyz
0c3a294cbe
Minor information update regarding previously unknown mysteries
2019-08-22 20:52:40 +01:00
Michael Scire
a65ec67128
git subrepo push stratosphere/libstratosphere
...
subrepo:
subdir: "stratosphere/libstratosphere"
merged: "2d081135"
upstream:
origin: "https://github.com/Atmosphere-NX/libstratosphere "
branch: "master"
commit: "2d081135"
git-subrepo:
version: "0.4.0"
origin: "https://github.com/ingydotnet/git-subrepo "
commit: "5d6aba9"
2019-08-08 17:50:09 -07:00
Michael Scire
1f2de35f94
fatal: use new vi enum value
2019-08-07 13:02:02 -07:00
Michael Scire
362ee3cdb0
autobackup: dump bis keys ( closes #583 ).
2019-08-05 19:35:04 -07:00
Michael Scire
215f1bc8ee
fatal: fix abort in viSetDisplayPowerState on < 3.0.0
2019-08-05 18:55:04 -07:00
Michael Scire
39d041466d
fatal: refactor into sts namespace
2019-07-23 14:01:16 -07:00
Michael Scire
442ebff829
util: fix copy/paste error in intrusive lists
2019-07-23 14:01:16 -07:00
hexkyz
7e169bc7df
pm: work around HOS bug
2019-07-23 19:38:14 +01:00
Michael Scire
d95e20952c
kvdb: fix iterator access issue
2019-07-18 20:34:15 -07:00
Michael Scire
32a90334bb
spl: rsa service does not need a dispatch table
2019-07-17 20:58:46 -07:00
Michael Scire
f534d3498e
git subrepo clone https://github.com/Atmosphere-NX/libstratosphere stratosphere/libstratosphere
...
subrepo:
subdir: "stratosphere/libstratosphere"
merged: "0c5dab80"
upstream:
origin: "https://github.com/Atmosphere-NX/libstratosphere "
branch: "master"
commit: "0c5dab80"
git-subrepo:
version: "0.4.0"
origin: "https://github.com/ingydotnet/git-subrepo "
commit: "5d6aba9"
2019-07-17 20:04:00 -07:00
Michael Scire
3ea9f444db
Remove libstratosphere submodule
2019-07-17 20:03:48 -07:00
TuxSH
5672c935ed
Update libstratosphere submodule
2019-07-16 01:26:07 +02:00
Michael Scire
4cc2b5c38a
creport: address review commentary
2019-07-15 14:35:48 -07:00
Michael Scire
00e3d874e3
creport: fix dangling reference to user_result
2019-07-15 14:35:48 -07:00
Michael Scire
803e91a8c4
creport: pass user break result directly
2019-07-15 14:35:48 -07:00
Michael Scire
227a1d938d
creport: refactor to use sts:: namespace.
2019-07-15 14:35:48 -07:00
Michael Scire
fc7f06dc78
pm/sm: add ability to forward declare mitm'd services ( closes #557 )
2019-07-11 22:24:59 -07:00
Michael Scire
6777dd9b38
pm: inform sm of title ids. remove inconsistent mitm association.
2019-07-11 22:24:59 -07:00
Michael Scire
4db212ea7b
pm: actually use the flag detection code in libstratosphere
2019-07-11 22:24:59 -07:00
Michael Scire
8177a27db9
pm: fix boot2 launch logic error
2019-07-11 22:24:59 -07:00
Michael Scire
27ff119ba6
pm: fix minor resource manager bugs
2019-07-11 22:24:59 -07:00
Michael Scire
c20774ff5d
pm: fix missing flag clears
2019-07-11 22:24:59 -07:00
Michael Scire
a9f5b7728b
pm: address review comments.
2019-07-11 22:24:59 -07:00
Michael Scire
08ad48fbf3
pm: implement correct application thread boosting mechanism
2019-07-11 22:24:59 -07:00
Michael Scire
2d0c881ffe
strat: go all in on ncm::TitleId
2019-07-11 22:24:59 -07:00
Michael Scire
c916a7db88
strat: remove sizeof() / sizeof([0])
2019-07-11 22:24:59 -07:00
Michael Scire
a5da286351
fix dumb mistake
2019-07-11 22:24:59 -07:00
Michael Scire
20a48c3a26
pm: complete rewrite
2019-07-11 22:24:59 -07:00
suppai
bfc987abcd
Fix for libnx commit 4f441a4/latest master at time of writing
2019-07-07 23:56:21 -04:00
Michael Scire
2225b86eea
Adjust version string based on ReSwitched vote.
2019-07-02 11:49:24 -07:00
hexkyz
09ab3efddd
Fix argument type for isspace
2019-07-01 20:29:43 +01: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
hexkyz
e561919a52
Fix logic in ldr_ro_manager
...
Fix argument type for isdigit/isxdigit
2019-06-30 18:48:16 +01:00
Michael Scire
18ca8aaf5b
stratosphere: all in on enum class CommandId
2019-06-27 23:34:53 -07:00
Michael Scire
e5c5101e8a
Add missing extension cleanup.
2019-06-27 20:51:57 -07:00
Michael Scire
934ff7bbde
<int> -> <s32>
2019-06-27 20:16:56 -07:00
Michael Scire
014f08f6b4
ldr: fix mount check mistake
2019-06-27 18:01:44 -07:00
Michael Scire
6ba2090c01
ldr: address review commentary.
2019-06-27 17:37:33 -07:00
Michael Scire
61fcf5e0f4
loader: completely rewrite.
2019-06-26 15:46:19 -07:00
Michael Scire
9217e4c5f9
sm: add HasService/HasMitm, refactor into sts::
2019-06-24 17:57:49 -07:00
Michael Scire
9baa4a17ed
ro: refactor/rewrite into sts:: namespace
2019-06-24 02:05:51 -07:00
Michael Scire
1e7f41ea9f
boot: move updater into libstrat
2019-06-22 12:30:36 -07:00
Michael Scire
d0d4888184
boot/spl: update for spl-in-libstrat
2019-06-22 12:23:46 -07:00
Michael Scire
804e5d49bb
boot: split out gpio, pinmux.
2019-06-22 11:34:18 -07:00
Michael Scire
6d1d226842
remove unnecessary sts:: prefixing
2019-06-22 00:14:24 -07:00
Michael Scire
06416aeded
boot: refactor to use sts::boot namespace
2019-06-22 00:10:21 -07:00
Michael Scire
4fbae9e5a4
boot: move updater to sts::updater namespace
2019-06-21 21:06:04 -07:00
Michael Scire
c87be7cd69
boot: refactor i2c driver into namespace
2019-06-21 20:25:27 -07:00
SciresM
e62754ed56
Merge pull request #585 from Atmosphere-NX/sm_rewrite
...
Completely re-write sm.
2019-06-21 17:37:06 -07:00
Michael Scire
53d7281e66
sm: use enums for GetInfo
2019-06-21 17:37:01 -07:00
Michael Scire
f9b48f06a3
spl: refactor into sts namespace
2019-06-21 01:36:00 -07:00
Michael Scire
d986ffa153
sm: use AutoHandles
2019-06-20 23:51:15 -07:00
Michael Scire
2357bc70a7
Implementation cleanup
2019-06-20 23:34:59 -07:00
Michael Scire
e86e1588e3
Simplify namespacing
2019-06-20 18:32:00 -07:00
Michael Scire
4be88c7180
sm: adjust Makefile
2019-06-20 18:24:35 -07:00
Michael Scire
8e8daa64ba
sm: completely rewrite module
2019-06-20 18:23:40 -07:00
Michael Scire
1671c04e24
stratosphere: prefer static waitable managers
2019-06-20 13:15:39 -07:00
Michael Scire
d3d6c552b7
stratosphere: remove trailing whitespace
2019-06-20 13:00:32 -07:00
Michael Scire
169ec9c12e
Update libstrat
2019-06-20 05:01:42 -07:00
Michael Scire
60b831f369
ams_mitm: refactor for R_TRY
2019-06-20 04:04:33 -07:00
Michael Scire
4191dcee75
dmnt: fix missing init
2019-06-20 04:04:11 -07:00
Michael Scire
44725c8910
sm: refactor mitm service handle acquisition
2019-06-20 02:21:01 -07:00
Michael Scire
cead8a36ea
stratosphere: more result cleanup
2019-06-20 02:00:59 -07:00
Michael Scire
7b6050a0cb
boot: refactor for R_TRY
2019-06-20 00:57:17 -07:00
Michael Scire
491383c637
dmnt: trailing whitespace
2019-06-19 22:20:44 -07:00
Michael Scire
d7a3645f7f
dmnt: update for R_TRY
2019-06-19 22:19:53 -07:00
Michael Scire
6699fda8c9
loader: implement 8.1.0 changes
2019-06-19 11:51:30 -07:00
Michael Scire
493b074a9e
exo: support for 8.1.0
2019-06-18 23:54:53 -07:00
Michael Scire
31fde233e1
fatal: refactor for R_TRY
2019-06-17 16:41:03 -07:00
Michael Scire
f9bf8923b1
loader: refactor for R_TRY
2019-06-17 16:29:09 -07:00
Michael Scire
ee40dcd76f
PM: Refactor for R_TRY, remove gotos
2019-06-17 15:27:29 -07:00
Michael Scire
876d94c338
ro: update for R_TRY usage
2019-06-17 14:46:18 -07:00
Michael Scire
dfcba5e6d4
sm: refactor to use R_TRY
2019-06-17 09:17:53 -07:00
Michael Scire
a0cf3bbed8
spl: refactor to use R_TRY
2019-06-17 09:00:15 -07:00
Michael Scire
aad02cd751
ams_mitm: update write handle persist path
2019-06-15 07:57:50 -07:00
Michael Scire
0dcb496522
Fix emummc nintendo dir redirection
2019-06-14 21:20:53 -07:00
hexkyz
4c4f037361
Merge branch 'master' into emunand_dev
2019-06-09 19:23:51 +01:00
Michael Scire
e7e5ef4e5d
dmnt: update targetio file ops for new libnx api
2019-06-08 15:58:35 -07:00
SciresM
df3c8f4c94
Merge pull request #555 from lioncash/header
...
bpcmitm_main: Add missing header guard
2019-06-04 12:23:37 -07:00
Lioncash
89a83b0e5a
bpcmitm_main: Remove unnecessary includes
...
Quite a few headers are unused in this header, so we can remove them to
make compilation a tiny bit faster.
2019-06-04 06:29:14 -04:00
Lioncash
7bdd4bb2d1
bpcmitm_main: Add missing header guard
...
Prevents potential inclusion issues.
2019-06-04 06:28:34 -04:00
Lioncash
dd10547ac2
setsys_settings_items: Less resource churn with combined key/value construction
...
The previous string construction discards two temporary std::string
instances (operator+ returns by value, not by reference), and creates a
std::string that it doesn't need to (the one around key). Instead we can
just append to the end of the initial std::string itself, saving on two
unnecessary created strings.
append() has a const char* overload as well (as does operator+), so we
can just append the key string as is without creating an entire new
string.
2019-06-03 21:37:53 -04:00
Lioncash
452c61db7a
setsys_settings_items: Simplify buffer management in LoadConfiguration()
...
We can use a std::string here instead of setting up a scope guard and
manual allocations. We also don't need to care about null-termination,
as c_str() will automatically ensure this is done when passing it into
ini_parse_string().
2019-06-03 21:37:12 -04:00
Michael Scire
837b30d075
Merge branch 'master' into emunand_dev
2019-06-03 12:22:01 -07:00
Michael Scire
50e307b4b7
Update for latest libnx
2019-06-03 12:19:05 -07:00
hexkyz
4c328b6c50
Merge branch 'master' into emunand_dev
2019-06-03 20:14:22 +01:00
Michael Scire
d6502c174a
pm: actually implement GetBootFinishedEvent
2019-05-27 21:52:28 -07:00
Michael Scire
f38965d0bd
dmnt: implement debug log opcode
2019-05-27 18:44:09 -07:00
SciresM
c2cb94062a
Merge pull request #548 from Thog/feature/creport-32-stack-frames
...
creport: Add 32 bits stack frames parsing support
2019-05-27 18:11:10 -07:00
Michael Scire
cfa050cc8f
dmnt: explicitly reserve double-extended width opcodes
2019-05-27 18:10:49 -07:00
Thomas Guillemard
bbcb3757bd
Address comment
2019-05-28 00:26:56 +02:00
Thomas Guillemard
a33ace8996
creport: Add 32 bits stack frames parsing support
...
Also fix FP, SP and LR registers being set wrongly by svcGetDebugThreadParam for 32 bits processes.
2019-05-28 00:18:10 +02:00
Michael Scire
4dac80df75
fs.mitm: add Nintendo directory redirection code
2019-05-27 11:48:17 -07:00
Michael Scire
766097d0b7
creport: dump tls/name on crash ( closes #310 )
2019-05-25 13:33:33 -07:00
Michael Scire
6f25e92892
set.mitm: language emulation ( closes #489 )
2019-05-22 12:13:10 -07:00
SciresM
6cc29185d2
Merge pull request #545 from Kronos2308/simple-sd-save-flag
...
simple sd_save flag
2019-05-17 07:34:07 -07:00
SciresM
13a1566b4e
Merge pull request #542 from leo60228/master
...
Allow pressing buttons on all controllers in loader (closes #541 )
2019-05-17 07:33:55 -07:00
Kronos2308
bbb658a7e5
orthography
2019-05-17 10:03:53 +01:00
Kronos2308
ad812c8125
use configuration of system_settings.ini
...
prioritize the configuration of system_settings.ini
2019-05-17 09:28:46 +01:00
Kronos2308
a64fdce505
flag is now "redirect_save"
2019-05-17 08:44:41 +01:00
Kronos2308
7e950c3bcc
Revert "Add files via upload"
...
This reverts commit d0d7772f98
.
2019-05-17 08:38:21 +01:00
Kronos2308
d0d7772f98
Add files via upload
2019-05-17 08:29:38 +01:00
Kronos2308
674175e1c6
simple sd_save flag
...
something that allows you to decide which title to redirect games saves and which does not
2019-05-17 03:28:24 +01:00
leo60228
eab2d05680
Do same in dmnt and reboot_to_payload
2019-05-12 10:43:49 -04:00
leo60228
56d7473451
Do same in ams_mitm
2019-05-12 09:04:58 -04:00
Michael Scire
bfd4d41834
boot: fix a few issues in gpio/pinmux config
2019-05-12 03:49:36 -07:00
leo60228
defee07625
Allow pressing buttons on all controllers in loader ( closes #541 )
2019-05-11 15:15:17 -04:00