240 Commits

Author SHA1 Message Date
Liam
5f7608a7c6 vi: ignore shared buffer destruction failure on termination 2024-02-20 00:02:56 -05:00
Liam
668ff0db3a vi: remove superfluous locking in shared buffer manager 2024-02-19 23:59:35 -05:00
Liam
9f159dd62c nvnflinger/vi: don't recreate buffer queue on open/close 2024-02-19 23:59:35 -05:00
Liam
940a71422e nvnflinger: check for layers before compose 2024-02-18 11:25:52 -05:00
german77
a07f0883b9 service: vi: Implement ListDisplayMode 2024-02-17 18:08:41 -05:00
Liam
812f23d05c vi: manage resources independently of nvnflinger and refactor 2024-02-17 18:08:38 -05:00
Liam
dcce9837d2 vi: move shared buffer management from nvnflinger 2024-02-17 18:01:41 -05:00
Liam
ee8eccc5fa nvnflinger: convert to process 2024-02-17 18:01:41 -05:00
Liam
1842df1da5 vi: rewrite IApplicationDisplayService 2024-02-14 12:03:32 -05:00
Liam
8863940bf5 vi: rewrite ISystemDisplayService 2024-02-14 12:03:32 -05:00
Liam
b1c71f976c vi: rewrite IManagerDisplayService 2024-02-14 12:03:32 -05:00
Liam
59011a04a1 vi: rewrite IHOSBinderDriver 2024-02-14 12:03:32 -05:00
Liam
c448001d47 vi: rewrite IApplicationRootService, IManagerRootService, ISystemRootService 2024-02-14 12:03:32 -05:00
Liam
2e8c0e9247 vi: split into implementation files 2024-02-14 12:03:32 -05:00
Liam
db871677b0 vi: extract types 2024-02-14 12:03:31 -05:00
Liam
962c82540c nvnflinger/gpu: implement blending 2024-02-09 09:20:53 -05:00
Liam
a595e9e8a7 nvnflinger/gpu: implement layer stack composition 2024-01-31 11:27:21 -05:00
Liam
68303ed601 core: support offline web applet 2024-01-29 20:17:33 -05:00
Liam
182137a9a4 am: migrate global state to per-applet state structure 2024-01-29 20:17:33 -05:00
Narr the Reg
fc5d76e6e2 service: properly convert buffers to strings 2024-01-23 10:24:05 -06:00
Liam
e4bbb24dcf vi: check layer state before opening or closing 2024-01-17 22:03:40 -05:00
Liam
ce89580749 nvnflinger: ensure display abandonment considers all layers and future layers 2024-01-17 18:45:39 -05:00
Liam
ea710e6523 vi: connect vsync event handle lifetime to application display service interface 2024-01-07 21:47:41 -05:00
Liam
ae88ea79b2 vi: fix name of nvnflinger 2024-01-07 21:31:03 -05:00
Liam
adc3079613 vi: fix confusion between closing and destroying layers 2023-12-12 12:14:23 -05:00
Liam
79e7d7f4ba nvnflinger: use graphic buffer lifetime for map handle 2023-10-29 22:12:16 -04:00
Narr the Reg
35f25882e0 service: nvnflinger: Implement shared buffer
Co-authored-by: Liam <byteslice@airmail.cc>
2023-10-01 11:38:30 -06:00
lat9nq
3c45452fae general: Use console mode helper across project 2023-08-22 21:58:23 -04:00
lat9nq
387ede76d2 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
37b278a9a8 general: fix incorrect conversions 2023-08-08 11:09:37 -04:00
Liam
84cb20bc72 core: remove ResultVal type 2023-08-08 11:09:37 -04:00
Liam
bb94beed15 nvnflinger: fix Parcel serialization 2023-05-11 17:09:19 -04:00
Liam
809148e1a5 nvnflinger: fix name 2023-03-01 10:39:49 -05:00
Liam
65be230fdd service: move hle_ipc from kernel 2023-03-01 10:39:49 -05:00
liamwhite
97f7a560f3
Merge pull request #9832 from liamwhite/hle-mp
service: HLE multiprocess
2023-03-01 10:38:20 -05:00
Narr the Reg
39ca7b2928 core: Update service function tables to 16.0.0+ 2023-02-24 18:17:36 -06:00
Liam
a936972614 service: refactor server architecture
Converts services to have their own processes
2023-02-21 12:19:25 -05:00
ameerj
2d2522693e Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"
This reverts commit 25fc5c0e1158cb8e81cbc769b24ad84032a1fbfd, reversing
changes made to af20e25081f97d55b451606c87922e2b49f0d363.
2023-02-03 00:08:45 -05:00
liamwhite
b01698775b
Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer" 2023-02-02 15:53:28 -05:00
ameerj
32d01a39b0 nvflinger: Split Parcel class into InputParcel and OutputParcel
The usages of the Parcel class were already unique to either Read or Write operations.
Avoids needing a vector of the input payload for the InputParcel use-case, instead it can remain as a span.
2022-12-25 17:19:10 -05:00
Liam
cdb9fe978f vi: implement CloseDisplay 2022-10-27 08:27:38 -04:00
Morph
bffbaddb79 general: Add missing pragma once 2022-10-17 03:14:31 -04:00
Liam
a9ace6856d kernel: remove KWritableEvent 2022-10-12 20:29:29 -04:00
VonChenPlus
9982cff98b Core: Fix get nvmap object random crash 2022-10-06 21:00:53 +02:00
Liam White
afab6c143c General: Fix compilation for GCC 2022-10-06 21:00:53 +02:00
Morph
41e855bd42 service: vi: Retrieve vsync event once per display
The display vsync event can only be retrieved once per display. Returns VI::ResultPermissionDenied if we attempt to retrieve the vsync event for the same display.

Prevents games such as .hack//G.U. Last Recode from consuming all the handles in the handle table by spamming vsync event retrievals and allows it to go in game.
2022-09-25 21:33:36 -04:00
Morph
acc887cc34 service: vi: Move VI results into its own file 2022-09-25 20:33:25 -04:00
german77
a7d9be1384 core: Replace all instances of ResultCode with Result 2022-06-26 20:21:37 -05:00
Morph
99ceb03a1c general: Convert source file copyright comments over to SPDX
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.
2022-04-23 05:55:32 -04:00
bunnei
d02bf6dab1 hle: service: vi: Create a service thread where appropriate. 2022-04-02 01:24:30 -04:00