TheLastRar
de9d08075e
Misc: Don't use deprecated fmt/core.h header
2025-01-17 04:35:29 +01:00
spixi
a5e4274cd2
common: Add support for MATE Desktop. ( #12174 )
...
This extends the screensaver inhibition function to MATE Desktop,
2025-01-09 15:07:09 +01:00
GovanifY
132431b7c8
headers: relicense to GPL-3.0+
...
also update to 2024 while i'm at it
2024-07-30 17:17:13 -04:00
TheLastRar
ad64d88e7b
Common: Fix FreeBSD build
2024-07-17 22:15:09 +02:00
Stenzek
4e0e8cef54
Common: ARM64 compatibility
2024-06-14 17:06:45 +10:00
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
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
7bc5427908
Qt: Fix remove game directory button being enabled w/o selection
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
85a33971e7
Misc: Add gstreamer fallback to aplay
2024-04-26 20:30:16 +10:00
Ty Lamontagne
46e039dab2
VMManager: Log power profile and GPUs on startup
2024-03-07 01:21:28 +00:00
Stenzek
59d29b3648
Common: Rename General to HostSys
...
Actually fits what it's doing.
2023-12-27 13:55:35 +10:00
Stenzek
308f8c5112
x86emitter: Abstract MXCSR into a general FPControlRegister type
2023-12-27 13:55:35 +10:00
Stenzek
d9abe10308
Misc: Remove explicit PCH include, switch to SPDX
2023-12-24 14:03:14 +10:00
Stenzek
dc859ca0a6
Misc: Simplify assertion macros
2023-12-24 14:03:14 +10:00
Stenzek
bd54729257
CMake: Simplify X11 dependencies
2023-09-16 19:32:13 +10:00
Stenzek
c16836e7c0
Misc: Drop stat compatibility calls
2023-09-05 12:32:23 +10:00
Stenzek
eae29bb1f2
Common: Make __pagesize unsigned
2023-07-23 21:52:36 +10:00
Stenzek
2b4c7d12b6
Common: Merge MathUtils.h into BitUtils.h
2023-07-23 21:52:36 +10:00
charlesthobe
85d2ca626f
Common: Linux: fix potentially unsafe screensaver inhibitor
2023-07-17 20:11:32 +10:00
Stenzek
3c408de5c9
Build: Disable exceptions in the compiler
2023-06-30 21:37:44 +10:00
Stenzek
8a8e6c5d20
Common: Purge CPU frequency measurement
...
It's not accurate, and we can query the registry for the TSC frequency
for thread timers.
Also replaces InitCPUTicks() with a global constructor.
2023-06-16 18:26:28 +10:00
CharlesThobe
7aff4ee4cb
Misc: Minor cleanup
2023-05-04 14:39:14 +01:00
CharlesThobe
9de152b8ee
Linux: implement DBus screensaver inhibitor
2023-04-30 19:18:53 +01:00
Stenzek
5805142fd7
CrashHandler: Print backtrace on Linux
2023-03-20 15:46:32 +00:00
Ganael Laplanche
c5330cf166
Common: FreeBSD fixes. ( #8163 )
...
* Fix SIGSEGV handler on FreeBSD
* Fix config dir location on FreeBSD
2023-02-16 09:30:18 +01:00
Stenzek
4cf041f6cb
Common: Move VirtualMemory related functionality to core
...
Also rewrites page fault handling to not use EventSource junk.
2023-01-26 11:11:36 +00:00
Stenzek
43afeb205f
Common: Get rid of pxTrap()
...
wx rubbish, no longer needed
2022-12-25 14:47:05 +01:00
Connor McLaughlin
aea6a9f534
Common: Add Threading::SleepUntil()
2022-12-08 09:36:41 +00:00
lightningterror
5c104f8e1d
common linux: Fix Wunused-variable warning.
2022-11-19 19:28:52 +01:00
Connor McLaughlin
1ccddb92d4
EE Rec/IOP Rec: Rewrite large portions
...
- Add fastmem
- Add delay slot swapping
- Add COP2 sync elision
- Add block analysis and use analysis
- Add GPR register caching and renaming
2022-11-19 04:59:10 +00:00
Ganael Laplanche
aa59547af7
build: Fix build on FreeBSD
...
- ftruncate64() does not exist on FreeBSD
- add missing environ(7) declaration
2022-10-28 13:25:49 +02:00
Ganael Laplanche
67f1cd4e15
Fix shm_open(3) call on FreeBSD
...
On FreeBSD, shm_open(3) requires name to start with a '/', else EINVAL
is returned.
See: https://www.freebsd.org/cgi/man.cgi?shm_open
2022-10-28 13:25:49 +02:00
Connor McLaughlin
00bcb4cf02
System: Revamp memory allocation
...
Guest memory is now mapped into a shared memory/file mapping, for use
with fastmem.
64-bit and 128-bit arguments are passed by register/value instead of by
reference/address.
LDL/LDR/SDL/SDR now use 64-bit GPRs instead of SSE.
2022-10-14 22:24:42 +01:00
Connor McLaughlin
c379c833e4
Linux: Implement screensaver inhibit for X11
2022-10-03 11:55:31 +01:00
Connor McLaughlin
f63e1b3760
Qt: Implement screensaver inhibit
2022-10-03 11:55:31 +01:00
Connor McLaughlin
0419de4baf
Qt: Add RetroAchievements implementation
2022-10-01 00:00:02 +01:00
Connor McLaughlin
457ec7f6f5
Threading: Add lightweight thread wrapper
2022-06-04 18:10:46 +01:00
Master Builder
a26b91291c
Common/Linux/LnxHostSys: Fixed compatibility issues with FreeBSD, made error
...
handling more explicit
2022-05-26 00:28:44 +02:00
Connor McLaughlin
893b3c629d
Everything: Remove a **lot** of wx, and px nonsense
...
- common has no wx left except for Path.
- pcsx2core only has it in a few places (memory cards and path related
stuff).
2022-05-22 13:58:56 +01:00
Connor McLaughlin
e5716922a3
Common/Threading: Move a bunch of unnecessary wrappers to gui
2022-05-09 16:06:33 +01:00
Connor McLaughlin
65e956a01c
Misc: Replace use of Threading::Mutex with std::mutex in core code
2022-05-09 16:06:33 +01:00
Connor McLaughlin
1e8332f36a
Misc: Move pxThread and friends to gui
2022-05-08 05:40:59 +01:00
Connor McLaughlin
6ebb8c2e91
Threading: Add ThreadHandle class
2022-05-02 14:25:05 +01:00
Connor McLaughlin
f9707e6809
LnxMisc: Use clock_gettime() instead of gettimeofday()
2022-04-07 21:22:24 +01:00