Commit Graph

218 Commits

Author SHA1 Message Date
Triang3l
22eb8747d3 [GPU/Kernel] Fix space-prefixed hexadecimal number printing 2022-01-29 14:02:55 +03:00
Triang3l
fe3f0f26e4 [UI] Image post-processing and full presentation/window rework
[GPU] Add FXAA post-processing
[UI] Add FidelityFX FSR and CAS post-processing
[UI] Add blue noise dithering from 10bpc to 8bpc
[GPU] Apply the DC PWL gamma ramp closer to the spec, supporting fully white color
[UI] Allow the GPU CP thread to present on the host directly, bypassing the UI thread OS paint event
[UI] Allow variable refresh rate (or tearing)
[UI] Present the newest frame (restart) on DXGI
[UI] Replace GraphicsContext with a far more advanced Presenter with more coherent surface connection and UI overlay state management
[UI] Connect presentation to windows via the Surface class, not native window handles
[Vulkan] Switch to simpler Vulkan setup with no instance/device separation due to interdependencies and to pass fewer objects around
[Vulkan] Lower the minimum required Vulkan version to 1.0
[UI/GPU] Various cleanup, mainly ComPtr usage
[UI] Support per-monitor DPI awareness v2 on Windows
[UI] DPI-scale Dear ImGui
[UI] Replace the remaining non-detachable window delegates with unified window event and input listeners
[UI] Allow listeners to safely destroy or close the window, and to register/unregister listeners without use-after-free and the ABA problem
[UI] Explicit Z ordering of input listeners and UI overlays, top-down for input, bottom-up for drawing
[UI] Add explicit window lifecycle phases
[UI] Replace Window virtual functions with explicit desired state, its application, actual state, its feedback
[UI] GTK: Apply the initial size to the drawing area
[UI] Limit internal UI frame rate to that of the monitor
[UI] Hide the cursor using a timer instead of polling due to no repeated UI thread paints with GPU CP thread presentation, and only within the window
2022-01-29 13:22:03 +03:00
Rick Gibbed
e49916ea0a [XAM] Improvements to profile r/w setting exports
[XAM] Improvements to XamUserReadProfileSettingsEx/
XamUserWriteProfileSettings.

- Unify X_USER_READ_PROFILE_SETTING and X_USER_WRITE_PROFILE_SETTING
  into X_USER_PROFILE_SETTING.
- Clean up Setting serialization to use X_USER_PROFILE_SETTING_DATA
  instead of manual buffer copying.
- Fix XamUserReadProfileSettingsEx case where user_index is non-zero
  and xuids are being used.
- Skip unset settings in XamUserWriteProfileSettings_entry.
2022-01-24 07:29:57 -06:00
gibbed
f4d60f3fc4 [XAM] Fix xeXMsgStartIORequestEx result check. 2022-01-11 06:09:06 -06:00
gibbed
975eadf17e [Kernel] Assert export function return/arg types. 2022-01-09 14:16:37 -06:00
gibbed
12ec728989 [Kernel] Use tables for export groups. 2022-01-09 14:16:37 -06:00
gibbed
3ad0a7dab2 [Kernel] Suffix export functions with _entry. 2022-01-09 12:17:03 -06:00
Gliniak
20fe7bc4b7 [Kernel/XMP] Send correct notification when playback controller is changed
- Changed locked into playback_client enumerator
- Changed vague notification name to something more descriptive
2022-01-04 16:22:57 -06:00
Gliniak
1ba4fbec17 [Kernel/XMP] Remove responsibility of stopping audio when controller is changed 2022-01-04 16:22:57 -06:00
Triang3l
fdec0ab332 [Code] Make union usage more consistent 2021-11-03 20:45:09 +03:00
Triang3l
9d992e3d06 [Kernel] Rename sin_zero due to #define on Android 2021-09-11 23:31:52 +03:00
Triang3l
44847abb98 [Kernel] Remove a TODO for a verified reference 2021-09-07 21:12:06 +03:00
Triang3l
e720e0a540 [Code] Remove game names from code comments (most of at least) 2021-09-05 21:27:40 +03:00
Triang3l
6ce5330f5f [UI] Loop thread to main thread WindowedAppContext 2021-08-28 19:38:24 +03:00
Triang3l
f540c188bf [Lint] Revert incorrect clang-format changes 2021-08-26 21:18:18 +03:00
Triang3l
7edfdc2672 Merge branch 'master' into linux_windowing 2021-08-26 22:58:14 +03:00
emoose
eaab7998f7 [Kernel/XAM] Run XAM-tasks in seperate thread, stub XamTaskShouldExit 2021-08-18 17:34:59 -05:00
Gliniak
05bfdb02e5 [XAM] Return correct error code from GetServiceInfo 2021-08-18 17:25:44 -05:00
Gliniak
f933d9c409 [XAM] XamEnumerate: Set initial item_count value to 0 2021-08-08 10:23:11 -05:00
Gliniak
c9073e101f [XAM] Fix ContentCreate to pass copy of root_name.
[XAM] Fix xeXamContentCreate to pass copy of root_name for deferred
operation, as the pointer may no longer be valid when the callback
is executed.
2021-08-01 13:55:56 -05:00
gibbed
4498a28568 [XAM] Deferred xeXamContentCreate. 2021-06-30 03:39:22 -05:00
gibbed
e8fda5878c [XAM] Enumerator improvements.
- [Kernel] XEnumerator::WriteItems no longer cares about provided
  buffer size, since we know the size when the XEnumerator was created.
