Michael Scire
c5030ec4d4
typofix: boogaloo: electric.
2022-03-23 09:15:39 -07:00
Michael Scire
136339ca49
fix typo-bug in HierarchicalSha256Storage::Read
2022-03-23 09:15:39 -07:00
Michael Scire
9436b9a555
ams: deduplicate static initialization logic
2022-01-19 16:28:54 -08:00
Michael Scire
a392646aab
sf/cmif: optimize dispatch table walk to use binary search over linear search
2022-01-19 16:28:54 -08:00
Léo Lam
2916512fb7
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-30 16:34:43 -08:00
Michael Scire
c542e49ae9
dmnt2: try to avoid writing out of bounds when generating packets
2021-11-03 23:59:56 -07:00
Michael Scire
54783b86f1
dmnt2: detect thread name, add monitor get mapping(s), increase buffer sizes
2021-11-03 23:59:55 -07:00
Michael Scire
cfb192e8a2
dmnt: enable experimental standalone usage of gdbstub, while starlink is in dev
2021-11-03 23:59:53 -07:00
Michael Scire
ceff2f3712
spl: fix legacy physical keyslot compatibility
2021-10-30 11:21:36 -07:00
Michael Scire
f8e294d6fc
sprofile: various correctness fixes.
2021-10-29 17:47:14 -07:00
Michael Scire
9cc867eb21
sprofile: fix off-by-one in struct definition, fix GetImportableProfileUrls
2021-10-29 17:47:14 -07:00
Michael Scire
0a0bd74ca2
init: disable fsdev cwd to prevent abort on fsdev usage (fsdev should not be used)
2021-10-27 22:57:18 -07:00
Michael Scire
f68bae342c
sprof: update for 13.1.0 (format version 1)
2021-10-26 01:11:19 -07:00
Michael Scire
d71b86281a
hos: whoops
2021-10-26 01:11:17 -07:00
Michael Scire
1c768fe276
hos: better safe than sorry
2021-10-26 01:11:17 -07:00
Michael Scire
358cd4d95f
hos: allow turning off ams extension hard-reqs for unit testing
2021-10-26 01:11:17 -07:00
Michael Scire
194e58a3e3
kern/test: add wip qemu-virt board support to mesosphere
2021-10-26 01:11:16 -07:00
SciresM
823c0df6b9
kern: avoid constexpr init for many objects (avoids unnecessary memory clear) ( #1668 )
2021-10-26 01:11:13 -07:00
Michael Scire
ea0de678ac
lr: fix EraseRedirection hang introduced by refactoring
2021-10-26 01:11:11 -07:00
Michael Scire
960c5c19f9
ams: improve offsetof style consistency
2021-10-26 01:11:10 -07:00
Michael Scire
21cb300537
constexpr: resign ourselves to gcc dropping void -> T support
2021-10-26 01:11:10 -07:00
Michael Scire
d5ea59d8f8
powctl: remove unused arm_neon header after last commit
2021-10-26 01:11:09 -07:00
Michael Scire
6da57eff75
powctl: don't require arm64 arch for floating -> fixed conversion
2021-10-26 01:11:09 -07:00
Michael Scire
cf765c0946
tipc: implement special-case templating used by 13.0.0 pgl
2021-10-15 23:54:40 -07:00
Michael Scire
dbd0b13002
boot: update for 13.0.0/aula parameter changes ( closes #1477 )
2021-10-15 23:54:40 -07:00
Michael Scire
17bf5ee002
powctl: integrate 13.0.0 changes (aula params not done yet)
2021-10-15 23:54:40 -07:00
Michael Scire
68e9f7c853
strat: fix some mitm server management logic
2021-10-15 23:54:39 -07:00
Michael Scire
15b3f9545f
sm/tipc: minor cleanup
2021-10-15 23:54:39 -07:00
Michael Scire
02c1d19605
strat: don't force fs globals to link into every process
2021-10-15 23:54:38 -07:00
Michael Scire
a9322a7245
sf: prevent emitting mitm/defer code unless server in process supports it
2021-10-15 23:54:38 -07:00
Michael Scire
3bef5b7d5a
ams: allow bootloader to merely approximate correct target firmware
2021-10-15 23:54:37 -07:00
Michael Scire
3218308524
loader: refactor ro manager/improve accuracy
2021-10-15 23:54:36 -07:00
Michael Scire
0abb1e474e
spl: refactor for accuracy/move into libstrat
2021-10-15 23:54:36 -07:00
Michael Scire
11e9dcfe11
os: add FlushDataCache
2021-10-15 23:54:36 -07:00
Michael Scire
3e33fb6361
strat: use m_ for member variables
2021-10-15 23:54:35 -07:00
Michael Scire
3b5f56ab9f
ams: replace most remaining operator & with std::addressof
2021-10-15 23:54:34 -07:00
Michael Scire
02e98d84d7
settings: fix correctness issue in LazyFileAccessor
2021-10-15 23:54:34 -07:00
Michael Scire
5c32ec11ea
strat: refactor address taking of form &var[...]
2021-10-15 23:54:34 -07:00
Michael Scire
e2df2f98a3
strat: always use explicit result namespacing
2021-10-15 23:54:33 -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
0a4c2759a1
os: fix mutex push/pop prototypes
2021-10-07 23:38:32 -07:00
Michael Scire
80d72af9f3
cs: prevent exceptions from manifesting
2021-10-07 23:06:30 -07:00
Michael Scire
3fcc3c8e72
boot: save 12KB
2021-10-07 23:06:29 -07:00
Michael Scire
c3583b8604
erpt: save 8KB
2021-10-07 23:06:29 -07:00
Michael Scire
2905319d46
strat: use ams::Main() instead of main(argc, argv)
2021-10-07 23:06:29 -07:00
Michael Scire
8a8631ebcb
strat: build sysmodules with -Wextra/-Werror
2021-10-07 23:06:29 -07:00
Michael Scire
843dc8e521
libstrat: fix compilation without pre-compiled header/without lto
2021-10-07 23:06:28 -07:00
Michael Scire
fd1b6d4578
libstrat: enable -Wextra, -Werror
...
This caught an embarrassingly large number of bugs.
2021-10-07 23:06:28 -07:00
Michael Scire
408173da12
os: fix MapTransferMemory output not being set
2021-10-07 23:06:28 -07:00
Michael Scire
390ce66da1
svc: refactor/rename MemoryInfo fields
2021-10-07 23:06:28 -07:00
Michael Scire
782e449543
strat: remove map namespace, svc: add address space defs
2021-10-07 23:06:27 -07:00
Michael Scire
4ce6273f2b
strat: use sf::NativeHandle for ipc templating
2021-10-07 23:06:27 -07:00
Michael Scire
612b9e2f01
strat: prefer os::NativeHandle to Handle/svc::Handle where sensible
2021-10-07 23:06:26 -07:00
Michael Scire
09a9fdb2c3
pm: use svc::LimitableResource where relevant
2021-10-07 23:06:26 -07:00
Michael Scire
5a71876ca8
strat: use svc:: over ::svc
2021-10-07 23:06:26 -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
304b0f8016
os: remove ManagedHandle, refactor to use NativeHandle typename
2021-10-07 23:06:25 -07:00
Michael Scire
4390df76ad
pm/cfg: simplify initial process id range logic
2021-10-07 23:06:25 -07:00
Michael Scire
28756234d9
strat: automatic program id detection
2021-10-07 23:06:25 -07:00
Michael Scire
828506218f
os: adopt nintendo ReaderWriter naming over ReadWrite
2021-10-07 23:06:24 -07:00
Michael Scire
a582429e6d
os: amend io region api
2021-10-07 23:06:24 -07:00
Michael Scire
cc4133c1b7
os: improve thread name codegen
2021-10-07 23:06:24 -07:00
Michael Scire
d1c6b77f13
os: implement SharedMemory, update AslrSpaceManager
2021-10-07 23:06:23 -07:00
Michael Scire
b690bc1472
os: fix AttachTransferMemory return type
2021-10-07 23:06:23 -07:00
Michael Scire
6125281acd
os: adopt multiwait naming over waitable
2021-10-07 23:06:23 -07:00
Michael Scire
71b389c9e4
os: add tentative IoRegionType
2021-10-07 23:06:22 -07:00
Michael Scire
28edc0ca8f
lmem: fix assert with side effects
2021-10-07 23:06:22 -07:00
Michael Scire
c68298a00e
stratosphere: use SdkMutex/SdkRecursiveMutex over Mutex
2021-10-07 23:06:22 -07:00
Michael Scire
6fdac55fd1
libstrat: uncomment some asserts
2021-10-07 23:06:21 -07:00
Michael Scire
7665721e03
ams-libs: AMS_ASSERT no longer invokes expression
2021-10-07 23:06:21 -07:00
Michael Scire
3ef8f0f73f
os: implement Barrier
2021-10-07 23:06:21 -07:00
Michael Scire
389018db64
os: implement SdkRecursiveMutex
2021-10-07 23:06:21 -07:00
Michael Scire
47bbff43c5
os: add unit tests for ExpandUnsignedValueToAscii
2021-10-07 23:06:20 -07:00
Michael Scire
c357cf7b87
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-10-07 23:06:20 -07:00
Michael Scire
6f53cbbe79
os: implement LightSemaphore
2021-10-07 23:06:20 -07:00
Michael Scire
41495ef51b
os: implement LightMessageQueue
2021-10-07 23:06:19 -07:00
Michael Scire
c00d83204f
os: refactor MessageQueue to use new MessageQueueHelper template
2021-10-07 23:06:19 -07:00
Michael Scire
9035b840a2
os: tweak LightEvent codegen
2021-10-07 23:06:19 -07:00
Michael Scire
3d6e8d5281
os: implement LightEvent
2021-10-07 23:06:19 -07:00
Michael Scire
57e380b2d6
os: implement ReadWriteBusyMutex
2021-10-07 23:06:18 -07:00
Michael Scire
6c98cd1ce2
os: implement BusyMutex
2021-10-07 23:06:18 -07:00
Michael Scire
dc52a32285
ncm: fix destructor availability
2021-09-19 11:01:04 -07:00
Michael Scire
b579a6d75e
svc/kern/dd: remove MapDeviceAddressSpace()
2021-09-19 10:35:39 -07:00
Adubbz
4afce6965f
ncm: updated to 13.0.0
2021-09-19 10:35:35 -07:00
Adubbz
66104b830a
ncm: skeleton new commands
2021-09-19 10:35:34 -07:00
Michael Scire
a8bccc95ab
sprofile: fully reimplement sprof:bg + sprof:sp
2021-09-19 10:35:33 -07:00
Michael Scire
8a35d51406
sprofile: implement non-importer bgagent commands
2021-09-19 10:35:33 -07:00
Michael Scire
196c524768
sprofile: implement OpenProfileUpdateObserver
2021-09-19 10:35:33 -07:00
Michael Scire
6b66af37cd
erpt: skeleton sprofile apis
2021-09-19 10:35:32 -07:00
Michael Scire
f85afd2980
boot2: launch nintendo lm from built in system, not none
2021-09-19 10:35:31 -07:00
Michael Scire
2ab649f2b0
cs: fix launching of tio server
2021-09-19 10:35:30 -07:00
Michael Scire
ad9c7eb4dd
cs: fix screenshot packet semantics
2021-09-19 10:35:30 -07:00
Michael Scire
c53eeb27f3
cs: implement TakeScreenShot command
2021-09-19 10:35:30 -07:00
Michael Scire
c31069cc88
cs: fix allocator aborts
2021-09-19 10:35:30 -07:00
Michael Scire
7bb3153938
osdbg: implement thread info api
2021-09-19 10:35:27 -07:00
Michael Scire
f29660c335
boot2: launch dmnt.gen2 over dmnt, when using htc
2021-09-19 10:35:26 -07:00
Michael Scire
bd1fab8516
cs: implement GetFirmwareVersion command
2021-09-19 10:35:25 -07:00
Michael Scire
728191da43
scs: implement EventHandlerThread for shell
2021-09-19 10:35:25 -07:00
Michael Scire
a949c14c95
scs: implement DoShellServer
2021-09-19 10:35:25 -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
Michael Scire
0c0bb8153a
fusee: attempt reboot to self if possible, better abort/fatal handlers
2021-09-06 16:32:50 -07:00
Michael Scire
f78be93eac
stratosphere: remove 0.19.0 update cleanup logic.
2021-09-06 16:32:49 -07:00
Michael Scire
fe21509991
ams-1.0.0: meso no longer optional, remove conditional logic
2021-09-06 16:32:47 -07:00
Michael Scire
5c215383b2
dmnt: various cheat changes/suggestions that have been cooking a while
2021-08-20 13:34:00 -07:00
Michael Scire
dc3f54a713
ams: std::optional -> util::optional
2021-07-12 01:59:51 -07:00
Michael Scire
2945208d6e
erpt: fix 0x100 byte memory leak on creation of new report
2021-07-06 07:28:31 -07:00
Michael Scire
5a133af896
mem: actually fully fix the heap bug, add comments for future self
2021-06-08 08:09:22 -07:00
Michael Scire
b1f5e24044
mem: fix rare crash/logic error in heap allocation code
2021-06-08 08:09:21 -07:00
Michael Scire
156a5ceba2
libstrat: fix override operator new to be noexcept ( closes #1494 )
2021-06-08 08:09:21 -07:00
Michael Scire
82296aa0ee
ams: move around abort handler to avoid linker errors
2021-05-12 09:09:42 -07:00
Michael Scire
07073a7580
sm: update to excise unnecessary library code
2021-05-12 09:09:41 -07:00
Michael Scire
2fc9035b7d
fs: add access log strings for DirectoryEntryType
2021-05-12 09:09:41 -07:00
Michael Scire
64ec9a7421
erpt: fix reading files that don't exist
2021-05-12 09:09:40 -07:00
Michael Scire
dc42da8456
boot: update all autogenerated parameters other than charge
2021-04-30 08:56:11 -07:00
Michael Scire
5deb52d1eb
erpt: implement forced shutdown detection
2021-04-30 08:56:10 -07:00
Michael Scire
f9eff4dcdd
erpt: Implement 12.0.0 AppletTotalActiveTime tracking
2021-04-30 08:56:10 -07:00
Michael Scire
1e1b5971ce
fs: properly implement OperateRangeWithBuffer, correct OperationId names.
2021-04-30 08:56:09 -07:00
Michael Scire
888b39fa50
ams: assume gcc 11
2021-04-29 03:04:54 -07:00
Michael Scire
12471d428d
strat: compat with gcc 11
2021-04-29 03:04:54 -07:00
Michael Scire
b7dc7ad44d
erpt: implement AppletActiveTimeInfoList
2021-04-29 03:04:52 -07:00
Michael Scire
7111b5cce6
strat: no longer materially constrained by sm session limit
2021-04-29 03:04:50 -07:00
Michael Scire
68ddbc732a
ncm: fix iteration of nested-subdirectory content files
2021-04-12 17:13:22 -07:00
Michael Scire
714b162cda
boot2: migration also not launched in 12.0.0
2021-04-12 17:13:22 -07:00
Michael Scire
7bee0289ee
ncm: fix random error when deleting content
2021-04-12 17:13:22 -07:00
Michael Scire
44279dbac4
fs: add (stubbed) OperateRangeWithBuffer implementation
2021-04-11 03:59:26 -07:00
Michael Scire
5921377678
erpt: add (stubbed, TODO after 0.19.0) support for 12.0.0
2021-04-11 03:59:26 -07:00
Michael Scire
c37dbbc7eb
boot2: grc is no longer launched by boot2 on 12.0.0+
2021-04-11 03:59:25 -07:00
Michael Scire
ac6f1fecaf
pgl: update to use tipc (untested)
2021-04-11 03:59:25 -07:00
Michael Scire
ab34b55543
strat: changes for sm tipc (boots 11.0.1, now)
2021-04-11 03:59:25 -07:00
Michael Scire
2fe065b590
tipc/sm: various fixes for issues
2021-04-11 03:59:24 -07:00
Michael Scire
2542f282e0
sm: reimplement using tipc instead of cmif (probably broken, untested)
2021-04-11 03:59:24 -07:00
Michael Scire
728bda9677
tipc: server processor fixes (compiles!)
2021-04-11 03:59:23 -07:00
Michael Scire
484bc20f16
tipc: implement framework/server support logic (except for actual processing)
2021-04-11 03:59:23 -07:00
Michael Scire
3f59907760
tipc: fix deserialization of buffers
2021-04-11 03:59:22 -07:00
Michael Scire
5bb7a55fe3
tipc: implement service object interface generation
2021-04-11 03:59:22 -07:00
Michael Scire
8301b868fd
tipc: fix compilation issues with core serialization routines
2021-04-11 03:59:21 -07:00
Michael Scire
3bcfb043f1
ncm: fix GameCardStorageRoot mount point ( closes #1404 )
2021-04-11 03:59:05 -07:00
Adubbz
a156728af7
ncm: Updated ListContentId for 11.0.0
2021-04-11 03:59:04 -07:00
Michael Scire
0345840a88
ams: convert to util::ConstructAt where appropriate
2021-04-11 03:59:04 -07:00
Michael Scire
9b47aa6e08
ams: prefer construct_at/destroy_at over placement new/explicit destructor
2021-04-11 03:59:04 -07:00
Michael Scire
1861791c1c
ams: remove TYPED_STORAGE() macro in favor of template
2021-04-11 03:59:03 -07:00
Michael Scire
bae4c2c6d5
boot2: clean up pre-0.19.0 ams contents on upgrade
2021-04-11 03:59:02 -07:00
Michael Scire
fddf313699
ams: distribute sysmodules in single file as stratosphere.romfs
2021-04-11 03:59:02 -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
SciresM
97d94180cf
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-04-11 03:59:00 -07:00
Michael Scire
5b4765a3e6
boot2: fix tma launch when htc is disabled
2021-04-11 03:58:59 -07:00
Michael Scire
cc84810ddc
htclow: fix ordering of channels, uninitialized bug in service json parse
2021-04-11 03:58:59 -07:00
Michael Scire
60777c5b0d
fs: fix GetFileTimeStampRawForDebug
2021-04-11 03:58:58 -07:00
Michael Scire
65a37c60cc
tio: implement SdCardObserver (finishes sysmodule)
2021-04-11 03:58:57 -07:00
Michael Scire
e7f61805d0
htc: disable socket driver, needs design thought before we can turn it on for real.
2021-04-11 03:58:56 -07:00
Michael Scire
09f34b1323
ams: implement socket api for htclow socket driver
2021-04-11 03:58:55 -07:00
Michael Scire
7d528a30df
htc: implement socket driver (socket api not really impl'd yet)
2021-04-11 03:58:54 -07:00
Michael Scire
353e7f1a2c
htc: implement htcmisc service object commands
2021-04-11 03:58:54 -07:00
Michael Scire
c766cc8347
kern: Increase reserved system memory, require mesosphere for htc/tma
2021-04-11 03:58:54 -07:00
Michael Scire
8a42b3ee3e
htc: configure usage via system setting
2021-04-11 03:58:53 -07:00
Michael Scire
d23bc85d38
htcs: fixes, echo server is now fully functional
2021-04-11 03:58:53 -07:00
Michael Scire
98bd52bbf6
htcs: implement remaining client bindings
2021-04-11 03:58:53 -07:00
Michael Scire
851f0d05f5
htcs: implement client socket bindings
2021-04-11 03:58:52 -07:00
Michael Scire
d5e748ec4f
htcs: implement virtual socket collection
2021-04-11 03:58:52 -07:00
Michael Scire
39da247782
htcs: implement data channel manager
2021-04-11 03:58:52 -07:00
Michael Scire
013a073a34
htcs: implement rpc tasks
2021-04-11 03:58:51 -07:00
Michael Scire
2850786a0b
htcs: hook up HtcsService to rpc client
2021-04-11 03:58:51 -07:00
Michael Scire
4006c4e7b9
htcs: fix magic template argument deduction, do Close/Connect/Bind
2021-04-11 03:58:51 -07:00
Michael Scire
6f9aad70da
htcs: declare all rpc tasks
2021-04-11 03:58:50 -07:00
Michael Scire
a14d7222d0
htcs: hook up CreateSocket/RpcClient Begin<>/End<>
2021-04-11 03:58:50 -07:00
Michael Scire
9c78a955ce
htcs: hook up manager impl to (unimplemented) service
2021-04-11 03:58:50 -07:00
Michael Scire
98b482a766
htcs: hook manager up to (unimplemented) manager impl
2021-04-11 03:58:49 -07:00
Michael Scire
099594469b
htcs: hook service objects up to (unimplemented) manager apis
2021-04-11 03:58:49 -07:00
Michael Scire
e788e76571
htc: fixes for WriteFileLarge/sending over data channel
2021-04-11 03:58:49 -07:00
Michael Scire
8ebd4bc568
htcfs: fix CreateFile packet header
2021-04-11 03:58:48 -07:00
Michael Scire
041f8cd7db
htc: implement the remaining commands for htcfs
2021-04-11 03:58:48 -07:00
Michael Scire
6068b21626
htc: ReadDirectoryLarge/data channel support
2021-04-11 03:58:48 -07:00
Michael Scire
149cfe4abc
htc: Implement (almost) all host-directory commands
2021-04-11 03:58:47 -07:00
Michael Scire
1af323f5b8
htcfs: implement OpenDirectory/CloseDirectory
2021-04-11 03:58:47 -07:00
Michael Scire
b56c5aaaeb
htc: implement htcfs protocol bringup
2021-04-11 03:58:46 -07:00
Michael Scire
1261e3447b
htc: fix event wait loops for rpc clients
2021-04-11 03:58:46 -07:00
Michael Scire
6737e4220e
htc: fixes, can now enter ReadyState with wip starlink code
2021-04-11 03:58:45 -07:00
Michael Scire
116e4e88b3
htc: fix htcfs sf definition
2021-04-11 03:58:45 -07:00
Michael Scire
cf07075828
htc: finish last code for Main()
2021-04-11 03:58:45 -07:00
Michael Scire
1af137ab1b
htc: add htcfs server/service object skeletons
2021-04-11 03:58:44 -07:00
Michael Scire
435211a044
htclow: add Channel wrapper class
2021-04-11 03:58:44 -07:00
Michael Scire
5199b3edaa
htcs: add hipc server/service object skeletons
2021-04-11 03:58:43 -07:00
Michael Scire
93966fd4b1
htc: skeleton HtcsManagerImpl, implement HtcsMonitor
2021-04-11 03:58:43 -07:00
Michael Scire
ddadc3e579
htc: ObserverThread (mostly), system now boots + works with htc in bg
2021-04-11 03:58:42 -07:00
Michael Scire
46653ac05a
htc: implement psc/pm loop
2021-04-11 03:58:42 -07:00
Michael Scire
d2a70847d4
htc: implement HtcmiscImpl::ServerThread/HtcmiscRpcServer::ReceiveThread
2021-04-11 03:58:41 -07:00
Michael Scire
bd05b91eb0
htc: Implement RpcClient::ReceiveThread + SendThread
2021-04-11 03:58:41 -07:00
Michael Scire
21b2112bcc
htc: Implement HtcmiscImpl::ClientThread
2021-04-11 03:58:40 -07:00
Michael Scire
8d3f11796a
htc: add RpcTaskQueue/RpcTaskIdFreeList
2021-04-11 03:58:40 -07:00
Michael Scire
f2b51e2130
htc: nullptr != false
2021-04-11 03:58:39 -07:00
Michael Scire
0286aacf33
htc: add RpcTaskTable
2021-04-11 03:58:39 -07:00
Michael Scire
3d4fa15b09
htc: implement htcmisc rpc tasks
2021-04-11 03:58:39 -07:00
Michael Scire
8d6c9bb9ee
htc: skeleton constructors for htcmisc
2021-04-11 03:58:38 -07:00
Michael Scire
a1e57a7413
htc: implement remainder of Mux/Tasks
2021-04-11 03:58:38 -07:00
Michael Scire
6a99b7fcd5
htc: implement mux side of connecting (and more)
2021-04-11 03:58:38 -07:00
Michael Scire
67c293faba
htc: fix driver manager c/p error
2021-04-11 03:58:37 -07:00
Michael Scire
8bfa4d662e
htc: implement remaining htclow::HtclowManagerImpl funcs (mux impls pending)
2021-04-11 03:58:37 -07:00
Michael Scire
fda4ddca62
htc: declare and begin impl of HtclowManagerImpl interface
2021-04-11 03:58:37 -07:00
Michael Scire
996e21863a
htc: optimize Mux::QuerySendPacket
2021-04-11 03:58:36 -07:00
Michael Scire
33100d9fbb
mux: optimize many accesses to O(log(n)) vs Nintendo's O(log(n)^2)
2021-04-11 03:58:36 -07:00