Commit graph

746 commits

Author SHA1 Message Date
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