Bram Speeckaert
4914ff25d6
JitArm64: boolX constant optimizations
...
A (partial) port of #9481 to ARM64. This commit adds special cases for
immediate values equal to 0 or 0xFFFFFFFF, allowing for more efficient
or no code to be generated.
2022-09-25 14:58:26 +02:00
Bram Speeckaert
9d73583ea3
JitArm64: Skip redundant imm to register writes
...
When a guest register is an immediate, it may be necessary to move this
value into a register. This is handled by gpr.R(), which lacks context
on how the register will be used. This leads to cases where the
immediate is written to a register, only for it to be overwritten. Take
for example this code generated by srwx:
0x5280031b mov w27, #0x18
0x53187edb lsr w27, w22, #24
gpr.BindToRegister() does have this context through the do_load
parameter, but didn't handle immediates. By adding this logic, we can
intelligently skip the write when do_load is false.
2022-09-25 10:04:51 +02:00
Admiral H. Curtiss
f106bc150a
Merge pull request #11083 from sepalani/bba-check
...
BBA/BuiltIn: Fix a crash during network stack exhaustion
2022-09-24 20:30:46 +02:00
Admiral H. Curtiss
63975556a4
Merge pull request #10175 from dreamsyntax/pause-on-panic
...
Core/DolphinQt: Add Pause on Panic Option for DSI Exceptions and Unknown Instruction
2022-09-24 20:28:09 +02:00
Admiral H. Curtiss
571e300e9e
Merge pull request #11047 from AdmiralCurtiss/netplay-save-options-rework
...
Netplay: Simplify save data options.
2022-09-24 20:26:05 +02:00
JosJuice
04072f0ce6
Integrate "Ignore for this session" better with config system
...
Because of the previous commit, this is needed to stop DolphinQt from
forgetting that the user pressed ignore whenever any part of the config
is changed.
This commit also changes the behavior a bit on DolphinQt: "Ignore for
this session" now applies to the current emulation session instead of
the current Dolphin launch. This matches how it already worked on
Android, and is in my opinion better because it means the user won't
lose out on important panic alerts in a game becase they played another
game first that had repeated panic alerts that they wanted to ignore.
For Android, this commit isn't necessary, but it makes the code cleaner.
2022-09-24 13:03:45 +02:00
JosJuice
16c71b9a35
Move a SetEnableAlert call to UICommon
...
This fixes a problem where changing the Use Panic Handlers setting on
Android wouldn't take effect until the app was restarted.
2022-09-24 12:35:10 +02:00
Admiral H. Curtiss
02a967f786
InputCommon: Add equality operators to RawValue.
2022-09-24 01:44:21 +02:00
Admiral H. Curtiss
24a1fe32f1
InputCommon: Make RawValue constructors constexpr.
2022-09-24 01:38:09 +02:00
Admiral H. Curtiss
70485472b1
Common/Matrix: Add equality operators to TVec2/3/4.
2022-09-24 01:38:01 +02:00
Admiral H. Curtiss
3fa9fdf57a
Merge pull request #11075 from AdmiralCurtiss/controller-gui-refresh
...
Qt/Controllers: Refresh GUI on settings change.
2022-09-24 00:14:54 +02:00
Sepalani
34858e934f
BBA/BuiltIn: Ignore UPnP request to itself
2022-09-23 20:54:26 +04:00
Sepalani
df53ebb59f
BBA/BuiltIn: Fix a crash during network stack exhaustion
2022-09-23 18:59:27 +04:00
Admiral H. Curtiss
9860b68b9c
Common: Add [[nodiscard]] to GetStringT().
2022-09-23 14:58:18 +02:00
Admiral H. Curtiss
4cb8914ad3
VolumeVerifier: Add missing assignment to summary_text.
2022-09-23 14:57:55 +02:00
Admiral H. Curtiss
f426e3cd79
Merge pull request #11039 from TryTwo/PR_MemoryWidget_MiniMenu
...
Debugger MemoryWidget: Create mini-menu at top of sidebar.
2022-09-23 04:22:10 +02:00
Admiral H. Curtiss
b7855a3a56
Merge pull request #11073 from Hibyehello/Fix-Metal-init
...
Add Metal as backend option with Vulkan Disabled
2022-09-23 04:21:23 +02:00
Admiral H. Curtiss
75c50223f2
Merge pull request #11078 from Minty-Meeo/mapfloat-tweak
...
Use std::llround in MapFloat
2022-09-23 04:18:03 +02:00
Admiral H. Curtiss
79c5d1b003
Merge pull request #10780 from OatmealDome/steam-windows
...
msbuild: Add property for creating Steam builds on Windows
2022-09-23 04:14:23 +02:00
JMC47
b0ac5ac6af
Merge pull request #10949 from Zopolis4/reprecated
...
Resolve C++20 deprecation warnings
2022-09-22 21:56:24 -04:00
Minty-Meeo
73dfcc15a5
Use std::llround in MapFloat
...
I don't see why not.
2022-09-22 11:30:32 -05:00
Admiral H. Curtiss
270ffa7351
Qt/WiimoteControllersWidget: Refresh GUI on settings change and refactor a bit.
2022-09-20 23:47:16 +02:00
Admiral H. Curtiss
a5dbf6b60d
Qt/GamecubeControllersWidget: Refresh GUI on settings change and refactor a bit.
2022-09-20 23:46:45 +02:00
Admiral H. Curtiss
019dc86b6f
Qt/CommonControllersWidget: Refresh GUI on settings change.
2022-09-20 23:46:36 +02:00
JMC47
22197c09a3
Merge pull request #10781 from tellowkrinkle/UberVertexLoader
...
VideoCommon: Add dynamic vertex loader for ubershaders to reduce pipeline count
2022-09-20 17:14:07 -04:00
JosJuice
6203c101f8
JitArm64: Enforce correct alignment of SPR_TL
2022-09-20 18:55:28 +02:00
TellowKrinkle
ee692abbe1
VideoBackends:Metal: Use BitField for stuffing bits in pipeline ids
...
Also removes cullmode all handling, it's handled in CPU and DX11 backend doesn't specially handle it either
2022-09-20 01:45:18 -05:00
Admiral H. Curtiss
d04e1ca96a
Merge pull request #11058 from shuffle2/updater-inflate
...
Updater: Move inflate intermediate buffer to heap and enlarge
2022-09-20 02:45:50 +02:00
JMC47
3b10bf04ac
Merge pull request #10808 from Pokechu22/vertex-loader-direct-normals-with-index3
...
VideoCommon: Fix direct normal+tangent+binormal with index3 set
2022-09-19 19:47:37 -04:00
Admiral H. Curtiss
0d095b4d9b
Netplay: Simplify save data options.
2022-09-20 01:37:32 +02:00
Admiral H. Curtiss
39314ac162
Add more logging around Wii save copying for Netplay.
2022-09-20 01:37:31 +02:00
TellowKrinkle
1eb3aaa548
VideoCommon: Use std::array in PortableVertexDeclaration
2022-09-19 16:28:24 -05:00
TellowKrinkle
28b31b8327
VideoBackends:Vulkan: Make dynamic vertex loader optional
...
Makes it easier to disable in the future if support for VK_EXT_vertex_input_dynamic_state is added
2022-09-19 16:28:24 -05:00
TellowKrinkle
dae56a24b8
VideoBackends:D3D12: Dynamic vertex loader support
2022-09-19 16:28:24 -05:00
TellowKrinkle
936b4d5d0d
VideoBackends:Vulkan: Dynamic vertex loader support
2022-09-19 16:28:24 -05:00
TellowKrinkle
7edc8b4e79
VideoBackends:Metal: Don't set primitive on ubershaders
2022-09-19 16:28:24 -05:00
TellowKrinkle
99533d2840
VideoCommon: Add separate pipeline usage for UberShaders
2022-09-19 16:28:24 -05:00
TellowKrinkle
d289e9c51c
VideoCommon: Compile a few extra pipelines
2022-09-19 16:28:24 -05:00
TellowKrinkle
d3dae1cd7e
VideoBackends:Metal: Dynamic vertex loader support
2022-09-19 16:28:24 -05:00
TellowKrinkle
4c629c2bee
VideoCommon: Add dynamic vertex loader to ubershaders
2022-09-19 16:28:23 -05:00
Admiral H. Curtiss
c21f2512c8
HW: Move g_SRAM to System.
2022-09-19 21:47:15 +02:00
Admiral H. Curtiss
0a517ebdbd
Core: Pass Netplay SRAM through boot process.
...
This removes the Netplay classes touching emulated hardware structures before emulation even starts.
2022-09-19 21:47:12 +02:00
Admiral H. Curtiss
9963637463
HW: Remove global state from functions in Sram.h.
2022-09-19 21:42:43 +02:00
Josh
1fd60aeb5d
Merge branch 'dolphin-emu:master' into Fix-Metal-init
2022-09-19 12:27:37 -05:00
Josh
ef13a54b0a
VideoBackends - Enable Metal without Vulkan
2022-09-19 11:28:34 -05:00
JosJuice
720b3f5519
Merge pull request #11071 from AdmiralCurtiss/netplay-settings-style
...
Netplay: Rename variable names in NetSettings to match style guide.
2022-09-19 17:55:36 +02:00
Pokechu22
d80201a57f
VertexLoaderARM64: Fix direct normal+tangent+binormal with index3 set
...
Fixes https://bugs.dolphin-emu.org/issues/12952
2022-09-18 23:33:24 -07:00
Pokechu22
f148de161f
VertexLoaderARM64: Specify the register to use as a parameter to ReadVertex
...
This also means that both a register and a vertex are always specified, though right now if the register is scratch1_reg the offset is always 0.
2022-09-18 23:33:24 -07:00
Pokechu22
ad644d5e92
VertexLoaderARM64: Merge GetAddressImm into GetVertexAddr
...
This way it more closely matches VertexLoaderX64, and is in general easier to understand.
2022-09-18 23:33:24 -07:00
Pokechu22
9a290c3d50
VertexLoaderARM64: Always use unscaled load/store instructions
...
The source and destination offsets will always be less than 255, so we can get rid of a lot of the complexity by doing this.
2022-09-18 23:33:24 -07:00
Pokechu22
a34d5e5960
Arm64Emitter: Add additional alignment assertions
...
Before, unaligned values would be silently ignored in most cases.
2022-09-18 23:33:24 -07:00
Pokechu22
afe5adb74d
VertexLoaderARM64: Use EnumMap for normal scales
2022-09-18 23:33:24 -07:00
Pokechu22
200676f4e3
VertexLoaderX64: Fix direct normal+tangent+binormal with index3 set
...
Fixes https://bugs.dolphin-emu.org/issues/12952
2022-09-18 23:33:23 -07:00
Pokechu22
5cc2f7729e
VertexLoaderX64: Use EnumMap for normal scales
2022-09-18 23:33:23 -07:00
Pokechu22
53ee1b50fe
VertexLoaderTest: Add NormalAll
...
This currently fails for direct with NormalIndex3 enabled (see https://bugs.dolphin-emu.org/issues/12952 ). The goal of this test is to be able to confidently say that that bug has been fixed.
2022-09-18 23:33:23 -07:00
Pokechu22
729498ab41
VertexLoaderTest: Add DirectAllComponents
...
We have one that does a similar thing, but only to measure speed and uses indices. This one verifies accuracy (and uses the largest possible input size by using direct components).
2022-09-18 23:33:23 -07:00
JMC47
6f4f5b0b7b
Merge pull request #11067 from K0bin/cache-vertex-size
...
OpcodeDecoding: Cache vertex sizes
2022-09-18 22:38:06 -04:00
Admiral H. Curtiss
bec4850fc3
Netplay: Rename variable names in NetSettings to match style guide.
2022-09-19 01:25:46 +02:00
Robin Kertels
2db74e7f21
OpcodeDecoding: Get vertex size from the loader
2022-09-19 01:14:53 +02:00
Robin Kertels
a6c6ec012c
VertexLoaderManager: Clean up and slightly speed up with templates
2022-09-19 01:14:49 +02:00
JosJuice
eec43ce3f3
Merge pull request #11068 from JosJuice/revert-vcredist
...
Revert "windows: distribute vcredist loose files"
2022-09-18 23:40:33 +02:00
Admiral H. Curtiss
07f86446a6
Netplay: Remove unused m_HostInputAuthority in NetSettings.
2022-09-18 23:00:08 +02:00
Admiral H. Curtiss
69ad2cc4d0
Merge pull request #11059 from AdmiralCurtiss/netplay-graceful-shutdown
...
NetPlayClient: Treat power button event as a netplay stop.
2022-09-18 00:00:44 +02:00
JosJuice
fec6f1bd5a
Revert "windows: distribute vcredist loose files"
...
This reverts commit 0837af4344
.
2022-09-16 10:33:39 +02:00
Robin Kertels
a31e36aeb7
VertexLoaderManager: Fix backwards preprocess check
...
Spotted by Pokechu22.
2022-09-15 23:56:04 +02:00
JMC47
32fba6dbd8
Merge pull request #11066 from K0bin/vertex-size-opt
...
Optimize GetVertexSize
2022-09-15 14:25:32 -04:00
Robin Kertels
fdcd2b7d00
VertexLoader: Inline GetSize
2022-09-15 12:50:15 +02:00
Robin Kertels
8aa214453a
VertexLoader: Optimize GetVertexSize
...
GetComponentSizes was unused, so we simplify this and get rid
of the branches.
2022-09-15 02:47:23 +02:00
Pierre Bourdon
1efb5b8800
Merge pull request #11063 from shuffle2/vcredist
...
windows: distribute vcredist loose files
2022-09-14 23:01:00 +02:00
JosJuice
09c07d4ff2
Merge pull request #11060 from t895/dividers
...
Android: Use material dividers
2022-09-14 22:43:18 +02:00
Shawn Hoffman
0837af4344
windows: distribute vcredist loose files
2022-09-14 13:15:45 -07:00
Charles Lombardo
33048d0d4c
Android: Use material dividers
2022-09-14 14:23:59 -04:00
Charles Lombardo
96d431b519
Android: Remove TabLayout workaround
2022-09-14 12:03:21 -04:00
Charles Lombardo
eb6a548735
Android: Change top app bar color on scroll
2022-09-13 21:31:30 -04:00
JosJuice
3420823002
Merge pull request #11043 from t895/nav-bar
...
Android: Match navigation bar color to background
2022-09-13 22:34:52 +02:00
JosJuice
351ebe668f
Merge pull request #11056 from t895/new-bars
...
Android: Add more top app bars
2022-09-13 21:14:30 +02:00
JosJuice
7f450f1d7e
Merge pull request #10626 from t895/glide
...
Android: Replace Picasso with Glide
2022-09-13 08:24:18 +02:00
Admiral H. Curtiss
bf331ffa45
NetPlayClient: Treat power button event as a netplay stop.
2022-09-13 01:26:45 +02:00
Admiral H. Curtiss
35f6d12acc
NetPlayClient: Consolidate stopping code to function.
2022-09-13 01:26:45 +02:00
Admiral H. Curtiss
c4b3f2302a
NetPlayClient: Consolidate Wiimote buffer waiting code to function.
2022-09-13 01:26:45 +02:00
Shawn Hoffman
7432b6ce91
Updater: Move inflate intermediate buffer to heap and enlarge
2022-09-12 03:35:03 -07:00
JosJuice
14f427d4cd
Merge pull request #11054 from t895/swipe-refresh
...
Android: Change swipe refresh colors to match other component colors
2022-09-12 09:05:14 +02:00
Charles Lombardo
8c477852f3
Android: Add more top app bars
2022-09-11 23:49:26 -04:00
Charles Lombardo
0e74acdd85
Android: Remove other color edge effect definitions
2022-09-11 15:10:27 -04:00
Charles Lombardo
63ff3c3830
Android: Change swipe refresh colors to match other component colors
2022-09-11 13:29:13 -04:00
Tillmann Karras
f5670f870e
Add emulated Shinkansen controller
2022-09-11 17:12:19 +01:00
JosJuice
702e7bad58
Merge pull request #11044 from t895/dialog-animations
...
Android: Add custom window animation to alert dialogs
2022-09-11 17:54:02 +02:00
JosJuice
713b535eb9
Merge pull request #11045 from t895/color-edge-effect
...
Android: Change color control highlight to system default
2022-09-11 13:15:13 +02:00
Mai
dbcf7fd2c9
Merge pull request #11049 from Tilka/tatacon
...
TaTaCon: fix possible hotswap problem
2022-09-11 05:12:12 -04:00
Mai
427dd75dfd
Merge pull request #11048 from AdmiralCurtiss/netplay-settings-boot-data
...
Netplay: Pass netplay settings via BootSessionData.
2022-09-11 05:11:39 -04:00
Admiral H. Curtiss
1732071a10
Netplay: Pass netplay settings via BootSessionData.
2022-09-11 04:18:26 +02:00
Charles Lombardo
e631dfc918
Android: Fix save state menu text color
2022-09-10 21:32:08 -04:00
Tillmann Karras
b418441f4a
TaTaCon: fix possible hotswap problem
2022-09-11 00:16:00 +01:00
Charles Lombardo
e77543abb2
Android: Change color control highlight to system default
2022-09-10 18:00:03 -04:00
Mai
4edb3a8074
Merge pull request #11041 from AdmiralCurtiss/global-state-audio
...
HW: Move AudioInterface variables to Core::System.
2022-09-10 17:10:17 -04:00
Charles Lombardo
bb398c8648
Android: Match navigation bar color to background
2022-09-10 17:08:31 -04:00
Mai
804af55b3a
Merge pull request #11042 from AdmiralCurtiss/global-state-file-monitor
...
HW: Convert FileMonitor::Log into a class.
2022-09-10 17:08:25 -04:00
Charles Lombardo
9fcc3e2e92
Android: Add custom window animation to alert dialogs
2022-09-10 17:01:24 -04:00
JosJuice
84507ec420
Merge pull request #10725 from t895/theme-merge
...
Android: App redesign with multi-theme system
2022-09-10 20:08:37 +02:00
Admiral H. Curtiss
b51d37fe49
HW: Convert FileMonitor::Log into a class.
2022-09-09 22:35:51 +02:00