Commit Graph

240 Commits

Author SHA1 Message Date
Liam 0e032e03e6 vi: ignore shared buffer destruction failure on termination 2024-02-20 00:02:56 -05:00
Liam 3b78f33757 vi: remove superfluous locking in shared buffer manager 2024-02-19 23:59:35 -05:00
Liam 6fabb06764 nvnflinger/vi: don't recreate buffer queue on open/close 2024-02-19 23:59:35 -05:00
Liam d082a80d79 nvnflinger: check for layers before compose 2024-02-18 11:25:52 -05:00
german77 07143cd038 service: vi: Implement ListDisplayMode 2024-02-17 18:08:41 -05:00
Liam f5d736af4b vi: manage resources independently of nvnflinger and refactor 2024-02-17 18:08:38 -05:00
Liam e34074861c vi: move shared buffer management from nvnflinger 2024-02-17 18:01:41 -05:00
Liam b1f1beae41 nvnflinger: convert to process 2024-02-17 18:01:41 -05:00
Liam 0f18bf4a06 vi: rewrite IApplicationDisplayService 2024-02-14 12:03:32 -05:00
Liam 04b3fdca99 vi: rewrite ISystemDisplayService 2024-02-14 12:03:32 -05:00
Liam f675c54cbe vi: rewrite IManagerDisplayService 2024-02-14 12:03:32 -05:00
Liam 33daf4463b vi: rewrite IHOSBinderDriver 2024-02-14 12:03:32 -05:00
Liam 5ad57cb878 vi: rewrite IApplicationRootService, IManagerRootService, ISystemRootService 2024-02-14 12:03:32 -05:00
Liam 8de4523094 vi: split into implementation files 2024-02-14 12:03:32 -05:00
Liam a989a7ad9c vi: extract types 2024-02-14 12:03:31 -05:00
Liam 1c32e4157c nvnflinger/gpu: implement blending 2024-02-09 09:20:53 -05:00
Liam 5ec76db392 nvnflinger/gpu: implement layer stack composition 2024-01-31 11:27:21 -05:00
Liam 7df27bbef6 core: support offline web applet 2024-01-29 20:17:33 -05:00
Liam 49f10b2e54 am: migrate global state to per-applet state structure 2024-01-29 20:17:33 -05:00
Narr the Reg aad9258100 service: properly convert buffers to strings 2024-01-23 10:24:05 -06:00
Liam c6dc206cd6 vi: check layer state before opening or closing 2024-01-17 22:03:40 -05:00
Liam 5f9a3c23db nvnflinger: ensure display abandonment considers all layers and future layers 2024-01-17 18:45:39 -05:00
Liam 1d7fb4cffb vi: connect vsync event handle lifetime to application display service interface 2024-01-07 21:47:41 -05:00
Liam beab2c3fc7 vi: fix name of nvnflinger 2024-01-07 21:31:03 -05:00
Liam ccef7d7326 vi: fix confusion between closing and destroying layers 2023-12-12 12:14:23 -05:00
Liam 2e8b7e4a40 nvnflinger: use graphic buffer lifetime for map handle 2023-10-29 22:12:16 -04:00
Narr the Reg 9567f9aaed service: nvnflinger: Implement shared buffer
Co-authored-by: Liam <byteslice@airmail.cc>
2023-10-01 11:38:30 -06: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 580f7f2ff1 general: fix incorrect conversions 2023-08-08 11:09:37 -04:00
Liam 5f2c56cd15 core: remove ResultVal type 2023-08-08 11:09:37 -04:00
Liam c59b0c9715 nvnflinger: fix Parcel serialization 2023-05-11 17:09:19 -04: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
Narr the Reg 932cf55052 core: Update service function tables to 16.0.0+ 2023-02-24 18:17:36 -06:00
Liam 1c3a93e7c4 service: refactor server architecture
Converts services to have their own processes
2023-02-21 12:19:25 -05:00
ameerj 7cc5da4a9f Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"
This reverts commit 153fa289d2, reversing
changes made to 20676b3b5a.
2023-02-03 00:08:45 -05:00
liamwhite f74a95b6fb Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer" 2023-02-02 15:53:28 -05:00
ameerj 4531881bfd 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 4351ab1ff1 vi: implement CloseDisplay 2022-10-27 08:27:38 -04:00
Morph 6a22ed905b general: Add missing pragma once 2022-10-17 03:14:31 -04:00
Liam 09777eea76 kernel: remove KWritableEvent 2022-10-12 20:29:29 -04:00
VonChenPlus 9623b1dc5a Core: Fix get nvmap object random crash 2022-10-06 21:00:53 +02:00
Liam White 6df0663a57 General: Fix compilation for GCC 2022-10-06 21:00:53 +02:00
Morph 55fef19014 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 23c1bf736f service: vi: Move VI results into its own file 2022-09-25 20:33:25 -04:00
german77 c7890ebccc core: Replace all instances of ResultCode with Result 2022-06-26 20:21:37 -05:00
Morph 2b87305d31 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 b3f4b41cc1 hle: service: vi: Create a service thread where appropriate. 2022-04-02 01:24:30 -04:00