Commit Graph

37 Commits

Author SHA1 Message Date
Marco Rodolfi
d90c320dda [filesystem] Moved generic methods to platform independent code 2025-01-20 18:03:23 +01:00
Gliniak
3ac98ebfba [Static Analysis] Resolved some issues mentioned in Alexandr-u report 2024-11-02 19:08:34 +01:00
Gliniak
49584ff664 [VFS] Change file attributes or timestamps.
Changing these options is only viable for r/w mounted host devices (Cache)
Changing attributes works only on windows
Changing timestamps is mocked and logged to see if there is any title that uses it
2024-08-15 17:17:44 +02:00
Gliniak
6e86eacf5a Added Listing directories and filtering filenames by regex 2023-08-03 20:37:00 +02:00
chss95cs@gmail.com
c1d922eebf Minor decoder optimizations, kernel fixes, cpu backend fixes 2022-11-05 10:50:33 -07:00
chrisps
8186792113 Revert "Minor decoder optimizations, kernel fixes, cpu backend fixes" 2022-11-01 14:45:36 -07:00
chss95cs@gmail.com
bff264b5fd Fixed RtlCompareString and RtlCompareStringN, they were very wrong, for CompareString the params are struct ptrs not char ptrs
Fixed a ton of clang-cl compiler warnings about unused variables, still many left. Fixed a lot of inconsistent override ones too
2022-10-30 10:47:09 -07: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
gibbed
ed04d96e67 Avoid using '#' format spec for X hex numbers.
Avoid using '#' format spec for X (uppercase) hex numbers, as it
results in output like "0XABCDEF" instead of "0xABCDEF".
2020-04-09 11:25:08 -05:00
Sandy Carter
fc5153bca1 filesystem: use std for DeleteFile
Remove custom platform implementation of `DeleteFile` and replace single
use with `std::filesystem::remove` after a negative
`std::filesystem::is_directory` check.
2020-04-09 09:44:48 -05:00
Sandy Carter
df65de231f filesystem: use std for DeleteFolder
Remove custom platform implementation of `DeleteFolder` and replace two
uses with `std::filesystem::remove_all` which removes a file or
directory with all its contents.
2020-04-09 09:44:48 -05:00
Sandy Carter
69bcf59c79 filesystem: use std for CreateFolder
Remove custom platform implementation of `CreateFolder` and replace uses
with `std::filesystem::create_directories` which creates paths
recursively.
2020-04-09 09:44:48 -05:00
Sandy Carter
c8e64da4eb filesystem: use std for PathExists
Remove custom platform implementation of `PathExists` and replace uses
with `std::filesystem::exists`.
2020-04-09 09:44:48 -05:00
Sandy Carter
a9fa38c88b filesystem: use std for IsFolder
Remove custom platform implementation of IsFolder and replace
single use with `std::filesystem::is_directory`.
2020-04-09 09:44:48 -05:00
gibbed
a48bb71c2f Overhaul logging. 2020-04-07 16:09:41 -05:00
gibbed
5bf0b34445 C++17ification.
C++17ification!

- Filesystem interaction now uses std::filesystem::path.
- Usage of const char*, std::string have been changed to
  std::string_view where appropriate.
- Usage of printf-style functions changed to use fmt.
2020-04-07 16:09:41 -05:00
Triang3l
cde092ece1 [D3D12] Persistent shader and PSO storage 2020-03-21 19:22:19 +03:00
Silent
96a9397349 [Base] Remove MAX_PATH limit from GetUserFolder
Replace SHGetFolderPath with SHGetKnownFolderPath to remove the limit
2020-02-09 14:01:39 -06:00
gibbed
9a8d77137c [Base] Fix Windows CreateFolder so it creates the entire path properly. 2019-07-18 17:47:25 -05:00
Rick Gibbed
9bb20bfc36 Merge pull request #1254 from Wildenhaus/master
Games on Demand / Multi-file STFS (SVOD) support.
2019-05-04 11:30:48 -05:00
gibbed
1ba5dd5eb1 Use platform-specific user directory to store content. Create a file named portable.txt next to xenia.exe to restore previous behavior. 2018-11-21 18:07:45 -06:00
Wildhaus
19fb21da7d Games on Demand / Multifile STFS (SVOD) Support 2018-11-11 15:27:29 -05:00
gibbed
bc369e43cb [Kernel] Add support for XFileEndOfFileInformation. 2018-05-23 04:24:37 -05:00
gibbed
ac7dce758b Fixed xe::filesystem::DeleteFolder on Windows. Should fix some issues where games tried to overwrite existing content such as saves and was failing. 2017-01-09 17:05:05 -06:00
gibbed
23b72e4888 Complain loudly when ReadFile() returns ERROR_NOACCESS. 2016-06-18 18:26:23 -05:00
Ben Vanik
76ed07cfff Adding back FILE_FLAG_BACKUP_SEMANTICS. 2015-12-30 09:19:54 -08:00
Dr. Chat
62351a62de filesystem::CreateFile 2015-12-29 12:35:55 -08:00
Ben Vanik
5019f1aa98 Possible fix for failing to create files. 2015-12-29 11:02:28 -08:00
Ben Vanik
e6461f326c Some xb style cleanup. 2015-08-05 22:06:20 -07:00
Ben Vanik
42400d06a9 Making stateless file IO platform-agnostic. 2015-07-15 18:01:09 -07:00
Ben Vanik
72ad899e9e Starting to remove windows.h includes from things. 2015-07-13 20:49:29 -07:00
Ben Vanik
dec0d12cc9 Replacing includes of windows headers with base/platform.h. 2015-07-01 09:02:04 -07:00
Ben Vanik
cc08e9019a Move NtCreateFile/NtOpenFile to VFS, implement (mostly) for real.
Progress on #305.
2015-06-29 10:33:36 -07:00
Ben Vanik
1106029afc _wfopen -> xe::filesystem::OpenFile.
Progress on #305.
2015-06-28 17:33:46 -07:00
Ben Vanik
30e0c6dbb1 Support --target=path to stfs root.
Fixes #302.
2015-06-28 15:28:04 -07:00
Ben Vanik
83872d8e8f Refactoring vfs to remove a lot of duplicated code.
Progress on #294.
2015-06-27 22:37:49 -07:00
Ben Vanik
0716cf84c0 Renaming xe::fs to xe::filesystem and xe::kernel::fs to xe::vfs.
Progress on #294.
2015-06-27 13:31:21 -07:00