Michael Scire
4efa5d7dd0
ams: first attempt at 13.2.1 support
2022-01-19 16:28:32 -08:00
Michael Scire
30fac905af
ams: deduplicate static initialization logic
2021-12-13 13:07:03 -08:00
Michael Scire
09c6aa29dd
sf/cmif: optimize dispatch table walk to use binary search over linear search
2021-12-06 13:13:46 -08:00
Michael Scire
ddfc16731f
ams/hos: add enum support for 13.2.0
2021-11-30 16:22:57 -08:00
Michael Scire
fcc7ce49d9
sm/tipc: ensure technical-correctness of sins (no page cost)
2021-11-06 20:05:32 -07:00
Michael Scire
f98c7cba98
sm: save 0x5000 of memory by sinning
2021-11-06 19:33:08 -07:00
Léo Lam
496adb0018
Minor header fixes to reduce parsing issues with Clang ( #1700 )
...
* Work around Clang's incomplete C++20 support for omitting typename
* vapours: fix Clang error about missing return in constexpr function
* stratosphere: fix call to non-constexpr strlen in constexpr function
strlen being constexpr is a non-compliant GCC extension; Clang
explicitly rejects it: https://reviews.llvm.org/D23692
* stratosphere: add a bunch of missing override specifiers
* stratosphere: work around Clang consteval bug
Minimal example: https://godbolt.org/z/MoM64v93M
The issue seems to be that Clang does not consider f(x) to be a
constant expression if x comes from a template argument that isn't
a non-type auto template argument (???)
We can work around this by relaxing GetMessageHeaderForCheck (by using
constexpr instead of consteval). This produces no functional changes
because the result of GetMessageHeaderForCheck() is assigned to a
constexpr variable, so the result is guaranteed to be computed
at compile-time.
* stratosphere: fix missing require clauses in definitions
GCC not requiring the require clauses to be repeated for member
definitions is actually a compiler bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96830
Clang rejects declarations with missing require clauses.
* Fix ALWAYS_INLINE_LAMBDA and parameter list relative order
While GCC doesn't seem to care about the position of the always_inline
attribute relative to the parameter list, Clang is very picky
and requires the attribute to appear after the parameter list
(and before a trailing return type)
* stratosphere: fix static constexpr member variable with incomplete type
GCC accepts this for some reason (because of the lambda?) but Clang
correctly rejects this.
2021-11-06 18:19:34 -07:00
Michael Scire
47218f0da8
ams: overhaul fs.mitm romfs ownership, bump to 1.2.4
2021-11-04 13:38:41 -07:00
Michael Scire
b140834b7e
dmnt2: try to avoid writing out of bounds when generating packets
2021-11-03 23:56:25 -07:00
Michael Scire
6145b3b72c
dmnt2: detect thread name, add monitor get mapping(s), increase buffer sizes
2021-11-03 23:56:25 -07:00
Michael Scire
4489513f7c
dmnt: enable experimental standalone usage of gdbstub, while starlink is in dev
2021-11-03 23:56:25 -07:00
Michael Scire
6cf5205a28
spl: fix legacy physical keyslot compatibility
2021-10-30 11:21:25 -07:00
Michael Scire
4e92687cab
sprofile: various correctness fixes.
2021-10-29 17:38:44 -07:00
Michael Scire
2a0b99d9f9
sprofile: fix off-by-one in struct definition, fix GetImportableProfileUrls
2021-10-29 15:41:25 -07:00
Michael Scire
3e97e4addf
init: disable fsdev cwd to prevent abort on fsdev usage (fsdev should not be used)
2021-10-27 22:57:09 -07:00
Michael Scire
0e81eac9d1
sprof: update for 13.1.0 (format version 1)
2021-10-26 00:51:44 -07:00
Michael Scire
ad03be9a38
hos: whoops
2021-10-25 17:31:14 -07:00
Michael Scire
d63be0737b
hos: better safe than sorry
2021-10-25 17:31:14 -07:00
Michael Scire
018ae08409
hos: allow turning off ams extension hard-reqs for unit testing
2021-10-25 17:31:14 -07:00
Michael Scire
0a58e803be
kern/test: add wip qemu-virt board support to mesosphere
2021-10-25 17:31:14 -07:00
SciresM
36e4914be8
kern: avoid constexpr init for many objects (avoids unnecessary memory clear) ( #1668 )
2021-10-23 15:25:20 -07:00
Michael Scire
799a9a5f98
lr: fix EraseRedirection hang introduced by refactoring
2021-10-18 11:00:55 -07:00
Michael Scire
889d843718
ams: improve offsetof style consistency
2021-10-18 00:17:13 -07:00
Michael Scire
ad4c794aea
constexpr: resign ourselves to gcc dropping void -> T support
2021-10-17 02:39:16 -07:00
Michael Scire
64950dbd31
powctl: remove unused arm_neon header after last commit
2021-10-16 10:11:45 -07:00
Michael Scire
03efc31f9c
powctl: don't require arm64 arch for floating -> fixed conversion
2021-10-16 10:04:19 -07:00
Michael Scire
2541f6dd71
tipc: implement special-case templating used by 13.0.0 pgl
2021-10-15 21:23:55 -07:00
Michael Scire
ff5f376c33
tipc: enable named-thread dispatch
2021-10-15 19:59:29 -07:00
Michael Scire
d1bc1a5c57
boot: update for 13.0.0/aula parameter changes ( closes #1477 )
2021-10-15 19:03:11 -07:00
Michael Scire
990daec3a2
powctl: integrate 13.0.0 changes (aula params not done yet)
2021-10-15 16:30:27 -07:00
Michael Scire
7e536f74ae
strat: fix some mitm server management logic
2021-10-14 00:40:43 -07:00
Michael Scire
891fa32bf1
tipc/sm: update more fully for 13.0.0 changes
2021-10-13 23:50:57 -07:00
Michael Scire
ca25a884b5
tipc: add additional logic from 13.0.0
2021-10-12 00:57:54 -07:00
Michael Scire
0189c5f1e6
sm/tipc: minor cleanup
2021-10-12 00:20:21 -07:00
Michael Scire
82d07e04aa
strat: don't force fs globals to link into every process
2021-10-11 22:16:12 -07:00
Michael Scire
bd1bcdf52b
sf: prevent emitting mitm/defer code unless server in process supports it
2021-10-11 19:01:27 -07:00
Michael Scire
5708bb1557
ams: allow bootloader to merely approximate correct target firmware
2021-10-11 00:54:17 -07:00
Michael Scire
06f68a8159
loader: refactor to remove fake namespaces
2021-10-10 21:37:29 -07:00
Michael Scire
d9dc04318d
loader: refactor ro manager/improve accuracy
2021-10-10 18:22:32 -07:00
Michael Scire
d8a36e39f2
spl: refactor for accuracy/move into libstrat
2021-10-10 12:57:36 -07:00
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
5a38311ebf
libstrat: remove lingering debugging edits
2021-10-09 14:51:44 -07:00
Michael Scire
1ab0bd1765
ams: replace most remaining operator & with std::addressof
2021-10-09 14:49:53 -07:00
Michael Scire
ce8aacef21
settings: fix correctness issue in LazyFileAccessor
2021-10-09 14:20:37 -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
d14290e357
os: fix mutex push/pop prototypes
2021-10-07 23:38:15 -07:00
Michael Scire
41a4bf53f6
cs: prevent exceptions from manifesting
2021-10-07 19:48:40 -07:00
Michael Scire
888b35833e
boot: save 12KB
2021-10-07 19:33:07 -07:00
Michael Scire
afccc35e79
erpt: save 8KB
2021-10-07 19:14:31 -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
e8f1efd01b
libstrat: fix compilation without pre-compiled header/without lto
2021-10-06 17:58:42 -07:00
Michael Scire
7ca83c9d3b
libstrat: enable -Wextra, -Werror
...
This caught an embarrassingly large number of bugs.
2021-10-06 15:20:48 -07:00
Michael Scire
e1fbf27398
os: fix MapTransferMemory output not being set
2021-10-06 12:07:26 -07:00
Michael Scire
4866e80769
svc: refactor/rename MemoryInfo fields
2021-10-05 15:16:54 -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
d97e97258e
sf: add NativeHandle type
...
TODO: figure out how to integrate this into templating...
2021-10-04 17:34:16 -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
597d521f52
pm: use svc::LimitableResource where relevant
2021-10-04 16:33:18 -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
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
2b37e5d486
os: adopt nintendo ReaderWriter naming over ReadWrite
2021-10-01 11:42:34 -07:00
Michael Scire
00d0c94f2d
os: amend io region api
2021-10-01 01:02:48 -07:00
Michael Scire
3eac814268
os: improve thread name codegen
2021-10-01 00:41:35 -07:00
Michael Scire
82f3416799
os: implement SharedMemory, update AslrSpaceManager
2021-10-01 00:36:18 -07:00
Michael Scire
101e3087fe
os: fix AttachTransferMemory return type
2021-09-30 22:18:46 -07:00
Michael Scire
24d6933145
strat: use consistent include style for lib headers
2021-09-30 19:21:08 -07:00
Michael Scire
7444a68cd1
os: adopt multiwait naming over waitable
2021-09-30 19:00:47 -07:00
Michael Scire
d9b4009f82
os: add IoRegion
2021-09-30 11:43:17 -07:00
Michael Scire
2d214f5e1e
os: add tentative IoRegionType
2021-09-30 11:32:45 -07:00
Michael Scire
c31060f0b8
lmem: fix assert with side effects
2021-09-29 23:56:30 -07:00
Michael Scire
41ab4c2c68
stratosphere: use SdkMutex/SdkRecursiveMutex over Mutex
2021-09-29 22:52:50 -07:00
Michael Scire
a4fe1bb5d8
libstrat: uncomment some asserts
2021-09-29 22:02:58 -07:00
Michael Scire
9b04ff0f54
ams-libs: AMS_ASSERT no longer invokes expression
2021-09-29 21:32:40 -07:00
Michael Scire
5dc64bc1f7
os: implement Barrier
2021-09-29 18:03:11 -07:00
Michael Scire
b25218c918
os: implement SdkRecursiveMutex
2021-09-29 14:56:53 -07:00
Michael Scire
6b438c7adf
ddsf: We can use LightEvent now
2021-09-29 14:17:40 -07:00
Michael Scire
8fc7d715a5
os: add unit tests for ExpandUnsignedValueToAscii
2021-09-29 13:55:40 -07:00
Michael Scire
15ff64e03a
os: implement ExpandUnsignedValueToAscii
...
Nintendo does this as of latest firmware.
It's desirable because it removes the only usage of util::SNPrintf() from os library,
which means programs which don't otherwise use SNPrintf do not need to link it into .text.
This saves ~0xD40 of .text as of time-of-commit when successfully unlinking, and e.g.
reduces our sm (and other modules) memory size by a page.
2021-09-29 13:42:11 -07:00
Michael Scire
1e7a327a25
os: implement LightSemaphore
2021-09-29 13:24:03 -07:00
Michael Scire
b8a1ebd11a
os: implement LightMessageQueue
2021-09-29 12:55:52 -07:00
Michael Scire
cf5f431058
os: refactor MessageQueue to use new MessageQueueHelper template
2021-09-29 12:24:18 -07:00
Michael Scire
c7634c66c4
os: tweak LightEvent codegen
2021-09-28 19:11:52 -07:00
Michael Scire
632b6b3330
os: implement LightEvent
2021-09-28 18:54:09 -07:00
Michael Scire
5e0bbb61b1
os: implement ReadWriteBusyMutex
2021-09-28 17:01:11 -07:00
Michael Scire
09570c470c
os: implement BusyMutex
2021-09-28 14:53:55 -07:00
Michael Scire
155f158197
ncm: fix destructor availability
2021-09-19 11:00:57 -07:00
Michael Scire
ce7dd55257
svc/kern/dd: remove MapDeviceAddressSpace()
2021-09-19 10:34:31 -07:00
Adubbz
b6b09d6944
ncm: updated to 13.0.0
2021-09-19 10:34:31 -07:00
Adubbz
a941e4be03
ncm: skeleton new commands
2021-09-19 10:34:31 -07:00
Michael Scire
89541c8042
sprofile: fully reimplement sprof:bg + sprof:sp
2021-09-19 10:34:31 -07:00
Michael Scire
ae54ec5981
sprofile: implement non-importer bgagent commands
2021-09-19 10:34:31 -07:00
Michael Scire
75d5e2aef0
sprofile: implement OpenProfileUpdateObserver
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
cb299d9260
fusee/exo: update for recognition of 13.0.0
2021-09-19 10:34:31 -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
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
c6fad1b0ee
osdbg: implement thread info api
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
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
dda7ea6ac2
fusee: attempt reboot to self if possible, better abort/fatal handlers
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
da208f8001
ams-1.0.0: meso no longer optional, remove conditional logic
2021-09-06 16:26:50 -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
0c596e682f
exo/daybreak: advertise (and check against) supported hos version
2021-07-21 18:21:38 -07:00
Michael Scire
ea7b6e14f9
ams-libs: fix change detection for library building
2021-07-12 01:59:37 -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
a3dd445b32
fs.mitm: add OpenDataStorageWithProgramIndex support (theoretically, closes #1250 )
2021-06-28 22:24:26 -07:00
Michael Scire
c362838e11
erpt: fix 0x100 byte memory leak on creation of new report
2021-06-28 17:36:42 -07:00
Michael Scire
3dbc79dd5c
ams: bump version to 0.19.4
2021-06-08 08:09:05 -07:00
Michael Scire
df5537b748
mem: actually fully fix the heap bug, add comments for future self
2021-05-26 23:21:08 -07:00
Michael Scire
0f2855ada8
mem: fix rare crash/logic error in heap allocation code
2021-05-26 20:43:03 -07:00
Michael Scire
c790d03693
libstrat: fix override operator new to be noexcept ( closes #1494 )
2021-05-16 23:10:13 -07:00
Michael Scire
7e05e12b83
sf/tipc: treat min/max as true min/max, rather than numeric
2021-05-12 22:43:39 -07:00
Michael Scire
bb4c7a390b
ams: update for 12.0.2
2021-05-12 09:08:47 -07:00
Michael Scire
bf8de39e69
ams: move around abort handler to avoid linker errors
2021-05-07 17:49:10 -07:00
Michael Scire
32f487abfb
sm: update to excise unnecessary library code
2021-05-02 10:33:15 -07:00
Michael Scire
7d61cab01c
fs: add access log strings for DirectoryEntryType
2021-04-30 19:19:22 -07:00
Michael Scire
14ed4e4057
erpt: fix reading files that don't exist
2021-04-30 14:44:53 -07:00
Michael Scire
7040e8976d
i2c: add aula pmic device code
2021-04-30 08:42:25 -07:00
Michael Scire
296a6af058
boot: update all autogenerated parameters other than charge
2021-04-30 08:37:51 -07:00
Michael Scire
355010ad84
erpt: implement forced shutdown detection
2021-04-30 04:21:03 -07:00
Michael Scire
ef0c15b764
erpt: Implement 12.0.0 AppletTotalActiveTime tracking
2021-04-29 21:48:47 -07:00
Michael Scire
0dc308d92a
fs: properly implement OperateRangeWithBuffer, correct OperationId names.
2021-04-29 20:09:45 -07:00
Michael Scire
0767d9f8da
ams: assume gcc 11
2021-04-28 15:13:29 -07:00
Michael Scire
21f3d29df7
strat: compat with gcc 11
2021-04-26 20:06:28 -07:00
Michael Scire
5bb790e4a7
erpt: implement AppletActiveTimeInfoList
2021-04-16 00:55:22 -07:00
Michael Scire
bdcf02a3ef
tipc: ports use objects in the object manager
2021-04-14 00:34:46 -07:00
Michael Scire
88ac85c423
sm: save 0x1000 in data costs by not aligning server manager to 0x1000
2021-04-14 00:12:21 -07:00
Michael Scire
2e1a93f1d1
strat: no longer materially constrained by sm session limit
2021-04-13 23:58:10 -07:00
Michael Scire
97a251b4b2
ncm: fix iteration of nested-subdirectory content files
2021-04-12 17:10:27 -07:00
Michael Scire
9d30917f4e
boot2: migration also not launched in 12.0.0
2021-04-11 10:37:04 -07:00
Michael Scire
c67c29ebd5
ncm: fix random error when deleting content
2021-04-11 05:44:13 -07:00
Michael Scire
03a98635d8
fs: add (stubbed) OperateRangeWithBuffer implementation
2021-04-11 03:42:16 -07:00
Michael Scire
461e2ced6f
erpt: add (stubbed, TODO after 0.19.0) support for 12.0.0
2021-04-11 03:42:16 -07:00
Michael Scire
b2d2f65b87
boot2: grc is no longer launched by boot2 on 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
b1b3914ccf
tipc: Result is first raw data word, not last
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
Michael Scire
58776f5ba8
tipc: server processor fixes (compiles!)
2021-04-11 03:42:16 -07:00
Michael Scire
affeeb2724
tipc: implement ServerManager processing logic
2021-04-11 03:42:16 -07:00
Michael Scire
822875ecf5
tipc: implement framework/server support logic (except for actual processing)
2021-04-11 03:42:16 -07:00
Michael Scire
e3a65b1405
tipc: fix deserialization of buffers
2021-04-11 03:42:16 -07:00
Michael Scire
20a7fa1588
tipc: hard-enforce boolean constraints in command processing generation
2021-04-11 03:42:16 -07:00
Michael Scire
315b7bdf22
tipc: implement service object interface generation
2021-04-11 03:42:16 -07:00
Michael Scire
ec988c5a99
tipc: first draft object allocation logic
2021-04-11 03:42:16 -07:00
Michael Scire
21b883a75c
tipc: fix compilation issues with core serialization routines
2021-04-11 03:42:16 -07:00
Michael Scire
e93d71d932
tipc: tentative core serialization logic (missing imports, won't compile)
2021-04-11 03:42:16 -07:00
Michael Scire
dc6a0d7562
ams: add target firmware 12.0.0, fusee recognition
2021-04-11 03:42:16 -07:00
Michael Scire
75a2052144
ncm: fix GameCardStorageRoot mount point ( closes #1404 )
2021-03-24 07:17:03 -07:00
Adubbz
5666c59657
ncm: Updated ListContentId for 11.0.0
2021-03-22 14:58:28 -07:00
Michael Scire
c99ce36d7d
ams: convert to util::ConstructAt where appropriate
2021-03-21 20:36:49 -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
Michael Scire
c8404e8452
boot2: clean up pre-0.19.0 ams contents on upgrade
2021-03-21 13:16:30 -07:00
Michael Scire
79e4c82d7e
ams: distribute sysmodules in single file as stratosphere.romfs
2021-03-21 13:16: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
c9015581ca
boot2: fix tma launch when htc is disabled
2021-02-26 08:08:05 -08:00
Michael Scire
35c816d62f
htclow: fix ordering of channels, uninitialized bug in service json parse
2021-02-26 04:49:20 -08:00
Michael Scire
c7e4f963e8
fs: fix GetFileTimeStampRawForDebug
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
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
d8faa37de0
socket: fix config size calculations
2021-02-24 04:06:54 -08:00
Michael Scire
64c7c6b2a5
ams: implement socket api for htclow socket driver
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
b5ab491603
htc: implement htcmisc service object commands
2021-02-24 04:06:54 -08:00
Michael Scire
8b32b9eadf
kern: Increase reserved system memory, require mesosphere for htc/tma
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
0ec54ed492
htcs: fixes, echo server is now fully functional
2021-02-24 04:06:54 -08:00
Michael Scire
72de4d85f3
htcs: implement remaining client bindings
2021-02-24 04:06:54 -08:00
Michael Scire
d0673aa2fb
htcs: implement client socket bindings
2021-02-24 04:06:54 -08:00
Michael Scire
f7fcb54622
htcs: implement virtual socket collection
2021-02-24 04:06:54 -08:00
Michael Scire
ec643789ab
htcs: implement data channel manager
2021-02-24 04:06:54 -08:00
Michael Scire
70caadafd5
htcs: implement rpc tasks
2021-02-24 04:06:54 -08:00
Michael Scire
7667104961
htcs: hook up HtcsService to rpc client
2021-02-24 04:06:54 -08:00
Michael Scire
0c791f2279
htcs: fix magic template argument deduction, do Close/Connect/Bind
2021-02-24 04:06:54 -08:00
Michael Scire
f71943c03a
htcs: declare all rpc tasks
2021-02-24 04:06:54 -08:00
Michael Scire
536e3e99a8
htcs: hook up CreateSocket/RpcClient Begin<>/End<>
2021-02-24 04:06:54 -08:00
Michael Scire
abff428212
htcs: hook up manager impl to (unimplemented) service
2021-02-24 04:06:54 -08:00
Michael Scire
1541985222
htcs: hook manager up to (unimplemented) manager impl
2021-02-24 04:06:54 -08:00
Michael Scire
61929d6e21
htcs: hook service objects up to (unimplemented) manager apis
2021-02-24 04:06:54 -08:00
Michael Scire
f0ef9fb918
htc: fixes for WriteFileLarge/sending over data channel
2021-02-24 04:06:54 -08:00
Michael Scire
7621bd4e13
htcfs: fix CreateFile packet header
2021-02-24 04:06:54 -08:00
Michael Scire
d20bceff75
htc: implement the remaining commands for htcfs
2021-02-24 04:06:54 -08:00
Michael Scire
1961cb1034
htc: ReadDirectoryLarge/data channel support
2021-02-24 04:06:54 -08:00
Michael Scire
9daec3a66a
htc: Implement (almost) all host-directory commands
2021-02-24 04:06:54 -08:00
Michael Scire
e79417c37c
htcfs: implement OpenDirectory/CloseDirectory
2021-02-24 04:06:54 -08:00
Michael Scire
b371487525
sf: optimize argument parsing for const LargeData &
2021-02-24 04:06:54 -08:00
Michael Scire
5c97469348
htc: implement htcfs protocol bringup
2021-02-24 04:06:54 -08:00
Michael Scire
99a38dce32
htc: fix event wait loops for rpc clients
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
5fc1981061
htc: fix htcfs sf definition
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
9fbbb9fadb
htclow: add Channel wrapper class
2021-02-24 04:06:54 -08:00
Michael Scire
dec06ff649
htc: add htcfs service api definitions
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
10255f7f51
htc: skeleton HtcsManagerImpl, implement HtcsMonitor
2021-02-24 04:06:54 -08:00
Michael Scire
cb5a706659
htcs: add sf interface info/types
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
7485a1968a
htc: implement HtcmiscImpl::ServerThread/HtcmiscRpcServer::ReceiveThread
2021-02-24 04:06:54 -08:00
Michael Scire
3be005b638
htc: Implement RpcClient::ReceiveThread + SendThread
2021-02-24 04:06:54 -08:00
Michael Scire
d60b1abed0
htc: Implement HtcmiscImpl::ClientThread
2021-02-24 04:06:54 -08:00
Michael Scire
1867c31f63
htc: add RpcTaskQueue/RpcTaskIdFreeList
2021-02-24 04:06:54 -08:00
Michael Scire
82757cd1b4
htc: nullptr != false
2021-02-24 04:06:54 -08:00
Michael Scire
f5e98de1a3
htc: add RpcTaskTable
2021-02-24 04:06:54 -08:00
Michael Scire
0880cebc4d
htc: implement htcmisc rpc tasks
2021-02-24 04:06:54 -08:00
Michael Scire
1f03b11dbc
htc: skeleton constructors for htcmisc
2021-02-24 04:06:54 -08:00
Michael Scire
b925344c3b
htc: implement remainder of Mux/Tasks
2021-02-24 04:06:54 -08:00
Michael Scire
42cf3f50d7
htc: implement mux side of connecting (and more)
2021-02-24 04:06:54 -08:00
Michael Scire
70aae4e27a
htc: fix driver manager c/p error
2021-02-24 04:06:54 -08:00
Michael Scire
87165e0f08
htc: implement remaining htclow::HtclowManagerImpl funcs (mux impls pending)
2021-02-24 04:06:54 -08:00
Michael Scire
e20c2450ce
htc: declare and begin impl of HtclowManagerImpl interface
2021-02-24 04:06:54 -08:00
Michael Scire
968ce12492
htc: optimize Mux::QuerySendPacket
2021-02-24 04:06:54 -08:00
Michael Scire
00ab210e66
mux: optimize many accesses to O(log(n)) vs Nintendo's O(log(n)^2)
2021-02-24 04:06:54 -08:00
Michael Scire
4cb6c63516
htc: implement HtclowDriver
2021-02-24 04:06:54 -08:00
Michael Scire
1963ae7ec0
htc: begin skeletoning types for HtcmiscImpl
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
4ed665bcd3
htc: implement remaining worker thread send logic (for channel mux)
2021-02-24 04:06:54 -08:00
Michael Scire
df3d62df84
htc: send logic for HtcctrlService, bugfixes (thanks @misson20000)
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
2cdfde6637
htc: add remaining worker receive thread logic
2021-02-24 04:06:54 -08:00
Michael Scire
6fc24d8883
htc: implement service channel parsing (ReceiveReadyPacket)
2021-02-24 04:06:54 -08:00
Michael Scire
4e9bc617bb
rapidjson: import -master as ams::rapidjson
2021-02-24 04:06:54 -08:00
Michael Scire
679fec2ddc
htc: implement much of worker receive logic
2021-02-24 04:06:54 -08:00
Michael Scire
8f85cc17dc
htc: fix copy/paste error in usb driver
2021-02-24 04:06:54 -08:00
Michael Scire
e40eece74e
htc: free ourselves from the tyranny of numerical enums
2021-02-24 04:06:54 -08:00
Michael Scire
2341f18edd
htc: implement htclow listener thread
2021-02-24 04:06:54 -08:00
Michael Scire
c9c41e0e8d
htc: actually use the usb driver
2021-02-24 04:06:54 -08:00