Stenzek
d48f527d6d
Common: Tidy up signal handlers
...
Move MacOS into its own file.
Fix assertion failure crash dumping.
2024-05-31 13:39:36 +10:00
TheLastRar
f2e4a5e780
GS: Remove MSVC macro hack
2024-05-30 19:01:23 +01:00
Stenzek
ecbe239c0b
Common: Use Mach VM routines for memory mapping
...
MacOS does not support an equivalent of MAP_FIXED_NOREPLACE via mmap(),
which means that our usage for allocating PCSX2's memory map is not
thread-safe.
2024-05-30 13:39:07 +10:00
Stenzek
c7a21a60cf
GS: Improve vsync mode selection
...
All games use mailbox/triple buffering. Except when you enable sync to
host refresh, in which case FIFO/double buffering is used.
This means vsync enabled will ever tear, but at the same time, never
drop to 30fps on a missed frame due to frame rate differences.
To have the "best of both worlds", you should enable vsync and sync to
host refresh. Previously, this resulted in additional input lag, since
the host vsync would drive the EE frame timing. Now, this behaviour is
disabled by default, unless you enable "Use Host VSync Timing".
2024-05-25 14:06:50 +10:00
TheLastRar
63a5a15c37
Common: Provide a MAP_FIXED_NOREPLACE define for FreeBSD
2024-05-23 11:34:06 +10:00
Connor McLaughlin
92b707db99
Common: Missed MAP_FIXED -> MAP_FIXED_NOREPLACE
2024-05-22 00:05:24 +10:00
Connor McLaughlin
d765f2e15c
Common: Fix Mac build
2024-05-21 23:14:47 +10:00
Stenzek
e24d97bbe4
Common: Don't use MAP_FIXED on Linux
...
MAP_FIXED will clobber any existing memory mapping, and is not safe
to use in a multi-threaded environment. Whether we like it or not,
we are a multi-threaded environment, because Qt initializes before
we get to main(), so it's already too late to safely use MAP_FIXED
by the time we get there.
Use MAP_FIXED_NOREPLACE instead. This is how MAP_FIXED should have
behaved from the beginning.
Obviously this means you'll need Linux 4.17+ and a semi-recent libc
to use PCSX2 now. But if you're running a 6 year old unsupported
kernel, you have bigger problems.
Fixes "random" startup crashes.
2024-05-21 22:44:00 +10:00
Stenzek
ff7995f0d6
Deps: Bump to shaderc 2024.1
...
And use dynamic loading.
2024-05-21 18:34:01 +10:00
Ziemas
086bbf95dc
Misc: Fix building with gcc14 ( #11278 )
2024-05-21 12:25:11 +10:00
Stenzek
12a0644315
Misc: Pass most string_views by value instead of reference
2024-05-17 11:57:38 +10:00
Stenzek
49a17b3a2e
Error: Strip trailing whitespace from Windows errors
...
Backport of c85e743573
2024-05-17 11:57:38 +10:00
Stenzek
3a0b26225d
SettingsInterface: Fix TinyString helper
...
Backport of d9003b10c3
2024-05-17 11:57:38 +10:00
Stenzek
0628e8cc87
GS/Vulkan: Simplify loader using DynamicLibrary
...
Backport of 8e3284d8c6
2024-05-17 11:57:38 +10:00
Stenzek
7bc5427908
Qt: Fix remove game directory button being enabled w/o selection
2024-05-07 12:41:03 +10:00
Stenzek
1881139b0a
Error: Fix negative formatting of HRESULT
2024-05-07 12:41:03 +10:00
Stenzek
339dc2313b
CrashHandler: Use SetUnhandledExceptionFilter() and terminate on crash
...
Fixes zombie processes sticking around.
2024-05-07 12:41:03 +10:00
Stenzek
9752a037be
HostSys: Simplify page fault handler installation
...
And include whether it was a write or a read access.
2024-05-07 12:41:03 +10:00
Stenzek
90338ed065
HeapArray: Add missing field swap
2024-05-05 12:13:20 +10:00
Stenzek
2ab6a3b873
Qt: Clean and remove empty game settings
2024-05-05 12:13:20 +10:00
Stenzek
7fae0f499f
SettingsWrapper: Add SmallString overloads
2024-05-04 14:12:20 +10:00
Stenzek
964dcfcb0a
Console: Add log macros
2024-05-04 14:12:20 +10:00
Stenzek
85a33971e7
Misc: Add gstreamer fallback to aplay
2024-04-26 20:30:16 +10:00
Stenzek
e768f1c93b
MSBuild: Use AVX/AVX2 for 3rdparty as well
2024-04-25 11:55:41 +10:00
Benjamin Moir
d48c3cfce5
HeapArray: Avoid writing out of bounds in internal_resize
2024-04-24 21:44:48 +01:00
Stenzek
35525d5304
SettingsInterface: Add SmallString overloads
...
Backport of 631fca3042
2024-04-13 13:21:17 +10:00
Stenzek
9fa409a1a9
SmallString: Add missing methods
...
Backport of
79c226efff
2cd747983a
6b7cf6a432
f75a5605eb
2024-04-13 13:21:17 +10:00
Stenzek
ece20b1307
Image: Don't pass FILE across CRT boundary
...
Fixes crash using libpng/libjpeg in Debug builds.
2024-04-13 12:35:22 +10:00
TellowKrinkle
5271e83824
Common: Don't forceinline vararg functions
...
No compiler actually inlines them, and GCC issues an error saying that it can't force inline vararg functions
2024-04-08 18:16:25 +02:00
Stenzek
c8698dac79
3rdparty/imgui: Update to v1.90.4
2024-04-06 22:21:53 +10:00
Stenzek
ec3f1b2aa4
GS/Vulkan: Swap out glslang for shaderc
2024-04-06 21:16:52 +10:00
Connor McLaughlin
49c199e7e8
GSRunner: Fix build on Windows
2024-04-06 17:43:13 +10:00
Stenzek
8890e5948b
Common: Sync DynamicLibrary with DuckStation
2024-04-06 14:37:55 +10:00
Stenzek
caf0ade6f3
3rdparty: Remove jpgd
2024-04-06 13:17:22 +10:00
Stenzek
590b81a782
Image: Use libjpeg and support WebP saving
...
Backport from:
f3c0c14b2a
c854b8f85e
2024-04-06 13:17:22 +10:00
Stenzek
dfa5fccec9
Build: Unify shared libraries across platforms
...
Use DLLs/shared libraries for:
- libjpeg
- libpng
- libwebp
- lz4
- SDL
- zlib
- zstd
2024-04-06 13:17:22 +10:00
Stenzek
332be6c771
SettingsInterface: Add Error to Save()
2024-04-04 11:40:10 +10:00
Stenzek
81502e6c7d
FileSystem: Add Error to CreateDirectory()/RenamePath()
2024-04-04 11:40:10 +10:00
Stenzek
b06da6607b
Error: Add prefix methods
2024-04-04 11:40:10 +10:00
Stenzek
f3d6249cc1
FileSystem: Handle paths longer than MAX_PATH on Windows
2024-04-04 11:39:40 +10:00
Stenzek
ad81318854
GS: Replace xz/liblzma with 7zip LZMA SDK
2024-03-30 21:37:29 +10:00
Stenzek
907ae642d0
Common: Update FixedArray.h from DuckStation
2024-03-30 21:37:29 +10:00
Stenzek
515cbc7b29
Path: Add CreateFileURL()
2024-03-13 20:13:35 +10:00
Ty Lamontagne
46e039dab2
VMManager: Log power profile and GPUs on startup
2024-03-07 01:21:28 +00:00
JordanTheToaster
a7bced02da
FS: Fix cover text truncation
2024-02-06 02:01:53 -06:00
TellowKrinkle
d65133451d
Common: Add helper for creating an NSString from a string_view
2024-01-26 12:48:37 +10:00
TellowKrinkle
36e81949e0
Qt: Use proper Show in Finder on macOS
2024-01-26 12:48:37 +10:00
Stenzek
227049b6f2
FileSystem: Handle infinite symlink loops in FindFiles()
2024-01-17 13:57:19 +10:00
Stenzek
ff34150b15
Build: Simplify Git version extraction
...
Get rid of SysForwardDefs.h
Use last known git tag to determine version info, if it is not a tagged commit.
2024-01-15 15:35:21 +10:00
Stenzek
0bbde2ca52
IPU: Fix regression from #10617
2024-01-14 15:22:43 +10:00