Commit Graph

25238 Commits

Author SHA1 Message Date
OatmealDome dd688f4eb0 Top: Set port when connecting a socket to find the default interface 2020-11-02 13:27:38 -05:00
JosJuice 4bb0ac918b Simplify Arm64GPRCache::Flush
`flush = cond ? flush : true` makes little sense when `flush`
is always true at that point.
2020-11-01 19:48:57 +01:00
Losucaru 407ef8b596 Add a Skip EFB Access from CPU Hotkey 2020-10-29 21:03:06 -03:00
Thomas May 72e1131123
Common: Fix logger related crash when HTTP response is empty 2020-10-29 21:20:59 +01:00
Felipe d7fa75ef64 modify file export to create folder in OS when explicitly extracting a directory 2020-10-29 15:20:46 -04:00
LC fe727ed1d0
Merge pull request #9194 from leoetlino/offsetof-warning
IOS/USB: Fix -Winvalid-offset warnings
2020-10-29 12:53:11 -04:00
LC 752b1048df
Merge pull request #9196 from Dentomologist/update-register-view-debug-font
DolphinQt: Update register view font when Debug Font changes
2020-10-29 12:52:02 -04:00
Dentomologist 5fe7528855 DolphinQt: Update register view font when Debug Font changes
Resolves https://bugs.dolphin-emu.org/issues/12261

Co-authored-by: Léo Lam <leo@leolam.fr>
2020-10-29 09:31:14 -07:00
JMC47 6a3a71cfd7
Merge pull request #9141 from Techjar/but-for-how-long
Re-enable GPU Texture Decoding under MoltenVK
2020-10-29 01:22:13 -04:00
Sergei Trofimovich 447de580ab Source/Core/Common/Config/Config.cpp: add missing <mutex> include
Noticed missing include as a build failure on gcc-11:

```
[ 15%] Building CXX object Source/Core/Common/CMakeFiles/common.dir/Config/Config.cpp.o
Source/Core/Common/Config/Config.cpp:23:24:
  error: 'unique_lock' in namespace 'std' does not name a template type
    23 | using WriteLock = std::unique_lock<std::shared_mutex>;
        |                        ^~~~~~~~~~~
Source/Core/Common/Config/Config.cpp:11:1:
  note: 'std::unique_lock' is defined in header '<mutex>';
  did you forget to '#include <mutex>'?
```

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2020-10-28 08:53:15 +00:00
Lioncash dc72edf0e2 UberShaderPixel: Migrate over to fmt
Completes the migration over to using the fmt-formatting WriteFmt
function. The next PR will rename all usages of WriteFmt, while
simultaneously getting rid of the old printf code.
2020-10-27 13:25:11 -04:00
Shawn Hoffman 2ebe02fd1b dolphinqt msbuild: do not moc TASSlider.h 2020-10-26 18:37:46 -07:00
Léo Lam 2d921da860
FileUtil: Fix format string
Fixes a recent regression: https://github.com/dolphin-emu/dolphin/pull/9187#issuecomment-716835091
2020-10-26 22:47:56 +01:00
Léo Lam d2a2ec870d
Merge pull request #9171 from lioncash/pixel
PixelShaderGen: Migrate over to fmt
2020-10-26 20:35:47 +01:00
Léo Lam 07e6d008bd
Merge pull request #9187 from lioncash/commonlog
Common: Migrate logging to fmt
2020-10-26 19:01:26 +01:00
Léo Lam 7f66de062c
Merge pull request #9188 from jordan-woyak/stop-caring-about-old-avcodec-versions
VideoCommon/FrameDump: Remove code for older versions of avcodec.
2020-10-26 18:55:48 +01:00
Léo Lam aae72c3e75
Merge pull request #9195 from jordan-woyak/mem-warning
DolphinQt: Add a warning to the MEM1/MEM2 override setting description.
2020-10-26 18:49:33 +01:00
Léo Lam 23c9179fb6
Merge pull request #9071 from orbea/cmake
cmake: Silence warnings.
2020-10-26 18:48:42 +01:00
Jordan Woyak 15914b749c DolphinQt: Add a warning to the MEM1/MEM2 override setting description. 2020-10-25 12:54:42 -05:00
Léo Lam 8b9a0c9e09
IOS/USB: Fix -Winvalid-offset warnings
Unfortunately, compilers will issue warnings when using offsetof with
non-standard layout types even when offsetof actually works fine here;
just having a virtual function is enough to trigger the warning...

Let's just stop the scan threads explicitly in destructors instead of
relying on member destruction order.
2020-10-24 14:02:38 +02:00
iwubcode 8a4773bc91 VideoCommon: update vcproj file to set HAS_OPENGL 2020-10-23 17:08:53 -05:00
iwubcode a34745926e VideoCommon: remove HAS_OPENGL from VideoBackendBase 2020-10-23 17:00:32 -05:00
iwubcode 272717b3f4 VideoCommon: update vcproj file to set HAS_VULKAN 2020-10-23 17:00:05 -05:00
iwubcode d12380f26b VideoCommon: rename USE_VULKAN to HAS_VULKAN in VideoBackendBase 2020-10-23 16:59:22 -05:00
Lioncash 5de2244acf PixelShaderGen: Migrate over to fmt
Continues the migration of the shader generators over to fmt.

After this, all that remains in the Ubershader pixel generator.
2020-10-23 17:17:55 -04:00
Jordan Woyak 4902146329 VideoCommon/FrameDump: Remove code for older versions of avcodec. 2020-10-23 14:43:50 -05:00
Lioncash 4e8df93f41 Common: Migrate logging to fmt
Continues the migration of our code over to the fmt logger.
2020-10-23 14:58:03 -04:00
Léo Lam 285b926e92
Merge pull request #8782 from Pokechu22/missing-serial-version-data
Explain how to fix "Serial and/or version data is missing"
2020-10-23 20:44:06 +02:00
Léo Lam e89db89d9e
Merge pull request #9098 from jordan-woyak/wm-report-duplication
WiimoteReal: Only duplicate data reports when speaker data is enabled.
2020-10-23 20:38:25 +02:00
mazes-80 f375ee72a2
CMake: Add option to enable/disable Vulkan video backend 2020-10-23 20:14:46 +02:00
JosJuice 908d6f8fa0
Merge pull request #9179 from leoetlino/available-video-backends
VideoCommon: Get rid of the global g_available_video_backends
2020-10-23 20:02:21 +02:00
LC 4f5c8bb42a
Merge pull request #9177 from JosJuice/android-savestate-time
Android: Show how long ago each savestate was created
2020-10-23 13:59:43 -04:00
Léo Lam ce6eda7c71
Merge pull request #9184 from lioncash/inputlog
InputCommon: Migrate logging over to fmt
2020-10-23 19:59:22 +02:00
LC 87e4a0785a
Merge pull request #9182 from jordan-woyak/frame-dump-cleanup
VideoCommon: FrameDump fixes/cleanups.
2020-10-23 13:59:00 -04:00
LC c42b80a156
Merge pull request #9186 from JosJuice/rtl-pot
DolphinQt: Move QT_LAYOUT_DIRECTION string to qt-strings.pot
2020-10-23 13:37:10 -04:00
Lioncash a5e1415e74 InputCommon: Migrate logging over to fmt
Continues the migration of the logging calls over to the fmt capable
ones.
2020-10-23 13:16:18 -04:00
JosJuice 7841fb7337 DolphinQt: Move QT_LAYOUT_DIRECTION string to qt-strings.pot
Now that we have a .pot file specifically for strings from
Qt itself, it makes sense to move this into it.
2020-10-23 18:45:35 +02:00
Léo Lam 64f7a4448b
Merge pull request #9178 from lioncash/disclog
DiscIO: Migrate logging over to fmt
2020-10-22 22:07:53 +02:00
Lioncash e93fbb7c5e DiscIO: Migrate logging over to fmt
Eliminates quite a bit of the PRI* macros used for handling 64-bit
values.
2020-10-22 15:41:42 -04:00
Jordan Woyak e8bb88c2a1 DolphinQt: Don't call UICommon::InhibitScreenSaver if already in desired state. 2020-10-22 13:19:01 -05:00
Jordan Woyak 4807a5e157 VideoCommon: FrameDump fixes/cleanups. 2020-10-22 12:17:26 -05:00
Léo Lam 89b01cd6d3
Merge pull request #9169 from lioncash/uber-vert
UberShaderVertex: Migrate over to fmt
2020-10-22 01:21:31 +02:00
Léo Lam 08f9ed043b
Merge pull request #8846 from nyanpasu64/fix-cmake-zlib
Fix Windows CMake builds with shared zlib
2020-10-22 01:11:27 +02:00
Léo Lam 96ce3e5f49
Merge pull request #9176 from lioncash/audiofmt
AudioCommon: Migrate logging over to fmt
2020-10-22 01:03:16 +02:00
Pokechu22 88bc32b638 Explain how to fix "Serial and/or version data is missing" 2020-10-21 15:39:26 -07:00
Lioncash dcb0c910af Common/Matrix: Allow TVec classes to be used in constexpr contexts
Much of these classes are operating on integral types and are pretty
standard behavior as far as vectors go. Some member functions can be
made constexpr to make them more flexible and allow them to be used in
constexpr contexts.
2020-10-21 17:44:02 -04:00
LC de96fe0860
Merge pull request #9162 from jordan-woyak/quaternion
Replace stateful rotational matrices with quaternions.
2020-10-21 17:34:11 -04:00
Léo Lam e553197c67
Merge pull request #8880 from AdmiralCurtiss/gcmemcard-sketchy-code-cleanup
Sketchy code cleanup in GCMemcard and GCMemcardDirectory.
2020-10-21 23:13:22 +02:00
JosJuice 21d3ea523c Android: Show how long ago each savestate was created 2020-10-21 22:49:59 +02:00
Léo Lam 7b9a464c93
Merge pull request #8895 from sepalani/card
GCMemcard: Rename unknown field to m_dtv_status
2020-10-21 22:32:09 +02:00
Léo Lam 18b2553538
Merge pull request #9078 from JosJuice/android-metadata-from-core
Android: Get game metadata from core
2020-10-21 22:29:21 +02:00
Léo Lam d08b80828d
VideoCommon: Simplify VideoBackendBase::GetDefaultBackendName
Now we can just call GetDefaultVideoBackend to get the default backend
and get its name by calling GetName.
2020-10-21 22:00:10 +02:00
Léo Lam aaaa3896c0
VideoCommon: Get rid of the global g_available_video_backends
Replace it with a function-local static that is initialized on first
use. This gets rid of a global variable and removes the need for
manual initialization in UICommon.

