Commit graph

32921 commits

Author SHA1 Message Date
Mai
75de461f11
Merge pull request #11393 from JosJuice/android-move-fps
Android: Move FPS-related settings to a submenu
2022-12-29 18:16:37 +00:00
JMC47
a20e41d340
Merge pull request #11389 from Pokechu22/sw-no-alpha-1-hack
Software: Remove alpha=1 blending special-case
2022-12-29 13:08:04 -05:00
JosJuice
24d7cf12a5 Android: Move FPS-related settings to a submenu
Back when this was just the FPS setting, having it in the top level
of the graphics settings was reasonable. But now it's seven settings.
Let's add a new submenu for them.
2022-12-29 17:34:23 +01:00
Admiral H. Curtiss
c20bb01b47
Merge pull request #11372 from JosJuice/m3u-backslash
Boot: Fix handling of M3U file paths containing backslashes
2022-12-29 17:09:38 +01:00
Admiral H. Curtiss
4bc94e4629
Merge pull request #11353 from noahpistilli/fix-mail-account-generation
Set checksum for NWC24Config during creation
2022-12-29 17:08:10 +01:00
Admiral H. Curtiss
cb0a603c72
VideoCommon: De-globalize GeometryShaderManager class. 2022-12-29 15:33:19 +01:00
Admiral H. Curtiss
a164c47caf
Core/Boot: Pass System instance to BootUp() and related. 2022-12-29 05:49:26 +01:00
Mai
7552deeff4
Merge pull request #11388 from AdmiralCurtiss/globals-vertexshadermanager
VideoCommon: De-globalize VertexShaderManager class.
2022-12-29 04:48:24 +00:00
Pokechu22
ed5015fa24 Software: Remove alpha=1 blending special-case
This was added in #10394 for both the hardware and software backends to work around an issue with Mario Kart Wii, Fortune Street, and Baten Kaitos. However, it seems like the software renderer handles blending well enough that we don't need this (and in any case, it's easy to change blending in the software renderer).

