Commit Graph

31632 Commits

Author SHA1 Message Date
Minty-Meeo
9c22205ab1 Change _WIN32 check to a _MSC_VER check in Inline.h
This is compiler dependent, not OS dependent.
2022-05-02 01:57:36 -05:00
TryTwo
95175bbb96 Debugger RegisterWidget: Add context options to change entire column's display type. 2022-04-29 17:21:39 -07:00
Shawn Hoffman
64cd4cc86f msbuild: use default Project attrs
maybe it makes the xml less scary :D
2022-04-27 15:26:43 -07:00
Shawn Hoffman
2808909a97 msbuild: simplify lang/scm projects a bit 2022-04-27 15:06:04 -07:00
Shawn Hoffman
cad1f2735c msvc: disable optimizations for x64EmitterTest.cpp
40s -> 5s speedup
2022-04-27 15:06:04 -07:00
Shawn Hoffman
dde2f7e637 Disable MSBuild Resource Manager 2022-04-27 15:06:04 -07:00
JosJuice
260d3faba8
Merge pull request #10614 from t895/sharp-icons
Android: Sharpen icons
2022-04-27 18:11:14 +02:00
Mai M
e4695e329c
Merge pull request #10616 from shuffle2/fmt-lib
msbuild: fmt static library
2022-04-26 23:25:58 -04:00
Mai M
3897eb5bbe
Merge pull request #10617 from shuffle2/repro
msbuild: improve reproducible builds
2022-04-26 23:25:42 -04:00
Shawn Hoffman
eb87245be8 msbuild: use pathmap to unify source paths embedded in objects 2022-04-26 18:14:51 -07:00
Shawn Hoffman
f2c5c052bc msbuild: use pdbaltpath to strip dirname of pdb 2022-04-26 18:14:51 -07:00
Shawn Hoffman
44951a4cbc use fmt as static library instead of headers
reportedly improves compile time
2022-04-26 16:32:29 -07:00
Admiral H. Curtiss
01d4a2e9cc
TextureCacheBase: Don't log error while measuring state size. 2022-04-26 21:26:42 +02:00
Charles Lombardo
dcfa610319 Android: Sharpen icons
Create vector Wii and Gamecube icons and re-import default android icons as vector graphics. Scales better on a greater range of devices and takes up less space.
2022-04-26 15:01:56 -04:00
Shawn Hoffman
5724de13b0 msbuild: brepro -> deterministic 2022-04-25 09:48:50 -07:00
Charles Lombardo
9b7c5a4458 Android: Modernize theming system
themes.xml now contains a collection of colors, attributes, and styles. No visuals have changed, but this will allow for a more flexible theming system in the future for custom day/night/etc themes. This also removes a bunch of redundant code that can now be written as global styles and inherited themes.
2022-04-24 17:37:10 -04:00
JMC47
c0488de482
Merge pull request #10251 from Pokechu22/negative-scissor
Rework scissor handling
2022-04-24 15:00:42 -04:00
Pokechu22
8e7c848425
Merge pull request #10601 from Pokechu22/vulkan-shader-compile-error
Vulkan: Improve shader compile error handling
2022-04-24 11:43:10 -07:00
JMC47
c42392c565
Merge pull request #10290 from OatmealDome/m1-earlyz-bug
DriverDetails: Add broken discard with early-Z bug on Apple Silicon GPUs
2022-04-24 13:30:04 -04:00
Admiral H. Curtiss
61edcf7e4f
Merge pull request #10606 from AdmiralCurtiss/memory-widget-refactoring-1
Qt/MemoryWidget: Light refactoring and quality of life features.
2022-04-24 18:02:19 +02:00
Admiral H. Curtiss
787e3efeb8
Qt/MemoryViewWidget: Detect row breakpoint cell by cell data instead of cell position. 2022-04-24 16:22:36 +02:00
Admiral H. Curtiss
6920a24f1d
Qt/MemoryViewWidget: Add option to copy the actually displayed cell value to clipboard. 2022-04-24 16:22:36 +02:00
Admiral H. Curtiss
54ec0bd0d0
Qt/MemoryViewWidget: Don't use a member variable to hold information about the current mouse click. 2022-04-24 16:14:42 +02:00
JosJuice
6abf367676
Merge pull request #10588 from JosJuice/jitarm64-psq-stxx-q0
JitArm64: Always lock Q0 in psq_stXX
2022-04-24 10:37:45 +02:00
Admiral H. Curtiss
26f9c8b847
Qt/MemoryWidget: Don't force a fixed size for the sidebar. 2022-04-24 05:24:20 +02:00
Admiral H. Curtiss
4c080b8451
Merge pull request #10578 from TryTwo/PR_MemoryWidget_Dual_Views
Debugger MemoryWidget: Add dual views
2022-04-23 22:23:31 +02:00
JosJuice
e0afcb3b94
Merge pull request #10540 from nyanpasu64/fix-gcadapter-atomics
Remove atomic usage and fix mutex locking in GCAdapter code
2022-04-23 22:04:10 +02:00
Admiral H. Curtiss
8b5a61b8fd
Merge pull request #10599 from shuffle2/libusb
Libusb fixups
2022-04-23 20:32:47 +02:00
Mai M
19c71db782
Merge pull request #10597 from Simonx22/fix-ingame-menu-design
Android: Fix in game menu rippleColor and colorEdgeEffect
2022-04-23 06:10:20 -04:00
TryTwo
a7111e3910 Dual View any size. 2022-04-23 02:46:25 -07:00
JosJuice
14f9ffeb02 JitArm64: Add documentation comment for EmitBackpatchRoutine 2022-04-23 11:37:52 +02:00
JosJuice
69ca38d355
Merge pull request #10600 from t895/modern-card
Android: Modernize game card
2022-04-23 10:25:48 +02:00
Charles Lombardo
6eb9111657 Modernize game card
+Remove background on card
+Increase max # of lines for game title
+Root layout is now a linear layout with the card view rounding the corners on the box art
2022-04-22 22:01:14 -04:00
Pokechu22
784079853d VideoCommon: Add comment explaining why only the first normal gets normalized
Co-authored-by: Scott Mansell <phiren@gmail.com>
2022-04-22 16:54:38 -07:00
Pokechu22
2a5c77f43f VideoCommon: Handle emboss texgen with only a single normal
Fixes a large number of effects in Rogue Squadron 2 and 3.
2022-04-22 16:54:38 -07:00
Pokechu22
39b2854b98 VertexLoader: Convert count register to remaining register
This more accurately represents what's going on, and also ends at 0 instead of 1, making some indexing operations easier.  This also changes it so that position_matrix_index_cache actually starts from index 0 instead of index 1.
2022-04-22 16:54:38 -07:00
Pokechu22
97d0ff58c8 Convert vertex loader position cache to std::array 2022-04-22 16:54:38 -07:00
Pokechu22
f722bdf7f1 VertexLoaderX64: Refactor so that zfreeze is only in one place
(Specifically, the copy for VertexLoaderManager::position_cache.  The position matrix index happens elsewhere, and the float path still has special logic to copy to scratch3.)
2022-04-22 16:54:38 -07:00
Pokechu22
6f1350ae51 VertexLoaderARM64: Fix z-freeze position matrix index
Before, it would always write to index 0 (which is unused).  Now it writes to the correct index.
2022-04-22 16:54:38 -07:00
Pokechu22
04fdadd9d5 VideoCommon: Rename norm0/norm1/norm2 to normal/tangent/binormal 2022-04-22 16:54:36 -07:00
Pokechu22
88134a6786 VertexShaderGen: Simplify normal calculation
This is a readability change; there should be no functional or performance differences.
2022-04-22 16:51:58 -07:00
Pokechu22
0f92ab380e Vulkan: Include the info log in the shader compile error panic alert
The other backends do this, and it is helpful for quickly identifying errors during development.
2022-04-22 16:38:35 -07:00
Pokechu22
7ae71e643e Vulkan: Close the output stream on shader compile error before showing the panic alert
This fixes the file showing up as 0 bytes in Windows Explorer (although the file would still display properly when opened).
2022-04-22 16:37:43 -07:00
Shawn Hoffman
12cd81bdb3 GCAdapter: don't call libusb_detach_kernel_driver on apple 2022-04-22 09:56:47 -07:00
Shawn Hoffman
5cd3cf9072 GCAdapter: fix retval check of libusb_detach_kernel_driver 2022-04-22 09:56:47 -07:00
Shawn Hoffman
978c90845b GCAdapter: move libusb context teardown last 2022-04-22 09:56:47 -07:00
Shawn Hoffman
1c9dfb7bb6 GCAdapter: some macro cleanup 2022-04-22 09:56:47 -07:00
Shawn Hoffman
f52d94832e GCAdapter: set read/write thread names 2022-04-22 07:12:09 -07:00
Mai M
2e01dc0c82
Merge pull request #10592 from AdmiralCurtiss/pointerwrap-protections
Common/PointerWrap: Prevent reads/writes past the end of the buffer.
2022-04-21 17:32:13 -04:00
Simonx22
f5f52625b9 Android: Fix in game menu rippleColor and colorEdgeEffect 2022-04-20 16:22:06 -04:00
OatmealDome
259a5fc7c0 DriverDetails: Add broken discard with early-Z bug on Apple Silicon GPUs 2022-04-20 14:56:34 -04:00
OatmealDome
e7f5e5172c DriverDetails: Introduce new VENDOR_APPLE for Apple GPUs 2022-04-19 10:55:27 -04:00
OatmealDome
80dfefb32e UberShaderPixel: Add support for non-dual source shader blending 2022-04-19 10:55:26 -04:00
OatmealDome
c1d87db6fa PixelShaderGen: Add support for non-dual source shader blending 2022-04-19 10:55:26 -04:00
OatmealDome
bad0283ff7 VKPipeline: Add shader blending support 2022-04-19 10:55:26 -04:00
Admiral H. Curtiss
ef760ee012
Common/PointerWrap: Prevent reads/writes past the end of the buffer. 2022-04-18 23:48:00 +02:00
Shawn Hoffman
70507c2237 update to libusb v1.0.26
moves libusb from vendored to submodule
2022-04-17 20:01:19 -07:00
Admiral H. Curtiss
853cf4f818
Common/PointerWrap: Hide internals. 2022-04-18 03:41:14 +02:00
Mai M
3ed9d5a3c7
Merge pull request #10589 from JosJuice/android-more-init-checks
Android: Use AfterDirectoryInitializationRunner more comprehensively
2022-04-17 05:43:06 -04:00
TryTwo
cc22f1a558 MemoryWidget add dual views for two separate column types. Force first column to be Hex32. 2022-04-17 00:15:44 -07:00
Pokechu22
f3eff70e2f Implement ImGui window for scissor rectangles
This is mainly for debugging, and is only exposed by manually editing the configuration.
2022-04-16 12:35:00 -07:00
Pokechu22
4d1e1db3c5 Software: Fix scissor rectangle always being block-aligned 2022-04-16 12:35:00 -07:00
Pokechu22
8745d84949 Software: Disable clipping based on xfmem
This fixes https://bugs.dolphin-emu.org/issues/12562, and is also needed for a hardware test of mine.
2022-04-16 12:35:00 -07:00
Pokechu22
925ceab82f Software: Use new scissor logic
Unlike the hardware backends, the software renderer can use multiple scissor rectangles (though this will result in extra rasterization).
2022-04-16 12:34:58 -07:00
Pokechu22
076392a0f6 VideoCommon: Rework scissor handling
This increases accuracy, fixing the white rendering in Major Minor's Majestic March.  However, the hardware backends can only have one viewport and scissor rectangle at a time, while sometimes multiple are needed to accurately emulate what is happening.  If possible, this will need to be fixed later.
2022-04-16 10:26:11 -07:00
Pokechu22
4595b89ad8 VideoCommon: Remove bSupportsOversizedViewports
I think this is a relic of D3D9.  D3D11 and D3D12 seem to work fine without it.  Plus, ViewportCorrectionMatrix just didn't work correctly (at least with the viewports being generated by the new scissor code).
2022-04-16 10:26:11 -07:00
Pokechu22
b85b35d5ea VideoCommon: Create dedicated structs for scissor pos/offset 2022-04-16 10:26:10 -07:00
JosJuice
342af6512c Android: Use AfterDirectoryInitializationRunner more comprehensively
Should fix the crash reported in https://bugs.dolphin-emu.org/issues/12885
2022-04-16 15:04:29 +02:00
Admiral H. Curtiss
0ec3f3a6ae
Merge pull request #10563 from TryTwo/PR_MemoryWidget_Display_Types
Debugger MemoryWidget: More display types, use combo box for options
2022-04-16 14:35:29 +02:00
JosJuice
2ef2d4778d JitArm64: Always lock Q0 in psq_stXX
Q0 is used as a scratch register by EmitBackpatchRoutine.