- [Kernel] Added XStaticEnumerator template. Previous
  XStaticEnumerator renamed to XStaticUntypedEnumerator.
- [XAM] Deferred xeXamEnumerate.
2021-06-30 03:39:22 -05:00
gibbed
997d0555db Lint/format .inc files. 2021-06-28 20:32:52 -05:00
gibbed
5826b13899 [XAM] Flag NetDll_WSARecvFrom as high frequency. 2021-06-28 20:32:52 -05:00
Cancerous
afde40ab6c XAM fixes.
Updated PR from Permanulled PR #1150.

- [XAM] Stub XGI messages.
- [XAM] Stub XLiveBase GetServiceInfo message.
- [XAM] Stub error out of NetDll_WSARecvFrom.
- [XAM] Stub XamSessionRefObjByHandle.

Improves Aegis Wings, Jetpac, Metal Slug 3, and State of Decay.


Co-authored-by: PermaNulled <crich@thedefaced.org>
2021-06-28 09:51:15 -05:00
Joel Linn
d87bf995e1 Satisfy linter
Apply changes suggested by clang-format-12
2021-06-27 16:33:35 -05:00
Triang3l
fa653cce5d [Kernel] Fix a comment length lint issue 2021-06-26 16:19:41 +03:00
emoose
89e26d7b2b [Kernel] XamContentCreate*: pass XCONTENT_DATA size along to main content-creation func
This lets funcs like XamContentCreateInternal pass along a different XCONTENT_AGGREGATE_DATA struct, which the main func will know what to do with
2021-06-25 23:48:25 -05:00
emoose
9503c9efaf [Kernel] Move title_id field in XCONTENT_AGGREGATE_DATA struct
XamAppEnumerateContentAggregate seems to store title_id at 0x140, so I've moved title_id to there, now AGGREGATE_DATA seems to match the size of the struct used by XamContentCreateInternal.

Also removed unneeded/useless checks inside XamAppEnumerateContentAggregate.
2021-06-25 23:48:25 -05:00
emoose
716d4c412a [Kernel] Let XamContentAggregate.. make use of XEX alt-title-ids header 2021-06-25 23:48:25 -05:00
emoose
fbf9c4630f [Kernel] Use XCONTENT_AGGREGATE_DATA in all ContentManager funcs
Since AGGREGATE_DATA contains extra info about title_id, and can be easily converted to/from XCONTENT_DATA.
2021-06-25 23:48:25 -05:00
emoose
13f30d3492 [Kernel] Merge Content*Data structs into XCONTENT*_DATA
Also moved XContentType to xbox.h so code can make use of it without needing to include STFS stuff
2021-06-25 23:48:25 -05:00
madmodder123
e8dde519cc [XAM] XamShowSigninUI: Fix issue with loading profile(s) 2021-06-25 23:42:00 -05:00
Joel Linn
6d548f51b3 [Kernel] net: name anonymous struct
- fixes GCC compilation error due to
  "member with constructor in anonymous struct"
2021-06-02 22:28:43 -05:00
Joel Linn
a86d7173e1 Refactor FourCC magic uses
- Use new fourcc_t type
- Improves compiler compatibility by removing multi chars
2021-06-02 22:28:43 -05:00
Gliniak
fbc31652e0 [XAM/Net] inet_addr: Handle edge cases 2021-05-27 16:16:56 -05:00
Gliniak
29f7987401 [XAM] XamReadTileToTexture: tile_id safety check 2021-05-27 16:16:20 -05:00
Gliniak
29f28b8b60 [Kernel/XAM] CloseContent: Close files related to closed content 2021-05-27 16:16:01 -05:00
Gliniak
f298d7620a [Kernel/XAM] XamContentGetCreator: Added check for existing content 2021-05-27 16:11:35 -05:00
Gliniak
a69a058991 [XAM/App] Fixed issue when error code was handled as success 2021-05-13 23:08:02 -05:00
Gliniak
93c97fdbda [XAM/Content] Provide title ID for aggregate content 2021-05-13 23:08:02 -05:00
gibbed
21c28a07f1 [XAM] Write stub buffer in XamReadTileToTexture.
[XAM] Write stub texture buffer (white) in XamReadTileToTexture.
2021-05-08 11:13:30 -05:00
gibbed
8d8bab853d [XAM] Define unknown args for XamReadTileToTexture. 2021-05-08 11:13:30 -05:00
gibbed
37a733e33a [XAM] More values for dummy achievement details.
[XAM] Provide image ID and flags for dummy achievement details.
2021-05-08 11:13:30 -05:00
gibbed
0f6bfcf0d5 [XAM] Base dummy achievement details at ID 1. 2021-05-08 11:13:30 -05:00
gibbed
5d778cfef6 [XAM] Better text for dummy achievement details. 2021-05-08 11:13:30 -05:00
gibbed
b2011453cc [XAM] Cap dummy achievement details to 100. 2021-05-08 11:13:30 -05:00
gibbed
b735e3f40d [XAM] Fix dummy achievement details count. 2021-05-08 11:13:30 -05:00
gibbed
cf2037cdf6 [XAM] Cap the number of dummy achievement details. 2021-05-08 09:10:28 -05:00
gibbed
1c78c9d75d [XAM] Fix adding dummy achievement details.
[XAM] Fix infinite loop in adding dummy achievement details when
count>255.
2021-05-08 09:10:28 -05:00