This commit also replaces the weird find_if that looks for a non-null
unique_ptr with a simple "is vector empty" check considering that
none of the pointers can be null by construction.
2020-10-21 22:00:10 +02:00
JosJuice e86d713600 Android: Attach CPU thread to JVM early 2020-10-21 21:10:28 +02:00
Léo Lam fd5f9f4c26
Merge pull request #8927 from Filoppi/wiimote-pan-fix
Fixed volume of emulated wii mote speakers not being native.
2020-10-21 21:02:39 +02:00
Filoppi cf8b52735f
Fix volume of emulated wii mote speakers not being native
As in the comment, the panning was denaturalizing the volume (when the panning was at 0).
Unless users actually want to use panning, their wii mote volume should not be reduced, it should come out at the same volume the samples were.
If users want to reduce the volume of the wii mote speakers, they can do so from the wii home menu.
I opted for this instead of adding another setting "Enable Panning" as it would have been confusing, and the changes in the panning formula are unlikely to have any negative effect, as it still works.
2020-10-21 20:54:21 +02:00
Léo Lam 97de366b0f
Merge pull request #9160 from jordan-woyak/xinput2-stuck-keys
Linux/XInput2: Fix keys being stuck pressed on focus loss.
2020-10-21 20:47:32 +02:00
JosJuice 3a0917371e Android: Don't show game ID after game title 2020-10-21 20:02:52 +02:00
JosJuice b6fcfcb9c9 Core: Always call Host_TitleChanged on boot
A title change to a title with no game ID is still a title change.
2020-10-21 19:57:27 +02:00
JosJuice 1ddf7277b9 Core: Set bWii before calling Host_TitleChanged 2020-10-21 19:57:27 +02:00
Lioncash 22a79289d3 AudioCommon: Migrate logging over to fmt
printf specifiers, begone!
2020-10-21 13:32:28 -04:00
Léo Lam 09e87b79f1
Merge pull request #9173 from lioncash/fmtlog
Common/Log: Add basic fmt-capable functions to the interface.
2020-10-21 19:11:19 +02:00
Lioncash 425f2aa013 Common/Log: Add basic fmt-capable functions to the interface.
Provides a basic extension to the interface to begin migration off of
the printf-based logging system.

Everything will go through macros with the same style naming as the old
logging system, except the macros will have the _FMT suffix, while the
migration is in process.

This allows for peacemeal migration over time instead of pulling
everything out and replacing it all in a single pull request, which
makes for much easier reviewing.
2020-10-21 10:49:35 -04:00
Léo Lam f265c412b4
Merge pull request #9152 from Ebola16/SP1
Android: Convert SharedPreferences to INI Settings (simple cases)
2020-10-21 16:48:18 +02:00
Léo Lam 642eccbfd0
Merge pull request #9174 from lioncash/os
Common: Move OSThreads into Core
2020-10-21 15:39:29 +02:00
Lioncash 57534777d4 Common: Move OSThreads into core
Common shouldn't be depending on APIs in Core (in this, case depending
on the PowerPC namespace). Because of the poor separation here, this
moves OSThread functionality into core, so that it resolves the implicit
dependency on core.
2020-10-21 07:35:42 -04:00
Lioncash 144f799bbb ARDecrypt: Resolve seedtable at compile-time
We can boot the formation of the table off to the compiler at
compile-time, rather than building the table at run-time.
2020-10-20 19:11:04 -04:00
Jordan Woyak 7e197186b9
Merge pull request #9172 from lioncash/compile
ExpressionParser: Add missing <functional> include
2020-10-20 15:23:14 -05:00
Lioncash faf509e315 ExpressionParser: Add missing <functional> include
Unbreaks Windows CMake builds.
2020-10-20 16:18:32 -04:00
Ryan Meredith 353a67824d Android: Add AndroidOverlayButtons INI section 2020-10-20 12:03:41 -04:00
Lioncash 751d67a59a UberShaderVertex: Migrate over to fmt
Continues migration of the shader generators over to fmt.

With this, all that's left to move over are the pixel shaders (regular
and ubershader variants)
2020-10-20 09:24:10 -04:00
Léo Lam ce59b026c0
Merge pull request #9168 from lioncash/ifconst
DataReader: Make use of if constexpr where applicable
2020-10-20 14:56:24 +02:00
Léo Lam 299adf537d
Merge pull request #9021 from AdmiralCurtiss/gui-memcard-format-sram
Qt/GCMemcardCreateNewDialog: Use zero values for formatting instead of accessing g_SRAM.
2020-10-20 14:55:23 +02:00
Léo Lam 70ab3bf7b3
Merge pull request #9025 from cyrozap/fix-build-with-older-cmake
Fix builds with system LZMA when using versions of CMake before 3.14
2020-10-20 14:51:15 +02:00
Lioncash 7bc2bbc508 DataReader: Make use of if constexpr where applicable
We can make use of if constexpr for cases where booleans will always
statically be known at compile-time.
2020-10-20 08:42:32 -04:00
Léo Lam dc5ae5ee66
Merge pull request #9165 from lioncash/ubercommon
UberShaderCommon: Migrate over to fmt
2020-10-20 14:42:19 +02:00
Léo Lam f653bd7559
Merge pull request #9142 from jordan-woyak/expose-fov
WiimoteEmu: Expose IR camera FOV to adjust IMU pointing sensitivity.
2020-10-20 14:32:02 +02:00
Léo Lam b2709b81a0
Merge pull request #9166 from JosJuice/encryption-cache-move
DiscIO: Make WiiEncryptionCache moveable
2020-10-20 14:29:46 +02:00
Léo Lam 2e86e1a998
Merge pull request #9146 from JosJuice/android-disable-cover-download
Android: Allow disabling cover downloading
2020-10-20 13:31:01 +02:00
Léo Lam 49b7f10b39
Merge pull request #9163 from lioncash/fbgen
FramebufferShaderGen: Migrate over to fmt
2020-10-20 13:25:50 +02:00
Lioncash 83db7a707c UberShaderCommon: Migrate over to fmt
Continues migration of the shader generators over to fmt.
2020-10-20 06:22:48 -04:00
Léo Lam 7b1e0dba9b
Merge pull request #9164 from lioncash/geoshader
GeometryShaderGen: Migrate over to fmt
2020-10-20 11:59:45 +02:00
JosJuice 5b6f604d90 DiscIO: Make WiiEncryptionCache moveable
Fixes the following warning:

../../../../../../Core\DiscIO/DirectoryBlob.h:156:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  DirectoryBlobReader(DirectoryBlobReader&&) = default;
  ^
../../../../../../Core\DiscIO/DirectoryBlob.h:205:22: note: move constructor of 'DirectoryBlobReader' is implicitly deleted because field 'm_encryption_cache' has a deleted move constructor
  WiiEncryptionCache m_encryption_cache;
                     ^