Fixes a vertex explosion in Spider-Man 2 that was uncovered by 20b2300.
2022-04-16 13:22:36 +02:00
TryTwo
a2aecc3794 Debugger MemoryWidget: More display types, use combo box for display options. Add alignment and riw length options. 2022-04-15 22:00:51 -07:00
Admiral H. Curtiss
0a4805c0b9
Merge pull request #10582 from AdmiralCurtiss/fmt-float
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-16 03:42:55 +02:00
Scott Mansell
c5c4169bc8
Merge pull request #10255 from Pokechu22/sw-zfreeze
Software: Fix zfreeze with CullMode::All
2022-04-15 11:12:49 +12:00
Admiral H. Curtiss
3fdc6cbffe
Merge pull request #10486 from ttttcrngyblflpp/negative-axis-scaling
Make pos/neg analog axes symmetrical
2022-04-13 12:18:41 +02:00
Admiral H. Curtiss
5c687fc2a3
Common/StringUtil: Use simpler formatting for floats and doubles. 2022-04-12 23:35:19 +02:00
Shawn Hoffman
ef8e461ca2 windows: buildfix if pch not used 2022-04-12 12:28:57 -07:00
Admiral H. Curtiss
2f90a2c689
Merge pull request #10574 from EternityShack/master
MemoryWidget: Load Files to Memory
2022-04-11 04:09:02 +02:00
EternityShack
c5b0b92513 MemoryWidget: Load Files to Memory 2022-04-10 21:02:33 -05:00
JosJuice
abffa93a72 MoltenVK: Fix pixel shader typo 2022-04-10 20:51:20 +02:00
Mai M
e932a1bfb7
Merge pull request #10571 from AdmiralCurtiss/ffmpeg-custom-pix-fmt
VideoCommon/FrameDump: Allow user to specify a pixel format.
2022-04-09 14:19:39 -04:00
Pokechu22
59f299d5d6 Software: Fix zfreeze with CullMode::All 2022-04-08 20:05:32 -07:00
Pokechu22
164e0f742d Software: Store offset in Slope
This is needed since we need a separate offset for zfreeze to work correctly.  It also makes the code a bit less jank.
2022-04-08 20:05:32 -07:00
Pokechu22
3a742e99bb Software: Remove config to disable ZComploc and ZFreeze
These aren't particularly useful, and make the code a bit more confusing.  If for some reason someone wants to test what happens when these functions are disabled, it's easier to just edit the code that implements them.  They aren't exposed in the UI, so one would need to restart Dolphin to do it anyways.
2022-04-08 20:05:32 -07:00
Pokechu22
4e9a314776 Round viewport coordinates when vertex rounding is enabled
This should fix https://bugs.dolphin-emu.org/issues/9105
2022-04-08 18:30:59 -07:00
Pokechu22
dbb857b175 VertexShaderManager: Use g_ActiveConfig.UseVertexRounding() 2022-04-08 18:30:59 -07:00
Pokechu22
f6ab317374 Fix typo (GFX_HACK_VERTEX_ROUDING -> GFX_HACK_VERTEX_ROUNDING) 2022-04-08 18:30:59 -07:00
Mai M
91192efe59
Merge pull request #10573 from AdmiralCurtiss/pr10472
DolphinQt/HacksWidget: Re-enable texture accuracy slider if it was disabled because of a custom value.
2022-04-08 21:24:59 -04:00
3t13nn3
5516d468ce
DolphinQt/HacksWidget: Re-enable texture accuracy slider if it was disabled because of a custom value.
Fixes https://bugs.dolphin-emu.org/issues/12771
2022-04-09 03:01:10 +02:00
Mai M
f92b7f4c87
Merge pull request #10508 from JosJuice/android-pointer-down
Android: Only use getActionIndex for ACTION_POINTER_DOWN/ACTION_POINTER_UP
2022-04-08 20:53:52 -04:00
Mai M
e3106e8cdd
Merge pull request #10503 from JosJuice/android-directoryinitialization-thread
Android: Actually use a thread for DirectoryInitialization
2022-04-08 20:53:25 -04:00
Mai M
004e834c14
Merge pull request #10558 from shuffle2/lang
windows: simplify handling of gettext
2022-04-08 20:51:36 -04:00
Mai M
d4e4b56047
Merge pull request #10562 from JosJuice/android-double-tap-get
Android: Fix displaying the current value of double tap setting
2022-04-08 20:50:12 -04:00
Admiral H. Curtiss
df214af8a1
VideoCommon/FrameDump: Fix log messages with arguments. 2022-04-09 01:42:02 +02:00
Admiral H. Curtiss
36134abd0e
Common/LogManager: Add generic printf-style log function that takes a va_list instead of va_args. 2022-04-09 01:41:40 +02:00
Admiral H. Curtiss
3382408b8e
VideoCommon/FrameDump: Allow user to specify a pixel format. 2022-04-09 00:45:49 +02:00
Pokechu22
120208ae03
Merge pull request #10543 from Minty-Meeo/initmmio-combine
Combine InitMMIO and InitMMIOWii
2022-04-08 14:35:03 -07:00
Admiral H. Curtiss
23508cafb2
Merge pull request #7675 from TryTwo/Debugger_Code_Features
Debugger: Get target memory in load/store instructions
2022-04-08 05:28:22 +02:00
Admiral H. Curtiss
5fda8ee8ec
Core/WGInput: Dynamically load winrt function addresses. 2022-04-08 03:26:09 +02:00
JMC47
e02194057b
Merge pull request #10412 from Pokechu22/sw-efb-peek-alpha
Software: Implement pixel engine alpha read mode
2022-04-07 17:01:56 -04:00
JosJuice
7a33659e7b
Merge pull request #10485 from JosJuice/real-ocol0-logic-ops
Shadergen: Use real_ocol0 workaround for shader logic ops
2022-04-07 21:00:24 +02:00
JosJuice
6a326a9f73
Merge pull request #10544 from AdmiralCurtiss/default-font-size-workaround
Qt: Set font size for default debug font.
2022-04-07 20:59:17 +02:00
JosJuice
17b17e3236
Merge pull request #10552 from Gamer64ytb/display-cutout
Android: Implement expand display cutout option.
2022-04-07 20:58:22 +02:00
JosJuice
a8654e2c69
Merge pull request #10560 from JosJuice/android-wii-disc-update
Android: Implement installing system update from disc image
2022-04-07 20:58:09 +02:00
Pokechu22
6e83e36beb msbuild: Move WGInput to DolphinLib.props
It was accidentally put into the main DolphinLib.vcxproj in #7614.
2022-04-07 11:37:12 -07:00
Sepalani
5b658e77df MemoryWidget: Fix preview of zero as float/double 2022-04-07 11:55:23 +04:00
Admiral H. Curtiss
368342cb9b
Merge pull request #10528 from TryTwo/PR_Debugger_Memory_Input_Types
Debugger: MemoryWidget: add float and integer input types. Add input preview.
2022-04-07 02:13:21 +02:00
TryTwo
ed96b8e308 Debugger MemoryWidget: add float and integer inputs. Add input preview. Change input logic. Use combobox for options. 2022-04-06 16:20:55 -07:00
Admiral H. Curtiss
242cd4cbea
Merge pull request #10555 from Dentomologist/fix_manual_update_check_when_autoupdate_disabled
Updater: Fix manual update check when autoupdate is disabled
2022-04-06 14:38:25 +02:00
JosJuice
4120870628 Android: Remove nonsense code from double tap setting dialog
The currentValue variable doesn't use InputOverlay.OVERLAY_
constants, it uses NativeLibrary.ButtonType constants.

