Commit Graph

28086 Commits

Author SHA1 Message Date
791bd16b28 Restructure parameters to TetxureConverterShaderGen/TextureConversionShader
This will be used for later refactoring for increased accuracy.
2022-07-16 00:07:10 -07:00
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
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
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
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
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
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
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
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
89067e66f9 InputCommon: Get rid of static strings. 2022-07-15 19:53:10 +02:00
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
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
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
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
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
5663a44962 Merge pull request #10842 from tellowkrinkle/ClearBackendInfo
VideoCommon: Clear backend_info before populating
2022-07-13 16:40:46 -04:00
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
10407cc8c1 DiscIO/VolumeVerifier: Don't try to verify data that would read out of bounds. 2022-07-13 13:35:18 +02:00
cb350aed53 Merge pull request #10841 from tellowkrinkle/FBFetchLogicOpMasking
VideoCommon: Properly mask fbfetch logic op emulation
2022-07-13 03:56:14 -04:00
f83015649c VideoCommon: Clear backend_info before populating 2022-07-13 02:55:54 -05:00
6bd0fc86ba VideoCommon: Properly mask fbfetch logic op emulation 2022-07-13 02:27:45 -05:00
e79c7d4985 InputCommon: Don't force-link against SDL2.lib on Windows. 2022-07-13 01:37:05 +02:00
76fe7b6497 NetworkCaptureLogger: Add GameCube BBA support 2022-07-12 13:35:49 +04:00
2d8d3358c4 FatFsUtil: Skip past entries with invalid filenames. 2022-07-11 23:11:42 +02:00
de9c9f2281 FatFsUtil: Improve error handling and error reporting. 2022-07-11 23:11:42 +02:00
d2910b5753 Qt: Add 'convert now' buttons for the SD card in the WiiPane. 2022-07-11 23:11:42 +02:00
f40eeebcf0 FatFsUtil: Add some path traversal attack protection when unpacking. 2022-07-11 23:11:42 +02:00
a621fdf857 Core: In deterministic mode, build SD cards with a consistent filename order and dummy timestamps. 2022-07-11 23:11:41 +02:00
1d12e95404 Qt: Put Wii SD card path and SD sync folder fields in the WiiPane. 2022-07-11 23:11:41 +02:00
a5b1bfef68 Common: Change default path for Wii SD cards to not be inside the Wii NAND. 2022-07-11 23:11:41 +02:00
4bf75c950b Qt/WiiPane: Add checkbox for SD card folder syncing. 2022-07-11 23:11:41 +02:00
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
b66cc1caf6 Config and UICommon: Add config option and user path for Wii SD card sync folder. 2022-07-11 23:11:40 +02:00
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
fdc327c252 Externals/FatFs: Build as part of Dolphin.
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:37 +02:00
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
20059776d9 Merge pull request #10831 from sepalani/BBA-cleanup
Common/Network+BBA/Builtin: Cleanup
2022-07-11 23:00:21 +02:00
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
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
99eef44765 Merge pull request #10832 from tellowkrinkle/FixCTZ
Common: Fix CountTrailingZeros for weird compilers
2022-07-11 02:12:45 +02:00
cce6133ef6 Merge pull request #10749 from tellowkrinkle/IntelUbershaders
VideoCommon: Fix ubershaders on MoltenVK Intel
2022-07-10 19:35:55 -04:00
54b4ad8f55 ci/sdl: pump messages for SDL_hidapi so device detection works 2022-07-10 15:39:06 -07:00
ddf83462ac sdl: enable SDL_HINT_JOYSTICK_THREAD
fixes window message pumping
2022-07-10 15:39:06 -07:00
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
dd20c7cf78 ci/sdl: re-add the x360 controller block 2022-07-10 15:39:06 -07:00
3f7a2c6d4d ci/sdl: minor cleanup 2022-07-10 15:39:06 -07:00
ceed42a0ee Add SDL as a submodule 2022-07-10 15:38:59 -07:00
3d34a20105 Common: Fix CountTrailingZeros for weird compilers 2022-07-10 17:35:47 -05:00
6cb936d0cf Add SDL motion input and rumble support 2022-07-10 14:49:49 -07:00
38cb76dea5 Merge pull request #10807 from merryhime/LogicalImm
Arm64Emitter: Simplify LogicalImm logic
2022-07-10 17:27:47 -04:00