Stenzek
4e905a63ec
Util: Add socket helper classes
2024-05-26 22:20:29 +10:00
Stenzek
8e5781266a
CrashHandler: Fix call stack on manual dump
2024-05-25 17:42:12 +10:00
Stenzek
cca7b46114
Assertions: Write crash dump on assertion fail
2024-05-25 17:42:12 +10:00
Stenzek
0240ea8b49
PageFaultHandler: Simplifications
2024-05-25 17:42:12 +10:00
Stenzek
4e922a34a7
Log: Simplify macros
2024-05-24 02:08:14 +10:00
Stenzek
b6d019db66
Misc: Replace log printf calls with fmt
2024-05-24 00:29:49 +10:00
Stenzek
e01efaa681
Log: Channel is [[maybe_unused]]
2024-05-22 22:16:58 +10:00
Stenzek
8e3284d8c6
Vulkan: Simplify loader using DynamicLibrary
2024-05-15 00:50:25 +10:00
Stenzek
88ace6e4ae
CMake: Detect cache line size dynamically on AArch64 Linux
2024-05-15 00:50:24 +10:00
Stenzek
d9003b10c3
SettingsInterface: Fix TinyString helper
2024-05-15 00:50:24 +10:00
Stenzek
117e6be1dc
HeapArray: Add span returners
2024-05-12 22:56:54 +10:00
Stenzek
c85e743573
Error: Strip trailing whitespace from Windows errors
2024-05-12 15:20:39 +10:00
Stenzek
4ca7753720
CrashHandler: Use SetUnhandledExceptionFilter() and terminate on crash
...
Fixes zombie processes sticking around.
2024-05-05 22:29:26 +10:00
Stenzek
fa104acdd1
Misc: Purge unused code and report startup error to host
2024-05-05 22:29:26 +10:00
Stenzek
ca3cfbaa99
Misc: Pass string_view by value
2024-05-05 22:28:29 +10:00
Stenzek
295081fe62
Misc: Replace offsetof with constexpr-friendly OFFSETOF
...
Fixes build with clang-18.
2024-04-28 15:25:24 +10:00
Stenzek
5477f2eae2
HeapArray: Fix swap() not swapping size
...
Even though it's not used.
2024-04-27 13:18:36 +10:00
Stenzek
d2b9195c66
MemorySettingsInterface: Warning fix
2024-04-25 15:06:41 +10:00
Stenzek
1cdfca155d
Qt: Clean and remove empty game settings
2024-04-25 14:02:16 +10:00
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