925 Commits

Author SHA1 Message Date
Stenzek
a5613fc815
System: Add OSD message when all enhancements are disabled 2024-04-22 00:38:46 +10:00
Stenzek
17b9736899
Misc: Use a 128b cache line size on Apple Silicon
Turns out it's not 64 bytes like I assumed. The things you learn.
2024-04-18 20:38:36 +10:00
Stenzek
9fd2994b73
Log: Fix crash with >1 instance + file log 2024-04-14 21:18:47 +10:00
Stenzek
6258cb9e0e
FullscreenUI: Various minor bug fixes 2024-04-13 19:57:25 +10:00
Stenzek
e2d87f554b
FileSystem: Canonicalize() after RealPath() 2024-04-11 14:44:29 +10:00
Stenzek
164062f80d
Build: Use C++20 for everything except reshadefx 2024-04-11 13:46:25 +10:00
Stenzek
f75a5605eb
SmallString: Add vformat overloads 2024-04-11 13:42:00 +10:00
Stenzek
631fca3042
SettingsInterface: Add SmallString overloads 2024-04-09 19:54:25 +10:00
Stenzek
6b7cf6a432
SmallString: Add missing methods 2024-04-09 19:54:25 +10:00
Stenzek
9dd686a994
ByteStream: Add error feedback 2024-04-07 13:10:34 +10:00
Stenzek
69c9133cd4
Common: Fix double free on opening invalid zip file 2024-04-05 17:23:29 +10:00
Stenzek
59a13d91ea
Image: Don't use libjpeg stdio functions
Fixes I/O in debug builds.
2024-04-03 23:01:53 +10:00
Stenzek
693982d755
SettingsInterface: Add Error to Save() 2024-03-31 15:50:29 +10:00
Stenzek
eb504143c1
FileSystem: Add Error to CreateDirectory()/RenamePath() 2024-03-31 15:50:13 +10:00
Stenzek
979b7bd36f
FileSystem: Use PathCchCanonicalizeEx() for GetWin32Path() 2024-03-30 00:46:38 +10:00
Stenzek
ab445ec69d
FileSystem: Handle paths longer than MAX_PATH on Windows 2024-03-29 16:23:03 +10:00
Stenzek
b143d96476
Build: Use deps DLLs on Windows 2024-03-24 16:02:59 +10:00
Stenzek
43eb6e20fa
System: Improve screenshot naming 2024-03-16 14:14:15 +10:00
Stenzek
9211d9f2e3
Path: Add CreateFileURL() 2024-03-16 14:10:35 +10:00
Stenzek
620d08f72d
Build: Move Image from common to util 2024-03-06 16:09:21 +10:00
Stenzek
f936a36c85
GPUDevice: Add GPUDownloadTexture
Which can also be based in host/client memory.
Use it for screenshots and VRAM downloads.
2024-02-29 18:56:50 +10:00
Stenzek
4a70164dac
CMake: Determine host page size at build time
Needed for running on Asahi Linux.
2024-02-25 20:30:41 +10:00
Stenzek
c1381cfda6
System: Gracefully handle memory allocaion failure 2024-02-25 20:30:41 +10:00
Stenzek
18ba2032ad
Error: Add AddPrefix()/AddSuffix() 2024-02-25 20:30:41 +10:00
Stenzek
fcb8ce1ebc
Common: Add DynamicLibrary 2024-02-25 20:30:40 +10:00
Stenzek
ea649bdb1b
Common: Fix duplicate fastjmp on Windows/CMake 2024-02-25 01:53:23 +10:00
Stenzek
d5fb5645fc
ByteStream: Move zstd wrapper to util project
Removes zstd dependency from common, fixes updater running on Mac.
2024-02-05 14:28:26 +10:00
Stenzek
a957fb669d
StringUtil: Fix inequal-length EqualNoCase 2024-02-04 15:22:38 +10:00
Stenzek
c2c3eac749
Build: Use shared webp/zstd/zlib 2024-02-03 19:41:56 +10:00
Stenzek
f66866ed73
GPUDevice: Use Error class for initialization errors 2024-01-21 00:18:33 +10:00
Stenzek
ecd8d97f72
FileSystem: Handle infinite symlink loops in FindFiles() 2024-01-21 00:07:32 +10:00
Stenzek
03d6500250
Log: Skip argument packing when below filter level 2024-01-14 01:44:21 +10:00
Stenzek
87a7c09466
GPU/HW: Improve heuristics for draw/write when copying 2023-12-15 16:05:44 +10:00
Stenzek
23d5b20da6
GPU/HW: Split dirty rect into draw/write
Significant performance improvement in Persona 2.
2023-12-14 20:23:49 +10:00
Stenzek
2cd747983a
SmallString: Pass string_view by value 2023-12-14 20:23:48 +10:00
Stenzek
4f84a98864
StringUtil: Pass string_views by value 2023-12-13 21:20:31 +10:00
Stenzek
710698f7e1
Misc: Remove StringUtil::{Starts,Ends}With, use C++20 2023-12-13 21:18:19 +10:00
Stenzek
79c226efff
SmallString: fmt -> format, format -> sprintf 2023-12-13 21:06:15 +10:00
Stenzek
fdd3edf73a
Common: Add LLVM SmallVector 2023-12-09 22:08:14 +10:00
Stenzek
a9ee2a34d8
SmallString: Add missing constructors/move operators 2023-12-09 22:06:59 +10:00
Stenzek
524625269f
Path: Add RealPath() 2023-12-05 16:05:27 +10:00
Stenzek
7ef3578630
ByteStream: Fix incorrect computation in Zstd SeekRelative() 2023-12-03 17:03:38 +10:00
Ganael Laplanche
5486a7a467 Fix get_thread_time() declaration on FreeBSD 2023-11-29 21:05:21 +01:00
Ganael Laplanche
af046c8987 Fix build on FreeBSD
FreeBSD's alloca(3) only needs <stdlib.h>
2023-11-29 20:54:12 +01:00
Stenzek
e382f2b64a
Settings: Add option to disable DSB/fbfetch 2023-11-28 14:38:38 +10:00
Stenzek
333c9fdf6f
Misc: Fix a couple of fmt errors 2023-11-28 14:38:38 +10:00
Stenzek
5cf41a41f3
JitCodeBuffer: Allocate within 32-bit range 2023-11-24 20:35:19 +10:00
Stenzek
bbeae07478
MemorySettingsInterface: Fix bool and SetValue() 2023-11-21 22:31:18 +10:00
Stenzek
cce7be4723
Misc: Make struct member functions file-local 2023-11-18 16:46:11 +10:00
Stenzek
6f66460ec0
Common: Remove ThreadPool class
No longer needed.
2023-11-06 23:17:58 +10:00
Stenzek
0fe6e9170b
HTTPDownloader: Move to util project 2023-11-06 23:17:57 +10:00
Stenzek
3c6b6c5770
Achievements: Use retryable client error status code 2023-11-06 23:17:57 +10:00
Stenzek
f27a28b58c
CDImage: Use ByteSwap() 2023-11-05 22:38:25 +10:00
Stenzek
edae13d9e4
CDROM: Log command parameters 2023-11-05 13:32:25 +10:00
Stenzek
f05ff4103e
Misc: Build fixes for Android 2023-11-04 20:11:51 +10:00
Stenzek
f786138175
CPU/CodeCache: Fix crash on Apple Silicon 2023-10-24 18:30:34 +10:00
Stenzek
8ddb0c4b23
Common/HeapArray: Fix mismatched delete/free 2023-10-21 13:49:35 +10:00
Stenzek
db675cf5d0
Build: Reduce library scope 2023-10-18 00:49:01 +10:00
Stenzek
79e1ae3e54
CPU/CodeCache: Rewrite using new-rec's block management 2023-10-18 00:49:01 +10:00
Stenzek
da1c28bd16 Misc: Fix arm32 build 2023-10-02 23:59:01 +10:00
Stenzek
6fd7eda68f Misc: Fix build on Debian Bullseye 2023-10-02 23:50:56 +10:00
Stenzek
a96111eaeb Misc: Swap make_array() for size deduction 2023-10-02 13:33:33 +10:00
Stenzek
68da62ec29 Common: Fix build with ARM64 clang-cl 2023-10-01 20:48:02 +10:00
Stenzek
0ee6712499 Common: Add MemsetPtrs() 2023-10-01 17:24:34 +10:00
Stenzek
e2efec12b7 CDImageCHD: Add SSE/NEON implementation of CopyAndSwap() 2023-10-01 17:24:34 +10:00
Stenzek
01e505ec8b Common: Add intrin.h 2023-10-01 17:24:34 +10:00
Stenzek
b1bb33a566 Common: Move CPU macros to types.h 2023-10-01 13:57:25 +10:00
Stenzek
fa6ef1d04e Log: Fix system console 2023-09-30 17:08:38 +10:00
Stenzek
4ad777f54f Qt: Add log window 2023-09-30 15:09:07 +10:00
Stenzek
9112b6a850 CDImageCHD: Cache parent hashes 2023-09-27 21:01:09 +10:00
Stenzek
a115b40ef7 Common: Split some routines into CocoaTools 2023-09-24 12:21:19 +10:00
Stenzek
c8dc8849ea Build: Ensure exceptions are off for fmt 2023-09-23 22:21:50 +10:00
Stenzek
4d2c544ca9 FileSystem: Fix DeleteDirectory() on Unix 2023-09-23 22:21:50 +10:00
Stenzek
5c099d55da SmallString: Fix new buffer size not getting set 2023-09-23 22:21:50 +10:00
Stenzek
184b0a1a52 Misc: Swap most C format strings for fmt 2023-09-23 14:14:52 +10:00
Stenzek
92440bdfcf Log: Add fmt overloads 2023-09-23 14:14:52 +10:00
Stenzek
ac0601f408 Common: Drop String, add SmallString 2023-09-23 14:14:52 +10:00
Stenzek
3c68543491 Bus: 16KB page compatibility for mmap fastmem 2023-09-23 14:14:52 +10:00
Stenzek
e63b2eec38 LayeredSettingsInterface: Fix reversed section/key 2023-09-20 16:55:44 +10:00
Stenzek
4b24bf74f4 StringUtil: Add Ellipsise() 2023-09-18 22:38:11 +10:00
Stenzek
68b59ee748 CMake: Swap USE_ and WITH_ for ENABLE_
Consistency.
2023-09-17 12:36:52 +10:00
Stenzek
6bfd498e31 Error: Fix errno resolving on Win32 2023-09-17 00:51:07 +10:00
Stenzek
1ba32585df Common: Add Timer::ResetIfNPassed() 2023-09-16 19:00:29 +10:00
Stenzek
9855a222e0 Common: Add String::ToStdString() 2023-09-16 19:00:29 +10:00
Stenzek
631d1e7433 ImGuiFullscreen: Less jarring notifications 2023-09-16 19:00:29 +10:00
Stenzek
fc96c2f656 Common: unused-result warning fix 2023-09-05 22:59:39 +10:00
Stenzek
519367555b Misc: Replace deprecated std::is_pod 2023-09-05 22:10:50 +10:00
Stenzek
60aca2fc4d Misc: Swap LIKELY/UNLIKELY macros for attributes 2023-09-05 22:10:50 +10:00
Stenzek
adc124c759 Misc: Unreachable code warning fixes 2023-09-05 22:10:50 +10:00
Stenzek
0b0abc426b dep: Remove gsl 2023-09-05 22:10:50 +10:00
Stenzek
391307efaa Common: Drop fallback path for HeterogeneousContainers 2023-09-05 21:37:04 +10:00
Stenzek
58b4946fb9 Build: Switch to C++20 2023-09-05 21:37:04 +10:00
Stenzek
7b068b976b CrashHandler: Use libbacktrace 2023-09-05 21:37:03 +10:00
Stenzek
c0af478dfd Common: Add ASSUME() and use for UnreachableCode() 2023-09-03 14:42:37 +10:00
Stenzek
80e3d29ab8 Misc: clang-cl warning clean-up 2023-09-03 14:30:26 +10:00
Stenzek
cee4f93097 Build: Use precompiled headers 2023-09-02 21:44:08 +10:00
Stenzek
afed8297c9 Common: Bump _WIN32_WINNT 2023-08-31 19:49:32 +10:00
Stenzek
7b196d5c3c Common: Undef GetMessage for Windows headers 2023-08-30 22:20:36 +10:00
Stenzek
34e4bfdfcd Log: Don't colourize timestamps 2023-08-30 00:44:01 +10:00
Stenzek
b217f64bcf PostProcessing: Refactor config to use separate sections 2023-08-30 00:44:01 +10:00
Stenzek
76b5b8ad06 MSBuild: Support building with clang-cl 2023-08-21 22:38:55 +10:00
Stenzek
e3d9ba4c99 Rewrite host GPU abstraction
- Don't have to repeat the same thing for 4 renderers.
 - Add native Metal renderer.
