Robin Kertels
81c817c54d
VideoBackends:Vulkan: Workaround slow vkCmdCopyImageToBuffer on QCom driver
2022-09-30 21:13:42 +02:00
JosJuice
2e8d775df1
Jit64: boolX formatting fixes
2022-09-29 20:27:15 +02:00
Mai
1f2ec9afd6
Merge pull request #11052 from Tilka/shinkansen
...
Add emulated Shinkansen controller
2022-09-29 09:21:27 -04:00
Mai
e3e6c3dfa4
Merge pull request #11088 from JosJuice/uicommon-set-enable-alert
...
Move a SetEnableAlert call to UICommon
2022-09-29 09:09:29 -04:00
Mai
6805c9dd0d
Merge pull request #11108 from AdmiralCurtiss/fat-fs-callbacks
...
FatFsUtil: Add ability to provide callbacks for the FatFs code.
2022-09-29 09:08:12 -04:00
Mai
0c19a1d87c
Merge pull request #11100 from Pokechu22/software-settings-merge
...
Use the same settings for the software renderer as other backends
2022-09-29 09:05:51 -04:00
Mai
865348cfb1
Merge pull request #11103 from JosJuice/android-gamefilecache-not-null
...
Android: Allocate GameFileCache on GUI thread
2022-09-29 09:02:47 -04:00
Pokechu22
87f84d4f54
Debugger/CodeWidget: Update callstack/callers/calls on symbol changes
...
Before, only the symbols box would update. However, if you edit the symbol of a function in the call stack (which seems like something that would happen reasonably often while debugging), the call stack would be out of date until it was updated by clicking on it. Callers and calls were more of an edge case; for them to be out of date, you would need to right-click on an instruction in a function other than the one containing the currently-selected instruction (though it would also affect recursive functions).
2022-09-28 21:01:37 -07:00
Admiral H. Curtiss
3182d9178c
FatFsUtil: Add ability to provide callbacks for the FatFs code.
2022-09-29 05:16:21 +02:00
Vincent Pelletier
fbf9d6ea17
SI: Ignore non-standard setGameID command
...
Avoids a panic when loading recent swiss. Not enough to have it run,
unfortunately.
2022-09-28 22:29:50 +00:00
Admiral H. Curtiss
dafe2c785a
Merge pull request #9481 from Sintendo/jit64boolx
...
Jit64: boolX constant optimizations
2022-09-28 23:40:26 +02:00
Admiral H. Curtiss
95615ab91b
Merge pull request #11096 from Sintendo/arm64boolx
...
JitArm64: boolX constant optimizations
2022-09-28 21:58:06 +02:00
Admiral H. Curtiss
32bdc54869
Merge pull request #11101 from Pokechu22/backend-multithreading-enabled
...
DolphinQt: Only enable the backend multithreading checkbox if the backend supports it
2022-09-28 21:57:37 +02:00
Admiral H. Curtiss
4de70f1e99
Merge pull request #11099 from Pokechu22/draw_done_and_token_stats
...
VideoCommon: Add statistics for draw done and token commands
2022-09-28 21:56:54 +02:00
Vincent Pelletier
85d2358157
EXI_DeviceMemoryCard: Drop comment about ChipErase behaviour
...
Tested on an official DOL-014 (251 blocks) memory card by executing the
0xf4 command on a card with content along its entire length and then
dumping the whole card: it reads as 0xff all the way through.
Therefor, the current implementation is already consistent with hardware.
2022-09-28 11:55:46 +00:00
JosJuice
51debaeb47
Revert "Android: Don't hold gameFileCache lock during updateAdditionalMetadata"
...
This reverts commit fb265b610d
.
The optimization in that commit is safe when the executor thread is
writing and the GUI thread is reading, but I had failed to take into
account that it's unsafe when the GUI thread is writing and the executor
thread is reading. (The native UpdateAdditionalMetadata function loops
through m_cached_files, which is unsafe if another thread is adding
elements to m_cached_files simultaneously.)
Losing out on this optimization isn't too bad, because
719930bb39
makes it very unlikely that
both threads will want the lock at the same time.
2022-09-27 19:06:05 +02:00
Pokechu22
3d0cd8b076
DolphinQt: Remove software renderer settings widget
...
Thus, the software renderer uses the same settings as everything else, fixing https://bugs.dolphin-emu.org/issues/13051 .
2022-09-26 19:43:57 -07:00
Pokechu22
b90d23158f
Software: Fix mipmaps and uneven strides in SWTexture
...
I think this is only used for texture dumping, but this resolves some failed assertions and glitchy results.
2022-09-26 19:43:57 -07:00
Pokechu22
94a77bc573
DolphinQt: Only enable the backend multithreading checkbox if the backend supports it
2022-09-26 19:25:11 -07:00
Pokechu22
a6c00c7633
D3D12: Fix backend multithreading incorrectly being marked as supported
2022-09-26 19:24:52 -07:00
Pokechu22
56fce3ba8a
Software: Remove dedicated texture/frame dumping infrastructure
...
Texture dumping can already be done using VideoCommon's system (and in fact the same setting already enabled *both* of these). Dumping objects/TEV stages/texture fetches doesn't currently have an equivalent, but could be added to the FIFO player instead.
2022-09-26 18:25:54 -07:00
Pokechu22
39569392bd
VideoCommon: Add statistics for draw done and token commands
2022-09-26 16:19:54 -07:00
Pokechu22
67ed4fa92d
Common/Image: Add unit to log message
2022-09-26 15:04:15 -07:00
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
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
Shawn Hoffman
717c36bc43
WinUpdater: Check OS and VC++ Redist versions.
2022-09-20 15:57:50 -07: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
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
Shawn Hoffman
0837af4344
windows: distribute vcredist loose files
2022-09-14 13:15:45 -07: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
Tillmann Karras
f5670f870e
Add emulated Shinkansen controller
2022-09-11 17:12:19 +01:00
Mai
dbcf7fd2c9
Merge pull request #11049 from Tilka/tatacon
...
TaTaCon: fix possible hotswap problem
2022-09-11 05:12:12 -04:00
Admiral H. Curtiss
1732071a10
Netplay: Pass netplay settings via BootSessionData.
2022-09-11 04:18:26 +02:00
Tillmann Karras
b418441f4a
TaTaCon: fix possible hotswap problem
2022-09-11 00:16:00 +01: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
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
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
Admiral H. Curtiss
001fe8f94d
HW: Move AudioInterface variables to Core::System.
2022-09-09 04:13:43 +02:00
TryTwo
50db8f35b8
Debugger MemoryWidget: Create mini-menu at top of sidebar. Move dump buttons and "set value from file" to the menu.
2022-09-08 16:36:36 -07:00
Admiral H. Curtiss
426b5b1927
Merge pull request #10123 from sepalani/ai-cleanup
...
AudioInterface: Cleanup
2022-09-09 00:37:58 +02:00
Admiral H. Curtiss
200c9dd0c5
Merge pull request #11011 from Pokechu22/audio-mixer-assertions
...
Mixer: Add assertions regarding num_samples versus buffer length
2022-09-08 22:01:18 +02:00
Admiral H. Curtiss
d4fe54147e
Merge pull request #10757 from AdmiralCurtiss/show-memcard-path-in-gui
...
Qt: Show currently configured Memory Card path in the config window.
2022-09-08 21:12:21 +02:00
Pokechu22
72de74d4fc
Mixer: Add assertions regarding num_samples versus buffer length
2022-09-08 12:10:10 -07:00
Pokechu22
abb59a781a
Mixer: Use smaller array for PushWiimoteSpeakerSamples
2022-09-08 12:10:02 -07:00
Admiral H. Curtiss
329d279c05
Merge pull request #10751 from Zopolis4/manifesto
...
Update supportedOS values in .manifest files
2022-09-08 20:36:28 +02:00
Admiral H. Curtiss
85bd57df0e
Merge pull request #11007 from PEmu2/enj
...
Edit error message
2022-09-08 20:00:18 +02:00
Admiral H. Curtiss
696614fd1b
Merge pull request #11014 from AdmiralCurtiss/nand-repair-scrollable-box
...
Qt: Make custom dialog for NAND Repair.
2022-09-08 19:58:46 +02:00
Admiral H. Curtiss
45c4aa288a
Merge pull request #10881 from iwubcode/graphics-mod-draw-fb-texture-names
...
VideoCommon: fix graphics target texture names for efb/xfb
2022-09-08 19:56:49 +02:00
Admiral H. Curtiss
710210365a
Merge pull request #11038 from AdmiralCurtiss/steam-overlay-crash-fix-wgi
...
WGInput: Work around crash with Steam overlay.
2022-09-08 19:03:31 +02:00
Pokechu22
2dfe91336a
Merge pull request #10549 from Pokechu22/sw-tev-enum-map
...
Refactor various bits of graphics code for readability
2022-09-08 09:42:12 -07:00
Mai
74851fe94a
Merge pull request #11029 from AdmiralCurtiss/global-state-dvd
...
HW: Move DVD variables to Core::System.
2022-09-07 23:40:16 -04:00
Mai
348db11bdb
Merge pull request #11040 from AdmiralCurtiss/update-references-deadlock
...
InputCommon: Fix deadlock in EmulatedController::UpdateReferences().
2022-09-07 23:39:10 -04:00
Admiral H. Curtiss
b8ca1b2907
InputCommon: Fix deadlock in EmulatedController::UpdateReferences().
2022-09-07 22:37:24 +02:00
Admiral H. Curtiss
67c97a0bf2
WGInput: Work around crash with Steam overlay.
2022-09-07 21:06:26 +02:00
Admiral H. Curtiss
dbb0cfbc09
DSPLLE: Remove dead DSPSymbolDB.
2022-09-03 22:20:24 +02:00
Admiral H. Curtiss
2d45ce5c4e
HW: Move DVDInterface variables to Core::System.
2022-09-03 21:54:25 +02:00
Admiral H. Curtiss
c4d5804f60
HW: Move DVDThread variables to Core::System.
2022-09-03 21:54:25 +02:00
Sepalani
9b9f701ac5
AudioInterface: Add setters for AIS/AID sample rate
2022-09-03 23:36:34 +04:00
Sepalani
59eb1253a3
AudioInterface: Use anonymous namespace for static functions
2022-09-03 23:02:28 +04:00
Sepalani
f7a2972899
AudioInterface: Use IsPlaying method
2022-09-03 22:40:38 +04:00
dreamsyntax
78c6819f5e
Core: pause on panic handler option
2022-09-02 13:22:32 -07:00
Mai
23902f99ae
Merge pull request #11026 from AdmiralCurtiss/sound-stream
...
AudioCommon: Move sound stream variables to Core::System.
2022-09-01 23:41:42 -04:00
Mai
50550cf978
Merge pull request #11009 from shuffle2/device-notify
...
ciface/win32 and WGInput bug fixes
2022-09-01 00:27:55 -04:00
Charles Lombardo
940a38f172
Android: App redesign with multi-theme system
2022-08-31 18:01:15 -04:00
Admiral H. Curtiss
c310e504cb
AudioCommon: Move sound stream variables to Core::System.
2022-08-31 21:44:21 +02:00
Admiral H. Curtiss
9195e1a9b8
Merge pull request #11021 from merryhime/constructor-order
...
Ensure constructor initializer order matches initialization order
2022-08-30 02:29:37 +02:00
Merry
362167fde5
MTLObjectCache: Correct signature of equality operator
...
Not doing so produces a warning in clang:
ISO C++20 considers use of overloaded operator '!=' (with operand types
'Metal::DepthStencilSelector' and 'Metal::DepthStencilSelector') to be
ambiguous despite there being a unique best viable function with
non-reversed arguments
The underlying reason for this warning is an incorrect method signature.
2022-08-29 21:23:23 +01:00
Merry
b0717607b2
TextureInfo: Reorder members in constructor
...
m_stage is initialized last
2022-08-29 21:16:21 +01:00
Merry
3323375efb
GraphicsModManager: Reorder DecoratedAction members to initialization order
...
m_action_impl is initialized before m_mod in constructor
2022-08-29 21:15:49 +01:00
Pokechu22
698def66ff
Fifo analyzer: Fix various XF mistakes
...
* 'hangle' was a typo
* Light colors include an alpha value, so they should be 8 characters, not 6
* The XF command format adds 1 to the count internally (so 0 is one word), but we need to subtract that back to produce a valid command
* XFMEM_POSTMATRICES was calculating the row by subtracting XFMEM_POSMATRICES (POS vs POST), resulting in incorrect row numbering
2022-08-29 11:10:05 -07:00
Pokechu22
3fb09e3297
Fifo analyzer: Improve some BP descriptions
...
Mainly, the improvements are passing in the current command ID so that e.g. stage numbers can be directly included, instead of saying 0/1 or even/odd.
2022-08-29 11:10:05 -07:00
Pokechu22
546f9952a2
UberShaderPixel: Fix typo
2022-08-29 11:10:05 -07:00
Pokechu22
5ef8a7973e
BPMemory: Make TevKSel more clear
...
It stores both the konst selection value for alpha and color channels (for two tev stages per ksel), and half of a swap table row (there are 4 total swap tables, which can be used for swizzling the rasterized color and the texture color, and indices selecting which tables to use are stored per tev stage in the alpha combiner). Since these are indexed very differently, the old code was hard to follow.
2022-08-29 11:10:05 -07:00
Pokechu22
f21798b9b6
BPMemory: Use even/odd in TwoTevStageOrders instead of 0/1
2022-08-29 11:10:05 -07:00
Pokechu22
e43f02c752
BPMemory: Improve consistency of hex offset comments
...
I search for these somewhat often with control+f, but tend to default to adding a 0x prefix, which means I don't find them until I remove it.
2022-08-29 11:10:05 -07:00
Pokechu22
4206ac243b
SW/Rasterizer: Use RAS1_IREF::getTexCoord and getTexMap
2022-08-29 11:10:05 -07:00
Pokechu22
ae0fcd9a9f
SW/Tev: Replace Tev::SetRegColor with Tev::SetKonstColors
2022-08-29 11:10:05 -07:00
Pokechu22
3b9a048291
SW/Tev: Use std::clamp for Clamp255 and Clamp1024
2022-08-29 11:10:05 -07:00
Pokechu22
bae0f21f74
SW/Tev: Remove Tev::Init
2022-08-29 11:10:05 -07:00
Pokechu22
c9936f8c1c
SW/Tev: Use EnumMap for scale/bias tables
2022-08-29 11:10:05 -07:00
Pokechu22
b02992548e
SW/Tev: Use EnumMap for Reg
2022-08-29 11:10:03 -07:00
Pokechu22
2db7569463
SW/Tev: Use TevColorRef/TevAlphaRef instead of raw s16 pointers
2022-08-29 11:05:10 -07:00
Pokechu22
ec1ed64832
EnumMap: Fix typo
2022-08-28 22:38:35 -07:00
JMC47
6d61e6a601
Merge pull request #11016 from Pokechu22/software-indirect-texture-bug
...
Software/Rasterizer: Fix indirect stage using texture coordinates/maps >= 4
2022-08-29 01:37:36 -04:00
Pokechu22
e04d23e086
SW/Rasterizer: Fix indirect stage using texture coordinates/maps >= 4
...
The masking was incorrect. This affects the main menu of The Last Avatar, though that menu also relies on copy filter functionality that is not correctly handled in the software renderer so the difference is not obvious; that game shuffles textures across all indices for some reason, so this issue would presumably result in subtle flickering.
2022-08-28 12:19:36 -07:00
Sepalani
7dc647fd4c
BBA/BuiltIn: Add UPnP HTTP listener
2022-08-28 23:09:09 +04:00
Admiral H. Curtiss
59f3be8c54
Qt: Make custom dialog for NAND Repair.
...
This is so that if you have a lot of titles that need repair the dialog can still fit on screen.
2022-08-28 03:11:17 +02:00
Shawn Hoffman
cd407abe34
WGInput: implement error handling
2022-08-27 02:11:27 -07:00
Shawn Hoffman
6bc8ab7001
WGInput: use c++/winrt
2022-08-26 23:20:34 -07:00
Shawn Hoffman
76d2e47444
ciface/win32: use CM_Register_Notification instead of wnd msgs
2022-08-26 21:59:56 -07:00
Sepalani
7202cf2650
BBA/BuiltIn: Add SSDP multicast support
2022-08-24 21:29:57 +04:00
Sepalani
f992f8f38c
BBA/BuiltIn: Make network interface consistent
2022-08-24 21:05:18 +04:00
Sepalani
e783a7f409
Common/Network: Add StrNetworkError helper function
2022-08-24 21:05:18 +04:00
Admiral H. Curtiss
9c9962083d
Merge pull request #10956 from Dentomologist/address_cpp20_todo_comments
...
Address c++20 TODO comments
2022-08-24 17:18:56 +02:00
Admiral H. Curtiss
e5cfa286bd
Merge pull request #10960 from shuffle2/mz
...
ResourcePack: dont scan for individual files
2022-08-24 17:11:21 +02:00
Admiral H. Curtiss
a7d358a97b
Merge pull request #11003 from sepalani/decode-error
...
Move SocketManager's DecodeError to Common
2022-08-24 17:01:07 +02:00
Pokechu22
0cced44142
Use `__VA_OPT__(, ) __VA_ARGS__` instead of `##__VA_ARGS__`
...
Per https://en.cppreference.com/w/cpp/preprocessor/replace#.23_and_.23.23_operators the `##` behavior is a nonstandard extension; this extension seems to be supported by all compilers we care about, but IntelliSense in visual studio doesn't correctly handle it, resulting in false errors in the IDE (but not when compiling).
Per https://en.cppreference.com/w/cpp/preprocessor/replace#Function-like_macros C++20 introduced a workaround, where `__VA_OPT__(, )` generates a comma if and only if `__VA_ARGS__` is non-empty.
This PR replaces all occurrences, with the exception of Externals, DSPSpy (which is not likely to be edited in MSVC and does not target C++20 currently), and JitArm64_Integer.cpp (which uses `Function(__VA_ARGS__)`, and thus does not ever need a comma).
2022-08-23 12:09:57 -07:00
JosJuice
299aef945b
Merge pull request #11005 from t895/cover-only
...
Android: Add option to disable game cover text
2022-08-23 18:24:51 +02:00
Admiral H. Curtiss
aa8364a327
Merge pull request #10996 from JosJuice/gpu-texture-uint
...
VideoCommon: Fix OpenGL ES GPU texture decoding
2022-08-23 10:48:51 +02:00
PEmu2
b516ae12ca
Edit error message
...
Edit error message to be less sarcastic. I doubt many users appreciate this when Dolphin has just crashed.
2022-08-22 19:52:13 -07:00
JMC47
48fdbcde23
Merge pull request #10809 from TryTwo/PR_CodeWidget_Filters
...
Debugger CodeWidget: Add filter boxes to callstack, function calls, a…
2022-08-22 15:47:20 -04:00
Charles Lombardo
2caa1f3b43
Android: Add option to disable game cover text
2022-08-22 13:50:39 -04:00
Admiral H. Curtiss
1845a13cbe
Merge pull request #10905 from shuffle2/netplay-hash
...
netplay: use sha1 instead of md5
2022-08-22 15:57:49 +02:00
Admiral H. Curtiss
8b7e6f1863
Merge pull request #10933 from shuffle2/vs
...
msbuild: fix overbuilding of externals and lessen rebuild likelyhood
2022-08-22 15:19:13 +02:00
Admiral H. Curtiss
aba87ba1e3
Merge pull request #10997 from JosJuice/nfs-check
...
DiscIO: Fix an incorrect error check in NFSBlob
2022-08-22 15:14:15 +02:00
Sepalani
597fb9ff6d
Move SocketManager's DecodeError to Common
...
Fix thread safety issue
2022-08-22 14:02:26 +04:00
JosJuice
052fdfa00d
DiscIO: Fix an incorrect error check in NFSBlob
2022-08-21 00:06:53 +02:00
Mai
fef8325ff7
Merge pull request #10995 from JosJuice/nfs-size-out
...
DiscIO: Fix calculation of NFS raw size
2022-08-20 17:57:46 -04:00
JosJuice
724bd3e597
VideoCommon: Fix OpenGL ES GPU texture decoding
2022-08-20 23:21:23 +02:00
JosJuice
aca624ef9c
DiscIO: Fix calculation of NFS raw size
2022-08-20 21:18:36 +02:00
Shawn Hoffman
7c3cdeda2b
qt: defer writing gamelist cache until EndRefresh
...
large speedup
2022-08-19 19:51:31 -07:00
JMC47
498c06b85a
Merge pull request #10989 from CasualPokePlayer/fifo_reset_dual_core
...
Fix crashes in dual core mode on a PI_FIFO_RESET
2022-08-18 17:32:29 -04:00
TellowKrinkle
588c4bd635
InputCommon:QuarzKB&M: Use view position instead of window position
2022-08-18 16:29:43 -05:00
TellowKrinkle
798b241832
InputCommon:QuarzKB&M: Use KVO to watch window position
...
CGWindowListCreateDescriptionFromArray would block for up to ~1ms, which isn't a great thing to do on the main emulation thread
2022-08-18 16:29:43 -05:00
CasualPokePlayer
ab8a8e6f84
Fix crashes in dual core mode on a PI_FIFO_RESET
2022-08-18 13:38:37 -07:00
Mai
39aa5f29a6
Merge pull request #10991 from Pokechu22/dsp-hle-ax-ucode-switch-state
...
DSPHLE/AX: Set state to WaitingForCmdListSize when switching uCodes
2022-08-18 10:34:57 -04:00
Mai
7a23b45aa1
Merge pull request #10992 from Pokechu22/swapchain-unused-functions
...
VideoCommon: Remove unused swap chain functions
2022-08-18 10:32:51 -04:00
Pokechu22
3c38f5c1d2
D3DCommon: Remove unused swap chain functions
...
These were added in ea15080d8f
(which added D3DCommon), but never were used.
2022-08-17 18:16:50 -07:00
Pokechu22
da7aded00d
Vulkan: Remove unused swap chain functions
...
These were added in 5e29508b8f
and 1f2d43c870
, but were replaced with CONFIG_CHANGE_BIT_VSYNC and CONFIG_CHANGE_BIT_STEREO_MODE in e4b205c769
.
2022-08-17 18:16:17 -07:00
Pokechu22
f9e1933111
DSPHLE/AX: Set state to WaitingForCmdListSize when switching uCodes
...
Fixes https://bugs.dolphin-emu.org/issues/13017 . With uCode switching, the existing instance of AXUCode is re-activated when GBAUCode is done, but if the state remains as WaitingForNextTask, it won't be able to do anything. Instead, it needs to be in WaitingForCmdListSize.
(When the AX uCode is resumed, startpc is set to 0x0030, at least for 0x07f88145; this is the same location as MAIL_RESUME jumps to, so DSP_RESUME should be sent when the resuming happens; that's already handled by AXUCode::Update.)
2022-08-17 12:05:53 -07:00
Shawn Hoffman
4ae475b6a1
fix verifying wii dev signatures
...
allows verifying dev-signed discs and wads
2022-08-16 12:47:26 -07:00
Admiral H. Curtiss
650f172637
DolphinQt: Only show raw memory card path if it's not the default.
2022-08-16 00:23:36 +02:00
Admiral H. Curtiss
d11839fd64
DolphinQt: Show raw memory card path and AGP cartridge path in config window.
2022-08-16 00:20:58 +02:00
Admiral H. Curtiss
43d4923e78
Config: Allow passing std::nullopt for the region in GetMemcardPath() to use the region as configured in the path itself. Falls back to the fallback region if no region is in the path.
2022-08-16 00:20:58 +02:00
Admiral H. Curtiss
92c6407c45
Merge pull request #10970 from AdmiralCurtiss/directoryblob-encrypted
...
DirectoryBlob: Fix partition size mixup for encrypted Wii discs.
2022-08-12 22:35:40 +02:00
TellowKrinkle
b96bc4267e
InputCommon: Enable ARC for obj-c++
2022-08-12 02:09:53 -05:00
Léo Lam
be33e1079d
Merge pull request #10972 from AdmiralCurtiss/ios-fs-metadata-nop
...
IOS/FS: Skip writing FST if SetMetadata() changes nothing.
2022-08-11 16:16:45 +01:00
Admiral H. Curtiss
7ac042d00b
DirectoryBlob: Fix partition size mixup for encrypted Wii discs.
2022-08-10 20:43:52 +02:00
Admiral H. Curtiss
0d39c4a78a
IOS/FS: Skip writing FST if SetMetadata() changes nothing.
2022-08-10 06:28:23 +02:00
Admiral H. Curtiss
dcdba11ded
Merge pull request #10962 from askew-etc/inc-dec-select-state-hotkeys
...
Add hotkeys for incrementing/decrementing select state slot
2022-08-10 01:41:32 +02:00
Sage King
da803adf15
Work around for compiler bug on Debian and FreeBSD
2022-08-09 16:26:54 -06:00
Sage King
66276ac61b
Added type to SyncIndentifierComparison enum in SyncIdentifier.h in an
...
attempt to fix a failed call to operator<< in SendResponse()
2022-08-09 16:26:53 -06:00
Sage King
978b6a8724
Added comment explaining obscure folding syntax in NetPlayServer.cpp
2022-08-09 16:26:53 -06:00
Sage King
a12099404e
Added SendResponseToAllPlayers() and SendResponseToPlayer() to NetPlayServer.cpp and refactored OnConnect to use them
2022-08-09 16:26:52 -06:00
Sage King
477c20e28d
Updated comment explaining enet_peer_timeout's use in NetPlayClient.cpp and NetPlayServer.cpp; Corrected syntax related to PEER_TIMEOUT in NetplayClient.cpp
2022-08-09 16:26:52 -06:00
Sage King
2f367d7a9b
Updated PEER_TIMOUT in NetPlayCommon.h to use chrono literals; Updated NetPlayServer.cpp OnConnect() by putting commonly used code into named functions
2022-08-09 16:26:52 -06:00
Sage King
d81756e9b9
Refactored parameter to OnConnect() in NetPlayServer.cpp from rpac to received_packet
2022-08-09 16:26:51 -06:00
Sage King
9d14d95737
Removed code duplicating comments in NetPlayServer.cpp OnConnect()
2022-08-09 16:26:51 -06:00
Sage King
5dea8aaed0
Added initializer braces to Client player; in NetPlayServer.cpp OnConnect()
2022-08-09 16:26:50 -06:00
Sage King
d11df2b700
Refactored variable declared in NetPlayServer.cpp OnConnect() from npver to netplay_version
2022-08-09 16:26:50 -06:00
Mai
c2dd58c361
Merge pull request #10959 from JosJuice/frsp-subnormal
...
Interpreter: Fix rounding edge case in frsp
2022-08-09 18:17:21 -04:00
Mai
e9e2c741a2
Merge pull request #10953 from JosJuice/aarch64-add-encoding
...
Arm64Emitter: Fix encoding of size for ADD (vector)
2022-08-09 18:13:50 -04:00
Zopolis4
e54818e60d
Resolve "implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20" warning
2022-08-08 11:25:19 +10:00
Scott Mansell
4c2d707538
Merge pull request #10940 from InvoxiPlayGames/ipc-discord
...
Add Discord presence ioctlv to /dev/dolphin
2022-08-08 08:11:42 +12:00
askew-etc
914f38753a
Add hotkeys for incrementing/decrementing selected state slot (like RetroArch)
2022-08-07 12:20:09 -05:00
Shawn Hoffman
6e94c20abd
add TODO for chrono in GetLocalTimeSinceJan1970
2022-08-06 22:25:30 -07:00
Shawn Hoffman
292724b228
Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"
...
This reverts commit 86da6c98fb
.
2022-08-06 22:22:14 -07:00
Shawn Hoffman
9bb8315441
ResourcePack: dont scan for individual files
...
walking the zip prevents minizip from re-reading the same
data repeatedly from the actual backing filesystem.
also improves most usages of minizip to allow for >4GB,
files altho we probably don't need it
2022-08-06 15:38:46 -07:00
iwubcode
637dca680c
VideoCommon: update ubershader pixel to not enforce d3d when writing color output that has been defined as uints
2022-08-06 16:08:58 -05:00
iwubcode
05135b4f43
VideoCommon: fix uint shader compiler error in specialized shaders. This error is in renderers that use uint for their color output (for logic ops). Remove D3D check for uint output since other backends could use uint output as well.
2022-08-06 16:08:58 -05:00
Dentomologist
02cd4ecf7d
Core: Use std::chrono time_since_epoch
2022-08-06 13:28:28 -07:00
Dentomologist
ff26f6435e
Use structured binding for pair values
...
dir_path is used by PanicAlertFormatT, which prior to PR 10209 used a
lambda. Before c++20, referring to structured bindings in lambda captures
was forbidden. The problem is now doubly fixed, so put the structured
binding back in.
2022-08-06 13:28:28 -07:00
iwubcode
0b5f7d2c5f
VideoCommon: fix graphics target not properly setting 'draw_started' texture names for efb/xfb
2022-08-06 12:01:33 -05:00
JosJuice
c5d9514cd9
Interpreter: Fix rounding edge case in frsp
...
Fixes the Dolphin bug mentioned in
https://github.com/dolphin-emu/hwtests/issues/45 .
Because this doesn't fix any observed behavior in games (no, 1080°
Avalanche isn't affected), I haven't implemented this in the JITs,
so as to not cause unnecessary performance degradations.
2022-08-06 18:54:19 +02:00
InvoxiPlayGames
f9e39cf200
Add Discord presence ioctlv to /dev/dolphin
2022-08-06 07:32:29 +01:00
Shawn Hoffman
3ca673a675
WiiSave: protect against a stack buffer overflow
2022-08-05 17:24:03 -07:00
Tilka
3595c8b295
Merge pull request #10952 from JosJuice/bitutils-remove-unused
...
Common: Remove unused stuff from BitUtils.h
2022-08-05 21:08:02 +01:00
JosJuice
52661dcc76
Arm64Emitter: Fix encoding of size for ADD (vector)
...
This was causing a bug in the rounding of paired single multiplication
operands. If Force25BitPrecision was called for quad registers, the
element size of its ADD instruction would get treated as if it was 16
instead of the intended 64, which would cause the result of the
calculation to be incorrect if the carry had to pass a 16-bit boundary.
Fixes one of the two bugs reported in
https://bugs.dolphin-emu.org/issues/12998 .
2022-08-05 21:49:28 +02:00
JosJuice
c00008e3cd
Common: Remove unused stuff from BitUtils.h
2022-08-05 17:54:51 +02:00
Tillmann Karras
b8e64b1f43
AX: fix comments and variable names (NFC)
...
This command does not upload the MAIN buffers to CPU memory. This was
functionally fixed in f11a40f858
without
updating the comments and variable names.
2022-08-05 15:00:17 +01:00
Scott Mansell
ebf95370ef
Merge pull request #10946 from Pokechu22/remove-iLog
...
VideoCommon: Remove old iLog field
2022-08-05 22:42:09 +12:00
JosJuice
939fa1ed1c
Merge pull request #10941 from shuffle2/crypto-cleanup
...
Crypto cleanup
2022-08-05 12:12:34 +02:00
Zopolis4
b9b7ff6e25
Update supportedOS values in .manifest files
2022-08-05 10:26:22 +10:00
Tilka
e638bb658f
Merge pull request #10945 from Pokechu22/vulkan-source-file-name
...
Vulkan: Call setSourceFile in addition to addSourceText
2022-08-05 00:03:25 +01:00
Pokechu22
354530cf61
VideoCommon: Remove old iLog field
...
Prior to 7854bd7109
, this was used by the debugger for the OpenGL and D3D9 plugins to control logging (via PRIM_LOG and INFO_LOG/DEBUG_LOG in VideoCommon code; PRIM_LOG was changed in 77215fd27c
), and also framedumping (removed in 64927a2f81
and 2d8515c0cf
), shader dumping (removed in 2d8515c0cf
and this commit), and texture dumping (removed in 54aeec7a8f
). Apart from shader dumping, all of these features have modern alternatives, and shader source code can be seen in RenderDoc if "Enable API Validation Layers" is checked (which also enables source attachment), so there's no point in keeping this around.
2022-08-04 15:49:39 -07:00
Pokechu22
20a2a2174d
Vulkan: Call setSourceFile in addition to addSourceText
2022-08-04 15:09:12 -07:00
Admiral H. Curtiss
5508c52a95
Merge pull request #10932 from JosJuice/nfs
...
DiscIO: Add support for the NFS format
2022-08-04 22:20:08 +02:00
JosJuice
6fc3bbbdd9
DiscIO/VolumeVerifier: Add a note about NFS bad dumps
2022-08-04 22:01:00 +02:00
JosJuice
02e3125f23
DiscIO/VolumeVerifier: Small logic cleanup
...
Just for ease of reading. No behavioral difference.
2022-08-04 22:00:59 +02:00
JosJuice
40a4eb3893
DiscIO: Adjust GetDataSizeType logic for NFS
2022-08-04 22:00:59 +02:00
JosJuice
a87dffe52d
DiscIO: Replace IsDataSizeAccurate with GetDataSizeType
...
Previously, we had WBFS and CISO which both returned an upper bound
of the size, and other formats which returned an accurate size. But
now we also have NFS, which returns a lower bound of the size. To
allow VolumeVerifier to make better informed decisions for NFS, let's
use an enum instead of a bool for the type of data size a blob has.
2022-08-04 22:00:59 +02:00
JosJuice
3a6df63e9b
DiscIO: Add support for the NFS format
...
For a few years now, I've been thinking it would be nice to make Dolphin
support reading Wii games in the format they come in when you download
them from the Wii U eShop. The Wii U eShop has some good deals on Wii
games (Metroid Prime Trilogy especially is rather expensive if you try
to buy it physically!), and it's the only place right now where you can
buy Wii games digitally.
Of course, Nintendo being Nintendo, next year they're going to shut down
this only place where you can buy Wii games digitally. I kind of wish I
had implemented this feature earlier so that people would've had ample
time to buy the games they want, but... better late than never, right?
I used MIT-licensed code from the NOD library as a reference when
implementing this. None of the code has been directly copied, but
you may notice that the names of the struct members are very similar.
c1635245b8/lib/DiscIONFS.cpp
2022-08-04 22:00:58 +02:00
JosJuice
bb27d4cc95
DiscIO/VolumeWii: Decouple "is encrypted" from "is hashed"
...
Needed for the next commit. NFS disc images are hashed but not encrypted.
While we're at it, also get rid of SupportsIntegrityCheck.
It does the same thing as old IsEncryptedAndHashed and new HasWiiHashes.
2022-08-04 20:29:22 +02:00
Pokechu22
8129874d11
Sanitize and use increased precision when normalizing light directions
...
This normalization was added in 02ac5e95c8
, and changed to use floats in 4bf031c064
. The conversion to floats means that sometimes there is insufficient precision for the normalization process, which results in values of NaN or infinity. Performing the whole process with doubles prevents that, but games also sometimes set the values to NaN or infinity directly (possibly accidentally due to the values not being initialized due to them not being used in the current configuration?).
The version of Mesa currently in use on FifoCI (20.3.5) has issues with NaN. Although this bug has been fixed (b3f3287eac
in 21.2.0), FifoCI is stuck with the older version.
This change may or may not be incorrect, but it should result in the same behavior as already present in Dolphin, while working around the Mesa bug.
2022-08-04 08:52:44 -07:00
Mai
f59f1a2a35
Merge pull request #10740 from Tilka/cxx20
...
Move to C++20 for non-MSVC compilers
2022-08-04 09:31:31 -04:00
Tilka
3ad6e3abc2
Merge pull request #10768 from Pokechu22/dsp-hle-gba-class
...
DSPHLE: Eliminate global state in GBA and AX uCode + accuracy improvements
2022-08-04 13:50:30 +01:00
Tilka
8105d0034d
Merge pull request #10821 from Pokechu22/dimar-masking
...
DVDInterface: Mask upper bits of DIMAR in GC mode
2022-08-04 12:50:49 +01:00
Pokechu22
bf70026728
DSPHLE: Require implementing DoState
...
CARDUCode, GBAUCode, and INITUCode previously didn't have an implementation of it. In practice it's unlikely that this caused an issue, since these uCodes are only active for a few frames at most, but now that GBAUCode doesn't have global state, we can implement it there. I also implemented it for CARDUCode, although our CARDUCode implementation does not have all states handled yet - this is simply future-proofing so that when the card uCode is properly implemented, the save state version does not need to be bumped. INITUCode does not have any state to save, though.
2022-08-03 17:32:12 -07:00
Pokechu22
f2e833b5c4
DSPHLE: Eliminate global state in AX uCode
...
This also increases accuracy as to when specific mail is allowed, and correctly handles masking of the 0xCDD1 mails.
2022-08-03 17:32:12 -07:00
Pokechu22
8d66c29f33
DSPHLE: Eliminate global state in GBA uCode + accuracy improvements
...
The accuracy improvements are:
* The request mail must be 0xabba0000 exactly; both the low and high parts are checked
* The address is masked with 0x0fffffff
* Before, the global state meant that after the GBA uCode had been used once, it would accept 0xcdd1 commands immediately. Now, it only accepts them after execution has finished.
2022-08-03 17:32:12 -07:00
Pokechu22
8b65e84121
DSPHLE: Make all uCode implementations final classes
...
(Apart from AXUCode, which is inherited by AXWiiUCode.)
2022-08-03 17:32:12 -07:00
Mai
27669fc7c8
Merge pull request #10828 from JosJuice/jitarm64-32-bit-exception
...
JitArm64: Pass 32-bit temp GPR to WriteConditionalExceptionExit
2022-08-03 14:36:19 -04:00
Mai
a8b2174ce6
Merge pull request #10872 from shuffle2/timer
...
Timer improvements
2022-08-03 14:30:29 -04:00
Mai
385764ebe0
Merge pull request #10913 from shuffle2/vsnext
...
msvc: fix issues with vs 17.3
2022-08-03 14:21:53 -04:00
Mai
ebb8402a24
Merge pull request #10934 from sepalani/bba-igmp
...
BBA/BuiltIn: Add minimal IGMP support
2022-08-03 14:17:41 -04:00
Mai
f93b04dc94
Merge pull request #10935 from Pokechu22/icache-dont-save-lookup-table
...
PPCCache: Stop storing lookup table in savestates
2022-08-03 14:14:39 -04:00
Minty-Meeo
347dd03c3f
Remove Vestigial Preprocessor Block in Jit64/Jit.cpp
...
"Common/GekkoDisassembler.h" became used by Release builds with commit 77e9aa48bc
, but this got left in by mistake.
2022-08-03 12:30:20 -05:00
Shawn Hoffman
bf5076eb01
crypto/sha1: add real workaround for msvc/arm64 bad codegen
2022-08-02 23:05:45 -07:00
Shawn Hoffman
78142e30cc
crypto/sha1: simplify enablement of sha insns on non-msvc
2022-08-02 23:05:07 -07:00
Shawn Hoffman
4e6aa28da4
crypto/aes: silence warning on godforsaken android gcc
2022-08-02 23:03:51 -07:00
Shawn Hoffman
403f3693da
NetPlay: use sha1 instead of md5
2022-08-02 22:25:05 -07:00
Shawn Hoffman
c7ce035a7f
NetPlay: rename md5 -> game digest
2022-08-02 22:25:05 -07:00
Shawn Hoffman
ec9b30681b
msvc: silence warning in qt header
2022-08-02 22:24:33 -07:00
Shawn Hoffman
bdf3a03c04
DolphinQt: fix BootSessionData dtor not being called
...
std::unique_ptr can't/won't call deleter on incomplete type
generated warning on vs 17.3.0 preview 5.0
2022-08-02 22:24:33 -07:00
Shawn Hoffman
683f7f7210
msbuild: tidy up the linked libs
2022-08-02 22:24:22 -07:00
Shawn Hoffman
c5da2877cc
msbuild: refactor to reduce rebuild events
...
* moves dolphin-specific settings out of Base.props
* creates exports.props for externals, allowing to easily import
individual Externals
* corrects some cruft that accumulated and probably contributed
to msbuild overbuilding
2022-08-02 22:24:22 -07:00
Shawn Hoffman
fec61f89a3
Timer: protect usages of ms timers from rollover
2022-08-02 22:24:06 -07:00
Shawn Hoffman
0fe99e9bc8
ThrottleCallback: correct units in log
...
make first invocation a bit more correct
2022-08-02 22:24:06 -07:00
Shawn Hoffman
86da6c98fb
msvc: use std::chrono for GetLocalTimeSinceJan1970
2022-08-02 22:24:06 -07:00
Shawn Hoffman
b473c35873
windows: mark as HighQoS, ensure timer resolution is honored
2022-08-02 22:24:06 -07:00
Shawn Hoffman
3384b1385e
move "double time" code into State from Timer
...
Ideally the statesave format could be changed
to just store a u64 in the future
2022-08-02 22:24:06 -07:00
Shawn Hoffman
49218f9695
DolphinDevice: expose elapsed ms in GetSystemTime
2022-08-02 22:24:06 -07:00
Shawn Hoffman
09089eeee0
Common::Timer: use chrono::steady_clock internally
2022-08-02 22:24:06 -07:00
Shawn Hoffman
8d16971a6f
LogManager: use own timestamp function
2022-08-02 22:24:05 -07:00
Shawn Hoffman
d71797154a
VolumeVerifier: enable fast hash functions by default
...
sets defaults based on cpu support.
2022-08-02 22:23:49 -07:00
Tilka
7d2d5d914b
Merge pull request #10903 from shuffle2/hash-reorg
...
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-02 18:29:04 +01:00
Tilka
e62ceab349
Merge pull request #10902 from shuffle2/aes
...
Implement hw accelerated AES
2022-08-02 18:28:47 +01:00
Pokechu22
134397754e
PPCCache: Stop storing lookup table in savestates
...
These lookup tables total 4 megabytes, and contain data that's entirely redundant to the actual cache state (as part of an optimization, though I'm not sure whether the optimization actually is useful). This change instead recomputes these lookup tables when loading the state (which involves filling the lookup table with a marker (0xff), and then setting the 128 * 8 valid entries (1 kilobyte)).
2022-08-01 16:36:59 -07:00
Shawn Hoffman
17c554c165
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-01 10:07:27 -07:00
Shawn Hoffman
46ad8b9d68
Implement hw accelerated AES
2022-08-01 10:00:42 -07:00
Sepalani
4fa65ec9cf
BBA/BuiltIn: Add minimal IGMP support
2022-08-01 12:49:38 +04:00
Sepalani
bfc2d11891
BBA/BuiltIn: Simplify HandleARP
2022-08-01 12:48:33 +04:00
Sepalani
7e9711d738
BBA/BuiltIn: Rename m_fake_mac to m_router_mac
2022-08-01 12:48:32 +04:00
Sepalani
b029b468cd
BBA/BuiltIn: Fix MAC address issues with TCP and UDP
2022-08-01 12:48:32 +04:00
Sepalani
cc7cfe249e
BBA/BuiltIn: Move TryGetDataFromSocket
2022-08-01 12:48:32 +04:00
Sepalani
0f5fe2274a
BBA/BuiltIn: Save current MAC address
2022-08-01 12:48:32 +04:00
Sepalani
ec60416c00
BBA/BuiltIn: Add an ARP table
2022-08-01 12:48:32 +04:00
Tilka
fb45ed3981
Merge pull request #10883 from Pokechu22/pi-fifo-reset-gp-fifo
...
ProcessorInterface: Reset both GPFifo and Fifo on PI_FIFO_RESET
2022-07-31 17:06:37 +02:00
Tilka
45f8ae6d51
Merge pull request #10926 from shuffle2/old-gcc-warning
...
SHA1/arm64: fix casting warning on certain gcc
2022-07-31 16:31:35 +02:00
Tillmann Karras
d033d92b05
Move to C++20 for non-MSVC compilers
2022-07-30 23:35:53 +01:00
Admiral H. Curtiss
92c7566646
Merge pull request #10924 from Pokechu22/symbols-missing-last-function
...
PPCSymbolDB: Fix getting symbol for the last function
2022-07-30 21:52:10 +02:00
Shawn Hoffman
97ff757a74
SHA1/arm64: fix casting warning on certain gcc
2022-07-30 12:06:21 -07:00
JosJuice
ecc4bc5098
Merge pull request #10925 from AdmiralCurtiss/ppc-state-hle-print
...
HLE_OS: Don't modify emulated state in printf hooks.
2022-07-30 19:49:18 +02:00
Admiral H. Curtiss
2a56113a5b
Merge pull request #10898 from Pokechu22/dsp-hle-homebrew-padding
...
DSPHLE: Support padded versions of libasnd and libaesnd uCodes
2022-07-30 14:21:28 +02:00
Admiral H. Curtiss
a9d9f5c0da
Merge pull request #10899 from shuffle2/sha1
...
add hw-accelerated SHA1
2022-07-30 14:11:37 +02:00
Admiral H. Curtiss
b364a301dc
HLE_OS: Don't modify emulated state in printf hooks, since the actual PPC function will be called afterwards.
2022-07-30 14:06:28 +02:00
Admiral H. Curtiss
4b6ad977c6
Merge pull request #10922 from Pokechu22/apploader-hle-no-replace
...
Boot_BS2Emu: Create an actual function for AppLoaderReport
2022-07-30 14:05:58 +02:00
Pokechu22
1f17a3bb1e
PPCSymbolDB: Fix getting symbol for the last function
2022-07-29 18:41:11 -07:00
Pokechu22
e97ad90681
Boot/ElfReader: Log to BOOT log instead of MASTER log
2022-07-29 12:18:05 -07:00
Pokechu22
7a7a3a7f41
Boot_BS2EMU: Log apploader-related messages to BOOT log instead of MASTER log
2022-07-29 12:17:09 -07:00
Pokechu22
d3d7cc6f96
Boot_BS2Emu: Create an actual function for AppLoaderReport
...
Before, we used a replace hook and didn't write anything there. Now, we write a BLR instruction to immediately return, and then use a start hook. This makes the behavior a bit clearer (though it shoudln't matter in practice).
2022-07-29 12:16:20 -07:00
Sepalani
18b8f147ab
BBA/BuiltIn: Ensure UDP ports are open
2022-07-29 21:25:17 +04:00
JMC47
a81f3a95db
Merge pull request #10917 from sepalani/bba-ntohs
...
BBA/BuiltIn: Fix network byte order issues
2022-07-29 13:19:25 -04:00
JMC47
ae4fa53a9c
Merge pull request #10914 from JMC47/bbarename
...
BBA - Rename Built In BBA to BBA (HLE)
2022-07-29 10:16:51 -04:00
JMC47
205d78d780
BBA - Rename BBA Built In to BBA (HLE)
...
All of our BBA options are technically built in, so it made the BBA
Built In option kind of confusing as to what it did. So rename it to
BBA HLE to make it more clear what it is doing and why it doesn't need a
TAP.
2022-07-29 10:06:44 -04:00
Sepalani
2de4d52021
BBA/BuiltIn: Fix network byte order issues
2022-07-29 11:33:36 +04:00
JMC47
3bf1ddc549
Merge pull request #10730 from AdmiralCurtiss/riivolution-sysfile-patches
...
Riivolution: Add custom extension to patch boot.bin, bi2.bin, and apploader.img.
2022-07-28 20:29:31 -04:00
Admiral H. Curtiss
000c9c7545
Merge pull request #10907 from shuffle2/pngend
...
SavePNG: make sure to finalize image file
2022-07-28 19:28:00 +02:00
Shawn Hoffman
25462f4a3c
SavePNG: make sure to finalize image file
2022-07-28 10:12:36 -07:00
Mai
e10d66270f
Merge pull request #10909 from JosJuice/volume-verifier-read-succeeded
...
VolumeVerifier: Fix read_succeeded condition
2022-07-28 12:05:03 -04:00
JosJuice
14c1a1c658
VolumeVerifier: Fix read_succeeded condition
...
We shouldn't set m_read_errors_occurred to true just because
is_data_needed was false.
2022-07-28 09:57:17 +02:00
Shawn Hoffman
8939210d8a
Common/Crypto/SHA1: implement accelerated versions
2022-07-27 01:07:48 -07:00
Shawn Hoffman
bfa2a66c98
WIABlob: remove outdated mbedtls workaround
2022-07-26 22:16:37 -07:00
Shawn Hoffman
dd29a54cf6
introduce wrapper for SHA1 functionality
2022-07-26 22:16:37 -07:00
Pokechu22
cc02471da2
DSPHLE: Support padded versions of the libaesnd uCode
...
This is used by libogc2 and libogc-rice.
2022-07-26 19:06:05 -07:00
Pokechu22
33b63a62d1
DSPHLE: Support padded version of libasnd uCode
...
This is used by libogc2 and libogc-rice.
2022-07-26 18:44:08 -07:00
Josh
7e75bcd36f
Use Dynamic last Log Type
2022-07-27 00:07:53 +02:00
JosJuice
97100290ee
Merge pull request #10885 from JosJuice/android-graphics-mods
...
Android: Add graphics mods support to GUI
2022-07-26 15:44:01 +02:00
Admiral H. Curtiss
a9edf129e3
Merge pull request #10889 from shuffle2/spng
...
replace libpng with libspng
2022-07-26 12:53:04 +02:00
Admiral H. Curtiss
6b419c7ca3
Merge pull request #10876 from shuffle2/cpudetect
...
CPUDetect: improve win/arm64 support
2022-07-26 12:52:50 +02:00
Admiral H. Curtiss
9d15a1c5a1
Merge pull request #10858 from AdmiralCurtiss/mouse-center-hotkey
...
Add hotkey for centering mouse in render window.
2022-07-26 12:52:33 +02:00
Admiral H. Curtiss
c7752f80e4
Merge pull request #10892 from Pokechu22/dsp-hle-aesnd-more-versions
...
DSPHLE: Support EDuke32 Wii libaesnd uCode
2022-07-26 11:36:18 +02:00
CasualPokePlayer
bd27e18d51
Fix ARAM Expansion Writes
...
Looks like the memcpy here had its args in the wrong order.
2022-07-26 02:01:25 -07:00
Shawn Hoffman
76b4318b88
CPUDetect: improve win/arm64 support
...
read brand_string on macos/arm64
remove unused flags
report family/model info instead of vendor name
2022-07-25 21:21:11 -07:00
Pokechu22
1dcccb1f75
DSPHLE: Add warning to use of MAIL_TERMINATE
2022-07-25 20:35:43 -07:00
Pokechu22
e44b596f50
DSPHLE: Fix typos in libaesnd logging
2022-07-25 20:35:43 -07:00
Pokechu22
58d344e189
DSPHLE: Support EDuke32 Wii libaesnd uCode
...
This version is exclusive to EDuke32 Wii (see https://bugs.dolphin-emu.org/issues/12990 ).
2022-07-25 20:35:41 -07:00
Pokechu22
a6d08571bd
DSPHLE: Move aesnd uCode hash constants into header
2022-07-25 20:32:02 -07:00
Pokechu22
4b179e01da
DSPHLE: Move asnd uCode hash constants into header
2022-07-25 20:31:04 -07:00
Shawn Hoffman
f92541fbd9
StripSpaces: only strip spaces
...
StripWhitespace maintains old behavior
2022-07-25 18:40:12 -07:00
Shawn Hoffman
acb10f0006
replace libpng with libspng
2022-07-25 18:32:16 -07:00
Admiral H. Curtiss
e4ff49769c
Merge pull request #10888 from shuffle2/zlib-ng
...
replace zlib with zlib-ng
2022-07-26 02:25:17 +02:00
JMC47
bfd03cd1a4
Merge pull request #10793 from Pokechu22/dsp-hle-aesnd
...
DSPHLE: Add HLE version of libaesnd ucode
2022-07-25 05:12:53 -04:00
JosJuice
86bb290cc5
Merge pull request #10886 from OatmealDome/metal-minor-fixes
...
Metal: Prevent usage of macOS-only APIs on non-macOS platforms
2022-07-25 08:31:18 +02:00
Admiral H. Curtiss
d14bd10cd7
Quartz: Handle mouse centering hotkey.
...
Co-authored-by: Dentomologist <dentomologist@gmail.com>
2022-07-25 01:26:57 +02:00
Admiral H. Curtiss
e0870166ef
XInput2: Handle mouse centering hotkey.
2022-07-25 01:26:56 +02:00
Admiral H. Curtiss
d57d04bb04
DInput: Handle mouse centering hotkey.
2022-07-25 01:26:56 +02:00
Admiral H. Curtiss
4d27022d0e
Add hotkey for centering mouse in render window.
2022-07-25 00:59:47 +02:00
Shawn Hoffman
c3b64012d1
replace zlib with zlib-ng
...
since the benefits are so high, don't link with shared zlib
2022-07-24 14:33:37 -07:00
OatmealDome
700162b8bd
MTLUtil: Include TargetConditionals
2022-07-23 17:22:11 -04:00
OatmealDome
77f44f1600
MTLMain: Include TargetConditionals
2022-07-23 17:22:11 -04:00
OatmealDome
b32b27ae9a
MTLMain: Only compile NSView manipulation code on macOS
2022-07-23 17:22:04 -04:00
JosJuice
e5a177ece9
Merge pull request #10868 from tellowkrinkle/UsesDSBFix
...
VideoCommon: Fix IsDualSrc check for dst blend factors
2022-07-23 22:14:07 +02:00
JosJuice
8f410bff15
Android: Add graphics mods support to CheatsActivity
2022-07-23 21:58:45 +02:00
OatmealDome
8ad7fa0313
MTLUtil: Return invalid for non-supported texture formats on non-macOS platforms
2022-07-23 13:53:31 -04:00
OatmealDome
7edd3aff75
MTLUtil: Don't attempt to get all GPUs on non-macOS platforms
2022-07-23 13:53:22 -04:00
OatmealDome
50d3ad58df
CMakeLists: Link videometal with Foundation
2022-07-23 13:53:15 -04:00
Pokechu22
6a7aa8f2c6
Convert CP/XF matrix indices mismatch panic alert to a warning
...
https://bugs.dolphin-emu.org/issues/12977 indicates that this happens on startup of Spider-Man 2, even in single-core. I don't have the game, so I can't directly determine why this is happening, but presumably real hardware does not hang in this case, so we can make it less obtrusive.
2022-07-23 09:01:22 -07:00
JMC47
89c4fdeeea
Merge pull request #10754 from tellowkrinkle/Metal
...
VideoBackends: Add Metal backend
2022-07-23 01:57:35 -04:00
Pokechu22
5bbdf7ae15
ProcessorInterface: Reset both GPFifo and Fifo on PI_FIFO_RESET
...
Fixes https://bugs.dolphin-emu.org/issues/12981
2022-07-22 22:22:34 -07:00
Pokechu22
97412553f9
Add a more detailed comment about SPR_WPAR's BNE bit
2022-07-22 22:22:34 -07:00
Pokechu22
c06f203e98
MMU: Clarify masking on gather pipe address
2022-07-22 22:22:34 -07:00
Pokechu22
1c833ddc3c
Create constant for GPFifo physical address
2022-07-22 22:22:33 -07:00
Pokechu22
b76f4dd5f8
ProcessorInterface: Remove unused fields
2022-07-22 22:20:26 -07:00
TellowKrinkle
6559c6b8ee
VideoBackends:Multiple: Grammar fixes
2022-07-21 20:44:19 -05:00
TellowKrinkle
a41345127f
VideoBackends:Metal: Remove unified memory config
...
Not worth the extra code
2022-07-21 20:44:19 -05:00
TellowKrinkle
5065767abd
VideoBackends:Metal: Avoid submitting draw calls with no vertices/indices
2022-07-21 20:44:19 -05:00
TellowKrinkle
ee3f2b8fcb
VideoBackends:Metal: Implement PerfQuery
2022-07-21 20:44:19 -05:00
TellowKrinkle
c48035908c
VideoBackends:Metal: Use unified memory path by default on all GPUs
2022-07-21 20:44:19 -05:00
TellowKrinkle
6ee0248eab
VideoBackends:Metal: MSAA support
2022-07-21 20:44:19 -05:00
TellowKrinkle
c0fd128171
VideoBackends:Metal: Use base vertex
2022-07-21 20:44:19 -05:00
TellowKrinkle
5742ccf8de
VideoBackends:Metal: Cache pipelines
...
Metal pipelines hold less stuff than Dolphin pipelines, so duplicates will appear
2022-07-21 20:44:19 -05:00
TellowKrinkle
e32213d031
VideoBackends:Metal: Create samplers on demand
2022-07-21 20:44:19 -05:00
TellowKrinkle
61705b05da
VideoBackends:Metal: FBFetch for Intel GPUs
2022-07-21 20:44:19 -05:00
TellowKrinkle
a5ef9dfd53
VideoBackends:Metal: Use DriverDetails for bugs
2022-07-21 20:44:19 -05:00
TellowKrinkle
716c0980d7
VideoBackends: Add Metal renderer
2022-07-21 20:44:19 -05:00
Admiral H. Curtiss
df399b0995
Merge pull request #10878 from Pokechu22/btreal-allow-libusb-descriptor-errors
...
BTReal: Treat libusb_get_string_descriptor_ascii failure as non-fatal warning
2022-07-22 02:00:13 +02:00
Pokechu22
6eaa4a4e89
DSPHLE: Add HLE version of libaesnd ucode
2022-07-20 18:41:47 -07:00
Pokechu22
5e64f453ab
DSPHLE/ASnd: Rename m_next_command_is_voice_addr to m_next_mail_is_voice_addr
2022-07-20 18:41:47 -07:00
Pokechu22
75ae3b7ec4
DSPHLE: Fix comment in libasnd uCode
2022-07-20 18:41:47 -07:00
Pokechu22
76fd0479b8
JitAsm: Remove old commented-out code
...
I'm not sure what the XMM0 check was supposed to be, but the 0xCC008000 one is for the fifo and is handled elsewhere now (look for `optimizeGatherPipe`).
2022-07-20 16:38:54 -07:00
Léo Lam
e40be6e8fd
Merge pull request #10865 from JosJuice/volume-verifier-ios-case
...
VolumeVerifier: Ignore case when looking for IOS on update partition
2022-07-20 20:41:55 +01:00
Admiral H. Curtiss
a1e8e60c4c
IOS: Add IOSC::KeyEntry::misc_data to savestate.
2022-07-20 21:32:44 +02:00
Pokechu22
a23a7f7b10
BTReal: Treat libusb_get_string_descriptor_ascii failure as non-fatal warning
2022-07-20 11:21:23 -07:00
Admiral H. Curtiss
b0b5faa793
Merge pull request #10874 from JosJuice/cmpr-layout
...
VideoCommon: Fix CMPR compute shader layout
2022-07-19 12:05:29 +02:00
Admiral H. Curtiss
ec3cfc01c1
DiscIO/DirectoryBlob: Add callback to modify sys files before they're added to the disc.
2022-07-19 00:55:04 +02:00
Admiral H. Curtiss
cc315cb7af
DiscIO/Riivolution: Add dolphin-specific extensions "dolphin_sys_file" and "dolphin_sys_folder" to patch sys files like you would patch regular files.
2022-07-19 00:55:04 +02:00
Admiral H. Curtiss
f5c132580c
DiscIO/DirectoryBlob: Add ContentSource that stores data locally in std::vector.
2022-07-19 00:55:03 +02:00
Admiral H. Curtiss
9e5bc98496
DiscIO/RiivolutionPatcher: Skip main.dol patches if no main.dol was given.
2022-07-19 00:55:03 +02:00
Admiral H. Curtiss
fa30ba18f5
Merge pull request #10783 from JosJuice/frontend-controller-init
...
Require frontend to initialize controllers
2022-07-19 00:50:32 +02:00
JosJuice
1a2bc2eff9
VideoCommon: Fix CMPR compute shader layout
...
Looks like a copy-paste gone wrong. The compute shaders for the other
formats use a group size of 8 * 8, whereas the CMPR compute shader
is supposed to use a flattened 64 * 1 as I understand it.
2022-07-18 18:56:50 +02:00
Shawn Hoffman
28828435bb
Qt/LogWidget: remove extra space
2022-07-18 09:52:54 -07:00
Shawn Hoffman
0a15d2fcec
cubeb: fix logged source file paths
2022-07-18 09:52:54 -07:00
TellowKrinkle
88c85ce471
VideoCommon: Fix IsDualSrc check for dst blend factors
2022-07-17 20:50:53 -05:00
Joon Park
319288de8e
Fix OpenGL error on M1 Mac.
...
Followup to #10466 . Resolves the following error:
ERROR: 0:85: '&' does not operate on 'uvec3' and 'int'
2022-07-17 08:54:39 -04:00
JosJuice
dabad82219
Require frontend to initialize controllers
...
We currently have two different code paths for initializing controllers:
Either the frontend (DolphinQt) can do it, or if the frontend doesn't do
it, the core will do it automatically when booting. Having these two
paths has caused problems in the past due to only one frontend being
tested (see de7ef47548
). I would like to get rid of the latter path to
avoid further problems like this.
2022-07-17 14:03:04 +02:00
JosJuice
2f3c0cdbc5
Split out controller initialization to UICommon
2022-07-17 14:02:03 +02:00
JosJuice
81a20a1d74
VolumeVerifier: Ignore case when looking for IOS on update partition
...
One of the Dragon Quest X expansions (S4SJGD) uses lowercase instead of
the usual uppercase for the IOS59 file on its update partition.
2022-07-17 09:20:12 +02:00
JMC47
70b0b03c3c
Merge pull request #10747 from tellowkrinkle/LateUIDFixup
...
Add a post-cache shader UID fixup pass
2022-07-17 00:43:16 -04:00
JMC47
f1d23ff9a4
Merge pull request #10466 from Pokechu22/efb-copy-gamma
...
Accurately handle the copy filter and gamma for EFB and XFB copies
2022-07-17 00:07:50 -04:00
Admiral H. Curtiss
2ef069e0e8
Merge pull request #10833 from sepalani/BBA-log
...
NetworkCaptureLogger: Add GameCube BBA support
2022-07-16 21:44:08 +02:00
OatmealDome
2eecfc8595
WiiPane: Adjust capitalization of conversion buttons and alert titles
2022-07-16 04:08:55 -04:00
OatmealDome
60aaa308bf
WiiPane: Trim automatic SD sync checkbox string
2022-07-16 04:00:26 -04:00
Pokechu22
a6e06f38ad
Add notes about precision of YUV->RGB conversion factors for XFB
2022-07-16 00:07:10 -07:00
Pokechu22
2f43889141
Software: Use hardware-verified numbers for RGB->YUV conversion
2022-07-16 00:07:10 -07:00
Pokechu22
e7339d63f1
Rework TextureConversionShader for hardware accuracy and simplicity
2022-07-16 00:07:10 -07:00
Pokechu22
b16ec5b6dc
Rework TextureConverterShaderGen for hardware accuracy and simplicity
2022-07-16 00:07:10 -07:00
Pokechu22
791bd16b28
Restructure parameters to TetxureConverterShaderGen/TextureConversionShader
...
This will be used for later refactoring for increased accuracy.
2022-07-16 00:07:10 -07:00
TellowKrinkle
89ae060214
VideoCommon: Increase uniform stream buffer size to 64mb
...
Densha De Go uses 27mb per frame, and we want enough space for the CPU to be encoding one frame while the GPU is rendering the previous
2022-07-15 18:21:50 -05:00
TellowKrinkle
fb5648541c
VideoCommon: Remove dstalpha from BlendingState
...
It's not supported by any PC graphics API, and therefore completely unused
2022-07-15 15:31:47 -05:00
TellowKrinkle
991024173e
VideoCommon: Always use fbfetch in ubershaders if available
...
Reduce the number of different pipelines needed. Also works around drivers that break when you combine fbfetch with dual source blending
2022-07-15 15:31:47 -05:00
Pokechu22
d20094efa2
Add extra Low and High fields to CopyFilterCoefficients
...
This struct is the only one in BPMemory that uses u64 as its base. These fields are to allow viewing it as two u32s instead. It's not used by Dolphin right now, but it is used in the copy of BPMemory.h used by hwtests.
2022-07-15 12:29:40 -07:00
Pokechu22
bed278d3b7
Create dedicated enum for EFB/XFB gamma correction
...
This also changes the behavior for the invalid gamma value, which was confirmed to behave the same as 2.2.
Note that currently, the gamma value is only used for XFB copies, even though hardware testing indicates it also works for EFB copies. This will be changed in a later commit.
2022-07-15 12:29:40 -07:00
Pokechu22
dd41a72378
Only use intensity formats if both intensity_fmt and auto_conv are set
...
auto_conv is normally always set for EFB copies, but hardware testing indicates that intensity_fmt does nothing if auto_conv is not set.
2022-07-15 12:29:40 -07:00
Pokechu22
cd2cc5fa22
Rename EFB copy bit 2 from yuv to unknown_bit
...
It was named yuv in 522746b2c2
, but hardware testing indicates that that bit does nothing (the intensity format bit enables YUV conversion, instead).
2022-07-15 12:29:40 -07:00
Pokechu22
850e524514
Use fmt::to_string for texture format overlay
...
This required adding parentheses to the font used by that.
2022-07-15 12:29:40 -07:00
Pokechu22
290e62f179
Remove casts to integers for texture and EFB formats
...
The only remaining casts for these types that I know of are in TextureInfo (where format_name is set to the int version of the format, and since that affects filenames and probably would break resource packs, I'm not changing it) and in TextureDecoder_Common's TexDecoder_DrawOverlay, which will be handled separately.
2022-07-15 12:29:40 -07:00
Admiral H. Curtiss
89067e66f9
InputCommon: Get rid of static strings.
2022-07-15 19:53:10 +02:00
Admiral H. Curtiss
537fe33997
Merge pull request #10843 from Pokechu22/freelook-background-input
...
Free Look: Add background input setting (disabled by default)
2022-07-14 19:08:29 +02:00
Admiral H. Curtiss
a739f63d96
Merge pull request #10840 from AdmiralCurtiss/cmake-windows-sdl
...
Fix CMake Windows build after SDL merge.
2022-07-14 19:05:25 +02:00
TellowKrinkle
6ab24e6c17
VideoCommon: Better driver bug handling
...
Adds a pass to process driver deficiencies between UID caching and use, allowing a full view of the whole pipeline, since some bugs/workarounds involve interactions between blend modes and the pixel shader
2022-07-13 21:51:24 -05:00
JMC47
e237aa1435
Merge pull request #10777 from tellowkrinkle/EFBFlush
...
VideoCommon: Remember to flush command buffers after multiple EFB copies
2022-07-13 19:45:31 -04:00
Pokechu22
25aa30ac69
Free Look: Add background input setting (disabled by default)
...
Before, Free Look would accept background input by default, which means it was easy to accidentally move the camera while typing in another window. (This is because HotkeyScheduler::Run sets the input gate to `true` after it's copied the hotkey state, supposedly for other threads (though `SetInputGate` uses a `thread_local` variable so I'm not 100% sure that's correct) and for the GBA windows (which always accept unfocused input, presumably because they won't be focused normally).
2022-07-13 15:23:00 -07:00
JMC47
5663a44962
Merge pull request #10842 from tellowkrinkle/ClearBackendInfo
...
VideoCommon: Clear backend_info before populating
2022-07-13 16:40:46 -04:00
Admiral H. Curtiss
bae715f396
Merge pull request #10838 from AdmiralCurtiss/volume-verifier-out-of-bounds-read
...
DiscIO/VolumeVerifier: Avoid out-of-bounds reads on trimmed Wii ISOs.
2022-07-13 18:49:24 +02:00
Admiral H. Curtiss
10407cc8c1
DiscIO/VolumeVerifier: Don't try to verify data that would read out of bounds.
2022-07-13 13:35:18 +02:00
JMC47
cb350aed53
Merge pull request #10841 from tellowkrinkle/FBFetchLogicOpMasking
...
VideoCommon: Properly mask fbfetch logic op emulation
2022-07-13 03:56:14 -04:00
TellowKrinkle
f83015649c
VideoCommon: Clear backend_info before populating
2022-07-13 02:55:54 -05:00
TellowKrinkle
6bd0fc86ba
VideoCommon: Properly mask fbfetch logic op emulation
2022-07-13 02:27:45 -05:00
Admiral H. Curtiss
e79c7d4985
InputCommon: Don't force-link against SDL2.lib on Windows.
2022-07-13 01:37:05 +02:00
Sepalani
76fe7b6497
NetworkCaptureLogger: Add GameCube BBA support
2022-07-12 13:35:49 +04:00
Admiral H. Curtiss
2d8d3358c4
FatFsUtil: Skip past entries with invalid filenames.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
de9c9f2281
FatFsUtil: Improve error handling and error reporting.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
d2910b5753
Qt: Add 'convert now' buttons for the SD card in the WiiPane.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
f40eeebcf0
FatFsUtil: Add some path traversal attack protection when unpacking.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
a621fdf857
Core: In deterministic mode, build SD cards with a consistent filename order and dummy timestamps.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
1d12e95404
Qt: Put Wii SD card path and SD sync folder fields in the WiiPane.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
a5b1bfef68
Common: Change default path for Wii SD cards to not be inside the Wii NAND.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
4bf75c950b
Qt/WiiPane: Add checkbox for SD card folder syncing.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
77d4591fb4
Core: If configured, sync SD card image with SD card folder on emulation start and end.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
b66cc1caf6
Config and UICommon: Add config option and user path for Wii SD card sync folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
96751c4457
Treewide: Rename references to SD Card image path to clarify they mean the image file, not the folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
fdc327c252
Externals/FatFs: Build as part of Dolphin.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:37 +02:00
Admiral H. Curtiss
32523f155b
Merge pull request #10825 from Rudolchr/fix_build_with_libfmt-9
...
MsgHandler: Add a check for libfmt version to fix build with libfmt-9
2022-07-11 23:02:08 +02:00
Admiral H. Curtiss
20059776d9
Merge pull request #10831 from sepalani/BBA-cleanup
...
Common/Network+BBA/Builtin: Cleanup
2022-07-11 23:00:21 +02:00
JMC47
b2be9b40cc
Merge pull request #10561 from shuffle2/sdl-motion
...
ControllerInterface: Add support for motion and rumble to SDL backend
2022-07-11 16:28:30 -04:00
Pokechu22
6cc8adb3ae
DVDInterface: Mask upper bits of DIMAR in GC mode
...
The masking was removed in d3aad1d6d5
, based on a Wii hardware test. Based on https://bugs.dolphin-emu.org/issues/12970 the masking should apply in GameCube mode, though.
2022-07-10 18:00:07 -07:00
Admiral H. Curtiss
99eef44765
Merge pull request #10832 from tellowkrinkle/FixCTZ
...
Common: Fix CountTrailingZeros for weird compilers
2022-07-11 02:12:45 +02:00
JMC47
cce6133ef6
Merge pull request #10749 from tellowkrinkle/IntelUbershaders
...
VideoCommon: Fix ubershaders on MoltenVK Intel
2022-07-10 19:35:55 -04:00
Shawn Hoffman
54b4ad8f55
ci/sdl: pump messages for SDL_hidapi so device detection works
2022-07-10 15:39:06 -07:00
Shawn Hoffman
ddf83462ac
sdl: enable SDL_HINT_JOYSTICK_THREAD
...
fixes window message pumping
2022-07-10 15:39:06 -07:00
Shawn Hoffman
655fb94e61
ci/win32: give the wndclass a unique name
...
other things (like SDL) may try to use "Message"
2022-07-10 15:39:06 -07:00
Shawn Hoffman
dd20c7cf78
ci/sdl: re-add the x360 controller block
2022-07-10 15:39:06 -07:00
Shawn Hoffman
3f7a2c6d4d
ci/sdl: minor cleanup
2022-07-10 15:39:06 -07:00
Jun Bo Bi
ceed42a0ee
Add SDL as a submodule
2022-07-10 15:38:59 -07:00
TellowKrinkle
3d34a20105
Common: Fix CountTrailingZeros for weird compilers
2022-07-10 17:35:47 -05:00
Jun Bo Bi
6cb936d0cf
Add SDL motion input and rumble support
2022-07-10 14:49:49 -07:00
JMC47
38cb76dea5
Merge pull request #10807 from merryhime/LogicalImm
...
Arm64Emitter: Simplify LogicalImm logic
2022-07-10 17:27:47 -04:00
Merry
0d947ed6fe
Arm64Emitter: Simplify LogicalImm further
...
h/t @dougallj
2022-07-10 22:17:09 +01:00
Merry
20ccc38f0f
BitUtils: Implement CountTrailingZeros
2022-07-10 22:17:09 +01:00
Sepalani
be2ede6109
BBA/BuiltIn: Move functions to anonymous namespace
2022-07-10 20:57:35 +04:00
Sepalani
b950d038b9
Common/Network: Update IP checksum since total_len might have changed
2022-07-10 20:56:07 +04:00
Sepalani
5fdf255a2d
Common/Network: Make Build() methods const
2022-07-10 20:12:07 +04:00
Sepalani
d902b04ae0
Common/Network: Remove unused offset variables
2022-07-10 14:11:50 +04:00
Sepalani
b206f98261
Common/Network: Remove unnecessary size checks
2022-07-10 14:04:03 +04:00