aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/service/ldn/ldn.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Revert "[hle] constexpr handler dispatch maps, introduce version gating ↵PavelBARABANOV2026-10-151-79/+59
| | | | | | | | | | | | | | | | | (#4480)" (#4532) This reverts commit 218c6705d950635bc18f8458d738a1996fb592b6. - [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions). - [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md). - [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability. ------------------- Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4532 Reviewed-by: lizzie <lizzie@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Reviewed-by: Maufeat <sahyno1996@gmail.com>
* [hle] constexpr handler dispatch maps, introduce version gating (#4480)lizzie2026-10-131-59/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR primarily focuses on upbringing constexpr maps for handlers. Each time an HLE object of a service is construed, it registers it's own handlers, over and over. Regardless of whetever it needs them at the moment or not. Additionally we don't require to keep track of different function pointers amongst each object. This can be done by overriding the given function instead, as opposed to having a separate hash map for every given object. In other words: Remove handlers (and handlers_tipc) map for every instance then read from a static defined per-class. - [x] Migrate all HLE functions to new `frozen::map` constexpr time finder - [ ] Measure if this approach actually makes better codegen Optional: - [x] Properly gate all functions (that have versions commented next to them) - [x] Maybe store `HandlerFnP<>` and `const char*` separately, version gating can go in a different map as well Information such as name can be used on debug builds, but doesn't particularly help on release as one can consult an external reference (or have an annotated IPC map) Signed-off-by: lizzie <lizzie@eden-emu.dev> - [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions). - [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md) - [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability. ------------------- Co-authored-by: Maufeat <sahyno1996@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4480 Reviewed-by: Maufeat <sahyno1996@gmail.com> Reviewed-by: MaranBr <maranbr@eden-emu.dev>
* [hle] correct IClientProcess::RegisterClient, impl cmd 3100,3102 for ns:vm ↵lizzie2026-09-091-3/+21
| | | | | | | | | | | | | | | | | | | (#4376) ldn had wrong signature ns:vm had missing function stubs that would make some games assert on missing impl Signed-off-by: lizzie <lizzie@eden-emu.dev> - [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions). - [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md) - [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability. ------------------- Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4376 Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Reviewed-by: Maufeat <sahyno1996@gmail.com>
* [acc, ldn] Implement CreateClientProcessMonitor and stub LoadIdTokenCache ↵JPikachu2025-10-241-3/+23
| | | | | | | | | | | | | | | | | | | | changes (#2810) - IManagerForApplication/SystemService: from 19.0.0+ LoadIdTokenCache (3) is now LoadIdTokenCacheDeprecated (3) - IManagerForApplication/SystemService: LoadIdTokenCache (4) stubbed - Implement CreateClientProcessMonitor to ldn:s and ldn:u - Create new client_process_monitor.cpp/.h files - Change non-domain (C) functions into domain (D) functions to fix crashes Thanks to SwitchBrew documentation, fixes 'Pokemon: Legends Z-A' LDN issues. Co-authored-by: JPikachu <jpikachu.eden@gmail.com> Co-authored-by: unknown <sahyno1996@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2810 Reviewed-by: Maufeat <sahyno1996@gmail.com> Reviewed-by: MaranBr <maranbr@eden-emu.dev> Co-authored-by: JPikachu <jpikachu@eden-emu.dev> Co-committed-by: JPikachu <jpikachu@eden-emu.dev>
* Added v18.0.0 stubs and updated tzdb_to_nxdarktux2025-04-041-0/+2
|
* service: ldn: Migrate and refractor service to new IPCNarr the Reg2024-02-111-744/+58
|
* Implemented qlaunch version of the controller appletFrozenAra2023-11-191-1/+9
|
* service: ldn: Implement lp2p:m and stub IMonitorServiceNarr the Reg2023-10-011-2/+89
|
* service: move hle_ipc from kernelLiam2023-03-011-37/+37
|
* service: refactor server architectureLiam2023-02-211-7/+11
| | | | Converts services to have their own processes
* Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"ameerj2023-02-031-2/+2
| | | | | This reverts commit 153fa289d219c37f8344bccfdf67edc6e579d8c8, reversing changes made to 20676b3b5a1a613af4e498c7cbfdc456339d85a0.
* Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ↵liamwhite2023-02-021-2/+2
| | | | ReadBuffer"
* hle_ipc: Rename ReadBufferSpan to ReadBufferameerj2022-12-281-2/+2
|
* service: Use ReadBufferSpan where it is trivial to do soameerj2022-12-251-2/+2
|
* service: Make use of buffer element count helpersLioncash2022-11-231-2/+2
|
* kernel: remove KWritableEventLiam2022-10-121-1/+1
|
* Address some review commentsFearlessTobi2022-09-201-2/+0
|
* ldn: Initial implementationFearlessTobi2022-09-091-99/+130
|
* core: ldn: Address review comments part 2german772022-08-111-268/+297
|
* core: ldn: Address review commentsNarr the Reg2022-08-081-35/+41
|
* ldn: Add better stubs and more data typesFearlessTobi2022-08-071-59/+372
| | | | | Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com> Co-Authored-By: Morph <39850852+Morph1984@users.noreply.github.com>
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* general: Replace RESULT_SUCCESS with ResultSuccessMorph2021-06-021-8/+8
| | | | Transition to PascalCase for result names.
* ldn: Add and stub lp2p:sys lp2p:app INetworkServiceMonitor INetworkServicegerman772021-05-261-0/+141
|
* core: hle: ldn: Error out on call to Initialization.bunnei2021-02-271-1/+1
| | | | - Since we do not emulate LDN, returning an error here makes more sense.
* hle: service: ldn: IUserLocalCommunicationService: Improve the stub.bunnei2021-02-131-5/+29
|
* hle: service: ldn: IUserLocalCommunicationService: Indicate that LDN is ↵bunnei2021-02-131-3/+5
| | | | | | disabled. - Fixes crash on Pokemon Sword/Shield when pressing 'Y'.
* service: Eliminate usages of the global system instanceLioncash2020-11-261-14/+15
| | | | | Completely removes all usages of the global system instance within the services code by passing in the using system instance to the services.
* ldn: Update function tableVolcaEM2020-06-271-0/+1
| | | This was based on Switchbrew page: https://switchbrew.org/wiki/LDN_services
* IUserLocalCommunicationService: add function Initialize2Nguyen Dac Nam2020-02-161-1/+9
|
* HLE: correct function name of IUserLocalCommunicationServiceNguyen Dac Nam2020-02-161-1/+1
| | | | 402: function name should be Initialize2 (7.0.0+) not SetOperationMode Follow by: https://switchbrew.org/wiki/LDN_services#IUserLocalCommunicationService
* service: Update service function tablesLioncash2019-04-111-4/+50
| | | | Updates function tables based off information from SwitchBrew.
* Changed logging to be "Log before execution", Added more error logging, all ↵David Marcec2018-11-261-6/+6
| | | | services should now log on some level
* service: Add ldn servicesLioncash2018-07-261-0/+142
Adds ldn services based off information provided by Switch Brew.