Sigh, why do enums have to be so bad on Android that Google
recommends against using them :(

Anyway, simply not doing anything is a reasonable option here.
What happens then is that if the currently selected button is
invalid for the current controller, none of the available options
in the dialog will be pre-selected.
2022-04-05 19:08:58 +02:00
JosJuice
cdff426d23 Android: Fix displaying the current value of double tap setting 2022-04-05 18:58:29 +02:00
Jordan Woyak
566dfc1cf4 ControllerInterface: Update sort priorities. 2022-04-03 19:03:44 -05:00
Jordan Woyak
076a262b9e InputCommon: Add Windows.Gaming.Input to ControllerInterface. 2022-04-03 19:03:35 -05:00
Gamer64ytb
bed91750e1 Android: Implement expand display cutout option.
Some ROMs don't have fullscreen feature, for example Pixel Experience, so have a option for that is better. Also you don't need put the app on fullscreen anymore with that.
2022-04-03 14:26:37 +02:00
JosJuice
57733ddc70 Android: Implement installing system update from disc image 2022-04-03 11:15:28 +02:00
Shawn Hoffman
818f6c81ed msbuild: don't explicitly set _SECURE_SCL 2022-04-02 15:25:42 -07:00
Shawn Hoffman
db4d81b9a8 windows: simplify handling of gettext
fixes binplace on first build
2022-04-02 15:24:46 -07:00
Dentomologist
c8d953d0c6 Updater: Fix manual update check when autoupdate is disabled 2022-04-02 12:22:06 -07:00
Admiral H. Curtiss
113fdc959d
Merge pull request #10534 from AdmiralCurtiss/more-cheat-search-qol
DolphinQt: More Cheat Search QoL
2022-04-02 15:17:15 +02:00
Shawn Hoffman
e6ed77b5f6 msvc: enable conformant __cplusplus macro 2022-04-02 02:46:22 -07:00
Admiral H. Curtiss
25c173cefc
Merge pull request #8732 from dreamsyntax/debugger-function-differencing
Qt/Debugger CodeWidget: Record and find specific functions by differencing
2022-04-02 05:42:33 +02:00
Admiral H. Curtiss
1942629d9a
DolphinQt/CheatSearchWidget: Drop whitespace when parsing integers and floats from the user. 2022-03-31 05:40:51 +02:00
Admiral H. Curtiss
7f2fed0f68
DolphinQt/CheatsManager: Don't leak closed cheat search tabs. 2022-03-31 05:40:51 +02:00
Admiral H. Curtiss
48c4ebeee0
DolphinQt/CheatSearchWidget: Remember state of Hex checkboxes across sessions. 2022-03-31 05:40:51 +02:00
Admiral H. Curtiss
1ad7aac008
Qt: Set font size for default debug font. 2022-03-31 05:28:39 +02:00
Admiral H. Curtiss
4957b2edb9
Merge pull request #10530 from shuffle2/win-ffmpeg
windows: move ffmpeg bins to submodule
2022-03-31 05:24:00 +02:00
Admiral H. Curtiss
cc3f8204da
Merge pull request #10542 from TryTwo/PR_MemoryViewWidget_Spacing
Debugger MemoryViewWidget: fixed, tighter spacing
2022-03-30 22:53:05 +02:00
Shawn Hoffman
4fad2c26e4 framedump: enable compat with utvideo codec 2022-03-29 17:27:59 -07:00
Shawn Hoffman
decaea8f9b FrameDump: improve debug logging 2022-03-29 17:27:59 -07:00
Shawn Hoffman
09432ef098 windows: move ffmpeg bins to submodule
udpate ffmpeg to b1cbeabf5e4b3234e895a58bafa371bfb792baf0
enable ffmpeg on arm64
2022-03-29 17:27:46 -07:00
Pokechu22
af316f7bfe Software: Implement pixel engine alpha read mode 2022-03-29 15:34:43 -07:00
Pokechu22
8882eb040a PixelEngine: Convert to BitField and enum class 2022-03-29 15:34:43 -07:00
Pokechu22
45b8ebeb25 PixelEngine: Remove old comment
This comment was added in 76d24f2c0d (the link was updated in 5799824b22, but both are dead now).  An archived version is at https://web.archive.org/web/20090830050441/http://developer.nvidia.com/object/General_FAQ.html#t6 but it's about the number of available texture units, which doesn't seem relevant to PixelEngine.
2022-03-29 15:34:43 -07:00
TryTwo
8f85e384c3 Debugger MemoryViewWidget: fixed, tighter spacing 2022-03-29 14:16:25 -07:00
Minty-Meeo
fbc9bf2342 Combine InitMMIO and InitMMIOWii 2022-03-29 01:21:17 -05:00
Charles Lombardo
8a0c6816dd Android: Fix games list padding
Use clipToPadding="false" to prevent top white bar when scrolling
2022-03-28 09:58:01 -04:00
nyanpasu64
b5a7ae52b5 Fix locking the wrong mutex in GCAdapter_Android.cpp ResetRumble()
I am not confident there are no race conditions between s_write_mutex,
s_controller_write_payload_size, and s_controller_write_payload. But
this code should be safer than before.
2022-03-27 22:39:26 -07:00
nyanpasu64
7616027684 Remove unnecessary atomic usage in GCAdapter_Android.cpp
s_controller_write_payload_size needs to remain an atomic because Read()
loads and stores without holding a mutex, Output() stores while holding
s_write_mutex, and ResetRumble() stores while holding s_read_mutex! I'm
pretty sure this code is wrong, specifically ResetRumble().
2022-03-27 22:39:26 -07:00
nyanpasu64
871b01a5d9 Remove unnecessary atomic usage in GCAdapter.cpp
You can safely read or write non-atomic integers on multiple threads,
as long as every thread reading or writing it holds the same mutex
while doing so (here, s_mutex).

Removing the atomic accesses makes the code faster, but the actual
performance difference is probably negligible.
2022-03-27 22:27:57 -07:00
Mai M
c08a23b374
Merge pull request #10537 from Simonx22/android-sv2
Android: Increase target and compileSdk version to 32 (Android 12L/Sv2)
2022-03-27 15:14:48 -04:00
JosJuice
11c4385b36 Android: Mark MAIN_FALLBACK_REGION as not runtime editable
Trying to change it while a game is running does nothing.
DolphinQt already inactivates it while a game is running.
2022-03-27 18:45:01 +02:00
JosJuice
f12681ba93
Merge pull request #10532 from t895/material3-migration
Android: Inherit from Material 3 themes and round corners on box art
2022-03-27 18:32:22 +02:00
Admiral H. Curtiss
b379df360a
Merge pull request #10497 from martinD2014/master
Change the highlighted button on each window
2022-03-27 16:05:23 +02:00
Charles Lombardo
b8013ff3a0 Android: Inherit from Material3 themes and round corners on box art 2022-03-26 14:54:23 -04:00
dreamsyntax
88a1acdfc0 implement CodeDiffTool Feature
Add Diff button to CodeWidget
Add Code Diff Tool window for recording and differencing functions. Allows finding specific functions based on when they run.
2022-03-26 11:41:08 -07:00
Simonx22
73f94e76b9 Android: Increase target and compileSdk version to 32 (Android 12L/Sv2) 2022-03-26 10:55:26 -04:00
Charles Lombardo
fde39b455c Begin style migration to Material3
Use large card view rounded corner guidelines

Fix action bar theming

Needed to import android back button clip art to fix material 3 theming issue. The DolphinSettingsBase style used to inherit from the Theme.MaterialComponents.DayNight.DarkActionBar theme which would provide the light text and icons but this is no longer available with Material 3.

Fit box art more snugly in CardView

Change card height to match cover art

Add padding to top of games list recyclerview
2022-03-26 10:16:17 -04:00
Admiral H. Curtiss
379de5de15
Merge pull request #10375 from Pokechu22/imgui-assert
Externals: Use Common ASSERT for IM_ASSERT
2022-03-26 05:53:59 +01:00
Admiral H. Curtiss
57d8f2112c
Merge pull request #10514 from JosJuice/datel-no-gametdb
DiscIO: Don't return GameTDB ID for any Datel disc
2022-03-26 03:38:57 +01:00
Pokechu22
30a34d06c1 RenderBase: Add call to IMGUI_CHECKVERSION() 2022-03-25 10:24:07 -07:00
Admiral H. Curtiss
e58cf36ca1
Merge pull request #10079 from sepalani/neg-offset
MemoryWidget: Add negative offset search support
2022-03-25 07:09:08 +01:00
Sepalani
d5916fd14c MemoryWidget: Add negative offset search support 2022-03-24 23:06:25 +04:00
JosJuice
c8f4800fb2
Merge pull request #10531 from iwubcode/opengl_objlabel_fix
VideoBackends: fix opengl object label identifier
2022-03-24 18:02:32 +01:00
iwubcode
69e79045a3 VideoBackends: fix opengl object label which was given an invalid enumeration as the identifier parameter. Most implementations will warn in this case but there is an implementation that will crash (ANGLE) 2022-03-24 00:25:59 -05:00
Admiral H. Curtiss
1a5a52c00c
Merge pull request #10507 from JosJuice/convertcommand-non-gc-wii
DolphinTool: Allow converting non-GC/Wii files
2022-03-23 22:47:41 +01:00
Admiral H. Curtiss
c661a75961
DolphinQt: Set emulation speed setting only when the combobox is actually touched. 2022-03-22 19:19:47 +01:00
JosJuice
d0d27028a0 DolphinTool: Allow converting non-GC/Wii files
This was requested by a forum user, and I thought why not.
It's a simple change to make since DiscIO already supports it,
and I assume command-line users know roughly what they're doing.
2022-03-22 18:59:01 +01:00
Admiral H. Curtiss
b466b9ef85
Merge pull request #10464 from Zarklord/override-wii-boot-ios
Add Override for Boot IOS for Wii Titles
2022-03-22 03:01:44 +01:00
JMC47
bb7f0e18dd
Merge pull request #10524 from JosJuice/angle-in
VideoCommon: Remove redundant in qualifiers
2022-03-21 19:16:13 -04:00
JosJuice
f1f02180fa VideoCommon: Remove redundant in qualifiers
ANGLE raises a compilation error otherwise.
2022-03-21 22:16:25 +01:00
Zachary Lockwood
9130ad8fbe Add support for overriding the IOS that boots with a wii game 2022-03-20 09:47:06 -04:00
Admiral H. Curtiss
7b0d5f2df3
Merge pull request #10491 from Minty-Meeo/dolphin-tool-more-stuff
More dolphin-tool features and options
2022-03-20 05:43:53 +01:00
Minty-Meeo
deba9ce256 Added a way to check Block Size, Compression Method, and Compression Level flags to dolphin-tool
New dolphin-tool command: "header"
-b / --block_size
-c / --compression
-l / --compression_level

Informative RVZ/WIA header2 value "compression_level" is now a s32 instead of a u32, because negative compression is a thing.

Speaking of, it is now possible to use negative compression levels in dolphin-tool's convert command (not the GUI, though).
2022-03-19 17:13:28 -05:00
Admiral H. Curtiss
a3f83d92d1
Merge pull request #10515 from JosJuice/android-user-data-clarification
Android: Clarify what we mean by "user data"
2022-03-19 21:05:17 +01:00
JosJuice
9f606734c3
Merge pull request #10513 from JosJuice/android-update-dependencies
Android: Update dependencies
2022-03-19 20:29:41 +01:00
Admiral H. Curtiss
f5657d0a83
Merge pull request #10174 from dreamsyntax/panic-handles-restore-messages
DolphinQt: Add "Reset Ignore Panic Handler" MenuBar Option
2022-03-19 16:52:20 +01:00
Admiral H. Curtiss
676713e036
Re-enable Auto-Update when building with VS project files. 2022-03-19 15:30:28 +01:00
JMC47
edd63d8c3f
Merge pull request #10519 from jordan-woyak/fix-hotkey-detections
MappingCommon: Fix detection of hotkey and conjunction expressions.
2022-03-19 00:41:00 -04:00
Pierre Bourdon
f73b2d70a6
Merge pull request #10516 from OatmealDome/steam
CMakeLists: Add flag to enable / disable automatic update support
2022-03-18 08:33:13 +01:00
OatmealDome
e23df9369d CMakeLists: Add option to disable automatic update support 2022-03-18 03:04:51 -04:00
TryTwo
53cf78d413 Gekko constistancy changes. Add context item to codeview to show or copy a load/store target memory address from instructions at or near PC when paused. 2022-03-17 12:53:38 -07:00
Jordan Woyak
b589d720bf MappingCommon: Fix detection of hotkey and conjunction expressions. 2022-03-16 22:25:04 -05:00
JosJuice
c0f6aa7ab1 Android: Clarify what we mean by "user data" 2022-03-15 19:29:08 +01:00
JosJuice
479489c999 DiscIO: Don't return GameTDB ID for any Datel disc
DTLX01 can be either a Freeloader or Action Replay, so it's
inappropriate to always use the same title and cover for it.
2022-03-15 18:56:49 +01:00
JosJuice
f9f561ced1 Android: Update dependencies 2022-03-15 18:19:28 +01:00
JosJuice
f5b6cccd32 Android: Update Android Gradle Plugin 2022-03-15 18:19:07 +01:00
Léo Lam
bf261f6144
Merge pull request #10493 from jordan-woyak/netplay-show-traversal-external-port
NetPlayDialog: Display external IP/Port as seen by the traversal server.
2022-03-15 16:03:28 +01:00
Léo Lam
e10967e918
Merge pull request #10502 from Pokechu22/defer-gcadapter
GCAdapter: Defer initialization until MainWindow::InitControllers
2022-03-15 16:00:28 +01:00
Léo Lam
da6f86f381
Merge pull request #10496 from JosJuice/mappingcommon-split
Move parts of MappingCommon out of DolphinQt
2022-03-15 15:54:04 +01:00
Léo Lam
a99c993f1d
Merge pull request #10509 from JosJuice/freeloader-too-small
VolumeVerifier: Skip "lacks some data" check for Datel discs
2022-03-15 15:47:55 +01:00
Léo Lam
a39d11c47a
Merge pull request #10501 from jordan-woyak/dolphin-tool-no-need-for-a-unique-ptr
DolphinTool: Kill an unnecessary unique_ptr.
2022-03-15 15:46:35 +01:00
Léo Lam
c883ec1c53
Merge pull request #10512 from stblr/device-change
USBv5: Fix racy device change behavior
2022-03-15 15:45:40 +01:00
Jordan Woyak
c058c8e1a6 NetPlayDialog: Display external IP/Port as seen by the traversal server when it's used. 2022-03-15 01:56:16 -05:00
Techjar
302dedbd24 NetPlay: Introduce constant for peer timeout 2022-03-15 01:26:55 -04:00
Pablo Stebler
7e7b0971ab
USBv5: Fix racy device change behavior
This prevents the device changes happening between 2 GETDEVICECHANGE
calls from being missed by the application.
2022-03-14 22:32:30 +01:00
Techjar
b1122ec94f NetPlay: Add timeout to traversal code path
Amendment to 600c816 as I missed the traversal case.
2022-03-14 00:19:54 -04:00
JosJuice
41adf3cd53 DiscIO: Treat game ID DTLX01 as a Datel disc
Needed for the disc mentioned in the previous commit.
2022-03-12 22:27:58 +01:00
JosJuice
6d1a344aab VolumeVerifier: Skip "lacks some data" check for Datel discs
Turns out there's some Freeloader disc for the GC that triggers this
despite being a good dump. This warning is mostly intended to catch
Wii games that have been truncated at the 4.00 GiB or 4.38 GiB mark
anyway, and if someone does have a Datel dump that has been truncated,
they'll still get the "unusual size" warning.
2022-03-12 22:24:38 +01:00
JosJuice
2e1f89025f Android: Only use getActionIndex for ACTION_POINTER_DOWN/ACTION_POINTER_UP
According to the documentation, getActionIndex should only be
used with ACTION_POINTER_DOWN and ACTION_POINTER_UP. We've had a
few crashes reported in the Play Console regarding invalid pointer
indices for getY, and I'm hoping this will help with that.
2022-03-12 21:20:00 +01:00
JosJuice
905e86d754
Merge pull request #10451 from JosJuice/skip-redundant-flushes
Jit: Skip redundant flushes
2022-03-12 12:32:02 +01:00
JosJuice
7a3c719739
Merge pull request #10453 from JosJuice/output-in-use
PPCAnalyst: Count outputs as being in use
2022-03-12 12:31:42 +01:00
Pokechu22
37806472e1 GCAdapter: Defer initialization until MainWindow::InitControllers
If libusb fails to initialize, an assertion fails, but if that happens before the main window is created, then Dolphin just dies.  Now, the panic alert is properly shown and the user can ignore it.
2022-03-10 10:35:45 -08:00
Pokechu22
0f3832dec6 Common/FileUtil: Change logging to debug level
These messages hid other, more important, ones often.  I have left AttemptMaxTimesWithExponentialDelay and GetSysDirectory/SetSysDirectory as info, since those are called infrequently and can be useful to the end-user.
2022-03-08 14:07:37 -08:00
Pokechu22
c657b80996 Software/EfbInterface: Remove logspam for RGB565_Z16 being unsupported
This message would be logged, usually multiple times, for EVERY. SINGLE. PIXEL. That's pretty much useless and just makes the log unreadable. Plus, the current support (which acts as RGB8) is close enough that for end-user purposes, it's fine.  I don't think the hardware backends support RGB565_Z16 and its antialiasing functionality correctly either, but they don't have similar logspam.
2022-03-08 13:59:55 -08:00
JosJuice
da12ff02fc Android: Actually use a thread for DirectoryInitialization
`((Runnable) () -> init(context)).run()` is just a more complicated way
of writing `init(context)`, and doesn't on its own launch a thread.
2022-03-08 22:29:07 +01:00
Jordan Woyak
f711b8dbae DolphinTool: Kill an unnecessary unique_ptr. 2022-03-08 02:00:26 -06:00
Martin
a4d031cfda Add NonDefaultQPushButton to set autoDefault of buttons to false 2022-03-08 08:51:29 +01:00
Shawn Hoffman
a546c451b7 windows: wrap all main funcs with utf8 conversions
fixes 12858
2022-03-07 23:24:21 -08:00
JosJuice
1bc057614e Move parts of MappingCommon out of DolphinQt
Some of the functions in MappingCommon would be useful to use on
mobile in the future.
2022-03-06 14:30:49 +01:00
JosJuice
5446daaef9 Common: Make DynamicLibrary non-copyable
The default implementations of DynamicLibrary's copy and move
constructors and assignment operators are unsafe.
2022-03-05 23:40:41 +01:00
Léo Lam
d32c72038a
Merge pull request #10467 from Dentomologist/fix_scalar_initializer_braces_warning
Debugger: Fix warning on Debian builder
2022-03-02 12:56:09 +01:00
Léo Lam
c7361bc1b3
Merge pull request #10474 from Pokechu22/log-ogl-video-info
OGLRender: Log video backend info, in addition to showing it via OSD
2022-03-02 12:29:51 +01:00
Léo Lam
bcc14d32b8
Merge pull request #10482 from Dentomologist/remove_redundant_statement
FileUtil: Remove redundant statement
2022-03-02 12:27:21 +01:00
Léo Lam
ebfee3b2de
Merge pull request #10484 from AdmiralCurtiss/general-pane-signalblocker
Qt/GeneralPane: Don't trigger config change events when populating GUI.
2022-03-02 11:59:02 +01:00
Léo Lam
666db19436
Merge pull request #10322 from Starsam80/nand
NANDImporter: Various improvements and cleanup
2022-03-02 11:56:11 +01:00
Starsam80
41a3368889
NANDImporter: Only read the AES key once
There is no need to constantly reset the key for every file entry.
2022-03-01 19:24:59 -07:00
Starsam80
80012ae253
NANDImporter: Make superblocks less magical
Create a struct describing the superblock layout and use it directly
without needing to specify offsets and such.
2022-03-01 19:24:59 -07:00
Starsam80
73151a5753
NANDImporter: Don't pass paths if we don't need to 2022-03-01 19:24:59 -07:00
Starsam80
6758c77c39
NANDImporter: Reduce recursion in ProcessEntry
It also simplifies the code flow, as it no longer goes backwards
through the filesystem chain.
2022-03-01 19:24:59 -07:00
Starsam80
2ccd974471
NANDImporter: Improve NANDFSTEntry
`uid` is a u32, not a u16. Also, everything is big endian, so we
can simplify the code a little bit.
2022-03-01 19:24:59 -07:00
Pierre Bourdon
8ecfa537a2
Merge pull request #10473 from delroth/autoupdate-fail
Fix manual update check which was hardcoded to "dev" track
2022-03-02 00:10:48 +01:00
Starsam80
643057fea2
NANDImporter: Make a class variable for the NAND root 2022-03-01 15:07:59 -07:00
JMC47
ea116fbbdf
Merge pull request #9834 from AdmiralCurtiss/fastmem-reserve-region-linux
MemArena: Keep fastmem memory region mapped on Linux to ensure nothing allocates within the fastmem space.
2022-02-28 12:46:34 -05:00
JosJuice
bbb64ff993 Shadergen: Use real_ocol0 workaround for shader logic ops
Previously we were using this workaround when using framebuffer fetch
to emulate dual source blending, but it seems like we also need to use
it when using framebuffer fetch to emulate logic ops, otherwise some
Adreno devices get a crash when compiling OpenGL ES ubershaders.

Using the workaround in specialized shaders doesn't seem to be
necessary, but I've made the same change there for consistency.

This gets us closer to fixing https://bugs.dolphin-emu.org/issues/12791
but doesn't actually fix it.
2022-02-28 18:32:19 +01:00
JMC47
f65dc6d525
Merge pull request #10441 from OatmealDome/improved-logic-op-workaround
BlendingState: Set source and destination alpha factors in logic op workaround
2022-02-28 12:17:25 -05:00
JMC47
20e4e34e91
Merge pull request #10487 from JosJuice/android-savestate-spacing
Android: Set letterSpacing for savestate options
2022-02-28 12:13:10 -05:00
JosJuice
608799f1e4 PixelShaderGen: Check uid_data for use_shader_logic_op
On devices which have hardware support for dual source blending
but not logic ops, this lets us skip performing the framebuffer
fetch in situations where the game isn't actually using logic ops.
2022-02-28 00:04:31 +01:00
JosJuice
8588272b3b Android: Set letterSpacing for savestate options
fbe7cf6 set this for most buttons in the in-game menu but missed
the savestate-related buttons and Unpause Emulation.
2022-02-27 22:45:21 +01:00
Tony Gong
c95c43bfb6 Make pos/neg analog axes symmetrical
Currently, the axes for the main and C sticks range from 0-255, with
128 being the mid-point; but this isn't symmetrical: the negative axis
has 128 values not including 0, while the positive axis has 127 values
not including 0.

Normalizing so that the range is 1-255 makes the positive and negative
axes symmetrical. The inability to yield 0 shouldn't be an issue as a
real GC controller cannot yield it anyway.
2022-02-27 09:58:21 -08:00
Admiral H. Curtiss
1fd9a1117e
Qt/GeneralPane: Don't trigger config change events when populating GUI. 2022-02-27 17:56:35 +01:00
Admiral H. Curtiss
aa0ac83997
Merge pull request #10468 from JosJuice/sd-card-callback
Use config changed callback to detect SD insertion/ejection
2022-02-26 17:31:31 +01:00
Mai M
c474db9301
Merge pull request #10407 from JosJuice/android-reset-callback
Android: Call OnConfigChanged when resetting a setting
2022-02-26 11:24:18 -05:00
Dentomologist
01bd5e15ba FileUtil: Remove redundant statement 2022-02-25 21:16:07 -08:00
Pokechu22
7d76eea4ea OGLRender: Log video backend info, in addition to showing it via OSD
This is mainly intended for debugging fifo.ci.
2022-02-23 18:30:02 -08:00
JMC47
75ad057b08
Merge pull request #10405 from JosJuice/android-no-boot-timeout
Android: Get rid of the boot timeout
2022-02-23 15:40:54 -05:00
Pierre Bourdon
281dfd3e6a
Fix manual update check which was hardcoded to "dev" track 2022-02-23 18:39:28 +01:00
Pokechu22
5b3b6a7f1d
Merge pull request #10471 from Pokechu22/flush-efb-pokes-before-peeking
FramebufferManager: Flush pending EFB pokes in PopulateEFBCache
2022-02-22 17:09:34 -08:00
JMC47
5da55c9e18
Merge pull request #10406 from JosJuice/android-mipmap-swap
Android: Fix swapped texture dumping description strings
2022-02-22 16:53:26 -05:00
Mai M
32d28e4d57
Merge pull request #10469 from JosJuice/android-remove-legacybooleansetting
Android: Get rid of LegacyBooleanSetting
2022-02-21 20:39:59 -05:00
Pokechu22
23cbd570a1 FramebufferManager: Flush pending EFB pokes in PopulateEFBCache
I.e. flush pokes before running an EFB peek, if the cache tile isn't present.  If the cache tile is present, then EFB pokes should have been written to the cache tile and thus don't need to be flushed.
2022-02-21 13:23:22 -08:00
JosJuice
128fa8aec3
Merge pull request #10388 from Dentomologist/android-fix-unused-variable-warning
[Android] Fix unused variable warning
2022-02-20 18:56:50 +01:00
JosJuice
2273742f9e Android: Get rid of LegacyBooleanSetting 2022-02-20 14:00:48 +01:00
JosJuice
90c576e075 Use config changed callback to detect SD insertion/ejection
This saves the GUI from having to manually call SDIO_EventNotify.
With that out of the way, we can let users change the
"Insert SD Card" setting on Android while a game is running.
2022-02-20 10:55:55 +01:00
Dentomologist
d20f3c9e64 Debugger: Fix warning on Debian builder
Fix "braces around scalar initializer [-Wbraced-scalar-init]" warning
2022-02-19 08:50:15 -08:00
Mai M
db0ca3fc96
Merge pull request #10463 from JosJuice/android-remove-legacyintsetting
Android: Get rid of LegacyIntSetting
2022-02-18 17:26:19 -05:00
JosJuice
1b76171a27 Android: Get rid of LegacyIntSetting
The only settings that were using LegacyIntSetting are now in the new
config system, so there's no reason to have LegacyIntSetting anymore.
2022-02-18 22:17:39 +01:00
Léo Lam
bb7475ee2a
Merge pull request #10429 from Zopolis4/mapurge
Remove the Maps folder from the Sys directory
2022-02-18 21:40:09 +01:00
Léo Lam
0c78167404
Merge pull request #10443 from JosJuice/port-wiimote-source
Port Wiimote source settings to the new config system
2022-02-18 21:38:02 +01:00
JosJuice
aff45c91fc Port Wiimote source settings to the new config system
This lets us finally get rid of BootManager's ConfigCache!
2022-02-18 21:27:10 +01:00
JosJuice
9ebfdff6b4
Merge pull request #10423 from Pokechu22/improperly-exclusive-radio-buttons
Fix improperly exclusive radio buttons
2022-02-18 21:20:14 +01:00
JosJuice
35b436bd6b
Merge pull request #10377 from Pokechu22/warning-fixes-jan-2022
Fix several compile warnings on GCC
2022-02-18 21:05:42 +01:00
Léo Lam
92455f7cef
Merge pull request #10446 from AdmiralCurtiss/unbreak-shift
HotkeyManager: Change defaults for GBA hotkeys so they don't conflict with common keyboard mappings.
2022-02-18 19:09:36 +01:00
Léo Lam
eb98bcd2ae
Merge pull request #10455 from Pokechu22/directly-map-fifo-breakpoint
CommandProcessor: Add FIFO_BP_LO/HI to directly_mapped_vars
2022-02-18 18:54:06 +01:00
Léo Lam
fa059b20ba
Merge pull request #10460 from Dentomologist/convert_option_type_to_enum_class
VideoCommon: Convert OptionType to enum class
2022-02-18 18:40:59 +01:00
Léo Lam
067fbe8f86
Merge pull request #10376 from shuffle2/uidctor
GXPipelineUid: remove explicit shallow copy where it's the default
2022-02-18 18:39:59 +01:00
Mai M
8b0c6af75a
Merge pull request #10459 from Dentomologist/convert_movie_playmode_to_enum_class
Movie: Convert PlayMode to enum class and move to cpp file
2022-02-18 10:00:33 -05:00
Mai M
1e126d23e6
Merge pull request #10457 from Pokechu22/movie-no-pause-menubar-desync
Fix menu bar becoming desynced when Pause at End of Movie is disabled
2022-02-18 09:59:32 -05:00
Techjar
63181f0446 ShaderGenCommon: Add missing <functional> include 2022-02-18 06:34:01 -05:00
Dentomologist
edbe202aa3 VideoCommon: Convert OptionType to enum class 2022-02-17 10:03:08 -08:00
Dentomologist
f56251168e Movie: Convert PlayMode to enum class and move to cpp file 2022-02-16 16:04:36 -08:00
Merry
be81fe86e1 JitRegister: Use fmt
Prefer fmt to printf-style formatting.
2022-02-16 20:09:38 +00:00