2023-08-20 21:55:38 +10:00
Stenzek
39f64a03ee Common: Error/FileSystem backports 2023-08-20 12:40:47 +10:00
Stenzek
a00a4391ca Common: DynamicHeapArray/FixedHeapArray 2023-08-19 21:18:28 +10:00
Stenzek
5b980dafa5 System: Refactor main loop
Reduces JIT exits.
Improves runahead performance.
2023-08-16 01:13:00 +10:00
Stenzek
4ebd34fcb3 MSBuild: Use project referencing instead of .lib linking 2023-08-16 01:12:59 +10:00
Stenzek
c01f249e0f dep: Update Vulkan headers 2023-08-15 23:51:39 +10:00
Charles the Thobe
4ea57daf39 CMake: display warning when building without Wayland on systems that support Wayland 2023-05-03 10:43:09 +03:00
Stenzek
5439718ec3 GL/Context: Add missing include 2023-04-29 20:45:19 +10:00
Connor McLaughlin
62765d7034
Common: Add missing include 2023-04-21 03:46:16 +10:00
Stenzek
fd0d12a4f4 GL: Fix shader/memory leak 2023-04-10 23:50:09 +10:00
Stenzek
dd7dfe348f HostDisplay: Clamp scissor rect for cursor
Scissor with x/y < 0 is invalid.

