Commit Graph

42551 Commits

Author SHA1 Message Date
75d49842c4 Merge pull request #12964 from mitaclaw/jit-profiling-android-correctness
MainAndroid: Thread Correctness In WriteJitBlockLogDump
2024-07-29 16:05:47 -04:00
4883483d09 MacUpdater: Don't set bundle name via a CMake variable 2024-07-29 12:17:08 -04:00
d4e6bd9d18 MacUpdater: Remove unused variables in CMakeLists 2024-07-29 12:16:13 -04:00
4f0954dd44 MainAndroid: Thread Correctness In WriteJitBlockLogDump
In a race condition, the core could shut down between the `JitInterface::GetCore` nullptr check and the `JitInterface::JitBlockLogDump` call which constructs a `CPUThreadGuard`. In this scenario, nothing horrible happens—`JitBlockLogDump` also checks for a nullptr—but it would be a failure to display the correct feedback to the user.
2024-07-28 16:10:59 -07:00
53d2311163 Merge pull request #12960 from mitaclaw/jni-false
MainAndroid: Use JNI_FALSE instead of static_cast<jboolean>(false)
2024-07-28 17:16:32 -04:00
de50309209 Merge pull request #12962 from MayImilae/tellitlikeitis
Dual Core Labeling Update
2024-07-28 16:16:05 -04:00
9d2f5245f4 i18n: Add comments and improve source strings
Most of these changes are to improve consistency in capitalization.
2024-07-28 14:38:20 +02:00
9a730bacce Change Dual Core (speedup) to Dual Core (speedhack) 2024-07-28 03:56:58 -07:00
defc38b258 InputCommon: Translate ExpressionParser error messages
The _trans macro marks strings for translation but doesn't do anything
at runtime. For that, we need to use a function like GetStringT.
2024-07-28 12:09:15 +02:00
9193045989 Revert "Android: Disable input device sensor input due to crash"
This reverts commit 75fb1a7edf.
2024-07-28 11:29:17 +02:00
59cbe5a843 Android: Add workaround for AOSP input device sensor suspend bug 2024-07-28 11:29:17 +02:00
7b0a7f15b0 Android: Use structural equality for sensorDetails
To fix the crash in input device sensor handling, we should look up
Sensors using structural equality. Unfortunately, Sensor.equals
implements referential equality, and HashMap doesn't let us provide a
custom comparator. Because the number of sensors is relatively small,
and because we have a reason to keep a sorted list of sensors around
anyway, let's switch from HashMap to ArrayList.
2024-07-28 11:29:02 +02:00
2849606518 Merge pull request #12956 from SuperSamus/nfs-nitro-defs
Add Bloom and DOF Definitions for Need for Speed: Nitro
2024-07-28 11:12:34 +02:00
7cafd78ffc MainAndroid: Use JNI_FALSE instead of static_cast<jboolean>(false) 2024-07-27 20:22:25 -07:00
7215610dfe Add Bloom definitions for Need for Speed: Nitro 2024-07-27 21:24:32 +02:00
991bce2d68 Config: Don't depend on is_dirty to save SYSCONF during restore
`Layer::Save` only does its thing if the layer has `is_dirty == true`.
But SYSCONF could have been modified by other layers, so if the base layer wasn't made dirty by anything else, then it wouldn't be restored.
Fixes https://bugs.dolphin-emu.org/issues/13580
2024-07-27 16:45:33 +02:00
f9450f1460 GameINI: SVX.ini: Replace EFBToTextureEnable=False with ImmediateXFBEnable=False
To fix flickering pre-rendered cutscenes, the former doesn't do anything anymore, while the latter does.
2024-07-27 15:42:12 +02:00
d627b78c46 Adjust order and spacing of various #includes
Move some #includes around to match the Contributing guidelines.
2024-07-26 14:28:34 -07:00
347aab7ab3 Fixed achievements not working after a disc change. 2024-07-25 20:46:46 -04:00
87b7009c12 Merge pull request #12723 from mitaclaw/cached-interpreter-2.0
Cached Interpreter 2.0
2024-07-24 01:36:39 -04:00
6c3024c3b1 CachedInterpreter: Combine Interpret, CheckDSI, CheckProgram, and WritePC
I tried making the new templated Interpret callback test only the relevant exceptions (EXCEPTION_DSI, EXCEPTION_PROGRAM, or both), but didn't find a significant performance boost in it. As I am learning, the biggest bottleneck is the number of callbacks emitted, not usually the actual contents of them.
2024-07-23 14:09:57 -07:00
ae43b10eff CachedInterpreter: Use CodeOp::canEndBlock
This was a bigger performance boost than I expected.
2024-07-23 14:07:02 -07:00
818647d694 CachedInterpreter: WritePC optimizations
WritePC is now needed far less, only for instructions that end the block. Unfortunately, WritePC still needs to update `PowerPCState::npc` to support the false path of conditional branch instructions. Both drawbacks should be smoothed over by optimized cached instructions in the future.
2024-07-23 14:06:40 -07:00
0282fa7adb CachedInterpreter: Exception Check Callback Micro-Optimization
This saves two register pushes / pops.
2024-07-23 14:06:22 -07:00
f79520a906 Cached Interpreter 2.0
It now supports variable-sized data payloads and memory range freeing. It's a little faster, too.
2024-07-23 14:06:21 -07:00
5f4f974b48 Merge pull request #12950 from AdmiralCurtiss/achievement-fix-badge-network-error
AchievementManager: Fix incorrect check on network request return value in FetchBadge()
2024-07-23 20:16:54 +01:00
c71ccb548e AchievementManager: Fix incorrect check on network request return value in FetchBadge() 2024-07-23 20:49:12 +02:00
2d8f54fdd2 Merge pull request #12862 from SuperSamus/debugger-fixes
Debugger: Various fixes
2024-07-23 20:36:34 +02:00
7db5caf43e Merge pull request #12943 from Tilka/list_recursively
DolphinTool: list filesystem recursively
2024-07-23 19:56:07 +02:00
933da0788d Merge pull request #12910 from ReillyBrogan/fix-minizip-ng
cmake: Fix building with system minizip-ng
2024-07-23 18:55:51 +01:00
199cc899bc Merge pull request #12948 from mitaclaw/jit-getters
Emitters: Define Trivial Getters Inline
2024-07-23 14:14:33 +01:00
ffc7bcfbf8 Emitters: Define Trivial Getters Inline 2024-07-21 21:35:29 -07:00
384e044437 QtUtils/ClearLayoutRecursively: Fix potential crash
Use QObject->deleteLater() instead of the delete operator to destroy
child widgets of the layout. This prevents crashes caused by pending
events trying to access the now-destroyed widget.
2024-07-21 17:36:05 -07:00
191b36976c DolphinTool: list filesystem recursively 2024-07-21 19:16:00 +01:00
7bd2a7bde3 Merge pull request #12945 from Tilka/erase_if
Use C++20 erase_if() instead of erase(remove_if()) (NFC)
2024-07-21 19:06:55 +01:00
652245006d Merge pull request #12946 from SimoneN64/master
Fix double-definition under newlib
2024-07-21 19:06:25 +01:00
2dcb612497 Change OperandDesc variables to not be underscore-prefixed in order to comply with https://eel.is/c++draft/lex.name#3.1 (fixes compilation under newlib; e.g. devkitPro) 2024-07-21 18:35:38 +02:00
982893b04c Use C++20 erase_if() instead of erase(remove_if()) (NFC) 2024-07-21 16:36:06 +01:00
1fcb2ee5c1 Merge pull request #12936 from vabold/ios-inaccuracy
IOS: Fix return code inaccuracy
2024-07-19 21:27:07 +02:00
139e6f6f1b Merge pull request #12941 from LillyJadeKatrin/retroachievements-leaderboard-spam-fix
RetroAchievements - Leaderboard Spam Fix
2024-07-18 21:15:38 +02:00
9175665198 Merge pull request #12939 from Avasam/patch-1
Disable Dual Core in Death Jr.: Root of Evil
2024-07-18 21:11:53 +02:00
3169bc913f Merge pull request #12940 from LillyJadeKatrin/retroachievements-prior-unlock-bug
Fixed incorrect unlock information in Achievements dialog
2024-07-18 21:11:35 +02:00
8bb2f98c6a Properly Populate Player Index
The player_index field in question is ultimately what gets used to determine which ranks get displayed in the leaderboards chart, and because this was missing the chart was simply displaying the top four results no matter what.
2024-07-17 22:53:15 -04:00
5ccd157c94 Re-enable Leaderboards Tab 2024-07-17 22:51:43 -04:00
e7504d0b12 Remove Leaderboard Fetch when Getting Info
The cause of the leaderboard spam was primarily this call where if there was an attempt to get leaderboard info and there wasn't already, there would be a fetch request. This is bad for many reasons: some games have hundreds of boards that will be fetched at startup, if there's simply no data to populate that board, this will just continue to fetch every time the dialog needs to update. To mitigate this, I simply don't load leaderboard information until there are events for that leaderboard - less information for the player, sadly, but heavily cuts down on the number of leaderboard fetches.
2024-07-17 22:51:24 -04:00
d19aa934ae Fixed incorrect unlock information in Achievements dialog 2024-07-17 04:36:53 -04:00
130d594c82 Disable Dual Core in Death Jr.: Root of Evil 2024-07-16 22:06:21 -04:00
cc3ff347b4 Merge pull request #12928 from LillyJadeKatrin/retroachievements-disable-lboard-tab
Disable Leaderboards Tab
2024-07-15 21:33:08 -04:00
802abbb288 Merge pull request #12937 from AdmiralCurtiss/achievements-login-error-message
AchievementManager: Don't point to stack for login error message
2024-07-15 18:53:01 -04:00
63e1419396 AchievementManager: Don't point to stack for login error message 2024-07-15 23:24:04 +02:00