PavelBARABANOV
e255c20db4
Revert "[hle] constexpr handler dispatch maps, introduce version gating ( #4480 )" ( #4532 )
...
This reverts commit 218c6705d9 .
- [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 >
2026-10-15 08:45:15 +02:00
lizzie
218c6705d9
[hle] constexpr handler dispatch maps, introduce version gating ( #4480 )
...
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 >
2026-10-13 04:38:36 +02:00
yuzubot
c280f95b1a
"Merge Tagged PR 13018"
2024-03-03 13:02:50 +00:00
Liam
b1f1beae41
nvnflinger: convert to process
2024-02-17 18:01:41 -05:00
Liam
47d07fb3a1
am: move out omm interfaces to new module
2024-02-12 09:18:29 -05:00
Liam
0276ae2f95
am: rewrite appletAE, appletOE
2024-02-11 21:59:33 -05:00
Liam
49f10b2e54
am: migrate global state to per-applet state structure
2024-01-29 20:17:33 -05:00
Liam
62369ce46c
service: split am into components
2024-01-29 18:43:45 -05:00
german77
0e5b948301
service: am: Focus state changed goes last
2024-01-28 22:02:01 -06:00
Liam
2397093e4f
fsp-srv: use program registry for SetCurrentProcess
2024-01-11 11:28:52 -05:00
Narr the Reg
146975c880
hid_core: Move hid to it's own subproject
2024-01-05 11:41:15 -06:00
Liam
7836881b24
am/jit: reference memory instance from context
2023-12-24 19:36:42 -05:00
Liam
6bd1dfa8cc
service: fetch objects from the client handle table
2023-12-24 19:20:43 -05:00
FrozenAra
09d7bec6e1
Implemented qlaunch version of the controller applet
2023-11-19 18:38:58 +01:00
liamwhite
b2af122553
Merge pull request #11929 from dima-xd/swkbd-applet
...
service: am: Add support for LLE Software Keyboard Applet
2023-10-31 16:55:49 -04:00
Dzmitry Dubrova
74bb20f0bf
service: am: Add support for LLE Software Keyboard Applet
2023-10-31 21:14:37 +03:00
liamwhite
6aecd890b6
Merge pull request #11892 from german77/pkm_screenshot
...
service: am: Implement ISelfController::SaveCurrentScreenshot
2023-10-31 09:47:19 -04:00
german77
4e453935a3
core: Close all KEvents
2023-10-29 13:52:12 -06:00
Narr the Reg
44e75debd3
service: am: Implement ISelfController::SaveCurrentScreenshot
2023-10-26 22:29:52 -06:00
Narr the Reg
c9fe01204f
service: acc: Implement functions needed for profile select ( #11653 )
2023-10-17 05:12:55 +02:00
Narr the Reg
ab5db1da9f
service: caps: Implement album manager and reorganize service
2023-10-07 20:57:20 -06:00
Narr the Reg
a4a54b3dfc
service: Stub multiple functions to increase stability of album applet
2023-10-07 20:57:10 -06:00
Narr the Reg
ed1e1c4ff6
yuzu: Allow to launch album applet from firmware
2023-10-02 11:29:12 -06:00
liamwhite
bbb8399737
Merge pull request #11632 from german77/hle_cabinet
...
service: am: Add support for LLE Cabinet Applet
2023-10-01 19:24:46 -04:00
Narr the Reg
5914a599ad
service: am: Implement shared buffer
...
Co-authored-by: Liam <byteslice@airmail.cc >
2023-10-01 11:38:30 -06:00
Narr the Reg
7aae68820f
service: am: Set push in arguments according to the launched applet
2023-10-01 11:38:30 -06:00
Kelebek1
cd93b07a50
Don't send a double focus change message
2023-09-28 23:47:10 +01:00
german77
3ff84838ab
service: am: Stub to exit applet cleanly
2023-09-23 20:14:37 -06:00
german77
7fd77a5f77
service: am: Implement stuff needed for Mii Edit
2023-09-23 20:14:33 -06:00
liamwhite
a821c64716
Merge pull request #11483 from FearlessTobi/save-size-max
...
am: Stub GetSaveDataSizeMax
2023-09-16 11:39:56 -04:00
FearlessTobi
67e57a29d5
am: Stub GetSaveDataSizeMax
...
Needed for Minecraft Legends.
2023-09-12 00:21:03 +02:00
FearlessTobi
ff92a0c8f4
am: Implement UserChannel parameters
...
Used by the Super Mairo 3D All-Stars collection.
2023-09-10 15:39:25 -04:00
FearlessTobi
abf45c2d0b
am: Remove bcat from PopLaunchParameter
...
This never belonged here and has no use anymore since the Boxcat backend was removed.
.
2023-09-09 20:44:05 -04:00
liamwhite
33234fe87d
Merge pull request #11384 from liamwhite/am-shutdown
...
am: shorten shutdown timeout when lock is not held
2023-09-02 14:42:35 -04:00
Liam
7a26dc51eb
am: shorten shutdown timeout when lock is not held
2023-08-26 17:12:05 -04:00
lat9nq
81d209ee34
general: Use console mode helper across project
2023-08-22 21:58:23 -04:00
lat9nq
447ec24378
general: Convert use_docked_mode to an enumeration
...
Allows some special interactions with it in the Qt frontend.
2023-08-22 16:07:52 -04:00
Liam
5f2c56cd15
core: remove ResultVal type
2023-08-08 11:09:37 -04:00
Narr the Reg
e0ba30fb8e
service: am: Fix wrong interface
2023-08-02 13:00:30 -06:00
Kelebek1
df8097de60
Debug SetIdleTimeDetectionExtension
2023-07-18 10:16:14 +01:00
Liam
1fc6519671
am: stub CreateCacheStorage
2023-05-11 17:26:02 -04:00
german77
1ec8e38f3f
core: am: Demote TryPopFromFriendInvitationStorageChannel Log level
2023-04-21 22:35:45 -06:00
liamwhite
3b139a811e
Merge pull request #9505 from liamwhite/request-exit
...
applets: implement RequestExit
2023-03-29 09:11:34 -04:00
Liam
46f5e0a276
applets: implement RequestExit
2023-03-25 12:44:26 -04:00
Liam
6eaef51cf2
memory: rename global memory references to application memory
2023-03-23 20:28:47 -04:00
Liam
b8da5b73b2
kernel: convert KProcess to new style
2023-03-12 22:09:27 -04:00
Liam
ea36f70e02
hle: rename legacy errors to Results
2023-03-06 20:58:42 -05:00
Liam
c191cf75bb
nvnflinger: fix name
2023-03-01 10:39:49 -05:00
Liam
d7e9461b71
service: move hle_ipc from kernel
2023-03-01 10:39:49 -05:00
liamwhite
7b8304614c
Merge pull request #9832 from liamwhite/hle-mp
...
service: HLE multiprocess
2023-03-01 10:38:20 -05:00