To you know who you are, stop copying these changes and putting your
name on it, or respect the copyright declared in the files. You're
violating both copyright as well as the license by not attributing.
2023-02-07 20:08:49 +10:00
Stenzek
1371dcfa4a Vulkan/Texture: Fix incorrect upload image layout 2023-02-05 13:12:45 +10:00
Stenzek
2dd374d2a7 Vulkan/Context: Fix query pool leak 2023-02-05 13:12:45 +10:00
Stenzek
a3c7449749 FileSystem: Fix POSIXLock positioning 2023-01-30 19:26:48 +10:00
Stenzek
14cf865905 Misc: Correctness fixes for OpenGL
GLES2 fallback should be functional again.
2023-01-30 19:17:11 +10:00
Connor McLaughlin
395e9a934b InputManager: Support inverted full axis
i.e. pedals
2023-01-15 15:13:54 +10:00
Connor McLaughlin
01270bac35 StringUtil: Add ToChars/fast_float FromChars 2023-01-15 15:13:54 +10:00
Connor McLaughlin
3b038fd27d System: Further improve frame timing consistency 2023-01-12 18:02:12 +10:00
Connor McLaughlin
1552ff82a7 CMake: Fix Linux build 2023-01-07 17:40:50 +10:00
Connor McLaughlin
fa2fd8f84f Build: Reference GSL 2023-01-07 13:10:43 +10:00
Connor McLaughlin
af73d8ac24 D3D12HostDisplay: Fix software cursor rendering 2022-12-27 22:17:58 +10:00
Connor McLaughlin
dfdbc9a8ce OpenGLHostDisplay: Update sync interval on MakeCurrent() 2022-12-08 13:21:21 +10:00
Connor McLaughlin
8c7a192128 Misc: Add copyright/license statement to applicable files
Should've did this in the beginning.
2022-12-04 21:03:49 +10:00
Connor McLaughlin
f8cb480779 Timer: Improve SleepUntil() 2022-12-04 15:40:46 +10:00
Connor McLaughlin
7d3ac98cc6 HostDisplay: Manually throttle fullscreen UI presentation
Fixes flickering screen in fullscreen with Vulkan.
2022-12-04 14:06:56 +10:00
Connor McLaughlin
7a30c9ea43 GL/Context: USe glXMakeContextCurrent() for GLX 2022-11-23 19:18:17 +10:00
Connor McLaughlin
0d178a2a9e GL/Context: Prefer EGL over GLX on all platforms 2022-11-23 19:14:28 +10:00
Connor McLaughlin
27b0847ee7 WindowInfo: Don't clear display when going surfaceless
Fixes panic when a popup occurs when using GLX.
2022-11-23 19:13:29 +10:00
Connor McLaughlin
30556cb40a GL/Context: Prefer EGL over GLX on ARM 2022-11-15 21:33:06 +10:00
Connor McLaughlin
72dfbaf6cc Misc: Backports from PCSX2 UI 2022-10-23 14:49:44 +10:00
Connor McLaughlin
ca571f8a78 GameList: Add played time tracker 2022-10-21 21:20:21 +10:00
Connor McLaughlin
8e95248ef3 GL/Context: Always prefer GLES on Android 2022-10-21 00:30:42 +10:00
Connor McLaughlin
ccfe3925fc HostDisplay: Use border sampling for post processing shaders 2022-10-13 22:53:16 +10:00
Connor McLaughlin
564a9bdeb4 GL/Context: Use GL_OES_draw_elements_base_vertex if GLES3.2 is missing 2022-10-05 18:29:43 +10:00
Connor McLaughlin
a9038133c8 HostDisplay: Common texture base class for all APIs 2022-10-04 00:00:56 +10:00
Connor McLaughlin
12d400b76a OpenGLHostDisplay: Replace GL ID handle with texture class 2022-10-03 21:08:42 +10:00
Connor McLaughlin
4dc3014fcd Vulkan: Hook up VK_KHR_driver_properties 2022-10-03 13:11:38 +10:00
Connor McLaughlin
410b384c76 Vulkan/Context: Request API v1.1 2022-10-01 13:31:03 +10:00
Connor McLaughlin
8aa1c8827c GPU/D3D11: Purge D3D11::StagingTexture 2022-09-26 22:15:51 +10:00
Connor McLaughlin
84917ec6aa Common/Image: Add resize methods 2022-09-26 22:15:51 +10:00
Connor McLaughlin
e3a327f7a2 Vulkan/Texture: Fix updating array textures 2022-09-26 22:15:50 +10:00
Connor McLaughlin
f7aa7c659c D3D11/Texture: Add layers/texture arrays 2022-09-26 22:15:50 +10:00
Connor McLaughlin
e7fb42347f GL/Texture: Add multi-layer/level support 2022-09-26 22:15:50 +10:00
Connor McLaughlin
8d32547ec9 Vulkan/Texture: Allow uploading non-zero layers/levels 2022-09-26 22:15:50 +10:00
Connor McLaughlin
aff9f1c25f D3D12: Add helper for offsetting descriptors 2022-09-26 22:15:50 +10:00
Connor McLaughlin
9d27f7095f Vulkan: Use Vulkan Memory Allocator 2022-09-26 22:15:50 +10:00
Connor McLaughlin
aee8163317 Achievements: Drain outstanding requests when switching games
Stops data being lost when loading state due to data not being
downloaded yet.
2022-09-18 13:24:55 +10:00
Connor McLaughlin
d9722516c3 GameList: Handle non-extension-suffixed urls based on content type 2022-09-18 13:24:55 +10:00
Connor McLaughlin
a062cc4706 VulkanHostDisplay: Fix uploading of strided textures 2022-09-18 12:10:36 +10:00
Connor McLaughlin
ef3ad91ad0 FullscreenUI: Various improvements 2022-09-17 15:56:05 +10:00
Connor McLaughlin
0b3461338c HostDisplay: Use streaming for sw renderer display 2022-09-13 17:50:42 +10:00
Connor McLaughlin
bf76780f11 GameList: Add cover downloader 2022-09-13 17:50:42 +10:00
Connor McLaughlin
bec0d6e7df HostDisplay: Add GPU usage statistics 2022-09-03 14:17:51 +10:00
Connor McLaughlin
f9bd2db2dc Common/Image: Fix saving 2022-08-26 23:30:45 +10:00
Connor McLaughlin
7bbacd2392 Misc: Remove unused code 2022-08-22 19:55:38 +10:00
Connor McLaughlin
0572d0cd4b Common: Add ByteStream implementations for zstd 2022-08-18 23:10:15 +10:00
Connor McLaughlin
0154a594c9 ByteStream: Devirtualize where unnecessary 2022-08-18 23:10:15 +10:00
Connor McLaughlin
e9126aeeb8 Common: Add SHA1Digest 2022-08-16 00:05:46 +10:00
Connor McLaughlin
4688277987 SwapChain: Reduce buffer count from 3 to 2 2022-08-10 17:08:59 +10:00
Connor McLaughlin
916900be5d Misc: More warning fixes 2022-08-10 14:33:31 +10:00
Connor McLaughlin
b698ff1fff Common: Add build_timestamp.h 2022-08-10 13:05:52 +10:00
Connor McLaughlin
ae0d60fcd8 Timer: Spin for last 1ms on non-windows too 2022-08-10 13:02:23 +10:00
Connor McLaughlin
b581cc4777 Vulkan/SwapChain: Fix crash on fullscreen with MoltenVK 2022-08-07 01:31:24 +10:00
Connor McLaughlin
25d2148ae4 Misc: Necessary emucore changes for Android 2022-08-05 17:05:21 +10:00
Connor McLaughlin
ca1512f47a Vulkan/Loader: Prioritize system libvulkan dylib, fallback to MoltenVK 2022-08-01 23:07:40 +10:00
Connor McLaughlin
571a773b29 FileSystem: Fix build failure 2022-07-31 17:42:58 +10:00
Connor McLaughlin
97d5d659d3 FileSystem: Fix zeros getting stripped in path 2022-07-31 17:37:21 +10:00
Connor McLaughlin
0006c54c46 Build: Add Mac dependencies and fix packaging 2022-07-31 16:00:37 +10:00
Connor McLaughlin
a899ca88f2 Build: Make OpenGL/Vulkan renderers optional
And disabled on Windows/arm64.
2022-07-31 01:14:28 +10:00
Connor McLaughlin
cb127b6412 Common: Remove Event 2022-07-30 21:55:12 +10:00
Connor McLaughlin
89659db7ee Path: Unicode handling and tests for SanitizeFileName 2022-07-30 21:46:14 +10:00
Connor McLaughlin
12875cbcac D3D12/StagingTexture: Fix map persisting through resize 2022-07-30 12:58:20 +10:00
Connor McLaughlin
b074c0d1ee System: Make inter-frame sleep slightly more precise 2022-07-30 00:45:26 +10:00
Connor McLaughlin
f6ff7e48c1 Build: Fix compiling for arm64/linux 2022-07-28 22:38:08 +10:00
Connor McLaughlin
f54e32ff01 dep: Add soundtouch 2022-07-28 22:10:47 +10:00
Connor McLaughlin
13b2cf6b1c WindowInfo: Linux build fix 2022-07-26 20:10:19 +10:00
Connor McLaughlin
8af4f4f01a Common: ScopeGuard -> ScopedGuard 2022-07-26 18:37:16 +10:00
Connor McLaughlin
13e3f2a179 ContextWGL: Backport pbuffer changes 2022-07-26 18:32:55 +10:00
Connor McLaughlin
c233a8042f GLContext: Dynamically load wayland-egl 2022-07-25 18:06:17 +10:00
Connor McLaughlin
25c52f97d4 CMake: Include Vulkan headers 2022-07-25 01:06:24 +10:00
Connor McLaughlin
9b22f0564f Misc: Remove backported license text
For anyone trying to start drama, I have copyright over this code and
never signed a CLA, therefore can relicense it how I see fit (in this
case is no license, i.e. no rights, although the entire DuckStation as
is currently distributed is GPLv3).
2022-07-23 13:55:09 +10:00
Connor McLaughlin
b42b5501f6 UI: Massive revamp, new features and improvements 2022-07-22 21:19:54 +10:00
Connor McLaughlin
af91fcf195 Backport more common classes 2022-07-21 17:29:58 +10:00
Connor McLaughlin
f6b3652ae6 Add MemorySettingsInterface 2022-07-21 17:29:58 +10:00
Connor McLaughlin
6a6ab6529a Backport SettingsInterface 2022-07-21 17:29:58 +10:00
Connor McLaughlin
b7fbde31a7 Move utility classes from common to own static lib 2022-07-21 17:29:58 +10:00
Connor McLaughlin
d2ca454576 Sync filesystem.h/path.h 2022-07-21 17:29:57 +10:00
Connor McLaughlin
f89529015c dep: Move Vulkan loader to common 2022-07-21 17:29:57 +10:00
Connor McLaughlin
fd3507c16d Core: Replace Timestamp usage with fmt 2022-07-21 17:29:57 +10:00
Connor McLaughlin
b5bf3593c4 ByteStream: Move routines from FileSystem to ByteStream 2022-07-21 17:29:57 +10:00
Connor McLaughlin
d81e156a29 dep: Add build config for fmt 2022-07-21 17:29:57 +10:00
Connor McLaughlin
b3c3d5d954 Sync string_util.cpp 2022-07-21 17:29:57 +10:00
Connor McLaughlin
5d097da160 CDImageCHD: Implement precaching 2022-04-03 21:09:36 +10:00
Connor McLaughlin
9ab64ecdb3 CDImage: Add Precache() method 2022-04-03 21:09:36 +10:00
Connor McLaughlin
bceca040d9 dep/libchdr: Remove libFLAC dependency 2022-04-03 21:09:36 +10:00
Ronnie Sahlberg
f7a3358b1f pbp: pstitleimg sections are allowed also for single disc games
Multidisc games are stored inside the EBOOT.PBP file as
A)
pstitleimg
psisoimg
psisoimg
...