2020-10-20 11:33:38 +02:00
Léo Lam fc3b474cce
Merge pull request #8318 from iwubcode/dynamic_input_textures
InputCommon: Dynamic Input Textures
2020-10-20 02:10:29 +02:00
Léo Lam 911704611e
Merge pull request #9096 from jordan-woyak/calibration-cleanup
ControllerEmu: Improve and simplify UpdateCalibrationData.
2020-10-20 02:01:16 +02:00
Léo Lam 98875346bd
Merge pull request #9104 from JosJuice/cmd-unicode
DolphinQt: Handle non-ASCII characters in Windows cmd arguments
2020-10-20 01:45:28 +02:00
Léo Lam 680ff4d168
Merge pull request #9136 from JosJuice/volumeverifier-partition-invalid-override
VolumeVerifier: Make "no valid data in partition" hide some other errors
2020-10-20 01:39:18 +02:00
Lioncash 5475a8d6eb GeometryShaderGen: Migrate over to fmt
Continues migration of the shader generators over to fmt.
2020-10-19 19:22:02 -04:00
Léo Lam 8a8dc3db83
Merge pull request #8613 from jordan-woyak/expose-disable-ss
Config: Expose "DisableScreenSaver" in the UI and default it to true.
2020-10-20 01:20:24 +02:00
Lioncash df11615bde FramebufferShaderGen: Migrate over to fmt
Continures the migration of the shader generators over to fmt.
2020-10-19 18:49:01 -04:00
Jordan Woyak 1dae834c62 WiimoteEmu: Tweak IMUCursor total yaw setting tool-tip. 2020-10-19 17:08:02 -05:00
Jordan Woyak 6b2eebf1f9 WiimoteEmu: Expose IR camera FOV to adjust IMU pointing sensitivity. 2020-10-19 17:08:02 -05:00
Jordan Woyak 907fdd26fc WiimoteEmu: Use quaternions for orientation. 2020-10-19 16:34:45 -05:00
Jordan Woyak 09431635f3 InputCommon/WiimoteEmu: Replace stateful rotational matrices with quaternions. 2020-10-19 16:33:55 -05:00
Jordan Woyak 39030ea33c Common/Matrix: Add Quaternion class. 2020-10-19 16:18:31 -05:00
JosJuice bb03280462 VolumeVerifier: Make "no valid data in partition" hide some other errors
Not much use in knowing that the H3 hashes are wrong when the
partition consists of complete garbage.
2020-10-19 21:15:49 +02:00
Admiral H. Curtiss b93adeaad7 VertexShaderGen: Fix unescaped { in D3D shader. 2020-10-19 20:05:07 +02:00
JosJuice 5e70dda4cc Android: Allow disabling cover downloading
In case someone wants to be very careful with how much bandwidth
they use or with what data GameTDB.com collects on you.
This is already an option in DolphinQt (though in DolphinQt it
will switch entirely from using covers to banners when turned off).
2020-10-19 20:03:47 +02:00
Jordan Woyak bbb12a7560 Linux/XInput2: Fix keys being stuck pressed on focus loss. 2020-10-19 11:46:01 -05:00
JosJuice cb14b65aad CMake: Fix build errors exposed by making common dependent on fmt 2020-10-19 14:36:09 +02:00
JosJuice 1084cfec1a Add helper function for fmt::format(GetStringT(... 2020-10-19 14:36:08 +02:00
JosJuice d100c1dc37 DiscIO: Make use of fmt where applicable
Once nice benefit of fmt is that we can use positional arguments
in localizable strings. This a feature which has been
requested for the Korean translation of strings like
"Errors were found in %zu blocks in the %s partition."
and which will no doubt be useful for other languages too.
2020-10-19 14:30:47 +02:00
LC c9b2fbb64b
Merge pull request #9099 from sepalani/so-linger
IP/Top: Add SO_LINGER optname
2020-10-19 07:58:51 -04:00
LC abfae46a2c
Merge pull request #9100 from sepalani/gethostid-log
IP/Top: Log IOCTL_SO_GETHOSTID properly
2020-10-19 07:58:15 -04:00
LC 49c7a5b289
Merge pull request #9121 from Sammi-Husky/bat-registers
DolphinQt/Debugger: Fix DBAT and IBAT registers in RegisterWidget
2020-10-19 07:56:42 -04:00
LC fc5fbf5134
Merge pull request #9127 from Sintendo/fselx-movsd
Jit64: Optimize fsel a bit more
2020-10-19 07:55:40 -04:00
LC cec47b9c32
Merge pull request #8981 from lioncash/vtx-fmt
LightingShaderGen/VertexShaderGen: Migrate over to fmt
2020-10-19 07:52:55 -04:00
LC 5722c680a4
Merge pull request #8006 from JosJuice/qt-rtl
DolphinQt: Enable RTL layout
2020-10-19 07:46:40 -04:00
Léo Lam 0de6a32f4c
Qt/QtUtils: Fix accidental recursion in ParallelProgressDialog
Seems to be a typo.
2020-10-19 12:39:10 +02:00
Léo Lam b3cb08830b
Merge pull request #9155 from JosJuice/tas-slider-right-click
DolphinQt: Reset TAS input slider to default on right-click
2020-10-19 12:09:23 +02:00
Jordan Woyak 50ec747840 Clean up screen saver inhibition and apply setting change immediately. 2020-10-18 16:31:48 -05:00
Jordan Woyak fa83a3a114 DolphinQt: Expose "DisableScreenSaver" setting in the UI. 2020-10-18 16:31:46 -05:00
Jordan Woyak 50384cfab7 Config: Make "DisableScreenSaver" default to true. 2020-10-18 12:26:00 -05:00
JosJuice 6670226a44 DolphinQt: Reset TAS input slider to default on right-click
This is a feature which existed in DolphinWX. Seems like it got
implemented in DolphinQt for IRWidget/StickWidget but not sliders.
2020-10-18 13:47:00 +02:00
Sergei Trofimovich af2a881a85 Source/Core/DiscIO/WIACompression.cpp: add missing <limits> include
Noticed missing include as a build failure on gcc-11:

```
[ 26%] Building CXX object Source/Core/DiscIO/CMakeFiles/discio.dir/WIACompression.cpp.o
../../../../Source/Core/DiscIO/WIACompression.cpp: In lambda function:
../../../../Source/Core/DiscIO/WIACompression.cpp:170:31: error: 'numeric_limits' is not a member of 'std'
  170 |         std::min<size_t>(std::numeric_limits<unsigned int>().max(), x));
      |                               ^~~~~~~~~~~~~~
../../../../Source/Core/DiscIO/WIACompression.cpp:170:46: error: expected primary-expression before 'unsigned'
  170 |         std::min<size_t>(std::numeric_limits<unsigned int>().max(), x));
      |                                              ^~~~~~~~
```

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2020-10-15 19:56:53 +01:00
Léo Lam ab2e226df8
Merge pull request #9105 from JosJuice/volumeverifier-small-low-severity
VolumeVerifier: Make high severity "too small" hide low severity "too small"
2020-10-14 12:41:57 +02:00
Léo Lam c3cdac4863
Merge pull request #9137 from JosJuice/zstd-ram-usage
DiscIO: Decrease RAM usage during zstd compression
2020-10-14 12:35:38 +02:00
Léo Lam b24223c178
Merge pull request #9135 from JosJuice/show-nkit
Show NKitness in file format string
2020-10-14 12:19:53 +02:00
Léo Lam 5ab95d7f6a
Merge pull request #9145 from jordan-woyak/sound-touch-defaults
AudioStretcher: Keep default parameters.
2020-10-14 12:16:58 +02:00
Jordan Woyak 3e6599b890 AudioStretcher: Keep default parameters. 2020-10-11 12:43:45 -05:00
JosJuice 5a939ccfaf
Merge pull request #8833 from Ebola16/Panic
Android: Use DialogFragment for AlertMessage
2020-10-10 21:03:52 +02:00
Techjar 0c01712d13 DriverDetails: Remove bug for broken GPU Texture Decoding 2020-10-08 10:13:40 -04:00
Techjar de2d099200 Re-enable GPU Texture Decoding under MoltenVK 2020-10-08 10:11:02 -04:00
JosJuice 3feea108db DiscIO: Decrease RAM usage during zstd compression
By calling ZSTD_CCtx_setPledgedSrcSize, we can let zstd know
how large a chunk is going to be before which start compressing
it, which lets zstd avoid allocating more memory than needed
for various internal buffers. This greatly reduces the RAM usage
when using a high compression level with a small chunk size,
and doesn't have much of an effect in other circumstances.

A side effect of calling ZSTD_CCtx_setPledgedSrcSize is that
zstd by default will write the uncompressed size into the
compressed data stream as metadata. In order to save space,
and since the decompressed size can be figured out through
the structure of the RVZ format anyway, we disable writing
the uncompressed size by setting ZSTD_c_contentSizeFlag to 0.
2020-10-07 16:40:06 +02:00
JosJuice d64fc67b04 Show NKitness in file format string
To make people more aware that they're not using a normal disc image.
2020-10-06 19:35:00 +02:00
JosJuice 63f5fa6e19 Replace geckocodes.org with mirror codes.rc24.xyz 2020-10-05 22:18:04 +02:00
LC c2975c8cb5
Merge pull request #9131 from JosJuice/nkit-mgs
Add Metal Gear Solid: The Twin Snakes to NKit warning message
2020-10-05 10:50:48 -04:00
JosJuice 568f226937 Add Metal Gear Solid: The Twin Snakes to NKit warning message
Unlike Super Paper Mario, this game doesn't crash as soon as you
try to start it, but rather if you try to skip a certain cutscene.
Thanks to JMC for letting me know about this.
2020-10-04 12:22:27 +02:00
iwubcode 4fff04db3c Core: Load custom textures after inputs has been loaded and avoid sending force texture reload during startup for dynamic textures. This ensures that custom texture loading only happens once and users don't see any weird flashes on startup 2020-10-03 17:10:36 -05:00
iwubcode fd3af4c5d3 InputCommon: Introducing the "Dynamic Input Texture". Configuration links an emulated input action to an image based on what host key is defined for that emulated input. Specific regions are called out in configuration that mark where to replace an input button with a host key image. 2020-10-03 17:10:35 -05:00
iwubcode 8a1539f948 VideoCommon: Make a reusable free function for getting top level directories that have a matching gameid text file underneath 2020-10-03 17:10:35 -05:00
Sintendo 3499cedde4 Jit64: fselx - Skip MOVAPS + MOVSD (SSE4.1)
For the non-packed variant of this instruction, a MOVSD instruction was
generated to copy only the lower 64 bits of XMM1 to the destination
register. This was done in order to keep the destination register's
upper half intact.

However, when register c and the destination register are the same,
there is no need for this copy. Because the registers match and due to
the way the mask is generated, BLENDVPD will end up taking the upper
half from the destination register, as intended.

Additionally, the MOVAPS to copy Rc into XMM1 can also be skipped.

Before:
66 0F 57 C0          xorpd       xmm0,xmm0
F2 41 0F C2 C6 06    cmpnlesd    xmm0,xmm14
41 0F 28 CE          movaps      xmm1,xmm14
66 41 0F 38 15 CA    blendvpd    xmm1,xmm10,xmm0
F2 44 0F 10 F1       movsd       xmm14,xmm1

After:
66 0F 57 C0          xorpd       xmm0,xmm0
F2 41 0F C2 C6 06    cmpnlesd    xmm0,xmm14
66 45 0F 38 15 F2    blendvpd    xmm14,xmm10,xmm0
2020-10-03 18:28:41 +02:00
Sintendo 9ac324aed3 Jit64: fselx - Skip MOVSD (AVX)
For the non-packed variant of this instruction, a MOVSD instruction was
generated to copy only the lower 64 bits of XMM1 to the destination
register. This was done in order to keep the destination register's
upper half intact.

However, when register c and the destination register are the same,
there is no need for this copy. Because the registers match and due to
the way the mask is generated, VBLENDVPD will end up taking the upper
half from the destination register, as intended.

Before:
66 0F 57 C0          xorpd       xmm0,xmm0
F2 41 0F C2 C6 06    cmpnlesd    xmm0,xmm14
C4 C3 09 4B CA 00    vblendvpd   xmm1,xmm14,xmm10,xmm0
F2 44 0F 10 F1       movsd       xmm14,xmm1

After:
66 0F 57 C0          xorpd       xmm0,xmm0
F2 41 0F C2 C6 06    cmpnlesd    xmm0,xmm14
C4 43 09 4B F2 00    vblendvpd   xmm14,xmm14,xmm10,xmm0
2020-10-03 18:28:27 +02:00
Connor McLaughlin a8df2caba9
Merge pull request #9125 from stenzek/vulkan-validation
Vulkan: Use VK_LAYER_KHRONOS_validation for validation
2020-10-02 20:18:13 +10:00
Christian Aguilera ee13e6ec80 Improved responsiveness when refreshing game list. 2020-10-01 22:10:16 +02:00
Christian Aguilera 4ca92464c0 **Refresh** and **Purge Game List Cache** now correctly enabled/disabled as notified by GameListRefreshRequested and GameListRefreshCompleted. 2020-10-01 22:09:45 +02:00
Christian Aguilera bada677c5a Avoid using unnecessary RunOnObject() calls in GameTracker's worker thread to prevent deadlocks on shutdown. 2020-10-01 22:09:45 +02:00
Christian Aguilera dc7b92651f Ensured that GameTracker's internal worker thread is flushed on exit to avoid crashes when accessing stale, already-destroyed data, and to favor responsiveness. 2020-10-01 22:09:45 +02:00
Christian Aguilera 213610e95d Extended WorkQueueThread class with Clear(), Cancel() and IsCancelled(). 2020-10-01 22:09:45 +02:00
Christian Aguilera 5b757024c4 GameListModel instance ownership transferred back to the GameList instance. The GameListModel instance will be passed as a constructor parameter where needed. 2020-10-01 22:09:45 +02:00
Christian Aguilera 0d02e70d4a Removed all references to GameListModel from the Settings component. 2020-10-01 22:09:45 +02:00
Sepalani 6675186520 Socket: Set SO_NOSIGPIPE on macOS 2020-10-01 13:25:34 +04:00
Stenzek 24bb947eff Vulkan: Use VK_LAYER_KHRONOS_validation for validation
VK_LAYER_LUNARG_standard_validation is deprecated.
2020-10-01 17:21:46 +10:00
JMC47 31524288e3
Merge pull request #9116 from jordan-woyak/fix-wm-netplay
Core/NetPlay: Fix Wii Remote syncing.
2020-09-30 17:42:30 -04:00
Sammi Husky fa866062ca DolphinQt/Debugger: Fix DBAT and IBAT registers in RegisterWidget 2020-09-29 22:11:21 -07:00
JMC47 ebdcddfcd0
Merge pull request #9120 from JosJuice/controller-defaults
Fix controller defaults being empty on fresh run
2020-09-29 18:38:11 -04:00
JosJuice 623340bbbb Fix controller defaults being empty on fresh run
A very early call to Config::Save is now creating empty
controller INI files.

https://bugs.dolphin-emu.org/issues/12283
2020-09-29 21:49:22 +02:00
Jordan Woyak 0295d470b1 ControllerEmu: Increase "IMUPointer" "Total Yaw" default value to match that of regular "Point" settings.
Removed "Total Yaw" from included Wii remote input profile to take on the default value.
2020-09-28 18:09:34 -05:00
Jordan Woyak f766c89a08 ControllerEmu: Increase Total Yaw/Pitch default values to compensate for new FOV and to reach screen edges in the Wii Menu. 2020-09-28 18:09:34 -05:00
Jordan Woyak f9280d0f66 ControllerInterface/Wiimote: Add "IR Distance" input providing a calculated distance from sensor bar in meters. 2020-09-28 18:09:34 -05:00
Jordan Woyak 761f7798c9 WiimoteEmu: Increase Camera FOV constants to 42 by 31.5 degrees. 2020-09-28 18:09:34 -05:00
Jordan Woyak 1063c4e940 MathUtil: Add Population (vs Sample) versions of Variance and StandardDeviation to RunningVariance. 2020-09-28 18:09:33 -05:00
Jordan Woyak 8f8509afc3 Core/NetPlay: Fix Wii Remote syncing. 2020-09-27 13:10:19 -05:00
Jordan Woyak 6cb14a9a54
Merge pull request #9115 from jordan-woyak/default-modifiers
Core: Unbreak default keyboard mappings.
2020-09-26 10:20:57 -05:00
Jordan Woyak 24771aac5a Core: Unbreak default keyboard mappings. 2020-09-26 08:25:56 -05:00
Connor McLaughlin aea0239071
Merge pull request #9109 from stenzek/msaa-efb-readback
FramebufferManager: Fix EFB readbacks with MSAA on
2020-09-26 17:46:16 +10:00
Jordan Woyak 431eb4d60d ExpressionParser: Improve hotkey suppression logic. Allow activation with simultaneous press of modifier and final input. 2020-09-25 22:51:33 -05:00
Jordan Woyak 44927da420 ExpressionParser: Replace ScopeGuard with custom deleter unique_ptr. 2020-09-25 22:51:33 -05:00
Jordan Woyak 48b76ff90f InputCommon: Improve input detection to produce buton combinations. 2020-09-25 22:51:32 -05:00
Jordan Woyak d8ad8c3861 InputCommon: Make hotkeys and input detection aware of Ctrl -> L_Ctrl / R_Ctrl hierarchy. 2020-09-25 20:29:18 -05:00
Jordan Woyak aae913fbc6 InputCommon: Clean up modifier ignoring logic. 2020-09-25 20:29:18 -05:00
Jordan Woyak f7bf26cd60 Core: Clean up default hotkey expressions. 2020-09-25 20:29:18 -05:00
Jordan Woyak f015c99a51 ControllerInterface: Add platform consistent names for modifier keys. 2020-09-25 20:29:18 -05:00
Jordan Woyak d2729df281 ExpressionParser: Allow duplicate and superset modifier hotkeys to function. 2020-09-25 20:29:18 -05:00
Jordan Woyak b3acc7403f InputCommon: Support detecting combinations of inputs. (Hotkeys) 2020-09-25 20:29:18 -05:00
Jordan Woyak e6ba495486 ExpressionParser: Suppress inputs when hotkey modifiers are pressed. 2020-09-25 20:29:18 -05:00
Jordan Woyak 52547379c9 ExpressionParser: Add Hotkey syntax. 2020-09-25 20:29:18 -05:00
Ryan Meredith 991eb6ae83 Android: Use DialogFragment for AlertMessage 2020-09-25 11:50:04 -04:00
Stenzek 880f7ca6bb FramebufferManager: Fix EFB readbacks with MSAA on
Regression from #8827.
2020-09-25 20:58:02 +10:00
LC a9b15dfe3c
Merge pull request #9107 from JosJuice/qt-disc-0
DolphinQt: Use 1-based disc numbering in InfoWidget
2020-09-23 12:29:15 -04:00
JMC47 54e570a95f
Merge pull request #8902 from JosJuice/android-convert
Android: Add disc image conversion
2020-09-23 12:27:43 -04:00
JosJuice 0ddd296cd9 DolphinQt: Use 1-based disc numbering in InfoWidget 2020-09-23 11:42:22 +02:00
JosJuice 402643fe4c VolumeVerifier: Call CheckDiscSize from Finish 2020-09-23 11:19:03 +02:00
JMC47 f33767f19c
Merge pull request #9088 from JosJuice/android-sysconf
Android: Add Wii SYSCONF settings to GUI
2020-09-22 14:03:56 -04:00
JosJuice 4f62960fb1 VolumeVerifier: Make high severity "too small" hide low severity "too small" 2020-09-21 21:00:04 +02:00
JosJuice 17e02838b0 DolphinQt: Stop using qtmain 2020-09-21 17:27:10 +02:00
JosJuice 16d2ef1ea9 DolphinQt: Handle non-ASCII characters in Windows cmd arguments
CommandLineParse expects UTF-8 strings. (QApplication, on the
other hand, seems to be designed so that you can pass in the
char** argv untouched on Windows and get proper Unicode handling.)
2020-09-21 17:26:29 +02:00
Sepalani 8488eb9793 IP/Top: Log IOCTL_SO_GETHOSTID properly 2020-09-20 20:46:49 +04:00
Jordan Woyak 50b5224d06
Merge pull request #8840 from Techjar/evdev-combining-phys
ControllerInterface: Combine evdev devices with the same physical location in addition to unique ID
2020-09-20 09:28:09 -05:00
Sepalani faa1eb71ef IP/Top: Add SO_LINGER optname 2020-09-20 11:40:25 +04:00
Jordan Woyak 8587ebba86 WiimoteReal: Only duplicate data reports when speaker data is enabled. 2020-09-19 20:04:27 -05:00
Jordan Woyak 2e753abcc9 Update state version. 2020-09-19 18:02:25 -05:00
Jordan Woyak 32ef8a46a1 Core/BTEmu: Change a member variable to a local variable. 2020-09-19 18:00:22 -05:00
Jordan Woyak 0ca73355a8 ControllerEmu: Improve and simplify UpdateCalibrationData. 2020-09-19 08:40:55 -05:00
Techjar 29460b946e Qt/MappingWindow: Add support for built-in profiles 2020-09-18 06:32:42 -04:00
JMC47 6ada03fca2
Merge pull request #9075 from JosJuice/android-osd-left-margin
Android: Move OSD out of the way when menu is open
2020-09-16 16:42:04 -04:00
JMC47 655308255e
Merge pull request #9073 from darkain/patch-1
Adding AmdPowerXpressRequestHighPerformance
2020-09-16 15:56:04 -04:00
JosJuice 7749e8c10c Only automatically override SYSCONF settings when it has an effect
Any call to Config::SetCurrent will cause the relevant setting
to show up as overridden in the Android GUI, which can be confusing,
so let's not do it when the new value is the same as the original.
2020-09-16 20:34:14 +02:00
JosJuice f01ccfdb82 Android: Only allow conversion when appropriate 2020-09-16 18:48:25 +02:00
JosJuice 3805b84906 Android: Add content provider support to File::Delete 2020-09-16 18:38:53 +02:00
JosJuice 6e1e6d2311 Android: Add content provider support to File::IOFile
Taking the hit now to prepare us for when Google Play will
force us to use scoped storage...
2020-09-16 18:38:53 +02:00
JosJuice ca46028cde DiscIO: Use std::function for compression callback 2020-09-16 18:36:50 +02:00
JosJuice 161f99b864 Android: Move OSD out of the way when menu is open
https://bugs.dolphin-emu.org/issues/12256
2020-09-16 18:36:15 +02:00
JosJuice 9c97654603 Config: Add SYSCONF to IsSettingSaveable
SYSCONF very much is saveable. Whether it's in IsSettingSaveable
or not hasn't mattered until now since the SYSCONF settings use
separate config loader code that doesn't check IsSettingSaveable,
but the next commit will require SYSCONF to be marked as saveable.
2020-09-16 12:15:50 +02:00
JMC47 e4e50691fb
Merge pull request #9086 from JosJuice/wiimote-init-order
Core: Run Wiimote::Initialize before HW::Init to avoid crash
2020-09-16 02:26:17 -04:00
JMC47 e0117a86ad
Merge pull request #8819 from JosJuice/panic-alert-deadlock-pause-on-focus-loss
DolphinQt: Fix the panic alert deadlock, Pause on Focus Loss edition
2020-09-15 11:46:46 -04:00
JosJuice de7ef47548 Core: Run Wiimote::Initialize before HW::Init to avoid crash
Fixes a crash on Android (probably nogui too?) caused by PR 8985:

std::__ndk1::__throw_out_of_range(char const*) stdexcept:265
std::__ndk1::__vector_base_common<true>::__throw_out_of_range() const vector:319
InputConfig::GetController(int) InputConfig.cpp:160
WiimoteCommon::GetHIDWiimoteSource(unsigned int) Wiimote.cpp:71
IOS::HLE::WiimoteDevice::WiimoteDevice(IOS::HLE::Device::BluetoothEmu*, int, std::__ndk1::array<unsigned char, 6ul>) WiimoteDevice.cpp:71
IOS::HLE::Device::BluetoothEmu::BluetoothEmu(IOS::HLE::Kernel&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) BTEmu.cpp:64
IOS::HLE::Kernel::AddStaticDevices() IOS.cpp:435
IOS::HLE::Init() IOS.cpp:837
Core::EmuThread(std::__ndk1::unique_ptr<BootParameters, std::__ndk1::default_delete<BootParameters> >, WindowSystemInfo) Core.cpp:442
2020-09-15 12:19:00 +02:00
LC 9e3c08394a
Merge pull request #9085 from Techjar/better-monospace
Qt: Use better method of getting default monospace font
2020-09-15 05:01:15 -04:00
LC 601ff182db
Merge pull request #9084 from Techjar/custom-rtc-tz-fix
Qt/AdvancedPane: Force UTC time for custom RTC entry
2020-09-15 04:58:26 -04:00
Techjar 0759ead9b6 Qt: Use better method of getting default monospace font
This should give us a nicer font on Windows, while also not severely
impacting the existing behavior on Linux.
2020-09-15 04:48:44 -04:00
Techjar 4d15fb62d9 Qt/AdvancedPane: Force UTC time for custom RTC entry 2020-09-14 22:09:14 -04:00
JMC47 4f1f849c9d
Merge pull request #8985 from jordan-woyak/btemu-cleanup
BTEmu/Wiimote: Fixes and Cleanups.
2020-09-14 02:09:27 -04:00
iwubcode 2bb7d207b7 DolphinQt: fix other widgets that use lambdas (capturing this) without setting the receiver 2020-09-12 17:53:17 -05:00
iwubcode a83bf8bc59 DolphinQt: properly remove slot connection for ConfigChange when object is destructed 2020-09-12 17:35:58 -05:00
JMC47 1335df8eb5
Merge pull request #9039 from shuffle2/bt-dll
windows: keep an extra reference to BluetoothApis.dll
2020-09-11 04:28:55 -04:00
JMC47 dcbe9da279
Merge pull request #8743 from Techjar/apple-pls-support-standard-api
VideoBackends: Disable GPU Texture Decoding under MoltenVK
2020-09-10 09:54:11 -04:00
Vincent Milum Jr 4e443ed857
Adding AmdPowerXpressRequestHighPerformance
Adding AmdPowerXpressRequestHighPerformance

This will allow AMD drivers to detect the request to use the dGPU instead of the iGPU on compatible hybrid graphics systems.

Reference: https://community.amd.com/thread/169965
2020-09-09 22:09:34 -07:00
Admiral H. Curtiss c74ea6696e Settings: Fix incorrect config key for enabled analytics. 2020-09-09 20:19:30 +02:00
JMC47 a31c204ca8
Merge pull request #8765 from AdmiralCurtiss/jit-reuse-memory
Jit64 codegen space reuse.
2020-09-09 08:16:09 -04:00
orbea 2bfbc4d79f cmake: Silence warnings. 2020-09-08 21:18:40 -07:00
Techjar 8423f848d0 ControllerInterface: Combine evdev devices with the same physical location in addition to unique ID 2020-09-08 18:52:15 -04:00
JMC47 3d33b1c2c5
Merge pull request #9060 from Pokechu22/ignore-pi-reset-code
Ignore PI_RESET_CODE resetting DI in Wii mode
2020-09-08 01:56:19 -04:00
LC b350cf043b
Merge pull request #8976 from JosJuice/port-some-settings
Port some settings to the new config system
2020-09-07 22:37:46 -04:00
LC fa91b47863
Merge pull request #9054 from sepalani/hle-cleanup
HLE cleanup
2020-09-07 22:36:19 -04:00
LC 8e505ad8d5
Merge pull request #9055 from JosJuice/gc-sample-rate
AudioInterface: Use 32029/48043 Hz in more places
2020-09-07 22:35:00 -04:00
LC 48cfc32bf3
Merge pull request #8935 from JosJuice/di-read-latency
DVDInterface: Increase the latency for read commands
2020-09-07 22:31:18 -04:00
Techjar 69358b2186 VideoBackends: Disable GPU Texture Decoding under MoltenVK
It's broken and causes spectacular artifacts and crashes.
2020-09-07 17:28:05 -04:00
JMC47 e7e5175606
Merge pull request #8861 from JosJuice/netplay-hash
Make netplay's "same game" check more robust
2020-09-06 17:14:08 -04:00
JosJuice bd44106fec AudioCommon: Get initial sample rates from AudioInterface 2020-09-06 15:37:20 +02:00
JMC47 c8c4ec28ce
Merge pull request #8644 from JosJuice/rework-tgc
DiscIO: Rework the implementation of TGC reading
2020-09-06 07:06:26 -04:00
JosJuice 6eefc3c524 Make default graphics backend not show up as empty
Fixes https://bugs.dolphin-emu.org/issues/12245.

I considered making a change to DolphinQt instead of
the core, but then additional effort would've been
required to add the same fix to the Android GUI once
we start using the new config system there.
2020-09-06 12:56:45 +02:00
Pokechu22 8142712c88 Ignore PI_RESET_CODE resetting DI in Wii mode
Fixes bug 12241
2020-09-04 16:54:00 -07:00
LC db067104ed
Merge pull request #9047 from JosJuice/wia-header-heuristic
DiscIO: Adjust WIA/RVZ header size heuristic
2020-09-01 17:58:51 -04:00
LC 936702bd04
Merge pull request #9033 from leoetlino/scan-thread
IOS/USB: Move scan thread logic into a separate class
2020-09-01 17:56:33 -04:00
Sepalani c63ac38c83 Socket: Abort pending operations on shutdown 2020-09-01 19:26:44 +04:00
LC 42a7c959e1
Merge pull request #9056 from JosJuice/supportsreadwiidecrypted-parameter
DiscIO: Add parameters to BlobReader::SupportsReadWiiDecrypted
2020-09-01 07:25:31 -04:00
LC 6bd7687893
Merge pull request #9050 from stblr/memory-watcher-fix
MemoryWatcher: Do not follow invalid pointers
2020-09-01 07:24:05 -04:00
JosJuice bdd28c0edf DiscIO: Expand WIA/RVZ header size heuristic comments 2020-08-31 14:46:13 +02:00
Jordan Woyak e0b64e0ef8
Merge pull request #9049 from Ebola16/GCAC
GCAdapter_Android: Minor cleanup
2020-08-30 19:48:07 -05:00
Shawn Hoffman e601bc5532 windows: keep an extra reference to BluetoothApis.dll 2020-08-30 17:46:32 -07:00
Jordan Woyak 0a63340c20
Merge pull request #9037 from shuffle2/code-cleanup
Code cleanup
2020-08-30 19:43:23 -05:00
Pablo Stebler ff168469b7
MemoryWatcher: Do not follow invalid pointers 2020-08-30 10:29:40 +02:00
JosJuice 047bb80337 DiscIO: Add parameters to BlobReader::SupportsReadWiiDecrypted
It's possible (but rare) for a WIA or RVZ file to support
this for some partitions but not all, and for the game and
the blob code to disagree on how large a partition is.
2020-08-29 15:18:52 +02:00
JosJuice 1a1b89e7e8 AudioInterface: Use 32029/48043 Hz in more places
In particular, I wanted to do change this in
AudioInterface::Init so that dumped GC audio doesn't need
to have a file split (changing from 32000 Hz to 32029 Hz)
when the emulated software initializes the AI registers.
I've also made the same change to DI's DTK code.
2020-08-29 13:24:39 +02:00
Sepalani 4c75b96254 HLE: Improve naming
Replace 'function' with 'hook' when appropriate
2020-08-28 20:29:05 +04:00
Shawn Hoffman 969ea6e4f5 msvc: enable /Zc:preprocessor and make build compile cleanly 2020-08-27 21:58:48 -07:00
Shawn Hoffman 4db06bf85b ogl: init ProgramShaderCache::s_ubo_align to 1.
silences a warning that it may cause div-by-zero.
2020-08-27 15:15:52 -07:00
Shawn Hoffman d35514399e msbuild: fix a typo 2020-08-27 15:15:52 -07:00
Kate 5981a1929d Add support for FreeBSD/arm64 2020-08-27 21:54:04 +01:00
Sepalani 17ad2ac719 HLE: Rename GetFunctionIndex functions 2020-08-27 22:12:15 +04:00
Sepalani 6b05e48bd6 HLE: Make naming closer to the current coding style 2020-08-27 22:01:04 +04:00
Sepalani e0605d7911 HLE: Remove unused OSBreakPoints 2020-08-27 21:41:32 +04:00
Sepalani 79bfb48d68 HLE: Remove unused function 2020-08-27 21:07:42 +04:00
Ryan Meredith acd717ffae GCAdapter_Android: Minor cleanup 2020-08-26 16:40:22 -04:00
Admiral H. Curtiss 4b91c071c1 Qt/GCMemcardCreateNewDialog: Use zero values for formatting instead of accessing g_SRAM. 2020-08-24 19:33:28 +02:00
Admiral H. Curtiss b175c203e4 GCMemcardDirectory: Avoid undefined behavior in ClearBlock(). 2020-08-24 19:32:10 +02:00
Admiral H. Curtiss 131eb9107b GCMemcard: Avoid undefined behavior in the static Format(). 2020-08-24 19:32:10 +02:00
Admiral H. Curtiss 87135db492 GCMemcardDirectory: Clarify data writing in FlushToFile(). 2020-08-24 19:32:10 +02:00
Admiral H. Curtiss 306a5e6990 Jit64: Keep track of free code regions and reuse space when possible. 2020-08-24 19:31:32 +02:00
Admiral H. Curtiss fdab9783c7 Externals: Add rangeset. 2020-08-24 19:31:32 +02:00
Admiral H. Curtiss 5b52b3e9cb x64Emitter: Check end of allocated space when emitting code. 2020-08-24 19:31:32 +02:00
Shawn Hoffman fcc8dfd189 Common/Assert: no longer needs special impl for msvc 2020-08-23 13:57:05 -07:00
Shawn Hoffman 89b6a4cbee DolphinQt: resolve Qt5.15 deprecations 2020-08-23 13:57:05 -07:00
Shawn Hoffman c629af6319 replace is_pod with is_standard_layout && is_trivially_copyable 2020-08-23 13:57:05 -07:00
Shawn Hoffman 12ea56a6b2 remove extraneous WIN32_LEAN_AND_MEAN definition 2020-08-23 13:57:05 -07:00
Shawn Hoffman 181e0dba21 apply `if constexpr` in a couple places 2020-08-23 13:57:05 -07:00
Shawn Hoffman ccbc4c2d99 fix possible dangling shared_ptr ptr in ios 2020-08-23 13:57:05 -07:00
Shawn Hoffman 3ee4c53d65 wiimotereal: add some error handling. replace malloc with make_unique 2020-08-23 13:57:05 -07:00
Shawn Hoffman 938fd4e438 use constexpr for some compile-time expressions 2020-08-23 13:57:05 -07:00
Shawn Hoffman 79f5ea0474 initialize some variables which need to be 2020-08-23 13:57:05 -07:00
Shawn Hoffman c22748dc38 windows: fix some incorrect string lengths 2020-08-23 13:55:15 -07:00
Shawn Hoffman b021573a70 GekkoDisassembler: fix rld* 2020-08-23 13:55:14 -07:00
Shawn Hoffman 49590c9a42 FileUtil: handle some error conditions 2020-08-23 13:55:14 -07:00
Shawn Hoffman 3bc8a26083 don't use std::move on const variables 2020-08-23 13:55:14 -07:00
Shawn Hoffman 1b1fc39f02 handle to GetFileVersionInfoW must be zero 2020-08-23 13:55:14 -07:00
Shawn Hoffman 6ef9d70701 name some threads 2020-08-22 17:22:07 -07:00
Shawn Hoffman a769dff1d0 windows: additionally set thread name via SetThreadDescription 2020-08-22 17:22:07 -07:00
LC 4a34b74e68
Merge pull request #9035 from shuffle2/vs-pretty
misc vcxproj cleanup
2020-08-22 20:13:25 -04:00
Shawn Hoffman cff4806d8d windows: fix build if pch were to be disabled 2020-08-22 16:18:24 -07:00
Shawn Hoffman af55938538 msbuild: use the moc dispatcher from Qt's vstools
The new method supports build parallelism and cleaner
integration into msbuild dependency flows.
2020-08-22 16:17:51 -07:00
Shawn Hoffman 03a263db20 msbuild: fixup linking of discord-rpc 2020-08-22 16:17:50 -07:00
Shawn Hoffman 2f47f486af msbuild: re-enable standalone vcxproj processing 2020-08-22 16:17:50 -07:00
Shawn Hoffman 1f8cda6281 DolphinQt: sort the files in vcxproj 2020-08-22 16:17:50 -07:00
Shawn Hoffman 390f509bbf windows: disable C4200 directly in libusb.h 2020-08-22 16:17:50 -07:00
Shawn Hoffman 94bf48b67c msbuild: refactor stuff out of project files (for dolphin) 2020-08-22 16:17:50 -07:00
Shawn Hoffman 3a0d8c0208 msbuild: enable D3DCommon to use pch 2020-08-22 16:17:50 -07:00
Shawn Hoffman 36ace8eb52 prettify some constructs in vcxproj files 2020-08-22 16:17:50 -07:00
JosJuice f7f0fa2d85 DiscIO: Adjust WIA/RVZ header size heuristic
The heuristic was not allocating enough space for Metroid: Other M,
at least when using the default settings. (This didn't break the
file, it just caused some headers to be placed at the end of the
file instead of at the start and wasted a few hundred kilobytes.)
2020-08-22 22:26:55 +02:00
Admiral H. Curtiss f859da112e Update Windows build to use Qt 5.15.0. 2020-08-22 20:08:38 +02:00
JosJuice fc6c1931fa VolumeVerifier: Adjust problem descriptions for new netplay check
The new hash check catches essentially all desync problems
that VolumeVerifier can catch, so from the user's perspective,
such problems will result in Dolphin refusing to start the
game on netplay rather than actually getting a desync.
2020-08-19 17:21:38 +02:00
Léo Lam d1439a1fa9
IOS/USB: Move scan thread logic into a separate class
This moves the scan thread logic and variables into a separate
ScanThread class. By turning ScanThread instances into members of the
most derived class, this ensures that the scan thread is always
properly stopped when the most derived class is destructed and fixes
a race condition that could cause the scan thread to call virtual
member functions from a derived class whose members have already
been destructed.

A drawback of this approach is that the scan thread must be the last
member variable, so this commit also adds static assertions to ensure
that the assumption stays valid.
2020-08-17 15:14:45 +02:00
Léo Lam 55c931d624
Merge pull request #8995 from Tilka/warnings
Fix some more GCC warnings
2020-08-17 14:49:28 +02:00
Léo Lam 6104018fe1
Merge pull request #9020 from Tilka/usb
IOS/USB: fix potential race condition
2020-08-17 12:15:26 +02:00
Shawn Hoffman 9a5a705d01 Fix comparison to invalidated vector iterator.
GetFstEntryForPath may modify the children vector,
so do it before taking an iterator to the vector.
2020-08-16 15:17:11 -07:00
Shawn Hoffman deb73d0167 msvc: temporary workaround for C4789 false positive 2020-08-16 12:49:00 -07:00
Jordan Woyak 0ad123bdbb BTEmu: Fix home menu inquiry assigning multiple wii remotes to wrong slots. 2020-08-16 11:38:13 -05:00
Jordan Woyak 6a6f1451ff Update state version. 2020-08-16 11:38:13 -05:00
Jordan Woyak 13ee6bd7bb BTEmu/Wiimote: Cleanups/Fixes. 2020-08-16 11:38:13 -05:00
LC 2c5920dccc
Merge pull request #9028 from cristian64/netplaybrowser_deadlock_on_exit
DolphinQt: Prevent deadlock when exiting the NetPlay Session Browser dialog
2020-08-16 08:57:35 -04:00
Christian Aguilera ddeb2236ae Removed RunOnObject() usage to prevent deadlock on exiting the NetPlay Session Browser dialog. 2020-08-16 12:32:50 +01:00
LC 6fc7135047
Merge pull request #8855 from shuffle2/dol
DolReader: treat overly large data segment as bss
2020-08-16 06:02:39 -04:00
Jordan Woyak 89ca9b51ad Bluetooth/WiimoteDevice: Remove some silly comments. 2020-08-15 21:23:37 -05:00
Jordan Woyak 1cddf9c527 BTEmu: Remove a wrong INFO_LOG. 2020-08-15 21:23:37 -05:00
Christian Aguilera eee1589aa3 Restoring NetPlay Session Browser dialog's settings before connecting widgets, to prevent multiple refresh requests on change. 2020-08-15 22:29:23 +01:00
JosJuice 07a0d44b36
Merge pull request #8571 from Pokechu22/di-interrupts
Fix gamecube games not noticing disc changes
2020-08-11 20:03:41 +02:00
JosJuice bd87285f3a FrameDump: Don't ignore the time base numerator
Fixes a regression where f72b756 made all dumped video super long.
2020-08-11 11:17:22 +02:00
cyrozap c2de1d041a Fix builds with system LZMA when using versions of CMake before 3.14
The "FindLibLZMA.cmake" module in CMake versions prior to 3.14 do not
set an alias like how Externals/liblzma/CMakeLists.txt does, so builds
performed using one of those older CMake versions will fail if the
system LZMA library is detected. To fix this, we need to link against
"lzma" instead of "LibLZMA::LibLZMA".

Fixes: b59ef81a7e ("WIA: Implement bzip2, LZMA, and LZMA2 decompression")
2020-08-11 02:53:16 -05:00
Tillmann Karras ca61b6c1ab DiscIO: make use of std::nullopt
This also fixes a bogus GCC warning.
2020-08-08 21:53:27 +01:00
Tillmann Karras d2b06f4786 Fix various -Wshadow warnings 2020-08-08 21:45:03 +01:00
Tillmann Karras ee0d4661ab IOS/USB: deduplicate scan thread stopping
Unlike other functions, base ctors/dtors are always called automatically.
2020-08-08 21:40:23 +01:00
Tillmann Karras 1f4b9adbf5 ISO/USB: fix potential race condition 2020-08-08 21:40:23 +01:00
Tilka a161e58591
Merge pull request #8914 from JosJuice/jit64-low-dcbz
Jit64: Implement low DCBZ hack
2020-08-08 21:19:16 +01:00
Tilka 8b236fc8f8
Merge pull request #8986 from jordan-woyak/button-pressed-no-ext
WiimoteEmu: Don't check extension button press for Wii remote reconnection.
2020-08-08 21:06:46 +01:00
Tilka c0fde32d80
Merge pull request #9019 from JosJuice/verify-wad-split-tmd-ticket
VolumeVerifier: Split TMD error from ticket error for WADs
2020-08-08 21:05:21 +01:00
JosJuice 76228fa482 Jit64: Implement low DCBZ hack
I was hoping this would improve the performance of Cars 2 by
avoiding interpreter fallbacks, but it doesn't seem to have
made any measurable impact.
2020-08-08 22:03:34 +02:00
Tilka 3101d957b6
Merge pull request #8886 from JosJuice/stack-check-instruction
PatchEngine: Attempt to fix crash in IsStackSane
2020-08-08 20:59:48 +01:00
Tilka 6356cc8b08
Merge pull request #8910 from OatmealDome/os-deprecated-cleanup
Analytics: Replace usage of Gestalt for retrieving macOS version
2020-08-08 20:53:14 +01:00
Tilka f17b5dd41b
Merge pull request #8804 from iwubcode/dsu-improvements
DolphinQt / InputCommon - Support multiple DSU servers
2020-08-08 20:45:57 +01:00
JosJuice 7ef0bc0359 VolumeVerifier: Split TMD error from ticket error for WADs
When I first made VolumeVerifier, I figured that the distinction
between an unsigned ticket and an unsigned TMD was a technical
detail that users would have no reason to care about. However,
while this might be true for discs, it isn't equally true for
WADs, due to the widespread practice of fakesigning tickets to
set the console ID to 0. This practice does not require
fakesigning the TMD (though apparently people do it anyway,
at least sometimes...), and the presence of a correctly signed
TMD is a useful indicator that the contents have not been
tampered with, even if the ticket isn't correctly signed.
2020-08-08 21:15:51 +02:00
Tilka 76b955e090
Merge pull request #8940 from RenaKunisaki/master
add Break On Hit and Log On Hit for instruction breakpoints
2020-08-08 19:46:10 +01:00
Tilka 6d0bc03e00
Merge pull request #8992 from Sintendo/fselx-avx
Jit64: Avoid unnecessary MOVAPS instructions
2020-08-08 19:38:48 +01:00
Tilka d7a96f927c
Merge pull request #9002 from OatmealDome/renderwidget-sheet
MainWindow: Attach quit emulation sheet to RenderWidget if shown on macOS
2020-08-08 19:18:32 +01:00
Tilka 4c64446afe
Merge pull request #9005 from OatmealDome/macos-psn-arg
DolphinQt: Ignore "-psn" command line option on macOS
2020-08-08 19:11:39 +01:00
Tilka 340c08a88d
Merge pull request #9008 from Sintendo/dspjitlea
DSPJit: Various minor improvements
2020-08-08 19:08:24 +01:00
Tilka 3201944208
Merge pull request #9016 from JosJuice/jitarm64-fctiwzx-fcvt
JitArm64: Avoid double rounding in fctiwzx
2020-08-08 17:55:49 +01:00
JosJuice 8b4f16a310 JitArm64: Avoid double rounding in fctiwzx
FCVT doesn't necessarily round to zero, so the result
might be inaccurate if we use it. To ensure correct
rounding, we use FCVTS from double FPR to 32-bit GPR.
Unfortunately, FCVTS can't do double FPR to single FPR.
2020-08-07 22:44:04 +02:00
Jordan Woyak a77977d0aa
Merge pull request #8999 from AdmiralCurtiss/input-expression-math
Add a few input expression functions (trigonometry, sqrt, pow, min, max, clamp)
2020-08-07 14:40:29 -05:00
LC de5d0e54be
Merge pull request #9013 from JosJuice/savescreenshot-wait-for-completion
Remove wait_for_completion parameter from Renderer::SaveScreenshot
2020-08-06 19:44:43 -04:00
JosJuice 7385e9129c Remove wait_for_completion parameter from Renderer::SaveScreenshot
This is now unused. Seems like it was an improper fix
(there would be a race if saving the screenshot took longer
than 2 seconds) back when it was used too.
2020-08-06 21:57:12 +02:00
Sintendo 363f3f82bb DSPJitRegCache: Simplify WriteReg
The intent here is to generate a more compact instruction if a 32-bit
immediate can be zero-extended to the desired 64-bit immediate.

Nowadays the emitter is smart enough to do this for us, so this logic is
redundant.
2020-08-05 10:23:28 +02:00
Sintendo 618d261b91 DSPJitMultiplier: addpaxz - AND constant directly
There's no need to load the 64-bit immediate into a temporary register.
x64 will sign-extend 32-bit immediates to 64 bits, giving us the exact
value we need in this case.

48 C7 C0 00 00 FF FF    mov         rax,0FFFFFFFFFFFF0000h
48 21 C2                and         rdx,rax

48 81 E2 00 00 FF FF    and         rdx,0FFFFFFFFFFFF0000h
2020-08-05 10:22:51 +02:00
Sintendo 49a4e09719 DSPJit: Replace/optimize LEAs
- LEA is a bit silly when the source and the destination are the same. A
simple ADD or SHL will do in those cases.

66 8D 04 45 00 00 00 00 lea         ax,[rax*2]
66 03 C0                add         ax,ax

48 8D 04 00             lea         rax,[rax+rax]
48 03 C0                add         rax,rax

66 8D 14 D5 00 00 00 00 lea         dx,[rdx*8]
66 C1 E2 03             shl         dx,3

- When scaling by 2, consider summing the register with itself instead.
The former always needs a 32-bit displacement, so the sum is more
compact.

66 8D 14 45 00 00 00 00 lea dx,[rax*2]
66 8D 14 00             lea dx,[rax+rax]
2020-08-05 10:22:50 +02:00
OatmealDome 5c1693587f DolphinQt: Ignore "-psn" command line option on macOS 2020-08-04 15:55:51 -04:00
JosJuice b0f9bb9f13 Port some settings to the new config system
Other than the controller settings and JIT debug settings,
these are the only settings which were defined in Java code
but not defined in the new config system in C++. (There are
still a lot of settings that are defined in the new config
system but not yet saveable in the new config system, though.)
2020-08-03 15:07:53 +02:00
OatmealDome fae8f8d68b MainWindow: Attach quit emulation sheet to RenderWidget on macOS 2020-08-03 05:48:57 -04:00
Ryan Meredith 6020133f5b LogManager: Add missing include 2020-08-02 19:52:10 -04:00
JosJuice 5cad82137d Allow translations and custom names in GameFile::GetNetPlayName
There is no longer any major reason for why this function would
need to return the same result for all players.
2020-08-02 22:46:53 +02:00
JosJuice a41166bb37 Make netplay's "same game" check more robust
Instead of comparing the game ID, revision, disc number and name,
we can compare a hash of important parts of the disc including
all the aforementioned data but also additional data such as the
FST. The primary reason why I'm making this change is to let us
catch more desyncs before they happen, but this should also fix
https://bugs.dolphin-emu.org/issues/12115. As a bonus, the UI can
now distinguish the case where a client doesn't have the game at
all from the case where a client has the wrong version of the game.
2020-08-02 22:46:53 +02:00
Admiral H. Curtiss cdf2a29b5e Qt/IOWindow: Add a handful of math functions to the function dropdown. 2020-08-02 22:09:09 +02:00
Admiral H. Curtiss 2281cde28b InputCommon: Add a handful of math functions to the expression parser. 2020-08-02 22:09:09 +02:00
JosJuice 234eaa0ff9
Merge pull request #7252 from Ebola16/Log
Android: Add Log Configuration to UI
2020-08-02 22:00:48 +02:00
Sintendo 08bdeefe05 Jit64AsmCommon: Use AVX in ConvertDoubleToSingle
Using AVX we can eliminate another MOVAPS instruction here.

Before:
0F 28 C8                movaps      xmm1,xmm0
66 0F DB 0D CF 2C 00 00 pand        xmm1,xmmword ptr [1F8D283B220h]

After:
C5 F9 DB 0D D2 2C 00 00 vpand       xmm1,xmm0,xmmword ptr [271835FB220h]
2020-08-02 18:07:47 +02:00
Felk f775e9b99d OnScreenDisplay: fix names rgba -> argb 2020-08-02 01:37:20 +02:00
Tilka dbacffd75d
Merge pull request #8731 from Pokechu22/dsp-lle-cpu-int-crash
Fix crash when using DSP LLE with CPU interpreter (or fastmem off)
2020-08-01 15:26:27 +01:00
JosJuice 13f20ecd34 DolphinQt: Don't capture local pointer by reference
This may be the cause of a crash that has been reported on the
forums, but I'm not sure since I can't reproduce it myself.
2020-07-31 11:33:48 +02:00
LC 0aaddf8b19
Merge pull request #8990 from JosJuice/wia-conversion-warning
DiscIO: Fix conversion warning
2020-07-30 21:45:24 -04:00
Pokechu22 9183c0c482 Bump state version 2020-07-29 16:57:37 -07:00
Pokechu22 e5e23c6b27 Mark several DVDInterface functions as static 2020-07-29 16:57:36 -07:00
Pokechu22 4415df463f Remove DVDInterface::Reset
It only resets the registers, which isn't something that needs to be done except for in DVDInterface::Init
2020-07-29 16:57:36 -07:00
Pokechu22 0fa96df818 Remove DriveState::DiscChangeDetected hack
Since both GameCube and Wii resets now work correctly, this hack is not needed anymore.
2020-07-29 16:57:36 -07:00
Pokechu22 a73eaf5712 Fix DVDLowReset spinup flag being read incorrectly 2020-07-29 16:57:35 -07:00
Pokechu22 9a8d426645 Implement PI_RESET_CODE resetting DI 2020-07-29 16:57:35 -07:00
Pokechu22 b8715b42d2 Only reset drive chip state (not DI registers) when changing discs
Resetting the DI registers disables interrupts, which means any errors reported (for instance) are just not sent though.
2020-07-29 16:57:35 -07:00
Pokechu22 537e40afb5 Only update DIMAR and DILENGTH if transfer completed without error
Turns out, Gamecube games actually do check DILENGTH, and if DILENGTH is at 0, they'll think the transfer completed successfully even if DEINT is used, since after all, surely that means everything was sent.  That caused all sorts of issues, from audio looping when a disc is removed since it's re-using the same buffer to just flat-out crashing instead of showing the disc removed screen.
2020-07-29 16:57:35 -07:00
Pokechu22 fba51b2956 Split drive state and drive error into 2 fields, and fix some inaccuracies
In particular:
- Trying to play audio in a non-ready state returns the state-specific error, not an audio buf error
- Audio status cannot be requested in non-ready states
- The audio buffer cannot be configured in states other than ReadyNoReadsMade
- Using the stop motor command while the motor is already stopped doesn't change states

Additionally, the internal state IDs are used (which distinguish ReadyNoReadsMade and Ready), instead of the state IDs exposed in request error.  This makes some of the weird behavior a bit more obvious.

State and error behavior of the seek command was not implemented in this commit.
2020-07-29 16:57:34 -07:00
JosJuice 2e8c5b4521 DolphinQt: Show a warning when launching an NKit disc image
It is my opinion that nobody should use NKit disc images without
being aware of the drawbacks of them. Since it seems like almost
nobody who is using NKit disc images knows what NKit is (hmm, now
how could that have happened...?), I am adding a warning to Dolphin
so that you can't run NKit disc images without finding out about the
drawbacks. In case someone really does want to use NKit disc images,
the warning has a "Don't show this again" option. Unfortunately, I
can't retroactively add the warning where it's most needed:
in Dolphin 5.0, which does not support Wii NKit disc images.
2020-07-29 21:05:57 +02:00
Sintendo 31755bc13a Jit64: fselx - Optimize SSE4.1 packed
Pretty much the same optimization we did for AVX, although slightly more
constrained because we're stuck with the two-operand instruction where
destination and source have to match.

We could also specialize the case where registers b, c, and d are all
distinct, but I decided against it since I couldn't find any game that
does this.

Before:
66 0F 57 C0          xorpd       xmm0,xmm0
66 41 0F C2 C1 06    cmpnlepd    xmm0,xmm9
41 0F 28 CE          movaps      xmm1,xmm14
66 41 0F 38 15 CC    blendvpd    xmm1,xmm12,xmm0
44 0F 28 F1          movaps      xmm14,xmm1

After:
66 0F 57 C0          xorpd       xmm0,xmm0
66 41 0F C2 C1 06    cmpnlepd    xmm0,xmm9
66 45 0F 38 15 F4    blendvpd    xmm14,xmm12,xmm0
2020-07-29 17:28:48 +02:00
Sintendo afb86a12ab Jit64: fselx - Optimize AVX packed
For the packed variant, we can skip the final MOVAPS and write the
result directly into the destination register.

Before:
66 0F 57 C0          xorpd       xmm0,xmm0
66 41 0F C2 C1 06    cmpnlepd    xmm0,xmm9
C4 C3 09 4B CC 00    vblendvpd   xmm1,xmm14,xmm12,xmm0
44 0F 28 F1          movaps      xmm14,xmm1

After:
66 0F 57 C0          xorpd       xmm0,xmm0
66 41 0F C2 C1 06    cmpnlepd    xmm0,xmm9
C4 43 09 4B F4 00    vblendvpd   xmm14,xmm14,xmm12,xmm0
2020-07-29 17:06:52 +02:00
JosJuice a05b1f9ab9 DiscIO: Fix conversion warning
Should fix https://bugs.dolphin-emu.org/issues/12208.
2020-07-29 10:55:02 +02:00
LC b354e343a7
Merge pull request #8988 from JosJuice/no-refresh-rate-round
VideoCommon: Don't round the refresh rate
2020-07-28 17:17:34 -04:00
Sintendo a52774ca63 Jit64: fselx - Add AVX path
AVX has a four-operand VBLENDVPD instruction, which allows for the first
input and the destination to be different. By taking advantage of this,
we no longer need to copy one of the inputs around and we can just
reference it directly, provided it's already in a register (I have yet
to see this not be the case).

Before:
66 0F 57 C0          xorpd       xmm0,xmm0
F2 41 0F C2 C6 06    cmpnlesd    xmm0,xmm14
41 0F 28 CE          movaps      xmm1,xmm14
66 41 0F 38 15 CA    blendvpd    xmm1,xmm10,xmm0
F2 44 0F 10 F1       movsd       xmm14,xmm1

After:
66 0F 57 C0          xorpd       xmm0,xmm0
F2 41 0F C2 C6 06    cmpnlesd    xmm0,xmm14
C4 C3 09 4B CA 00    vblendvpd   xmm1,xmm14,xmm10,xmm0
F2 44 0F 10 F1       movsd       xmm14,xmm1
2020-07-28 23:17:18 +02:00
JosJuice f72b756778 VideoCommon: Don't round the refresh rate
We now provide a double to the FPS counter and exact values
to FIFO recording and frame dumping.
2020-07-28 21:01:38 +02:00
Jordan Woyak bdfb320b3d WiimoteEmu: Don't check extension button press for wii remote reconnection. A real remote doesn't. We won't either. 2020-07-26 11:20:23 -05:00
Pokechu22 1ca3710bd2 DSPLLE: Use Memory functions isntead of directly using Memory::physical_base
Fixes bug 11980
2020-07-24 15:06:39 -07:00
Pokechu22 59dc7cfe7d Use size_t in some DSP code code 2020-07-24 15:06:39 -07:00
Lioncash f9b856aeda WiimoteEmu: Mark several getters as const
These don't modify internal class state, so they can be made const.
2020-07-24 15:48:27 -04:00
Ryan Meredith fdcc6a436b Android: Add Log Configuration to UI 2020-07-24 13:59:13 -04:00
Lioncash 4b21bc7508 LightingShaderGen: Transition over to fmt 2020-07-24 13:50:09 -04:00
Lioncash 7f7db6d3e7 VertexShaderGen: Transition over to using fmt 2020-07-24 13:34:47 -04:00
Tillmann Karras 062dd5ab0a DolphinQt: fix -Wunused-variable warning 2020-07-24 17:44:32 +01:00
Tillmann Karras 5bd2b2699c DolphinQt: fix -Wsign-compare warning 2020-07-24 17:44:32 +01:00
Tillmann Karras 750cb1f830 DolphinQt: fix -Wunused-but-set-variable warning 2020-07-24 17:41:37 +01:00
Tillmann Karras bf5b1092b2 DiscIO: fix -Wreorder warning 2020-07-24 17:41:37 +01:00
Tillmann Karras 04b31e7eee IOS: work around incorrect -Wunused-but-set-variable warning
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96311
2020-07-24 16:38:54 +01:00
Tillmann Karras fbd34f72ad EXI: fix -Wunused-variable warning 2020-07-24 15:35:35 +01:00
Tillmann Karras 7b2e93eea8 EXI: fix -Wreorder warning 2020-07-24 15:35:24 +01:00
JMC47 781662c6ad
Merge pull request #8793 from iwubcode/dump-texture-options
DolphinQt / VideoCommon: Add additional texture dumping options
2020-07-24 01:38:10 -04:00
JosJuice 213c1841f7
Merge pull request #8903 from AdmiralCurtiss/gcmemcard-file-identity-check
GCMemcard: Change behavior of TitlePresent() to more closely resemble how saves are actually identified.
2020-07-23 17:44:16 +02:00
iwubcode 9c8338ec4c DolphinQt / VideoCommon: Add additional texture dumping options. Specifically, this enables users to choose whether to dump mip maps, base level textures, or both. 2020-07-22 19:30:27 -05:00
LC d7a91316da
Merge pull request #8974 from Filoppi/patch-4
Fix disc image conversion button not being clear #3
2020-07-22 17:24:23 -04:00
Filippo Tarpini f6ba54b74e
Fix disc image conversion button not being clear #3
It wasn't clear whether the conversion would create a new file or replace the old one

Recreated #8952 directly from github
2020-07-22 23:00:20 +03:00
JosJuice 26536832c3 Config: Simplify IsSettingSaveable
Should make it both easier to edit and faster to run.
2020-07-22 11:46:47 +02:00
LC ae2348023b
Merge pull request #8964 from JosJuice/list-wad-file-type
DolphinQt: Show WAD as "WAD" instead of "" in file format column
2020-07-19 17:35:34 -04:00
JosJuice fe5e92f706 DolphinQt: Show WAD as "WAD" instead of "" in file format column
https://bugs.dolphin-emu.org/issues/12190
2020-07-19 21:30:48 +02:00
Jordan Woyak ae44f17667 HW/GCPadEmu: Adjust gate radius values to more closely match the real hardware. 2020-07-19 09:45:33 -05:00
LC 487cd7abd9
Merge pull request #8905 from JosJuice/jni-encoding
Android: Use correct encoding when converting strings
2020-07-18 22:13:14 -04:00
Filip Gawin 0ede5d1537 Use range loop (if possible) 2020-07-18 18:29:16 -05:00
iwubcode 97c9cf3e21 DolphinQt / InputCommon - add DSU string validator to avoid crashes, limited backwards compatibility support 2020-07-17 14:53:39 -05:00
iwubcode 58aa0150e1 DolphinQt / InputCommon: Support multiple DSU servers 2020-07-17 14:53:39 -05:00
JosJuice aa4896fb3f DolphinQt: Add i18n comment for "Surround" 2020-07-17 19:10:31 +02:00
Jordan Woyak 8b3e9e6a81 DolphinQt: Replace unusual Qt::InitialSortOrderRole usage with a custom role. 2020-07-16 20:27:07 -05:00
LC a7e475e57b
Merge pull request #8958 from jordan-woyak/sort-fix
DolphinQt: Fix default sort direction of game list.
2020-07-16 21:20:43 -04:00
Jordan Woyak ecf016e80a DolphinQt: Fix default sort direction of game list. 2020-07-16 19:21:14 -05:00
Techjar 037aa2192f NetPlay: Limit nickname length
Ridiculously long nicknames cause UI silliness, so 30 characters seems
like a reasonable limit, as it's the same as the forum.
2020-07-16 19:03:54 -04:00
Techjar 92812d0b0b QtUtils: Add UTF8CodePointCountValidator 2020-07-16 19:03:46 -04:00
LC c59648337a
Merge pull request #8955 from JosJuice/android-no-ashmem
Android: Don't access /dev/ashmem on newer Android versions
2020-07-16 14:23:51 -04:00
JosJuice 00cde7cbbd Android: Don't access /dev/ashmem on newer Android versions
Fixes a critical regression where 95945a0 made us unable to
start emulation on Android 10 and newer. Android is restricting
direct access to /dev/ashmem starting with the new SDK version,
but we can use the new (and simpler) ASharedMemory API instead.
We have to keep using the /dev/ashmem approach on old versions
of Android, though.
2020-07-16 20:06:58 +02:00
JosJuice f2cc3a2948 Add Android check for strerror_r variant
I don't know why Android does it like this, but at least
it's easy to fix. (We are currently at __ANDROID_API__ == 21.)
2020-07-16 18:51:58 +02:00
nyanpasu64 1a2b6ca2d6 Fix Windows CMake builds with shared zlib
On Linux, if shared zlib is present, zlib.h is always available and -lz
links to zlib, even if you don't run find_package(ZLIB).

For some reason I have zlib installed on Windows (possibly from vcpkg),
so find_package(ZLIB) succeeds and ZLIB_FOUND is true.
When Dolphin uses shared zlib on Windows, the problem is that zlib.h
is not in the default include path, and the CMake target is called
ZLIB::ZLIB and there's neither a target nor a library called z.

However, both find_package(ZLIB) and add_subdirectory(Externals/zlib)
create a target called ZLIB::ZLIB, so I'll switch to that instead.
Hopefully this change doesn't break anyone's build.
2020-07-15 23:25:18 -07:00
Admiral H. Curtiss 556e93f357 GCMemcard: Change behavior of TitlePresent() to more closely resemble how saves are actually identified.
This modifies GCMemcard::TitlePresent() to match my findings of how the GC BIOS and various games behave when you alter the fields in the directory entry.

It looks like for a save to be recognized by a game, the following have to be true:
- Game code and maker code must exactly match what the game expects.
- Filename is only checked up to the first null byte. All bytes afterwards can be whatever.

The BIOS itself does a full compare of the filename when checking for whether it should allow copying a file from one card to another, but behaves oddly in some cases when there's non-null bytes after the first null. See the big comment in `HasSameIdentity()` for details.
2020-07-15 19:17:22 +02:00
Tilka 695a96498a
Merge pull request #8922 from Filoppi/timer-fixes
Timer fixes
2020-07-13 00:16:45 +01:00
JMC47 3c70fb7277
Merge pull request #8950 from jordan-woyak/double-time-fix
Common/Timer: Fix integer underflow in Timer::GetDoubleTime for dates before ~2008.
2020-07-12 15:52:15 -04:00
Jordan Woyak eab07866a3 Common/Timer: Fix integer underflow in Timer::GetDoubleTime for dates before ~2008. 2020-07-12 12:55:02 -05:00
LC 4d36f6a5b0
Merge pull request #8936 from jordan-woyak/wiimote-extension-calibration-fix
ControllerInterface/Wiimote: Provide fallback values for extensions with bad calibration.
2020-07-12 12:46:15 -04:00
Jordan Woyak d9e7d0514c WiimoteEmu: Allow writes of the i2c bus to play speaker data. 2020-07-11 21:19:16 -05:00
Jordan Woyak 5299e902aa ControllerInterface/Wiimote: Provide fallback values for extensions with bad calibration data. 2020-07-11 19:55:14 -05:00
Rena Kunisaki a553f22385 Add Break On Hit and Log On Hit for instruction breakpoints 2020-07-11 13:38:58 -04:00
LC ed32a2a1fe
Merge pull request #8946 from jordan-woyak/unbreak-mayflash
InputCommon/GCAdapter: Unbreak Mayflash GCAdapters by allowing libusb_control_transfer call to fail.
2020-07-11 11:56:30 -04:00
JosJuice f7c32bc04e RVZ: Fix split seed reads
This could cause read errors if chunks were laid out a certain
way in the file and the whole chunk wasn't being read at once.
Should fix https://bugs.dolphin-emu.org/issues/12184.
2020-07-11 17:45:16 +02:00
Jordan Woyak b350d3cca3 InputCommon/GCAdapter: Unbreak Mayflash GCAdapters by allowing libusb_control_transfer call to fail. 2020-07-09 17:17:44 -05:00