Commit Graph

35837 Commits

Author SHA1 Message Date
mitaclaw
076bdf7a24 Expression: Support All SPRs + MSR 2024-05-03 17:56:58 -07:00
mitaclaw
ba462578ac Externals: Update minizip-ng to 4.0.5
Also update unzLocateFile to the minizip-ng 4.0.4+ signature and document new unused files.
2024-05-03 12:43:55 -07:00
mitaclaw
0acdd404e3 Externals: Convert minizip-ng To Submodule
Due to an oversight in our CMakeLists, pkg-config would attempt to find *minizip* 3.0.0 (which doesn't exist) instead of *minizip-ng* 3.0.0, or at least it was on my Manjaro Linux machine. This has been fixed. The new submodule is using minizip-ng 3.0.4, the same version that was being used before.
2024-05-03 12:43:33 -07:00
Admiral H. Curtiss
57c890d4fc
Merge pull request #12756 from guijan/fix-llvm
fix linking against LLVM shared library
2024-05-03 19:42:58 +02:00
Guilherme Janczak
0859d2c472
improve NetBSD-specific code
NetBSD doesn't put packages in /usr/local like /CMakeLists.txt thought.
The `#ifdef __NetBSD__` around iconv was actually breaking compilation
on NetBSD when using the system libiconv (there's also a GNU iconv
package)
A C program included from C++ source broke on NetBSD specifically, work
around it.

This doesn't fix compilation on NetBSD, which is currently broken, but
is closer to correct.
2024-05-03 15:12:29 +00:00
Admiral H. Curtiss
42583deea7
Merge pull request #12754 from LillyJadeKatrin/retroachievements-possiblememoryleakfix
Fix possible memory leak in an Achievement Manager callback
2024-05-03 17:10:04 +02:00
Guilherme Janczak
68cbd2640d
fix linking against LLVM shared library
967280f140 broke linking against
libLLVM.so because it used the outdated way to link against LLVM from
CMake. This causes a compilation failure on systems that don't have the
LLVM static libraries, such as Arch Linux. On systems that have the
static libraries, it'll use them and increase binary sizes massively.

Switch to the newer llvm_config CMake macro from LLVM.
2024-05-03 11:56:15 +00:00
LillyJadeKatrin
fc64b43fae Fix possible memory leak in an Achievement Manager callback 2024-05-03 00:11:38 -04:00
Admiral H. Curtiss
5817be7bd3
Merge pull request #12747 from mitaclaw/qt-memory-leaks
DolphinQt: Properly Delete (Some) Widgets
2024-05-02 17:30:49 +02:00
Admiral H. Curtiss
967280f140
Merge pull request #12716 from guijan/obsd-port
port to OpenBSD
2024-05-02 16:42:31 +02:00
LillyJadeKatrin
ad969dfc0d Disabled Hardcore Mode when Achievements disabled
Bugfix for hardcore-disabled items being disabled when hardcore was true but achievement integration was false, which should mean hardcore is effectively disabled. Now everything checks the IsHardcoreModeActive method in AchievementManager which processes the setting AND the game state to determine if hardcore mode is actually active.
2024-05-02 04:44:52 -04:00
mitaclaw
0df401b164 Core::IsRunning: Avoid Global System Accessor 2024-05-01 08:54:17 -07:00
JMC47
b71fdef356
Merge pull request #12639 from LillyJadeKatrin/retroachievements-client
Refactor AchievementManager from rc_runtime to rc_client
2024-05-01 11:20:02 -04:00
LillyJadeKatrin
d8ef3ee6c5 Add Spectator Mode to achievement settings
Spectator Mode is a new mode added by rc_client that allows for achievement and leaderboard functionality, but does not submit this data to the site, partially allowing for offline achievements. It effectively replaces the former settings for disabling achievements, leaderboards, and RP, which are now always active internally as long as the client is active.
2024-05-01 07:04:32 -04:00
LillyJadeKatrin
fd0de1b01f Updated Unofficial and Encore settings to use rc_client
These settings now only are applied at game start and their tooltips have been updated to reflect this.
2024-05-01 07:04:32 -04:00
LillyJadeKatrin
0883aa114e Update hardcore toggle to use rc_client
The client can take care of itself and handle its own hardcore status when it toggles, so I can tell the settings widget to contact the manager directly to set it.
Also, gradually reorganizing the settings dialog over the next handful of commits.
2024-05-01 07:04:32 -04:00
LillyJadeKatrin
9a40ec06b5 Remove Achievements/Leaderboards/RP Enabled settings
The RetroAchievements client object now handles these three settings as a singular "spectator" mode that will be added in a future commit.
2024-05-01 07:04:32 -04:00
LillyJadeKatrin
3bf5b8e610 Handle Reset and Server Error client events. 2024-05-01 07:04:32 -04:00
LillyJadeKatrin
b05028da1f Added Change Media client functionality to AchievementMananger
The client can handle media changes natively so disabling can take place internally. This code uses the same external calls to load data, but will call either BeginLoad or BeginChangeMedia based on whether any media is already loaded.
Due to the client's handling of media changes (it simply disables hardcore if an unknown media is detected) the existing functionality for "disabling" the achievements is no longer necessary and can be deleted.
2024-05-01 07:04:32 -04:00
LillyJadeKatrin
878e6e847b Update Achievement Dialog Header to use rc_client
Two portions of this need updating.
Anything related to points and unlock counts and scoring uses game_summary now instead of the TallyScore method. Unfortunately this comes with the drawback that I cannot easily at this time access the number of points/unlocks from the other hardcore mode, so things like the second progress bar have been deleted.
Rich presence, which no longer needs to be stored, but can be calculated at request. As the AchievementHeader can now update just the Rich Presence, DoFrame can now simply call a header update with .rp=true and the current Rich Presence will be calculated immediately.
As the two items above are the last remaining things to use a number of the components in AchievementManager, this also deletes: Request V1 (V2 is renamed accordingly), ResponseType, PointSpread, TallyScore, UnlockStatus, and the RP generation and ping methods.
2024-05-01 07:04:32 -04:00
LillyJadeKatrin
4214c301ef Refactor AchievementsWindow::UpdateData to take a partial update parameter
UpdateData in AchievementsWindow now only updates the components being requested, massively improving the window's performance. The parameter is UpdatedItems in AchievementManager, which tracks which portions of the system have been updated for every update callback.
2024-05-01 07:04:32 -04:00
LillyJadeKatrin
fa2210f80d Refactor leaderboard entry calls to use rc_client
Leaderboard entry calls are asyncronous and use a callback. Logic remains the same, but the callback populates the list that the UI grabs values from.
2024-05-01 06:43:20 -04:00
LillyJadeKatrin
c57be0efca Refactor Leaderboard widget to allow partial updates
Similarly to the Progress widget (though without the separate object for each box, because each Leaderboard unit is just three text fields stacked vertically), AchievementLeaderboardWidget.UpdateData will now accept three options: destroy all and rebuild, update all, or update a set of rows.

As part of this, AchievementManager::GetLeaderboardsInfo has been refactored to GetLeaderboardInfo to return a single leaderboard for the ID passed in.
2024-05-01 06:43:20 -04:00
LillyJadeKatrin
d2069e888d Refactored AchievementProgressWidget to maintain AchievementBox list
AchievementProgressWidget maintains in memory a map of AchievementBox pointers so that UpdateData can operate on them individually. UpdateData is overhauled for three options: UpdateData(true) will destroy the entire list and re-create it from scratch as before, to be used if the game or player changes/closes/logs out. UpdateData(false) will loop through the map and call UpdateData on every achievement box, to be used for certain settings changes such as enabling badges or disabling hardcore mode. UpdateData(set<IDs>) will call UpdateData on only the IDs in the set, to be used when achievements are unlocked.
2024-05-01 06:43:20 -04:00
LillyJadeKatrin
3793d723b9 Created AchievementBox Qt object
AchievementBox is an extension of QGroupBox that contains the data for a single achievement, initialized with the achievement data and able to reference AchievementManager to update itself.
2024-05-01 06:43:20 -04:00
LillyJadeKatrin
0627209131 Add DoState to AchievementManager
While state loading is not allowed in the hardcore mode that most players will use, it is allowed in softcore mode; more importantly, if something fails to unlock or unlocks when it shouldn't in either mode the player can create a save that retains the current achievement state.
2024-05-01 06:43:20 -04:00
LillyJadeKatrin
70116b222d Handle Game Completed Client Event 2024-05-01 06:43:20 -04:00
LillyJadeKatrin
6b5b7cbd7c Handle Achievement Progress Client Events
This is not a 1 to 1 relationship with how the events look primarily because currently achievement
progress messages are in OnScreenDisplay, which currently vanishes messages automatically.
As this covers the last remaining runtime-based event from the old event handler, that handler has been deleted and the new event handler has been renamed to take its place.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
a70733f74f Handle Achievement Challenge Indicator Show/Hide Client Events
Also deletes the corresponding runtime-based events from the old event handler.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
7895b739ee Display active leaderboard data on screen
Up to four leaderboards are displayed in a window in the bottom right of the screen (vertically above challenge icons, if there are any). As per RetroAchievements standards, the markers only display the current leaderboard values with no further context necessary.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
6f3a608e92 Add active leaderboard tracker to achievement manager
The active leaderboard data (leaderboards currently being attempted, which get displayed on screen) is now tracked. When a leaderboard is started its value is added to a vector (sorted by start frame). There are a separate set of client events specifically to handle leaderboard trackers, that are used to populate and manage this vector. The top portion of this vector (by RetroAchievement standards, the first four items) is exposed to be displayed on screen.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
eee77ec6b7 Handle Leaderboard Submitted/Started/Failed Client Events
Also deletes the corresponding runtime-based events from the old event handler.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
bc3e429dd9 Handle Achievement Triggered Client Event
Also deletes the old runtime-based Achievement Triggered event from the old handler, and the methods used by it to publish to the server and reactivate/deactivate achievements in the runtime.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
c88d4cf040 Created EventHandlerV2 and added client to DoFrame
As MemoryPeeker V1 is no longer in use, it is deleted and MemoryPeekerV2 is renamed in its place.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
7497df99df Refactored Welcome Message to use rc_client
Restructured the welcome message to use the information in rc_client, particularly the summary. Redesigned the message in the process to look cleaner.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
c5bb1c4e68 Retooled achievement badge fetch process
This change was primarily made to refactor the badge fetching to use the client instead of the runtime, but in the process I also refactored the code to cut down on complexity and duplication. Now the FetchBadge method is passed a function that generates the badge name; this is used to ensure that once the badge is loaded that it is still the desired badge to avoid race conditions.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
7b835a20ca Updated GetGameDisplayName to use rc_client 2024-05-01 06:43:19 -04:00
LillyJadeKatrin
486a9d2318 Refactored Achievement Mananger to load games through rc_client
HashGame has become LoadGame, similar structure with the file loaders but using the client instead. LoadGameCallback has been created to handle the results. The old LoadGameSync has been deleted as have
several hash and load methods that it called.
2024-05-01 06:43:19 -04:00
LillyJadeKatrin
355b892621 Get display name and score from client
Delete m_display_name and m_player_score fields and retrieve those values directly from the client's user information.
2024-05-01 06:43:18 -04:00
LillyJadeKatrin
3bf8b5fb90 Refactored Achievement Manager Login to use rc_client
LoginCallback was created to handle the results of the asynchronous client login calls; VerifyCredentials was deleted as no longer necessary.
2024-05-01 06:43:18 -04:00
LillyJadeKatrin
7b3fac18cd Remove synchronous achievement login
Deletes AchievementManager::Login, renames LoginAsync to Login, and replaces the one synchronous call in the AchievementSettingsWidget with the async call. There is a minor usability regression in that the UI currently does not notify the user when a login has failed; this will be addressed in a later change (possibly in a different PR).
2024-05-01 06:43:18 -04:00
LillyJadeKatrin
ba519e4670 Add rc_client to AchievementManager
Also includes init and shutdown V2s.
2024-05-01 06:43:18 -04:00
LillyJadeKatrin
4ec662bcdf Add rc_client MemoryPeekerV2 to AchievementManager
Has a more traditional read-x-bytes structure; for passing into rc_client in the constructor.
2024-05-01 06:43:18 -04:00
LillyJadeKatrin
05136ee099 Add rc_client RequestV2 to AchievementManager
RequestV2 is to be passed into rc_client upon construction so rc_client can handle server calls internally.
2024-05-01 06:43:18 -04:00
mitaclaw
0397339ab1 DolphinQt: Properly Delete (Some) Widgets
This is not every memory leak, just the ones that were obvious.
2024-04-30 11:17:28 -07:00
JMC47
2b261b9306
Merge pull request #12743 from Filoppi/remove-round-corners-on-game-window
Remove rounded corners on emulation render window
2024-04-30 12:30:03 -04:00
mitaclaw
756ea81ab2 Jit64: Smaller Instruction Breakpoint Condition
Also some static_asserts in JitArm64.
2024-04-28 15:54:15 -07:00
Admiral H. Curtiss
efed26ceee
Merge pull request #12739 from malleoz/show_input_count_recording_only
VideoCommon: Only show input count when recording
2024-04-28 20:31:28 +02:00
Admiral H. Curtiss
bec6842cbe
Merge pull request #12741 from Filoppi/fix-load-resampling
Qt: fix 13524 - output resampling mode not loading correctly from ini
2024-04-28 20:30:32 +02:00
Dentomologist
628ab51b4b CheatSearch: Use two's complement for negative hex values 2024-04-28 11:00:47 -07:00
Filoppi
91067044f1 Remove rounded corners on emulation render window
On Windows 11, when playing windowed in a separate window/widget from the main emulator window, we don't want the window to have rounded corners, as it prevents the corner pixels from being visible
2024-04-28 12:41:39 +03:00
Filoppi
3815819136 Qt: fix 13524 - output resampling mode not loading correctly from ini 2024-04-27 22:11:45 +03:00
sowens99
3ab1334cd9 VideoCommon: Only show input count when recording 2024-04-26 20:06:57 -04:00
mitaclaw
307a1e3ab8 Jit64/JitArm64: Check Breakpoints Before FPU Availability
CachedInterpreter already does it in the expected order.
2024-04-26 10:58:16 -07:00
Niel Lebeck
36cdb4a544 Eliminate SettingsHandler's SetBytes and Reset methods
Also make the `Decrypt` method private.

As far as I can tell, the only motivation for exposing the `SetBytes`
and `Reset` methods is to allow `CBoot::SetupWiiMemory` to use the same
`SettingsHandler` instance to read settings data and then write it back.
It seems cleaner to just use two separate instances, and require a given
`SettingsHandler` instance to be used for either writing data to a
buffer or reading data from a buffer, but not both.

A natural next step is to split the `SettingsHandler` class into two
classes, one for writing data and one for reading data. I've deferred
that change for a future PR.
2024-04-23 17:19:01 -07:00
Guilherme Janczak
50dc0ffbce
port to OpenBSD 2024-04-22 20:50:47 +00:00
JosJuice
e8154a529f JitArm64: Increase farcode & nearcode cache size
This is a JitArm64 version of 219610d8a0.

Due to limitations on how far you can jump with a single AArch64 branch
instruction, going above the former limit of 128 MiB of code (counting
nearcode and farcode combined) requires a bit of restructuring. With the
restructuring in place, the limit now is 256 MiB. See the new large
comment in Jit.h for a description of the new memory layout.
2024-04-22 08:31:48 +02:00
Tilka
b6f0e8876e
Merge pull request #12731 from JosJuice/jitarm64-mfcr-ubfx
JitArm64: Skip UBFX in mfcr
2024-04-21 20:56:46 +01:00
Jordan Woyak
71de5c58b5
Merge pull request #12732 from JosJuice/arm64emitter-assert-category
Arm64Emitter: Fix incorrect assert category (and a shadowed variable)
2024-04-21 14:40:49 -05:00
Jordan Woyak
a89336001a
Merge pull request #12733 from mitaclaw/instructionNumber
JitState: Remove Unused instructionNumber
2024-04-21 14:39:25 -05:00
Jordan Woyak
d6bcbd0115
Merge pull request #12734 from mitaclaw/assert-dyna_rec
JIT: Fix Incorrect Assert Category
2024-04-21 14:38:41 -05:00
OatmealDome
59c6739013
Merge pull request #12727 from Simonx22/android-dependencies-042024
Android: Update dependencies
2024-04-21 13:54:37 -04:00
OatmealDome
c154134e28 ScmRevGen: Generate Info.plist for MacUpdater 2024-04-21 13:28:21 -04:00
OatmealDome
3ad1037d7f ScmRevGen: Generate Info.plist for DolphinQt 2024-04-21 13:28:21 -04:00
mitaclaw
e3721bee1b JIT: Fix Incorrect Assert Category 2024-04-21 09:07:47 -07:00
mitaclaw
e7dbd298a8 JitState: Remove Unused instructionNumber 2024-04-21 08:51:29 -07:00
JosJuice
de33831783 Arm64Emitter: Fix shadowed variable
A lambda at the end of ARM64XEmitter::ParallelMoves named its parameter
`move`.
2024-04-21 16:20:59 +02:00
JosJuice
e140491fa9 Arm64Emitter: Fix incorrect assert category 2024-04-21 16:19:10 +02:00
JosJuice
e64cdca405 JitArm64: Skip UBFX in mfcr
We can implement the same behavior in one instruction less.
2024-04-21 16:13:33 +02:00
JosJuice
a17331d568 DolphinQt: Don't ask user about creating Skylanders folder
We don't have prompts like this for any other path handled by Dolphin.
If the folder doesn't exist, let's just create it.
2024-04-21 09:28:01 +02:00
JosJuice
3bc9008715 PPCAnalyst: Prevent discarding registers around breakpoints
Fixes https://bugs.dolphin-emu.org/issues/13526.
2024-04-21 08:50:04 +02:00
Admiral H. Curtiss
d3cf35019c
Merge pull request #12726 from JosJuice/i18n-2024-04-20
i18n: Add comments and improve source strings
2024-04-20 23:34:32 +02:00
Admiral H. Curtiss
a46ffc5d08
Merge pull request #12686 from JosJuice/android-remove-strikeout
Android: Unset STRIKE_THRU_TEXT_FLAG for editable settings
2024-04-20 23:34:05 +02:00
Admiral H. Curtiss
8236e4eaf9
Merge pull request #12636 from KjubDusJub/dolphin-tool-extractcommand
DolphinTool: Add an image extract command
2024-04-20 23:29:32 +02:00
Tilka
020e7b3e2d
Merge pull request #11144 from JosJuice/jit64-arith-inline-avx
Jit64: Inline avx_op into fp_arith
2024-04-20 22:03:47 +01:00
JosJuice
83b280d903 i18n: Add comments and improve source strings 2024-04-20 23:02:46 +02:00
Tilka
f1e40f73bd
Merge pull request #12705 from JosJuice/get-span-for-address
Memmap: Replace GetPointer with GetSpanForAddress
2024-04-20 21:16:54 +01:00
Tilka
6443084e8c
Merge pull request #12724 from Tilka/readstate
TAPServerConnection: drop unused enum class ReadState
2024-04-20 21:12:54 +01:00
JosJuice
c204b33314 VideoCommon/BPStructs: Add a missing bounds check
Happened to find this when working on the previous commit.
2024-04-20 18:31:08 +02:00
JosJuice
3cfa233b63 VideoCommon: Use GetSpanForAddress safely in texture decoding
Now only VertexLoader remains... But that one might be tricky.
2024-04-20 18:31:08 +02:00
JosJuice
5c9bb80638 Memmap: Replace GetPointer with GetSpanForAddress
To ensure memory safety, callers of GetPointer have to perform a bounds
check. But how is this bounds check supposed to be performed?
GetPointerForRange contained one implementation of a bounds check, but
it was cumbersome, and it also isn't obvious why it's correct.

To make doing the right thing easier, this commit changes GetPointer to
return a span that tells the caller how many bytes it's allowed to
access.
2024-04-20 18:31:08 +02:00
Simonx22
e4f97a2532 Android: Update dependencies 2024-04-20 17:53:11 +02:00
JosJuice
13e9d5c889 Jit64: Improve register handling in fp_arith
This lets us avoid the "ugly" case.
2024-04-20 17:50:54 +02:00
JosJuice
2bb59ff0dc Jit64: Inline avx_op into fp_arith
This will let us manage registers better in the next commit.
2024-04-20 17:50:54 +02:00
JosJuice
2c2e06bf39 Jit64: Add extra cases for reversible avx_op
Optimization.
2024-04-20 17:50:54 +02:00
JosJuice
bb3306701b Jit64: Flatten avx_op
Reduces indentation and places the "ugly" case last. No behavior change.
2024-04-20 17:50:54 +02:00
JosJuice
4ac52cf053 JitArm64: Minor mtfsfix optimization
BFI takes two cycles on many CPUs, whereas AND (immediate) only takes
one.
2024-04-20 16:55:29 +02:00
Tilka
20665ebce7
Merge pull request #12710 from jordan-woyak/mouse-pointing-disable-relative
DolphinQt/Mapping: Disable relative input when "Mouse Controlled Pointing" button is pressed.
2024-04-20 14:14:03 +01:00
Tilka
017f72f43e
Merge pull request #12672 from JosJuice/jit64-extract-with-byte-offset
Jit64: Clean up ExtractWithByteOffset
2024-04-20 12:41:29 +01:00
Tilka
b98176075e
Merge pull request #12719 from stblr/device-change-again
HIDv4: Fix racy device change behavior
2024-04-20 12:26:40 +01:00
Tillmann Karras
8ed41e7264 TAPServerConnection: drop unused enum class ReadState
This also fixes a -Wshadow warning because there is a function-local
equivalent in ReadThreadHandler().
2024-04-20 12:04:28 +01:00
JosJuice
758097f09c
Merge pull request #12717 from mitaclaw/downcountAmount
Change JitState::downcountAmount to a u32
2024-04-20 10:39:33 +02:00
Admiral H. Curtiss
0e7346ac10
Merge pull request #12718 from nicovank/master
Apply Clang-Tidy's modernize-use-starts-ends-with
2024-04-20 05:21:38 +02:00
Admiral H. Curtiss
2252635070
Merge pull request #12702 from Dentomologist/gamelist_show_disc1_for_two_disc_games
GameList: Show (Disc 1) for first disc of two-disc games
2024-04-20 05:03:38 +02:00
Pablo Stebler
93b29cb8b2
HIDv4: Fix racy device change behavior
This prevents the device changes happening between 2 GETDEVICECHANGE
calls from being missed by the application.

Same as 7e7b0971ab.
2024-04-19 21:56:12 +02:00
Nicolas van Kempen
932645f245 Apply modernize-use-starts-ends-with 2024-04-19 14:55:29 -04:00
mitaclaw
65ff0146b9 Change JitState::downcountAmount to u32 2024-04-19 04:08:34 -07:00
Jordan Woyak
df7dd5d36a Config: Expose GFX_OVERLAY_PROJ_STATS setting in UI. 2024-04-18 14:45:28 -05:00
Jordan Woyak
1e27183dff VideoCommon: Show the average projection to viewport ratio in statistics
window.
2024-04-18 14:45:28 -05:00
Jonas Kalsvik
859ac40ca2
DolphinTool: Add an image extract command 2024-04-18 21:11:19 +02:00
Admiral H. Curtiss
1805f6e381
Merge pull request #12660 from jordan-woyak/hide-makepkg
Hide branch name from title bar when there are no commits ahead of master.
2024-04-18 17:21:24 +02:00
Admiral H. Curtiss
8268ae1cf7
Merge pull request #12698 from iwubcode/xfb_copy_hash_in_present
VideoCommon: add xfbs hashes to present info if available
2024-04-18 17:11:49 +02:00
Sepalani
c0fd59adfd BBA/HLE: Handle connection error 2024-04-17 20:18:20 +04:00
Sepalani
73aa8c50a2 BBA/HLE: Sleep when no data is received 2024-04-17 20:18:20 +04:00
Sepalani
05ed1a2fae BBA/HLE: Poll as much data as possible 2024-04-17 20:18:20 +04:00
Sepalani
c71134c4ab BBA/HLE: Check queue overrun 2024-04-17 20:18:20 +04:00
Dentomologist
9c5605a59c AudioCommon: When ALSA is absent on Linux, default to Cubeb backend
Default to Cubeb instead of the NULL backend on Linux when ALSA isn't
valid.
2024-04-16 14:06:28 -07:00
Admiral H. Curtiss
83b5124d40
Merge pull request #12559 from sepalani/bba-refactor
BBA/HLE: Code refactoring
2024-04-16 22:43:04 +02:00
Admiral H. Curtiss
e757d5ea9c
Merge pull request #12708 from brad0/openbsd_sound_backend
Set default sound backend on OpenBSD to cubeb
2024-04-16 22:41:28 +02:00
Jordan Woyak
47b06d274e InputCommon: Fix unnecessary "Modifier/Range" ini file entries. 2024-04-15 18:32:31 -05:00
Jordan Woyak
31dc3477ad DolphinQt/Mapping: Disable relative input when "Mouse Controlled Pointing" button is pressed. 2024-04-15 14:52:26 -05:00
OatmealDome
dbc7e03577
Merge pull request #12709 from mitaclaw/rcheevos-posix
RetroAchievements: Put "RetroAchievements.ini" in the correct config location for POSIX
2024-04-15 01:21:43 -04:00
mitaclaw
48b38f6e9b RetroAchievements: Put "RetroAchievements.ini" in the correct config location for POSIX 2024-04-14 21:47:41 -07:00
OatmealDome
ab53f6934c
Merge pull request #12704 from mitaclaw/symbol-description-view
PPCSymbolDB: GetDescription by std::string_view
2024-04-14 22:14:18 -04:00
Brad Smith
ba2ccf3889 Set default sound backend on OpenBSD to cubeb
Set the default sound backend to cubeb instead of the default
being none.
2024-04-14 18:47:20 -04:00
Dentomologist
37b89d5b71 GameList: Show (Disc 1) for first disc of two-disc games
Append disc label to the first disc of two-disc games too, rather than
only labelling the second disc.
2024-04-14 13:55:18 -07:00
Jordan Woyak
637ae12ff4
Merge pull request #12703 from nlebeck/settingshandler-nomove-2
Pass `SettingsHandler` buffers by const ref instead of rvalue ref (since the contents are copied either way)
2024-04-13 17:10:11 -05:00
JosJuice
5456d990d1 Android/ControllerInterface: Run the init code
This was broken by a9a9fdd9e9. Because Init didn't run, the Android
input backend would crash whenever it tried to call into JVM code.
2024-04-13 22:39:10 +02:00
Tilka
e62d8ecfa8
Merge pull request #12632 from jordan-woyak/input-backend-impls
Implement missing InputBackend classes.
2024-04-13 11:56:27 +01:00
mitaclaw
672be6a8cf PPCSymbolDB: GetDescription by std::string_view
Should save a lot of deep copies.
2024-04-13 00:19:01 -07:00
Admiral H. Curtiss
1bfeeb8a63
Merge pull request #12693 from Tilka/zelda3
DSPHLE/Zelda: simplify AFC decoding
2024-04-13 03:57:13 +02:00
Niel Lebeck
d2b96736e0 Pass SettingsHandler buffers by const ref instead of rvalue ref 2024-04-12 18:50:21 -07:00
Admiral H. Curtiss
b3939052b4
Merge pull request #12436 from Filoppi/frame-dump-raw-internal-resolution
Frame dump at raw internal resolution
2024-04-13 03:39:37 +02:00
Admiral H. Curtiss
2f13be5a2d
VideoConfig: Adjust FrameDumpResolutionType enum class to style guidelines 2024-04-13 03:21:39 +02:00
Admiral H. Curtiss
107379bf74
Merge pull request #12569 from GregoireLD/dolphin-GBAProfilePathFix
Fix path-loading of GBA map configurations
2024-04-13 02:46:07 +02:00
Admiral H. Curtiss
3a0720dd1f
Merge pull request #12681 from nlebeck/taskviewmodel-refactor
Refactor `TaskViewModel` to track task-related state in a single `MutableLiveData` instance
2024-04-13 01:42:12 +02:00
Admiral H. Curtiss
b623a36005
Merge pull request #12688 from JosJuice/android-alert-synchronize
Android: Fix race condition in displayAlertMsg
2024-04-13 01:40:30 +02:00
Admiral H. Curtiss
d58c998d6d
Merge pull request #12696 from mitaclaw/verify-widget-core-state-slot
VerifyWidget: Listen for Core::State OnEmulationStateChanged
2024-04-13 01:39:32 +02:00
Admiral H. Curtiss
0c1a76398b
Merge pull request #12691 from mitaclaw/jit-profiling-restoration
JitCache: Software Profiling Restoration
2024-04-13 01:35:25 +02:00
Jordan Woyak
9321318cb6 DolphinQt: Ensure controller settings show the game-controller indicator while expression editing. 2024-04-12 15:54:18 -05:00
Jordan Woyak
e9fe0d3d5b NumericSetting: Stop values from binding to numbered input names. 2024-04-12 15:54:18 -05:00
Jordan Woyak
5039072ae9 ExpressionParser: Support unary plus operator. 2024-04-12 15:52:35 -05:00
Tilka
2011c7a448
Merge pull request #12697 from JosJuice/no-getpointer-part-4
VideoCommon: Remove calls to GetPointer
2024-04-12 20:01:09 +01:00
Tilka
9a9be5ca51
Merge pull request #12614 from nlebeck/settingshandler-edgecase
Add SettingsHandler unit tests exercising the edge case fixed in PR #8704
2024-04-12 17:32:51 +01:00
Tilka
771858b182
Merge pull request #12701 from Tilka/usbwait
Qt: trigger first USB device scan without a timer
2024-04-12 14:25:45 +01:00
Tilka
1fa5c3485c
Merge pull request #12699 from mitaclaw/cached-interpreter-perfmon-optimization
CachedInterpreter: Skip Updating Instruction PERFMON When There Are None
2024-04-11 16:19:42 +01:00
Tillmann Karras
99a8849125 Qt: trigger first USB device scan without a timer
Currently the dialog makes you wait one second before it shows anything.
Instead, trigger the first scan manually.
2024-04-11 16:48:10 +02:00
mitaclaw
bc7b11517f MenuBar: Optimize SearchInstruction 2024-04-10 17:00:45 -07:00
mitaclaw
3073e8fd40 CachedInterpreter: Skip Updating Instruction PERFMON When There Are None 2024-04-10 04:09:37 -07:00
iwubcode
abf380b705 VideoCommon: add xfb hash values (if available) to present information 2024-04-09 18:59:33 -05:00
iwubcode
e5b7b2e9ee VideoCommon: add xfbs presented to video events 2024-04-09 18:57:32 -05:00
mitaclaw
94712ea06f Android: Access Software JIT Profiling 2024-04-09 13:43:32 -07:00
mitaclaw
6dad5cee65 DolphinQt: Access Software JIT Profiling 2024-04-09 13:43:32 -07:00
mitaclaw
30c63fa4a6 Common: Remove Unused PerformanceCounter Code 2024-04-09 13:43:32 -07:00
mitaclaw
ee8bcf2ccc JitCache: Software Profiling Restoration
Rekindle software JIT profiling with a std::chrono conversion and a config connection.
2024-04-09 13:43:31 -07:00
mitaclaw
fe8f836668 VerifyWidget: Listen for Core::State OnEmulationStateChanged 2024-04-09 12:13:02 -07:00
JosJuice
54773bc5d2 VideoCommon: Remove calls to GetPointer
This fourth part of my series of patches to get rid of unsafe uses of
GetPointer takes care of the "easy" cases in VideoCommon. Three uses of
GetPointer now remain in Dolphin: VertexLoaderManager, TextureInfo, and
the software renderer's TextureSampler.
2024-04-09 21:08:57 +02:00
Admiral H. Curtiss
69aca2fbfc
Merge pull request #11141 from JosJuice/jit64-soft-fma-nans-preserve
Jit64: Preserve inputs when software_fma && m_accurate_nans
2024-04-09 06:04:21 +02:00
Admiral H. Curtiss
35836225c5
Merge pull request #12646 from mitaclaw/ppc-cache-global-system
PPCCache: Avoid Global System Accessor
2024-04-09 05:57:57 +02:00
Admiral H. Curtiss
e77def0478
Merge pull request #12690 from JosJuice/no-getpointer-part-3
IOS::HLE::BluetoothEmuDevice: Remove calls to GetPointer
2024-04-09 05:53:56 +02:00