Some experimentation with #11387 (not pushed) showed that the software renderer's logic would also produce correct results on the hardware backends with this hack removed, but would require fbfetch (currently); if a better solution is found the hack can also be removed from the hardware backends.
2022-12-28 14:21:33 -08:00
JMC47
82e5f438f9
Merge pull request #11219 from K0bin/android-vk-alidation
VideoBackends:Vulkan: Migrate to VK_EXT_debug_utils
2022-12-28 14:16:51 -05:00
Admiral H. Curtiss
7e55cc9e90
VideoCommon/VertexShaderManager: Rename private variables. 2022-12-28 16:00:15 +01:00
Admiral H. Curtiss
50625728e0
VideoCommon: De-globalize VertexShaderManager class. 2022-12-28 15:52:29 +01:00
JosJuice
cc768b1ea3
Merge pull request #11357 from t895/elevate-ingame-fragment
Android: Elevate ingame menu fragment with color
2022-12-28 10:25:36 +01:00
Mai
0900e68986
Merge pull request #11384 from AdmiralCurtiss/globals-pixelshadermanager
VideoCommon: De-globalize PixelShaderManager class.
2022-12-28 00:59:03 +00:00
Mai
9e9910df8b
Merge pull request #11376 from JosJuice/android-delete-local-ref
Android: Make more meticulous use of DeleteLocalRef
2022-12-28 00:57:29 +00:00
JosJuice
b3a368ae06 Android: Add VectorToJObjectArray utility function 2022-12-27 22:59:42 +01:00
Pokechu22
f3df3a7727 PixelShaderGen: Clamp texture layer when using manual texture sampling with stereoscopic 3D
Otherwise, texelFetch() will use an out-of-bounds layer for game textures (that have 1 layer; EFB copies have 2 layers in stereoscopic 3D mode), which is undefined behavior (often resulting in a black image). The fast texture sampling path uses texture(), which always clamps (see https://www.khronos.org/opengl/wiki/Array_Texture#Access_in_shaders), so it was unaffected by this difference.
2022-12-27 13:45:13 -08:00
JosJuice
0b9351c194 Android: Make more meticulous use of DeleteLocalRef
If we're in a function that isn't just going to immediately return to
Java, leaking local references can lead to problems eventually.
2022-12-27 22:03:44 +01:00
Admiral H. Curtiss
c8202043b6
IOS/NWC24Config: Combine WriteConfig() and WriteCBK(). 2022-12-27 21:21:06 +01:00
Admiral H. Curtiss
4549fb4acb
VideoCommon/PixelShaderManager: Rename s_ variables. 2022-12-27 20:20:27 +01:00
Admiral H. Curtiss
725bd64ec2
VideoCommon: De-globalize PixelShaderManager class. 2022-12-27 20:13:24 +01:00
Sketch
929fba08e7 Fix ESDevice::GetTitlesWithTickets always returning 0 titles owned 2022-12-27 12:18:44 -05:00
Robin Kertels
19a4653203
VideoBackends:Vulkan: Replace debug_report with debug_utils
The former is deprecated and pretty much all modern drivers
support VK_EXT_debug_utils.
Android drivers dont support it. On those drivers,
we use the implementation provided by the validation layers.
2022-12-27 02:48:50 +01:00
Pokechu22
4e05c569d4 AdvancedWidget: Fix typo in performance sample window tooltip 2022-12-26 14:28:48 -08:00
Pokechu22
b675e49c0e AdvancedWidget: Add title for performance sample window tooltip 2022-12-26 14:20:06 -08:00
Sam Belliveau
6052a5ca9b Fix Speed Counter Sample Size 2022-12-26 16:47:12 -05:00
TheConfuZzledDude
288fa635f9 InputCommon/XInput2: Changed axis value reading to be more correct 2022-12-26 17:27:48 +00:00
Admiral H. Curtiss
f4b1155b4d
Merge pull request #11373 from JosJuice/gba-tas-input-turbo
DolphinQt: Add settings to GBA TAS input window
2022-12-26 04:37:25 +01:00
Jordan Woyak
4f4285cf5e WiimoteEmu/DrawsomeTablet: Expose mapping for lifted stylus. 2022-12-25 19:03:15 -06:00
Jordan Woyak
ab9fc3f2e4 WiimoteEmu/UDrawTablet: Expose mapping for lifted stylus. 2022-12-25 19:03:15 -06:00
JosJuice
cf16f49068 PowerPC: Fix theoretically possible infinite loop in WriteToHardware
`em_address + size` can overflow and become 0. It shouldn't happen with
the kinds of memory mappings games use in practice, though.
2022-12-25 12:29:13 +01:00
JosJuice
e0fba20f1f
Merge pull request #11360 from shuffle2/vs
msvc: remove workaround for arm64 sha1 compiler bug
2022-12-24 22:55:47 +01:00
JosJuice
c744ff4934 JitArm64: Implement breakpoints
Plus two miscellaneous debugger features that I found along the way when
reading Jit64's code for comparison: bJITNoBlockLinking and tracing.

Fixes https://bugs.dolphin-emu.org/issues/13127.
2022-12-24 13:24:01 +01:00
JosJuice
0659827485 Jit64: Check for breakpoint without disabling block link
Small optimization. By not calling WriteExit, the block linking system
never finds out about the exit we're doing, saving us from having to
disable block linking.
2022-12-24 13:01:29 +01:00
JosJuice
494b041b34 DolphinQt: Add settings to GBA TAS input window
We should expose Enable Controller Input and the turbo settings for
GBA just like we do for GameCube controllers and Wii Remotes.
I just forgot about it when implementing the GBA TAS input window.
2022-12-24 11:30:25 +01:00
JosJuice
582d6b738b
Merge pull request #11358 from t895/close-soft-keyboard
Android: Close soft keyboard on panel close
2022-12-24 11:21:56 +01:00
JosJuice
71f1b1db34 Boot: Fix handling of M3U file paths containing backslashes
Previously, if a user on Windows launched Dolphin from the command line
and specified a path to an M3U file and included backslashes in this path,
Dolphin would fail to resolve relative paths in the M3U file.
2022-12-24 11:13:27 +01:00
JosJuice
b3bc9c41ea
Merge pull request #11369 from t895/switch-fix
Android: Allow users to interact with switches in settings
2022-12-24 09:09:17 +01:00
Charles Lombardo
cf8537576e Android: Allow users to interact with switches in settings 2022-12-24 02:56:36 -05:00
JosJuice
3611045a6c DolphinQt: Add more i18n comments 2022-12-24 08:32:49 +01:00
Charles Lombardo
22dd0dbc3c Android: Upgrade NDK to 25.1.8937393 2022-12-23 21:41:03 -05:00
Sam Belliveau
e1d078ada6 Remove Redundant Access Specifiers 2022-12-23 20:13:01 -05:00
Sam Belliveau
673f81c18a New FrameTime/VBlank Analyzer + Graph 2022-12-23 19:52:53 -05:00
TheConfuZzledDude
27d596b89c InputCommon/Xinput: Cleaned up a bit 2022-12-23 22:35:09 +00:00
TheConfuZzledDude
c3018fdc3b InputCommon/XInput2: Added an axis output for the scroll wheel 2022-12-23 22:10:28 +00:00
Pierre Bourdon
2345ba178d
Merge pull request #11356 from Sam-Belliveau/update-dear-implot
Externals: Add Dear Implot
2022-12-23 22:05:29 +01:00
iwubcode
31bf9d0019 Core: add option to apply memory patch to not store the existing value (used during locking) 2022-12-23 12:31:33 -06:00
iwubcode
190cf5af30 DolphinQt: add multiselection to WatchWidget 2022-12-23 12:31:33 -06:00
iwubcode
c8a6ff6309 DolphinQt: add a 'add to watch' context menu item that allows you to add a memory location found in a cheat search to be added to the watch list 2022-12-23 12:31:33 -06:00
iwubcode
7d7fcdddd3 DolphinQt: add lock state to WatchWidget 2022-12-23 12:31:33 -06:00
iwubcode
8f3e8e4ca3 Core: add locked state to watches 2022-12-23 11:59:23 -06:00
iwubcode
41c9d706cb DolphinQt: cleanup WatchWidget 2022-12-23 11:59:23 -06:00
iwubcode
3081a781fd Core: when scheduling an invalidate cpu cache, no need to schedule if we're already on the cpu thread 2022-12-23 11:59:23 -06:00
iwubcode
2f2f906bf5 Core: add ability to add memory patches to the patch engine that will be executed each frame 2022-12-23 03:13:03 -06:00
iwubcode
1f87bcd202 Core: add ability to apply memory patches during a frame update in the PatchEngine 2022-12-23 03:13:03 -06:00
iwubcode
4743d74985 Core: add helper function to apply a memory patch and mark the 'PPCPatches' as final 2022-12-23 03:13:03 -06:00
Minty-Meeo
14179f7565 Follow-up on a four-year-old Android NDK workaround
Surely this is fixed by now.
2022-12-22 19:54:46 -06:00
Sam Belliveau
5ca438dd97 Add Dear ImPlot Library 2022-12-22 14:32:42 -05:00
Shawn Hoffman
9dcae0b1c3 msvc: remove workaround for arm64 sha1 compiler bug 2022-12-22 00:44:29 -08:00
Shawn Hoffman
270d74a324 bump required vs version 2022-12-22 00:43:34 -08:00
Minty-Meeo
05bebee802 Replace BitUtils with C++20: Counting Zeroes
With the upgrade to C++20, std::countl_zero and std::countr_zero can replace these home-spun implementations from the BitUtil.h library.
2022-12-21 04:17:00 -06:00
Charles Lombardo
4423afd462 Android: Close soft keyboard on panel close 2022-12-20 17:06:21 -05:00
Charles Lombardo
9c57d6028d Android: Elevate ingame menu fragment with color
Whenever the app is not using the default theme, the ingame menu fragment will be treated as an elevated component like an alert dialog.
2022-12-20 16:39:17 -05:00
Admiral H. Curtiss
d853da3b0b
Merge pull request #11354 from Pokechu22/desert-bus-asnd-ucode
DSPHLE: Add Desert Bus libasnd ucode variants
2022-12-20 20:01:21 +01:00
Pokechu22
66b3686d84 DSPHLE: Add Desert Bus libasnd ucode variants 2022-12-20 10:02:53 -08:00
Mai
5348c8b2c6
Merge pull request #11344 from JosJuice/jitarm64-mw-deps
JitArm64: Improve pipelining of lmw/stmw
2022-12-20 15:11:29 +00:00
Mai
46bc21291a
Merge pull request #11346 from t895/grid-settings
Android: Move game grid options to MainActivity
2022-12-20 15:10:51 +00:00
Mai
b59a5c8cf8
Merge pull request #11352 from t895/theme-helper-kt
Android: Convert ThemeHelper to Kotlin
2022-12-20 15:04:41 +00:00
Mai
43366d2384
Merge pull request #11351 from JosJuice/bitset-cpp20
Common: Use C++20 <bit> header in BitSet.h
2022-12-20 15:02:38 +00:00
Sketch
c01ec96c92 Set checksum for NWC24Config during creation 2022-12-19 20:18:34 -05:00
JMC47
fb8aa9744e
Merge pull request #11286 from K0bin/vk-query-fix
VideoBackends: Query fixes and cleanups
2022-12-19 03:15:48 -05:00
Charles Lombardo
2f5808e7a4 Android: Convert ThemeHelper to Kotlin 2022-12-18 16:54:28 -05:00
JosJuice
547d956278 Common: Use C++20 <bit> header in BitSet.h 2022-12-18 16:51:32 +01:00
JosJuice
9f4d9994bc
Merge pull request #11347 from t895/cheats-background-fix
Android: Use colorSurface attribute for cheats activity background
2022-12-18 12:41:15 +01:00
Sketch
b56411b84b
Fix MemoryViewWidget background colour 2022-12-17 10:37:37 +01:00
Charles Lombardo
6090694eab Android: Move game grid options to Main/TV Activities 2022-12-17 02:00:48 -05:00
Charles Lombardo
3bfe722c49 Android: Use colorSurface attribute for cheats activity background 2022-12-15 13:32:53 -05:00
Mai
a1c4861ad8
Merge pull request #10950 from JosJuice/replace-bitutils-rotate
Replace BitUtils with C++20: RotateLeft/RotateRight
2022-12-11 21:19:43 +00:00
Mai
aa57d53c90
Merge pull request #11345 from AdmiralCurtiss/globals-pe
VideoCommon/PixelEngine: Refactor to class, move to Core::System.
2022-12-11 21:07:30 +00:00
Admiral H. Curtiss
c486baffe6
VideoCommon/PixelEngine: Pass Core::System to methods. 2022-12-11 21:57:30 +01:00
Admiral H. Curtiss
ec8aaf1f30
VideoCommon/PixelEngine: Refactor to class, move to Core::System. 2022-12-11 21:57:19 +01:00
JosJuice
19db7a87a3
Merge pull request #11343 from t895/kotlin-clean
Android: Introduce Kotlin support
2022-12-11 20:12:47 +01:00
Charles Lombardo
8226506c84 Android: Introduce Kotlin support 2022-12-11 12:59:58 -05:00
JosJuice
701ba7cd43 JitArm64: Improve pipelining of lmw/stmw
The calculation of each address in lmw/stmw currently has a dependency
on the calculation of the previous address. By removing this dependency,
the host CPU should be able to pipeline the loads/stores better. The cost
we pay for this is up to one extra register and one extra MOV instruction
per guest instruction, but often nothing.

Making EmitBackpatchRoutine support using any register as the address
register would let us get rid of the MOV, but I consider that to be too
big of a task to do in one go at the same time as this.
2022-12-11 17:08:12 +01:00
Merry
17c14ac4b9 MachineContext: Fix USE_SIGACTION_ON_APPLE on arm64 2022-12-11 13:36:44 +00:00
JosJuice
82e87cf7b9
Merge pull request #9944 from JosJuice/android-nonsquare-buttons
Android: Allow non-square overlay control images
2022-12-11 12:10:55 +01:00
JosJuice
454537d53e Replace BitUtils with C++20: RotateLeft/RotateRight
Now that we've flipped the C++20 switch, let's start making use of
the nice new <bit> header.

I'm planning on handling this move away from BitUtils.h incrementally
in a series of PRs. There may be a few functions remaining in
BitUtils.h by the end that C++20 doesn't have any equivalents for.
2022-12-11 08:59:18 +01:00
Mateus B. Cassiano
5f0960ff88 Android: fix compile error 2022-12-11 01:10:30 -04:00
JosJuice
1fd8d476e8
Merge pull request #11325 from t895/extra-dark
Android: Add black backgrounds toggle
2022-12-10 21:09:26 +01:00
JosJuice
2b7b3c3942
Merge pull request #11335 from t895/baseline-profile
Android: Baseline profile generation
2022-12-10 21:09:18 +01:00
Charles Lombardo
fd7a84b794 Android: Add black backgrounds toggle
Makes all background colors black in dark mode when enabled through a ThemeOverlay. Applied the same way as a theme/mode.
2022-12-10 14:53:01 -05:00
JosJuice
932926a4aa
Merge pull request #11329 from t895/elevation-bar
Android: Use ElevationOverlay for app bar elevation color
2022-12-10 20:33:56 +01:00
Mai
54e01c660e
Merge pull request #11334 from AdmiralCurtiss/globals-fifo
VideoCommon/Fifo: Refactor to class, move to Core::System.
2022-12-10 19:13:23 +00:00
Mai
128c23dc29
Merge pull request #11336 from t895/material-switch
Android: Replace Checkbox with MaterialSwitch
2022-12-10 19:12:07 +00:00
Mai
48ce5318e1
Merge pull request #11338 from JosJuice/jitarm64-revert-supposed-tail
Revert "JitArm64: Optimize a few tail calls"
2022-12-10 19:11:23 +00:00
Mai
c3bed35468
Merge pull request #11337 from JosJuice/aarch64-shrn
Arm64Emitter: Fix SHRN/SHRN2
2022-12-10 19:09:33 +00:00
Admiral H. Curtiss
ceae4242fc
VideoCommon/Fifo: Pass Core::System to methods. 2022-12-10 17:16:26 +01:00
Admiral H. Curtiss
5624dd6d39
VideoCommon/Fifo: Refactor to class, move to Core::System. 2022-12-10 17:16:19 +01:00
JosJuice
64bc150b8c Revert "JitArm64: Optimize a few tail calls"
This reverts commit 351d095fff.

In hindsight, my attempted optimization messes with the return
predictor, unlike real tail calls. So I think it does more bad than
good.
2022-12-10 11:35:52 +01:00
JosJuice
b5b8871bce Arm64Emitter: Fix SHRN/SHRN2
The "vector shift by immediate" category encodes the shift amount for
right shifts as `size - amount`, whereas left shifts use `amount`.

We're not actually using SHRN/SHRN2 anywhere, which is why this has gone
undetected.
2022-12-10 11:20:23 +01:00