Single disk games can be stored in two different formats, with or
without a pstitleimg section, i.e. as

B)
pstitleimg
psisoimg

or

C)
psisoimg

Fix a conditional in duckstation that incorrectly flags B) as an error.
These types of EBOOT.PBP files can be created by the pop-fe utility.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2022-03-29 21:36:39 +10:00
Connor McLaughlin
07d331deca
Merge pull request #2814 from CookiePLMonster/y2038
Fix a Y2038 bug in UnixTimeToFileTime
2022-03-27 17:47:35 +10:00
Connor McLaughlin
a55537ec1b D3D12/Builders: Fix incorrect depth write mask 2022-03-27 17:38:48 +10:00
Connor McLaughlin
a55b5022c7 System: Include cheevos state in save states 2022-03-27 16:59:02 +10:00
Connor McLaughlin
d5128a5ea9 HTTPDownloader: Move to common 2022-03-27 16:59:02 +10:00
Connor McLaughlin
cb51ab7197 Misc: Purge unused definitions 2022-03-27 16:59:02 +10:00
Silent
e43f2ddddb
Fix a Y2038 bug in UnixTimeToFileTime 2022-03-26 16:49:02 +01:00
Connor McLaughlin
bee50481f5 CDImageMDS: Possible fix for multi-track images 2021-12-25 14:28:33 +10:00
Connor McLaughlin
592a591b5f FileSystem: Get rid of trailing nulls in GetWorkingDirectory() 2021-12-25 14:28:33 +10:00
Connor McLaughlin
7c769b1941 CDImageDevice: Don't add out-of-file pregaps to audio tracks 2021-11-26 11:31:59 +10:00
Connor McLaughlin
827048eeda CDImageDevice: Fix printing of track summary 2021-11-26 11:31:59 +10:00
Connor McLaughlin
c54c5f1b95 Common/CueParser: Remove redundant check for CATALOG 2021-11-10 13:38:06 +10:00
Connor McLaughlin
fca4a2ec28 Common/FileSystem: Fix a couple of warnings from #2716 2021-11-10 13:18:30 +10:00
Connor McLaughlin
e6741dad9b Common/Timestamp: Use tuple for comparison operators 2021-11-10 13:00:32 +10:00
Connor McLaughlin
13453ee6d8
Merge pull request #2715 from stenzek/pvd-hash
System: Use exe hash plus pvd hash for image hash code
2021-11-10 12:34:55 +10:00
Connor McLaughlin
a8a0a50af7 ISOReader: Make fields public/accessible 2021-11-09 12:54:07 +10:00
Evgeniy Dushistov
39a9997fd0
Fix usage of free for stack variable
Based on warning from pvs static analyzer (https://habr.com/ru/company/pvs-studio/blog/586700/)
2021-11-07 20:43:41 +03:00
Connor McLaughlin
425dee2f0b CDImage: Fix tracks not getting brought across in CopyTOC() 2021-11-05 15:19:21 +10:00
Silent
b7f73a42be
CDImageCueSheet: Fix cuesheets with absolute paths 2021-10-30 11:17:41 +02:00
Connor McLaughlin
58f05498e5 Common/ProgressCallback: Elide some redundant updates 2021-10-29 13:16:42 +10:00
Connor McLaughlin
ccf5006bc8
Merge pull request #2668 from CookiePLMonster/dump-verification
Implement image verification
2021-10-25 17:30:20 +10:00
Connor McLaughlin
f0c5b049bb DRMDisplay: Should include common types not core types 2021-10-25 17:27:41 +10:00
Connor McLaughlin
2194004662 CDImageDevice: Fix gcc warning 2021-10-25 17:15:56 +10:00
Silent
85ea9a629a
Add image verification
"Verify Dump" is now removed, now both hash calculation
and image verification are done in one step.
After a successful hash calculation, the button is replaced with
a "Search on Redump.org" button that opens a web browser
on Redump's search page.
2021-10-23 22:19:39 +02:00
Silent
e38ee512f3
Fix progress bar not starting from 0 when verifying the data track 2021-10-23 21:46:57 +02:00
Connor McLaughlin
c0a29f7bfd Fix a few warnings over the place 2021-09-26 09:56:17 +10:00
Connor McLaughlin
bbcf1c67d1 Common/Vulkan: Fix compiling on 32-bit 2021-08-24 11:57:16 +10:00
Connor McLaughlin
7eceee6a20 CDImage: Use display name for playlist titles 2021-08-21 16:58:10 +10:00
Connor McLaughlin
e45f15ef41 FileSystem: Implement StatFile/FileExists/DirectoryExists for scoped storage 2021-08-18 00:18:03 +10:00
Connor McLaughlin
f0cb8cdc5c GL/Texture: Don't set max level on GLES2 2021-08-12 21:31:40 +10:00
Connor McLaughlin
8bea6e1530 GPU/Vulkan: Fix warnings introduced by #2438 2021-08-07 12:01:02 +10:00
Wunkolo
98089180c0 GPU/Vulkan: Add debug utility functions
Adds a way to set the name of vulkan
objects, and automatically determining their `VkObjectType` enum value
at compile-time. As well as a utility-object for creating debug-scopes
for `VkQueue` and `VkCommandBuffer` objects. `DebugScope` objects will
automatically emit `Begin` and `End` commands within the ctor and dtor
and allow for C++ scopes to name and color sections of a vulkan command.
These DebugScopes are also able to be nested within each other and will
automatically pick a color depending on the current recursive depth.

These functions are all null-stubbed in non-debug compilations.
2021-08-01 10:56:56 -07:00
Connor McLaughlin
642f8041e9 Common/Log: Fix compilation on Android 2021-07-30 17:01:07 +10:00
Connor McLaughlin
b948bb0750 CDImageDevice: Fix invalid TOC for multi-track discs 2021-07-29 14:00:47 +10:00
Connor McLaughlin
77eb8e4b72 Common/Log: Rewrite for better unicode handling 2021-07-29 13:45:38 +10:00
Connor McLaughlin
26a8f8d9e7 Common/Log: Restore old console behavior 2021-07-29 13:45:11 +10:00
Connor McLaughlin
4d262e8072 CDImage: Add CD-ROM device implementation 2021-07-26 01:30:53 +10:00
Connor McLaughlin
3b7c6c7bbd Common/Log: Fix Unix escape sequences on preexisting consoles 2021-07-23 18:07:03 +10:00
Connor McLaughlin
78dabd1067 Build: Add missing d3dcompiler/d3d11 dependency in common 2021-07-23 18:06:25 +10:00
Connor McLaughlin
3847c94a42 FileSystem: Don't treat dotfiles as hidden on Windows 2021-07-21 20:26:00 +10:00
Connor McLaughlin
dfd6766411 MemoryArea: Use pid instead of thread id for mapping on Windows 2021-07-19 15:11:07 +10:00
Connor McLaughlin
fc164ce021 D3D12/Texture: Fix non-(0,0) texture streaming 2021-07-13 14:17:04 +10:00
Connor McLaughlin
3be6270b2d ByteStream: Fix atomic updates on external storage with UWP 2021-07-11 19:05:30 +10:00
Connor McLaughlin
e8c16056b6 Common/FileSystem: Handle S/R modes for UWP 2021-07-11 19:05:08 +10:00
Connor McLaughlin
0f911e9dbf Common/PageFaultHandler: Support for unwind exceptions
Needed for UWP.
2021-07-11 15:20:38 +10:00
Connor McLaughlin
6251894d3c Common/JitCodeBuffer: Add ability to reserve non-code space 2021-07-11 15:20:38 +10:00
Connor McLaughlin
03ab18909a Common: Add UWP support for helper classes 2021-07-11 15:20:38 +10:00
Connor McLaughlin
281f7c5789 Build: Add UWP configurations 2021-07-11 14:13:59 +10:00
Connor McLaughlin
c7ce9562fa D3D12/Texture: Force 16MB uploads down temp texture path 2021-07-11 13:33:26 +10:00
Connor McLaughlin
9dab3f9b9b D3D12/StreamBuffer: Fix edge case of allocating buffer size 2021-07-11 13:32:17 +10:00
Connor McLaughlin
14e7f8fd13 GPU: Add D3D12 renderer 2021-07-10 21:45:10 +10:00
Connor McLaughlin
5da9edceb9 Build: Unify MSBuild options in props files 2021-07-10 21:45:10 +10:00
Connor McLaughlin
a50d18242d Common/ByteStream: Add explicit include for alloca 2021-07-10 21:45:10 +10:00
Connor McLaughlin
6e9ebfa5b5 GPU/D3D11: Fix possible buffer overwrite when reading back 2021-07-04 21:40:44 +10:00