Ryan Meredith
2edc58950b
Dynamic SettingsActivity Titles
2019-07-15 14:39:01 -04:00
Lioncash
ac6d70b82b
Core/FifoAnalyzer: Use std::array where applicable
...
This lets us convert CalculateVertexElementSizes() from a function using
an out pointer into one that simply returns the array data as a return
value.
It also lets us dehardcode some values, as we can just query
std::array's size() member function instead.
2019-07-15 07:37:35 -04:00
Lioncash
73db402010
Core/FifoAnalyzer: Convert DecodeMode enum into an enum class
...
Makes the enumeration elements strongly typed.
2019-07-15 07:37:30 -04:00
JosJuice
1606528093
Merge pull request #8234 from JosJuice/version-in-title
...
Show Dolphin version in render window title
2019-07-15 13:05:08 +02:00
JosJuice
0b11f15158
Fix VolumeVerifier considering Wii Menu WADs to have wrong region
2019-07-15 12:42:13 +02:00
Lioncash
53779aa732
Core/FifoAnalyzer: Make functions internally linked where applicable
...
These functions are only used internally within FifoAnalyzer.cpp, so
they can be hidden from external use.
2019-07-14 20:37:21 -04:00
Stenzek
946571b759
TextureCache: Support reinterpreting formats for VRAM textures
2019-07-14 19:16:27 +10:00
Stenzek
77f406c8a8
TextureCache: Combine ApplyPaletteToEntry and ConvertTexture
2019-07-14 14:07:37 +10:00
Stenzek
dfae87d69a
TextureConversionShader: Swap bytes for RG8/GB8 format
...
Matches the software renderer.
2019-07-14 13:36:43 +10:00
JosJuice
533f6bfeb9
Merge pull request #8203 from JosJuice/android-no-copy-to-gameini
...
Android: Don't copy global INIs into game INIs
2019-07-13 18:05:04 +02:00
Léo Lam
2f5e6cfff1
Merge pull request #8218 from leoetlino/context
...
Use separate libusb contexts to avoid thread safety issues
2019-07-11 17:28:19 +02:00
Connor McLaughlin
4c649d1a5d
Merge pull request #8238 from lioncash/video-stats
...
VideoCommon/Statistics: Minor cleanup changes
2019-07-11 20:34:48 +10:00
booto
62a2611925
SI: Clarify length fields for manual commands
...
Fix up the calculation of the length fields and check that the returned
response is the expected length. This touches many files because it
converts a parameter name from the SI_Device interface from 'length' to
'request_length'. Prior, this field seemed to be used as request length
sometimes, as response length sometimes, and usually just totally ignored.
2019-07-11 01:29:59 -04:00
Lioncash
9c245655fb
VideoCommon/Statistics: Remove unused DECSTAT macro
...
This isn't used anywhere, so it can be removed. This also potentially
fixes an underlying compilation error waiting to happen, given DECSTAT
could have potentially been used, someone disables statistics (for
whatever reason), then gets a compilation error due to the #else case
not containing an empty definition of DECSTAT.
2019-07-10 23:40:13 -04:00
Lioncash
d4337eebde
VideoCommon/Statistics: Rename stats global to g_stats
...
Makes the global variable follow our convention of prefixing g_ on
global variables to make it obvious in surrounding code that it's not a
local variable.
2019-07-10 23:34:54 -04:00
Lioncash
9802a5e16b
VideoCommon/Statistics: Make all member functions non-static
...
Rather than making Statistics' member functions operate on the global
variable instance of itself, we can make these functions member
functions and operate on a by-instance state, removing the direct
dependency on the global variable itself.
This also makes for less reading, as there's no need to repeat "stats."
for all variable accesses.
2019-07-10 23:24:37 -04:00
Lioncash
a99c7d01e1
VideoCommon/Statistics: Normalize statistic variable names
...
Normalizes all variables related to statistics so that they follow our
coding style.
These are relatively low traffic areas, so this modification isn't too
noisy.
2019-07-10 23:19:10 -04:00
JosJuice
44fe5812b9
Fix FIFO player crashing when USE_MEMORYWATCHER is defined
2019-07-10 20:43:15 +02:00
Lioncash
d2d7bf5c3b
Common/DebugInterface: Remove GetInstructionSize()
...
This is completely unused, so it can be removed.
2019-07-09 14:19:40 -04:00
Lioncash
92c1782726
Common/DebugInterface: Mark a few member functions as const
...
Quite a few member functions act as a means to query information. Given
these don't actually modify object state, they can be made const.
2019-07-09 14:19:40 -04:00
Lioncash
d4d485b692
Common/DebugInterface: Make return value of GetColor() a u32
...
At its only usage point, its return value is stored into a u32, and the
default implementation returns 0xFFFFFFFF (-1), which would be an
unsigned integer. Given all of the bits are used to determine a color,
it makes slightly more sense to treat this as an unsigned value as
opposed to a signed one.
2019-07-09 14:19:38 -04:00
booto
d01220e69d
SI: CMD_ORIGIN/CMD_RECALIBRATE gets 10 byte reply
2019-07-08 23:08:35 -04:00
booto
ac809c36e1
SI: Convert SIPOLL's lines value to half lines
...
SI represents polling sample rate in lines, not half lines. It needs to be
multiplied by 2 for VI, which uses half lines.
2019-07-08 23:07:34 -04:00
Lioncash
a9a9b193bb
Common/DebugInterface: Use forward declarations where applicable
...
We're allowed (by the standard) to forward declare types within
std::vector, so we can replace direct includes with forward declarations
and then include the types where they're directly needed.
While we're at it, we can remove an unused inclusion of <cstring>, given
nothing in the header uses anything from it. This also revealed an
indirect inclusion, which this also resolves.
2019-07-08 18:59:11 -04:00
Lioncash
98101bbbe4
Core: Use fmt where applicable for DebugInterface implementations
...
These are trivial enough that they're basically one-to-one conversions
with minor changes of syntax.
2019-07-08 18:52:59 -04:00
Lioncash
457bff92c1
Common/DebugInterface: Use u32 instead of unsigned int consistently
...
Previously u32 was being used for part of the interface and unsigned int
was being used for other parts. This makes the interface fully consistent by
using only one type.
We opt for u32 here given they communicate the same thing (for platforms
we care about where int is 32-bit), while also being less to read.
2019-07-08 18:52:45 -04:00
Lioncash
b1b9c6aa1e
Common/DebugInterface: Default virtual destructor
...
While we're at it, we can also default the constructor and destructor of
inheriting classes in their respective cpp file to prevent the
construction and destruction of non-trivial types being inlined into
other regions of code.
2019-07-08 17:44:58 -04:00
Lioncash
bc8778203e
Common/Watches: std::move strings where applicable
...
Allows calling code to move the std::string into the Watch instances,
avoiding copies.
2019-07-08 17:41:06 -04:00
JosJuice
f3579e788d
Show Dolphin version in render window title
...
This was in DolphinWX but not DolphinQt. It's useful for telling if
users who post screenshots have an up-to-date version of Dolphin.
The old implementation of this prepended the version in DolphinWX code
rather than Core code, but I thought it'd be simpler to do it in Core.
2019-07-08 15:03:00 +02:00
JosJuice
445759aed1
Mark "WASAPI (Exclusive Mode)" as translatable
...
While "WASAPI" doesn't need to be translated, "Exclusive Mode" does.
2019-07-07 18:22:22 +02:00
JMC47
398aa2a9f9
Merge pull request #8231 from JosJuice/debugger-hidden
...
DolphinQt: Don't update debug widgets when hidden
2019-07-07 07:35:06 -04:00
Tillmann Karras
da87638ea2
Fix GDB stub
2019-07-07 05:17:33 +01:00
JosJuice
92a655c8b9
DolphinQt: Don't update debug widgets when hidden
...
Saves on CPU usage when pausing/unpausing with the debugger disabled.
This is especially important when using frame advance rapidly.
2019-07-06 11:30:17 +02:00
spycrab
64de900da4
Qt/ControllersWindow: Fix radio buttons not getting disabled
...
Only happens if the controller window hasn't been opened before.
2019-07-05 16:50:37 +02:00
Lioncash
ce30efc6cf
Common/GekkoDisassembler: Don't print out '\0' as a character
...
Prevents a few instructions from having mangled names in some cases.
2019-07-03 20:12:50 -04:00
JosJuice
e24789b4fb
Add a hotkey for inserting/ejecting the SD card
2019-07-03 22:44:51 +02:00
JosJuice
36166c9b4f
Android: Don't copy default game INIs into user game INIs
...
This isn't as serious as copying global INIs into user game INIs,
but still not good. We want to be able to remove settings from
default game INIs and have those removals apply.
2019-07-02 19:28:43 +02:00
JosJuice
7f841e9bfd
Android: Suggest deleting game INIs if they contain global INI data
2019-07-02 19:28:38 +02:00
JosJuice
7652023407
Android: Don't copy global INIs into game INIs
...
See the source code comment in the next commit for why this is bad.
2019-07-02 19:27:42 +02:00
Connor McLaughlin
0a7395bfba
Merge pull request #8128 from altimumdelta/FrameDumpUpgradePrep1
...
Code: Rename AVIDump to FrameDump
2019-06-30 21:13:19 +10:00
altimumdelta
1df655e376
VideoCommon: Rename AVIDump to FrameDump
2019-06-30 13:02:39 +02:00
Connor McLaughlin
0d2c3e6efc
Merge pull request #8219 from Pokechu22/float-watch
...
Show values as floats in watch
2019-06-30 11:34:29 +10:00
Pokechu22
ae0843f53d
Show values as floats in watch
2019-06-29 12:04:20 -07:00
Connor McLaughlin
e388f01e11
Merge pull request #8215 from CookiePLMonster/appverifier-sanitize
...
Fixed various errors spotted with Application Verifier
2019-06-30 01:27:25 +10:00
Connor McLaughlin
f151570b2d
Merge pull request #8118 from 8times9/move-windowontop
...
Qt/InterfacePane: Move "Keep Window on Top" to Render Window section
2019-06-30 00:46:12 +10:00
Connor McLaughlin
341ce45ed6
Merge pull request #8176 from VinDuv/handle-open-files
...
QtGui: Handle file open events
2019-06-29 22:22:46 +10:00
Connor McLaughlin
8a122de999
Merge pull request #8192 from Miksel12/qt-changes
...
Reorder graphics config
2019-06-29 22:21:53 +10:00
Léo Lam
a88deda307
Merge pull request #8193 from lioncash/disasm
...
Common/GekkoDisassembler: Minor changes
2019-06-29 10:38:36 +02:00
Léo Lam
0c626e6ebc
Merge pull request #8202 from lioncash/build
...
DolphinQt/CMakeLists: Leverage windeployqt for determining libraries and plugins to copy
2019-06-29 10:29:58 +02:00
Léo Lam
0dfff81a56
Merge pull request #8205 from Techjar/crop-fix
...
VideoCommon/RenderBase: Fix crop
2019-06-29 10:24:37 +02:00
Léo Lam
a9099fc96b
Merge pull request #8207 from lioncash/macro
...
VideoCommon/Statistics: Use std::array for projection values
2019-06-29 09:36:33 +02:00
Léo Lam
274b52acb2
Merge pull request #8216 from CookiePLMonster/cpu-override-tick-fix
...
Fix CPU Clock Override checkbox not updating with GameINI
2019-06-29 08:48:01 +02:00
Léo Lam
75b2b53be2
Merge pull request #8200 from randomstuff/detach_driver
...
Automatically detach/reattach bluetooth driver in passthrough
2019-06-29 08:46:59 +02:00
Shiz
e647503eb2
Core/HW/WiimoteReal: add missing Linux include
...
IOLinux.cpp should include <sys/select.h> as it uses select() functionality.
On certain platforms it's included implicitly by other headers, which is why
it compiled before. This makes it also work on musl platforms.
2019-06-29 02:17:58 +02:00
Léo Lam
58c78a495d
Merge pull request #8213 from JosJuice/filesystem-u8string
...
Work around C++20 std::filesystem changes related to u8string
2019-06-28 19:42:34 +02:00
Léo Lam
6fd435fdff
Merge pull request #8208 from lioncash/fmt
...
Core/IOS: Use fmt where applicable
2019-06-28 18:53:47 +02:00
Mike Kuijl
e50a6f4c46
Reorder graphics config
2019-06-26 21:59:47 +02:00
Léo Lam
e85fa26768
BTReal: Use FromThread::ANY for USB transfer replies
...
libusb transfer callbacks might be called immediately during transfer
submission in some cases. (libusb doesn't even specify what thread
the callback is invoked on.) In other words, it is possible to reach
the transfer callback from the CPU thread, and not just from the
USB event handling thread.
So CoreTiming::FromThread::NON_CPU is incorrect and should instead
be ANY.
2019-06-26 17:55:51 +02:00
Léo Lam
cf60a9a7f7
Use separate libusb contexts to avoid thread safety issues
...
Unfortunately, it appears that using libusb's synchronous transfer API
from several threads causes nasty race conditions in event handling and
can lead to deadlocks, despite the fact that libusb's synchronous API
is documented to be perfectly fine to use from several threads (only
the manual polling functionality is supposed to require special
precautions).
Since usbdk was the only real reason for using a single libusb context
and since usbdk (currently) has so many issues with Dolphin, I think
dropping support for it in order to fix other backends is acceptable.
2019-06-26 17:55:51 +02:00
Silent
09aadf0e9c
Fix CPU Clock Override checkbox not updating with GameINI - also bold it if it's overriden
2019-06-23 22:39:26 +02:00
Silent
5f0b4d8da5
Fix a crash in DSPTool on malformed command line
2019-06-23 21:55:51 +02:00
Silent
9eab3feddf
Fix out of bounds read in HttpRequest::Impl::Fetch logging
2019-06-23 21:44:51 +02:00
Silent
6c21811090
Make DolphinAnalytics a true singleton - static local variables are initialized in a thread safe manner since C++11
...
Also works around a Visual Studio 2017 bug where static inline class fields are destructed multiple times
2019-06-23 21:43:47 +02:00
spycrab
dacba85a08
UpdaterCommon: Hide Updater before Dolphin quits
2019-06-23 19:47:18 +02:00
spycrab
396546f5c0
Config/ARCodeWidget: Add option for alphabetical sorting
2019-06-22 19:54:13 +02:00
spycrab
1d43d9afc1
Config/GeckoCodeWidget: Add option for alphabetical sorting
2019-06-22 19:54:13 +02:00
spycrab
93393a288c
Qt/ARCodeWidget: Support drag and drop reordering
2019-06-22 19:54:13 +02:00
spycrab
389351c6c0
Qt/GeckoCodeWidget: Support drag and drop reordering
2019-06-22 19:54:13 +02:00
JosJuice
c0a6fa5dcc
Work around C++20 std::filesystem changes related to u8string
2019-06-21 18:34:21 +02:00
spycrab
d68f62c0f5
Core/NetPlayServer: Fix empty error messages when adding session to the index fails
2019-06-20 20:55:38 +02:00
Anthony
84b9b37fef
Merge pull request #8210 from spycrab/httpreq_error_msg
...
Common/HttpRequest: Use CURLOPT_ERRORBUFFER for error messages
2019-06-20 10:59:25 -07:00
spycrab
ba4c1c5947
Common/HttpRequest: Use CURLOPT_ERRORBUFFER for error messages
2019-06-20 19:44:51 +02:00
JosJuice
63bb646721
Fix opening controller config when there is no profile directory
...
https://bugs.dolphin-emu.org/issues/11771
2019-06-20 18:35:14 +02:00
Lioncash
980085e106
Core/IOS: Use fmt where applicable
2019-06-20 11:50:02 -04:00
Lioncash
c1c5276729
VideoCommon/VertexShaderManager: Use std::array where applicable
...
We can use this to shorten up the initialization code a little bit.
Despite being saved to savestates, this is a non-breaking change.
2019-06-20 08:13:04 -04:00
Lioncash
2e74a4447a
VideoCommon/Statistics: Remove unused setter macros for statistics
...
Now that the floating point members are assigned in bulk, we can remove
their setter macro. While we're at it, we can also remove the setter for
unsigned int, given it's not used.
2019-06-20 08:06:23 -04:00
Lioncash
04c06ec661
VideoCommon/Statistics: Use std::array for projection values
...
Makes the members within the interface much nicer to look at, and also
makes copying them over much nicer too.
2019-06-20 08:06:20 -04:00
Léo Lam
3cafd0ae81
Merge pull request #8171 from Pokechu22/backend-changing-fix
...
Disallow changing the backend when running when software renderer is currently selected
2019-06-20 13:58:01 +02:00
Léo Lam
4edf174b61
Merge pull request #8180 from lioncash/fmt
...
Core/Movie: Use fmt where applicable
2019-06-20 13:56:15 +02:00
Léo Lam
973bba7c1e
Merge pull request #8191 from lioncash/ini
...
Common/IniFile: Use std::string_view where applicable
2019-06-20 13:44:20 +02:00
Léo Lam
4885130799
Merge pull request #8194 from lioncash/common-msg
...
Common/MsgHandler: Tidy up interface and namespace code
2019-06-20 13:37:24 +02:00
Léo Lam
baf02194c1
Merge pull request #8195 from lioncash/macro
...
VideoCommon/Statistics: Remove preprocessor macro
2019-06-20 13:29:27 +02:00
JosJuice
9c33f658a5
Simplify std::filesystem usage a little in Boot.cpp
...
If path_b is absolute, (path_a / path_b) will be the same as path_b.
2019-06-20 10:42:56 +02:00
JosJuice
fab15edb53
Replace <experimental/filesystem> includes with <filesystem>
...
https://bugs.dolphin-emu.org/issues/11770
2019-06-20 10:39:56 +02:00
Lioncash
4f1f55093f
Common/MsgHandler: Namespace code within the Common namespace
...
Closes another gap in the Common library where code isn't being
namespaced under it.
2019-06-19 16:03:55 -04:00
Lioncash
e7dd46a531
Common/MsgHandler: Brace if statement in MsgAlert
...
The condition travels more than one line, so the body should be braced.
While we're at it, make the comparison against nullptr explicit.
2019-06-19 16:03:33 -04:00
Lioncash
0eddf6dd8f
Common/MsgHandler: Use std::string's empty for emptiness checking in MsgAlert
...
Provides more straightforward code compared to negating a length check.
2019-06-19 16:00:16 -04:00
JosJuice
16afac9da9
Merge pull request #7927 from weihuoya/android-key-map
...
android: simplify config loading code
2019-06-19 11:51:00 +02:00
Techjar
08421db52f
VideoCommon/RenderBase: Fix crop
...
This fixes some mistakes from #8049 that caused crop to behave like
stretch and have a funny offset.
2019-06-18 18:34:13 -04:00
Léo Lam
ff96dc0e6f
Merge pull request #8199 from lioncash/namespace
...
General: Use nested namespace specifiers where applicable
2019-06-18 11:33:08 +02:00
Lioncash
4754ce8805
DolphinQt/CMakeLists: Leverage windeployqt for determining libraries and plugins to copy
...
We were doing quite a bit of unnecessary work within CMake to handle and
make sure the necessary libraries were copied over. That approach has
several downsides:
1. It's not possible to handle multi-configuration generators (like
Visual Studio) in an easy manner. The existing script would fail to
copy over the necessary libraries if one configuration was built, and
then another one was built.
2. If you have Qt already installed (properly) by the official binary,
the existing script would copy *all* dlls even if they weren't
necessary. This is pretty bad, since it can waste quite a bit of
space.
Instead, we can just delegate off to the official deployment application
bundled with Qt's libraries that determines what the necessary libraries
are and copies them over as necessary. This also means we can properly
support both release and debug binaries in the same directory, like how
the old handcrafted Visual Studio project files allowed.
2019-06-18 01:12:44 -04:00
Lioncash
e8fd834d8f
DolphinQt/CMakeLists: Collapse name setting code for Windows
...
Its sufficient to simply specify a debug postfix instead of using an
separate variable. What's nice about this approach is that it will
actually work :p
Previously the code wouldn't work for multi-configuration generators
like Visual Studio.
2019-06-18 01:12:41 -04:00
Gabriel Corona
70bca53ed6
Automatically detach/reattach bluetooth driver in passthrough
...
When the bluetooth adapter device is opened/closed by dolphin, the
kernel driver is automatically detached/reattached.
This enables transparent sharing of the same bluetooth wiimotes and
bluetooth adapters between the hosts system and the emulated one using
the same.
2019-06-18 00:49:58 +02:00
Lioncash
2714ba2b3d
UICommon: Add missing header guards
2019-06-17 18:39:44 -04:00
Lioncash
10f705f665
Core: Add missing header guards
2019-06-17 18:39:03 -04:00
Lioncash
c4def7c814
Common: Add missing header guards
2019-06-17 18:37:56 -04:00
Lioncash
72b04a353d
VideoBackends/Vulkan: Use nested namespace specifiers where applicable
2019-06-17 16:57:30 -04:00
Lioncash
ec60027f56
InputCommon: Use nested namespace specifiers where applicable
2019-06-17 16:51:41 -04:00
Lioncash
8e030a4a45
Common: Use nested namespace specifiers where applicable
2019-06-17 16:36:48 -04:00
Lioncash
32bacfa4bd
Core: Use nested namespace specifiers where applicable
...
Same thing, less visual noise.
2019-06-17 16:32:30 -04:00
JosJuice
e4ef2193e0
Android: Fix race condition in AppLinkActivity
...
https://bugs.dolphin-emu.org/issues/11767
2019-06-17 10:12:42 +02:00
Lioncash
5cafce3cc4
VideoCommon/Statistics: Amend imgui include
...
This is a library header, so it should be using '<' and '>' to delineate
that.
2019-06-17 02:37:02 -04:00
Lioncash
73710c0745
VideoCommon/Statistics: Remove unused header inclusions
...
These aren't used anywhere, so they can be removed.
2019-06-17 02:36:41 -04:00
Lioncash
6416fe336c
VideoCommon/Statistics: Replace memset with assignment in ResetFrame()
...
Same behavior, less code, and it doesn't require the type ThisFrame
itself to actually be a trivially-copyable type.
2019-06-17 02:27:36 -04:00
Lioncash
e981fa2073
VideoCommon/Statistics: Use ImGui::TextUnformatted() where applicable
...
ImGui::Text() assumes that the incoming text is intended to be
formatted, but we don't actually use it to format anything. We can be
explicit by using the relevant function.
This also has a plus of not needing to go through the formatter itself,
but the gains from that are probably minimal.
2019-06-17 02:27:26 -04:00
Lioncash
1c40fd8569
VideoCommon/Statistics: Replace DRAW_STAT macro with variadic lambda
...
We don't need to use the preprocessor here. We can just use a variadic
lambda function instead and forward the arguments to the formatting
function.
2019-06-17 02:26:25 -04:00
Lioncash
1968643297
Common/MsgHandler: Amend file-scope variable names
...
Makes them follow our coding style.
2019-06-16 23:37:03 -04:00
Lioncash
76b675e9f0
Common/MsgHandler: Make default message handler and translator's internally linked
...
Previously these functions were declared without the static specifier,
giving them external linkage, which isn't really ideal.
Instead, we can place these functions up by the relevant file-scope
variables and place them inside an anonymous namespace with said variables,
giving them internal linkage.
2019-06-16 23:37:03 -04:00
Lioncash
d1475f6d59
Common/MsgHandler: Convert type aliases over to using
...
Same thing, nicer to read.
2019-06-16 23:37:03 -04:00
Lioncash
027c17558f
Common/MsgHandler: Use fmt::print on non-Windows OSes
...
Provides the same behavior.
2019-06-16 23:37:00 -04:00
Lioncash
188234b4cd
Common/GekkoDisassembler: Use std::string_view where applicable
...
Avoids the use of the null pointer to represent an empty string.
Instead, we can simply pass an empty string_view instance. Using
std::string_view enforces this invariant at the API level.
2019-06-16 19:51:23 -04:00
Lioncash
d8c3f09c9f
Common/GekkoDisassembler: Amend disassembly of operations expecting a character literal
...
Due to the lack of cast here, this will actually print out the ascii
value, rather than the character itself, due to promoting to integral
values. Instead, we can eliminate the use of character operands and just
print the value itself directly, given it's equivalent behavior with
less code.
2019-06-16 19:33:28 -04:00
Lioncash
0cde8ab9e8
Common/GekkoDisassembler: Make all lookup tables immutable
...
Allows these arrays to be placed within the read-only segment (and
enforces the immutability in the code itself). While we're at it, we can
make use of std::array here.
2019-06-16 19:21:07 -04:00
Lioncash
78d1716251
Common/IniFile: Make use of std::string_view where applicable
...
Now that the std::map less-than comparitor is capable of being used with
heterogenous lookup, we're able to convert many of the querying
functions that took std::string references over to std::string_view.
Now these functions may be used without potentially allocating a
std::string instance unnecessarily.
2019-06-16 18:20:08 -04:00
Lioncash
de7e9557dc
Common/IniFile: Make CaseInsensitiveStringCompare usable with heterogenous lookup
...
Previously, when performing find() operations or indexing operations on
the section map, it would need to operate on a std::string key.
This means cases like:
map.find(some_string_view)
aren't usable, which kind of sucks, especially given for most cases, we
use regular string literals to perform operations in calling code.
However, since C++14, it's possible to use heterogenous lookup to avoid
needing to construct exact key types. In otherwords, we can perform the
above or use string literals without constructing a std::string instance
around them implicitly.
We simply need to specify a member type within our comparison struct
named is_transparent, to allow std::map to perform automatic type
deduction.
We also slightly alter the algorithm to an equivalent compatible with
std::string_view (which need not be null-terminated), as strcasecmp
requires null-terminated strings.
While we're at it, we can also provide a helper function to the struct
for comparing string equality rather than only less than. This allows
removing other usages of strcasecmp in other functions, allowing for the
transition of them to std::string_view.
2019-06-16 18:20:03 -04:00
Léo Lam
b3525ad774
Merge pull request #8186 from lioncash/view
...
{Common/SymbolDB, Core/HLE/HLE}: Make use of std::string_view where applicable
2019-06-16 16:20:02 +02:00
Léo Lam
1550c098d3
Merge pull request #8187 from lioncash/disasm
...
GekkoDisassmbler: Amend erroneous formatting specifiers
2019-06-16 16:19:30 +02:00
Lioncash
9952dfe293
GekkoDisassmbler: Amend erroneous formatting specifiers
...
fmt diverges from printf in that '.' as a precision specifier may only
be used for floating-point values (makes sense, given it's indicating
precision after the decimal point).
2019-06-16 02:05:16 -04:00
Lioncash
a3046fe807
Core/HLE/HLE: Use std::string_view where applicable
...
Now that SymbolDB's querying functions accept std::string_view
instances, we can alter the Patch/UnPatch HLE functions to follow suit.
2019-06-16 01:20:12 -04:00
Lioncash
936aa5dbaa
Common/SymbolDB: Use std::string_view where applicable
...
These strings are only used for comparison against other strings, so a
string view can be used here.
2019-06-16 01:10:02 -04:00
Techjar
7dc234a2d1
Qt/GCMemcardManager: Load configured memory cards by default
2019-06-15 23:36:47 -04:00
Techjar
56c818b3d8
VideoCommon/RenderBase: Reset scissor rectangle after ImGui rendering
...
This fixes the problem where OBS game capture only grabs the region
inside an ImGui window whenever one is open, when using the OpenGL
backend. Shouldn't have any negative effects, as the scissor would've
been something completely arbitrary anyways.
This may affect other capture software that uses the same hooking
method, but I've only tested OBS.
2019-06-15 07:12:17 -04:00
Vincent Duvert
2f63b71bde
QtGui: Handle file open events
...
Handle file open events received by Dolphin. This allows Wii/GC files to be
opened when double-clicked or dropped on the Dolphin application on macOS.
2019-06-15 11:27:29 +02:00
Lioncash
c64fe7df65
Core/Movie: Use fmt where applicable
...
In a few cases we needed to alter... less than ideal parameter types.
While u8 may have been OK with printf-style formatting, which promotes
most smaller types back to int, this won't work with fmt. fmt preserves
the type of the passed in arguments, meaning that u8, being an alias of
uint8_t (itself being an alias of unsigned char on all the platforms we
support), will print out as a character, not a numeric value.
As such, we amend some functions to operate on u32 values for two
reasons:
1. We actually want it to print out as a value
2. Arithmetic on unsigned types smaller than unsigned int will actually promote to an int,
not unsigned int. This is very non-obvious to some and makes for
error-prone code. < sizeof(int) types are great for storage, not so
much for performing unsigned arithmetic, despite the signedness of
the type.
2019-06-14 17:47:02 -04:00
Lioncash
7f93ce374d
Core/CMakeLists: Privately link in fmt
...
While we do have this library as part of the public linkage interface in
the common library target, which will be used in the future for the
logging macros, we should still be explicit that we're using this
library. Therefore, we privately link it in to be explicit about it.
2019-06-14 17:43:39 -04:00
Anthony
c34388f75b
Merge pull request #8157 from JosJuice/rotational-latency
...
HW/DI: Emulate rotational latency
2019-06-14 12:36:36 -07:00
Anthony
224f292224
Merge pull request #8130 from 8times9/more-text-fixes
...
Qt: Minor adjustments to graphics window descriptions
2019-06-14 12:30:27 -07:00
Anthony
dd3b678451
Merge pull request #8178 from leoetlino/less-sleep
...
DiscordHandler: Don't delay shutdown by up to 2s
2019-06-14 12:28:13 -07:00
Lioncash
5b92d5076a
Common: Use fmt where applicable
...
Begins the transition to using fmt for string formatting where
applicable. Given fmt supports formatting std::string instances out of
the box, we can remove now-unnecessary calls to .c_str() and .data().
Note that this change does not touch the actual logging subsystem aside
from converting the final StringFromFormat call in the process over to
fmt::format. Given our logging system is heavily used throughout the
entire codebase, and converting that over will be quite a large change
by itself, this will be tackled near the end of the conversion process.
2019-06-14 15:04:09 -04:00
Lioncash
925afcae3b
VSProps: Add fmt directory to the list of additional includes
...
Allows fmt's headers to be visible to the Visual Studio projects.
2019-06-14 13:48:39 -04:00
8times9
f1dde9fee0
Qt: Minor adjustments to graphics window descriptions
2019-06-14 15:58:16 +02:00
Léo Lam
59155b4d5e
Merge pull request #8150 from lioncash/kbd
...
IOS/USB_KBD: Minor cleanup
2019-06-14 15:25:10 +02:00
Léo Lam
3b7a7ae2e7
Merge pull request #8155 from Techjar/dtm-get-origin
...
Core/Movie: Store PAD_GET_ORIGIN bit in ControllerState
2019-06-14 15:13:43 +02:00
Léo Lam
e2d59abaa7
Merge pull request #8173 from lioncash/fmt
...
Externals: Add libfmt to externals
2019-06-14 14:47:22 +02:00
Léo Lam
a6f4cb1647
DiscordHandler: Don't delay shutdown by up to 2s
...
Currently, it is possible for the DiscordHandler thread to be in the
middle of sleeping when Dolphin is closing. This results in a very
noticeable delay of up to 2 seconds that is unacceptable, especially
for people who don't use the Discord integration.
This fixes the issue by making the thread wait on an Event instead
and signalling it when shutting down.
2019-06-13 23:34:25 +02:00
Léo Lam
79ea55c912
Merge pull request #8169 from lioncash/fallthrough
...
Core/GeckoCodeConfig: Use the [[fallthrough]] attribute in LoadCodes()
2019-06-13 13:36:32 +02:00
Lioncash
d52e69bab1
Common/CMakeLists: Link in fmt
...
While not currently used by common, this will become the case when the
logging system eventually transitions to it, among other things.
2019-06-10 15:26:46 -04:00
Matthew Foulds
c62570c527
Added key for relative input
2019-06-10 13:23:16 +01:00
Pokechu22
adfbbe3a02
Disallow changing the backend when running when software renderer is currently selected
...
It already is disabled for other backends, but this didn't happen with the software renderer. Attempting to change it while running causes the change to visually happen (including switching to the normal render settings UI instead of the barren one for the software renderer), but doesn't actually change the backend itself (it'll still use the software renderer at the next launch).
2019-06-08 16:25:27 -07:00
Lioncash
92b445618a
VideoCommon/DriverDetails: Make look-up table immutable
...
Previously, this array potentially wouldn't be placed within the
read-only segment, since it wasn't marked const. We can make the lookup
table const, along with any other nearby variables.
2019-06-08 18:06:36 -04:00
Lioncash
632b953ebf
Core/GeckoCodeConfig: Use the [[fallthrough]] attribute in LoadCodes()
...
Makes it explicit that this fallthrough is intentional.
2019-06-08 17:55:01 -04:00
Léo Lam
d927cd2b03
Merge pull request #8162 from lioncash/label
...
DSP/LabelMap: C++17 transitional changes/cleanup
2019-06-08 18:16:20 +02:00
Connor McLaughlin
951b66e4ac
Merge pull request #8049 from stenzek/crop
...
Renderer: Adjust source rectangle when crop would draw off screen
2019-06-08 20:57:52 +10:00
Connor McLaughlin
b13e00b003
Merge pull request #8165 from lioncash/linkage
...
{Android/ButtonManager, ResourcePack/Manager}: Make file-scope variables/functions internally linked where applicable
2019-06-08 20:56:13 +10:00
Connor McLaughlin
ab66e91766
Merge pull request #8134 from JosJuice/filesystem-string-view
...
DiscIO: Use std::string_view in FileSystem::FindFileInfo
2019-06-08 20:52:34 +10:00
Connor McLaughlin
bed2d66bed
Merge pull request #8117 from weihuoya/threaded_env
...
android: get java env from thread local storage
2019-06-08 20:42:15 +10:00
Connor McLaughlin
5a4e2a6b2f
Merge pull request #7734 from stenzek/mojave-warning
...
Vulkan: Display a warning when using MoltenVK on HS and earlier
2019-06-08 20:41:39 +10:00
Stenzek
3f1586dbce
Vulkan: Display a warning when using MoltenVK on HS and earlier
2019-06-08 20:16:24 +10:00
Stenzek
1028e2c1a6
D3D12: Remove unnecessary includes in DXContext.h
2019-06-08 20:12:15 +10:00
Stenzek
9316e25652
D3DCommon: Fallback to base CreateSwapChain on failure
...
It appears that some older drivers do not support
CreateSwapChainForHwnd, resulting in DXGI_ERROR_INVALID_CALL. For these
cases, fall back to the base CreateSwapChain() from DXGI 1.0.
In theory this should also let us run on Win7 without the platform
update, but in reality we require the newer shader compiler so this
probably won't work regardless. Also any hardware of this vintage is
unlikely to run Dolphin well.
2019-06-08 20:11:49 +10:00
Connor McLaughlin
0177c6c2c7
Merge pull request #8146 from Techjar/netplay-network-opts
...
Qt/NetPlayDialog: Change network mode options to radio buttons
2019-06-08 20:05:35 +10:00
Connor McLaughlin
6b4ca318c9
Merge pull request #8139 from lioncash/const
...
VideoCommon/PixelShaderGen: Make look-up table arrays immutable where applicable
2019-06-08 20:03:02 +10:00
Connor McLaughlin
67a9fc6784
Merge pull request #8163 from lioncash/config
...
Core/ConfigManager: Use forward declarations where applicable
2019-06-08 20:01:15 +10:00
Connor McLaughlin
b7fba95cdf
Merge pull request #8166 from lioncash/mbedtls
...
Externals: Update mbedTLS from 2.1.1 to 2.16.1
2019-06-08 19:58:37 +10:00
JosJuice
7fcc3dd605
DolphinQt: Don't leave Export Recording disabled always
2019-06-08 08:39:12 +02:00
Lioncash
5512876842
General: Migrate from deprecated mbedTLS functions
...
As indicated by mbedTLS' documentation, all of the relevant functions
have been superseded by _ret-suffixed variants in mbedTLS version
2.7.0.
2019-06-07 22:51:58 -04:00
Lioncash
eb15a52fd5
UICommon/ResourcePack/Manager: Make GetPackConfig() internally linked
...
Silences a -Wmissing-declarations warning.
2019-06-07 20:27:27 -04:00
Lioncash
7842bd1179
Android/ButtonManager: Make most file-scope local variables non-allocating
...
We can use std::array and const char* to make these capable of fully
being stored in the read-only segment, and get rid of a few static
constructors (144 of them).
2019-06-07 20:27:12 -04:00
Lioncash
069497e87d
Android/ButtonManager: Make local file-scope variables internally linked where applicable
...
Silences a few -Wmissing-variable-declarations warnings.
2019-06-07 20:02:03 -04:00
Lioncash
c0c0e412e0
Core/ConfigManager: Use forward declarations where applicable
...
Avoids dragging in IniFile, EXI device and SI device headers in this header which is
quite widely used throughout the codebase.
This also uncovered a few cases where indirect inclusions were being
relied upon, which this also fixes.
2019-06-07 19:54:39 -04:00
Lioncash
6e9329455c
DSP/LabelMap: std::move std::string instances where applicable
...
We can std::move the std::string parameter in Label's constructor,
allowing the constructor to be moved into in calling code.
We can cascade this outwards in the interface as well.
2019-06-07 17:42:10 -04:00
Lioncash
32427af79e
DSP/LabelMap: Make label_t's definition hidden
...
Given this is a private struct and it's used in a container that
supports incomplete types, we can forward-declare it and move it into
the cpp file. While we're at it, we can change the name to Label to
follow our formatting guidelines.
2019-06-07 17:37:48 -04:00
Lioncash
a3ed4ceec5
DSP/LabelMap: Use std::optional with GetLabelValue()
...
Rather than use a bool and out parameter, we can collapse them into one
by using a std::optional.
2019-06-07 17:26:24 -04:00
Lioncash
747128b093
DSP/LabelMap: Collapse DeleteLabel loop into std::find_if
...
Same thing, no explicit loops.
2019-06-07 17:13:10 -04:00
Lioncash
98ec2ab2ac
DSP/LabelMap: Default constructor and destructor
...
We also move the destructor definition into the cpp file, as that will
allow us to make the entire label_t type hidden from external view in a
following change.
2019-06-07 17:07:06 -04:00
Lioncash
0a1249ea40
DSP/LabelMap: Amend class formatting
...
Places the most important stuff, the public interface first.
2019-06-07 17:05:25 -04:00
Lioncash
60d10d2813
Core/DSP/DSPTables: Make FindOpInfoByName/FindExtOpInfoByName use std::string_view
...
These functions only ever compare against another string, so these can
have their parameters turned into std::string_view to make them more
flexible.
2019-06-06 12:22:02 -04:00
Léo Lam
3f4952d57c
Merge pull request #8152 from lioncash/array-size
...
Common/CommonFuncs: Remove now-unneccessary ArraySize function
2019-06-06 13:35:57 +02:00
Léo Lam
824ec84e82
Merge pull request #8154 from lioncash/analytics
...
{Common/Analytics, Core/Analytics}: Minor C++17 transitional changes
2019-06-06 13:25:17 +02:00
booto
37919144c8
SI_DeviceGCAdapter: Stop it being detected as a steering wheel
2019-06-05 23:31:48 -04:00
Sintendo
e9d4869965
Jit64AsmCommon: Micro-optimize GenFrsqrte
...
Save 2 bytes by testing register against itself and branching on the
sign flag.
Before:
0: 48 0f ba e0 3f bt rax,0x3f
After:
0: 48 85 c0 test rax,rax
2019-06-05 23:58:44 +02:00
Sintendo
5b5886160e
DSPJitArithmetic: Precompute addis immediate
...
Compute immediate value at compile time.
2019-06-05 23:36:30 +02:00
Sintendo
3951d238d9
DSPJitArithmetic: Precompute addi immediate
...
Compute immediate value at compile time.
2019-06-05 23:36:14 +02:00
Sintendo
a3744c3c26
DSPJitUtil: Use round_long_acc in get_long_prod_round_prodl
...
Identical, except that this used a temporary register as scratch instead
of RCX. round_long_acc now no longer needs scratch, so we can
deduplicate the logic.
2019-06-05 23:33:02 +02:00
Sintendo
832e320f08
DSPJitUtil: Make round_long_acc branchless
...
Also no longer clobbers RCX.
2019-06-05 23:25:39 +02:00
Sintendo
9b6f2859a4
DSPJitUtil: Micro-optimize increment_addr_reg
...
2 bytes shorter.
Before:
0: 41 0f b7 c2 movzx eax,r10w
4: 41 89 c5 mov r13d,eax
7: 83 c0 01 add eax,0x1
After:
0: 45 0f b7 ea movzx r13d,r10w
4: 41 8d 45 01 lea eax,[r13+0x1]
2019-06-05 23:23:22 +02:00
JosJuice
3ab74f8cb7
HW/DI: Emulate rotational latency
...
This aims to emulate rotational latency as part of the disc drive
timings, which makes loading times have more variance (like on a
real disc drive) but should not affect the average loading times.
2019-06-05 20:47:08 +02:00
Lioncash
e59f72739a
Core/Analytics: Turn analytics URL into a C-string
...
Less reading and also doesn't store an unnecessary pointer value in the
executable, making it smaller by 8 bytes.
2019-06-05 13:24:35 -04:00
Lioncash
ea9f887170
Core/Analytics: Use inline on static member variables
...
Starting with C++17, this allows for the same behavior as the existing
code, but without the need to manually write the out-of-class
definitions as well.
2019-06-05 13:24:35 -04:00
Lioncash
ebf3de4d93
Core/Analytics: Use std::lock_guard deduction guides
...
Starting with C++17, the type of the mutex being locked no longer needs
to be hardcoded into the type declaration.
2019-06-05 13:24:35 -04:00
Lioncash
57454e90a7
Core/Analytics: Make MakeUniqueId() a const member function
...
This function doesn't modify instance state, so we can mark it as const.
2019-06-05 13:24:34 -04:00
Lioncash
a5caa95a4b
Core/Analytics: Use std::string_view where applicable
...
In these cases, the strings are treated as views anyways, so we can use
them here to avoid potential allocations.
2019-06-05 13:24:34 -04:00
Lioncash
2c2b9690bb
Core/Analytics: Simplify static_assert
...
We can just use a std::array here to simplify the size calculation.
2019-06-05 13:24:34 -04:00
Lioncash
7935c27b52
Common/Analytics: Convert std::string overload into std::string_view
...
Allows for both string types to be non-allocating. We can't remove the
const char* overload in this case due to the fact that pointers can
implicitly convert to bool, so if we removed the overload all const
char arrays passed in would begin executing the bool overload instead of
the string_view overload, which is definitely not what we want to occur.
2019-06-05 13:24:31 -04:00
spycrab
78e566aaa5
Merge pull request #8156 from 8times9/resourcepack-header
...
Qt/ResourcePackManager: Remove column header bold text
2019-06-05 14:27:39 +02:00
Techjar
5f3bf405d4
Core/Movie: Store PAD_GET_ORIGIN bit in ControllerState
...
This fixes the desync on playback of start-from-boot input recordings
made while using the GC adapter, as well as other desyncs that could
potentially occur in other circumstances where this bit is used.
I used a previously reserved bit in the ControllerState to store the
new data, so this shouldn't significantly break backwards
compatibility. However, tools that aren't aware of this new bit may set
it to 0, which will break input recordings that contain it.
2019-06-05 02:36:23 -04:00
8times9
ffb8f56a83
Qt/ResourcePackManager: Remove column header bold text
2019-06-04 19:13:39 -05:00
Lioncash
58e2cd5486
Common/Analytics: std::move std::string constructor parameter
...
Allows calling code to move into the constructor, avoiding the creation
of another string copy.
2019-06-03 20:13:00 -04:00
Lioncash
f813c4951a
Common/Analytics: Use deduction guides for std::lock_guard
...
Avoids needing to hardcode the type of mutex. We can also make use of
scoped_lock where two consecutive lock_guard instances are used.
2019-06-03 20:12:55 -04:00
Lioncash
6df65d7a5d
Common/Analytics: Default AnalyticsReportingBackend()'s destructor
...
Stays consistent with AnalyticsReportBuilder.
2019-06-03 18:27:45 -04:00
Tillmann Karras
84e3391535
Mark files as non-executable
2019-06-02 12:31:40 +01:00
Lioncash
a9663669dc
Common/CommonFuncs: Remove now-unneccessary ArraySize function
...
Since C++17, non-member std::size() is present in the standard library
which also operates on regular C arrays. Given that, we can just replace
usages of ArraySize with that where applicable.
In many cases, we can just change the actual C array ArraySize() was
called on into a std::array and just use its .size() member function
instead.
In some other cases, we can collapse the loops they were used in, into a
ranged-for loop, eliminating the need for en explicit bounds query.
2019-06-01 10:07:57 -04:00
Lioncash
c8b950e716
IOS/USB_KBD: Normalize variable names
...
Now, with all of the tidying done, we can cap it off by normalizing
variable names to abide by our code formatting guidelines.
2019-05-31 09:05:31 -04:00
Lioncash
7f5ca64c4d
IOS/USB_KBD: Make the message type enum an enum class
...
Avoids polluting the surrounding scope with enum values. We can also
make use of it in MessageData's constructor to enforce proper type
passing.
2019-05-31 09:00:08 -04:00
Lioncash
d89ea8bf41
IOS/USB_KBD: Make IsKeyPressed() a non-virtual const member function
...
No other class inherits the USB_KBD class, and this function doesn't
actually modify instance state, so it can be made a const member
function.
2019-05-31 08:51:46 -04:00
Lioncash
bcdc5b5f7e
IOS/USB_KBD: Add static assertion to enforce MessageData as trivially copyable
...
MessageData must be a trivially copyable type, given it's copied into
emulated memory via our memory copy function CopyToEmu. Under the
covers, this function utilizes memcpy. One of memcpy's requirements is
that pointers to it point to types that are trivially copyable,
otherwise the behavior is undefined.
Given that, we can enforce this requirement at compile-time.
2019-05-31 08:51:46 -04:00
Lioncash
e0552e0642
IOS/USB_KBD: Rename SMessageData to MessageData
...
We don't need to prefix this with S to signify that it's a struct.
2019-05-31 08:51:43 -04:00
Lioncash
cc54652fb3
IOS/USB_KBD: Migrate TODO comment above if statement
...
Prevents some wonky formatting from occurring.
2019-05-31 08:51:01 -04:00
Lioncash
e8cc1b8d8a
IOS/USB_KBD: Use std::array for member variables where applicable
...
Simplifies initialization code quite a bit, and replaces a pointer
variable for SMessageData with a type properly representing the whole
set of data it needs.
2019-05-31 08:50:58 -04:00
Léo Lam
a4837a5c5d
Merge pull request #8143 from lioncash/loader
...
VertexLoader_*: Minor cleanup
2019-05-31 14:18:16 +02:00
Léo Lam
eed4fcc218
Merge pull request #8135 from lioncash/cmake
...
CMakeLists: Specify header files in target sources
2019-05-31 14:03:12 +02:00
Lioncash
64564e337b
IOS/USB_KBD: Make key code lookup tables immutable and internally linked
...
These aren't modified by the class, nor do they directly need anything
related to the class state, so they can solely live within the cpp file,
hidden from external view, and also be made const, so the compiler can
place it within the read-only segment.
2019-05-31 08:02:29 -04:00
Léo Lam
2cb59ab055
Merge pull request #8148 from lioncash/view
...
AudioCommon: Use std::string_view with feature querying functions
2019-05-31 14:01:15 +02:00
Léo Lam
478f359d8d
Merge pull request #8149 from lioncash/sdio
...
IOS/SDIOSlot0: Remove unimplemented prototype
2019-05-31 13:58:54 +02:00
Lioncash
2060390a9f
IOS/SDIOSlot0: Tidy up parameter names of ExecuteCommand
...
Makes the names consistent between declaration and definition and
adjusts them to follow our code formatting guidelines.
Now all functions in the translation unit follow our formatting
guidelines.
2019-05-31 07:28:11 -04:00
Lioncash
61c25b3d23
IOS/SDIOSlot0: Remove unimplemented prototype
...
This function doesn't have an implementation, so we can remove it to
make for less reading (and a linker error waiting to happen).
2019-05-31 07:23:40 -04:00
Lioncash
78e96230b2
AudioCommon: Move static locals into the AudioCommon namespace
...
Given these are locals, they can be moved out of the global namespace.
While we're at it, turn the constants below it into constexpr variables.
2019-05-31 07:07:16 -04:00
Lioncash
15397e2a89
AudioCommon: Use emplace_back instead of push_back in GetSoundBackends()
...
Constructs the strings directly within the container instead of
performing a construction, then a copy.
The reasoning is that the BACKEND_* strings are const char arrays, so
the push_back code is equivalent to:
push_back(std::string(BACKEND_WHATEVER)) instead of forwarding the
arguments to a constructed instance directly in the container.
2019-05-31 07:03:54 -04:00
Lioncash
1a56e9d9e0
AudioCommon: Use std::string_view with feature querying functions
...
Provides the same behavior, but allows passed in strings to be
non-allocating in calling code.
2019-05-31 07:01:47 -04:00
Lioncash
3d27439d9a
VideoCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
a41ba68c1e
VideoVulkan/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
cd9281772a
VideoSoftware/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
115e7992c5
VideoOGL/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
968d379cc4
VideoNull/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
87a57a5584
UpdaterCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
4cdb493eab
UICommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
24f5acf9a5
InputCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
b453229a68
DolphinQt/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
0c538ef523
DolphinNoGUI/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
cbcafd6830
DiscIO/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
cd351fd478
Core/CMakeLists: Specify headers in target sources
2019-05-31 06:54:24 -04:00
Lioncash
b6d9b85293
AudioCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:52:44 -04:00
Lioncash
48b82e82db
Common/CMakeLists: Specify headers alongside source files
...
Allows these files to show up as part of the project when generating IDE
builds from CMake.
2019-05-31 06:52:44 -04:00
Léo Lam
5ffbec6956
Merge pull request #8144 from lioncash/tie
...
Common/x64Emitter: Resolve TODO in OpArg's operator==
2019-05-31 11:05:33 +02:00
booto
bc8a4f99c7
VideoCommon: Constrain the array_base registers
...
The array_base registers as part of CP state do not seem to incorporate
the upper bits in the physical address they try to access.
2019-05-31 03:22:00 -04:00
Techjar
b0b4b69d6e
Qt/NetPlayDialog: Change network mode options to radio buttons
...
This changes the Host Input Authority and Golf Mode checkboxes into a
set of radio buttons, consisting of Fair Input Delay, Host Input
Authority, and Golf Mode. This represents the 3 network modes we have.
Although Golf Mode is just an extension of Host Input Authority, it's
more logical to the user to present it as a separate option, rather
than enabling the Golf Mode checkbox only when Host Input Authority is
enabled. This also eliminates the need to first enable Host Input
Authority before Golf Mode can be enabled.
This also adds tooltips to provide brief descriptions of the options,
as well as reintroducing tooltips that were previously removed.
2019-05-31 02:33:41 -04:00
booto
c1baffa776
ARAM: further cleanup, use AddressSpace accessors
2019-05-30 21:46:18 -04:00
Techjar
199486ffb6
Qt/NetPlayDialog: Move settings loading into LoadSettings
2019-05-30 18:07:03 -04:00
Techjar
cd3ba570df
VideoCommon/ShaderGenCommon: Fix memcmp size in ShaderUid operators
2019-05-30 16:00:46 -04:00
Lioncash
2452747429
VertexLoader_TextCoord: Tidy up public function definitions
...
We can use u32 instead of unsigned int to shorten up these definitions
and make them much nicer to read.
While we're at it, change the size array to house u32 elements
to match the return value of the function.
2019-05-30 10:29:51 -04:00
Lioncash
9569c79ca2
VertexLoader_TextCoord: Make lookup tables immutable
...
Allows the compiler to place the data within the read-only segment.
2019-05-30 10:29:50 -04:00
Lioncash
16a03bade2
VertexLoader_TextCoord: Place helper functions in anonymous namespace
...
Gives them all internal linkage.
2019-05-30 10:29:50 -04:00
Lioncash
6f656b7219
VertexLoader_Position: Tidy up public function definitions
...
We can use u32 instead of unsigned int to shorten up these definitions
and make them much nicer to read.
While we're at it, change the size array to house u32 elements to match
the return value of the function.
2019-05-30 10:29:50 -04:00
Lioncash
14e544eef8
VertexLoader_Position: Make lookup tables immutable
...
Allows the compiler to place these arrays within the read-only segment.
2019-05-30 10:29:50 -04:00
Lioncash
be9a03b35f
VertexLoader_Position: Place helper functions in anonymous namespace
2019-05-30 10:29:50 -04:00
Lioncash
60a1d0593c
VertexLoader_Color: Place helper functions in anonymous namespace
...
While we're at it, convert the define into a constexpr variable.
2019-05-30 10:29:47 -04:00
Lioncash
66596c5176
Common/x64Emitter: Resolve TODO in OpArg's operator==
...
We now require C++17, so we can use std::tie here.
2019-05-30 10:27:28 -04:00
Léo Lam
00ecfb3c59
Merge pull request #8138 from lioncash/input-string
...
ControllerInterface/Device: Minor cleanup
2019-05-30 14:33:53 +02:00
Léo Lam
4e7a790648
Merge pull request #8140 from lioncash/vertex
...
VideoCommon/VertexLoader_Normal: Construct look-up table at compile-time
2019-05-30 14:28:59 +02:00
Léo Lam
90c9991086
Merge pull request #8141 from lioncash/init
...
VideoCommon/ShaderGenCommon: Simplify initialization of ShaderUid class
2019-05-30 14:15:02 +02:00
Léo Lam
2ce587f781
Merge pull request #8142 from lioncash/shader-view
...
VideoCommon/RenderBase: Use std::string_view with CreateShaderFromSource()
2019-05-30 14:12:18 +02:00
Lioncash
f7eff6dab8
VideoCommon/ShaderGenCommon: Simplify operator!= for ShaderUid
...
This can be implemented as the negation of operator==, placing the
comparison logic for equality and inequality in the same place.
2019-05-30 06:41:57 -04:00
Lioncash
954246d10e
VideoCommon/ShaderGenCommon: Remove use of a union within ShaderUid
...
This is only ever used to retrieve a raw view of the given UID data
structure, however it's already valid C++ to retrieve a char/unsigned
char view of an object for bytewise inspection.
u8 maps to unsigned char on all platforms we support, so we can just do
this directly with a reinterpret cast, simplifying the overall
interface.
2019-05-30 06:41:57 -04:00
Lioncash
149a97e396
VideoCommon: Remove unnecessary memset on ShaderUid instances.
...
Zero-initialization zeroes out all members and padding bits, so this is
safe to do. While we're at it, also add static assertions that enforce
the necessary requirements of a UID type explicitly within the ShaderUid
class.
This way, we can remove several memset calls around the shader
generation code that makes sure the underlying UID data is zeroed out.
Now our ShaderUid class enforces this for us, so we don't need to care about
it at the usage sites.
2019-05-30 06:41:54 -04:00
Lioncash
1831dcbe6f
VideoVulkan/ShaderCompiler: Use non-member std::size instead of ArraySize()
...
Now that we're on C++17, we can use its non-member std::size function
instead of ours. This provides no functional change.
2019-05-30 04:16:20 -04:00
Lioncash
d6a60050ff
VideoVulkan/ShaderCompiler: Use a std::optional instead of bool+out variable
...
Now that we utilize C++17, we can simply return an optional containing
the code instead of using an out variable and a boolean result,
essentially combining them into one.
This provides a much more straightforward interface.
2019-05-30 04:16:17 -04:00
Lioncash
e60268bd42
VideoCommon/RenderBase: Use a std::string_view with CreateShaderFromSource()
...
Greatly simplifies the overall interface when it comes to compiling
shaders. Also allows getting rid of a std::string overload of the same
name. Now std::string and const char* both go through the same function.
2019-05-30 03:29:35 -04:00
Lioncash
0084aeb5d7
VideoCommon/VertexLoader_Normal: Use variable template variants of type traits
...
Same thing, less reading.
2019-05-30 00:52:59 -04:00
Lioncash
8268b6f454
VideoCommon/VertexLoader_Normal: Initialize function table at compile-time
...
Makes VertexLoader_Normal completely stateless, eliminating the need for
an Init() function, and by extension, also gets rid of the need for the
FifoAnalyzer to have an Init() function.
2019-05-30 00:52:57 -04:00
Lioncash
911755242d
VideoCommon/VertexLoader_Normal: Remove E prefix from enums
...
This is old formatting that used to be used prior to the coding style
being introduced.
2019-05-29 22:15:46 -04:00
Lioncash
3b8fb22d93
VideoCommon/VertexLoader_Normal: Tidy up function declarations
...
We can use u32 to shorten up the function declarations. While we're at
it, remove unnecessary comments. These don't help with understanding.
2019-05-29 22:13:20 -04:00
Lioncash
8537f8e095
VideoCommon/PixelShaderGen: Fix up wonky comment formatting
...
This is likely a remnant of the initial transition to clang-format.
2019-05-29 22:03:02 -04:00
Lioncash
45934dd0c5
VideoCommon/PixelShaderGen: Make arrays immutable
...
Many of the arrays defined within this file weren't declared as
immutable, which can inhibit the strings being put into the read-only
segment. We can declare them constexpr to make them immutable.
While we're at it, we can use std::array, to allow bounds conditional
bounds checking with standard libraries. The declarations can also be
shortened in the future when all platform toolchain versions we use
support std::array deduction guides. Currently macOS and FreeBSD
builders fail on them.
2019-05-29 22:00:58 -04:00
Lioncash
e28d08e973
VideoCommon/PixelShaderGen: Brace control structures that travel more than one line
...
Them's the code formatting rules.
2019-05-29 20:16:41 -04:00
Lioncash
0263435050
ControllerInterface/Device: Make DetectInput() a const member function
...
This doesn't actually modify object instance state, so it can be made
const.
2019-05-29 19:23:54 -04:00
Lioncash
27346fee8a
ControllerInterface/Device: Take vector by const reference in DetectInput()
...
The vector is only ever queryied and it's contents aren't modified, so
there's no reason to take the vector by value. We can take a constant
reference to it to avoid unnecessary allocating.
2019-05-29 19:12:21 -04:00
Lioncash
246e2a77ce
ControllerInterface/Device: std::move strings in constructor where applicable
...
Allows callers to move std::string values into the constructor,
potentially avoiding copies.
2019-05-29 18:46:49 -04:00
Lioncash
1355b43fd2
ControllerInterface/Device: Use std::string_view where applicable
...
In these cases, the given string is only ever compared against other
string, so std::string can be turned into a std::string_view to allow
non-allocating inputs.
2019-05-29 18:42:24 -04:00
Vincent Duvert
2c3c8bbb90
GCAdapter: Update Android-specific source
...
Fix the Android version of GCAdapter.cpp so it matches the new definitions in GCAdapter.h.
2019-05-29 18:28:24 +02:00
Vincent Duvert
9e7d4d2abb
GCAdapter: Handle dynamic status updates for non-hotplug libusb
...
Detect when the setup function found no adapter, or found one but could
not connect to it, and report the new status in that case.
2019-05-29 18:28:24 +02:00
Vincent Duvert
2ac1ca133f
GCPadWiiUConfigDialog: Update the adapter state dynamically
...
Update the GC adapter config GUI if the adapter is plugged or unplugged.
2019-05-29 18:28:24 +02:00
Vincent Duvert
b08e2ec959
GCAdapter: Report libusb open errors to the user
...
If opening the adapter fails, report the libusb error message in the GUI
instead of “No Adapter Detected”.
The error condition is removed when the adapter is unplugged.
2019-05-29 18:28:24 +02:00
Vincent Duvert
0165e5e703
GCAdapter: Close libusb handle if an open error occurs
...
The handle was previously kept open, which was causing future adapter
plug/unplug events to be ignored.
2019-05-29 18:28:24 +02:00
Léo Lam
80d8173d29
Merge pull request #8132 from lioncash/string
...
Common/FileUtil: Use std::string_view with WriteStringToFile
2019-05-29 15:32:18 +02:00
JosJuice
f25367a7a2
DiscIO: Avoid copies when comparing FileSystemGCWii file names
2019-05-29 14:53:39 +02:00
weihuoya
0dec8feadb
android: thread local env
2019-05-29 20:22:26 +08:00
Léo
aca46b11f8
Merge pull request #8070 from leoetlino/usb-fixes
...
Update and patch libusb to fix USB issues
2019-05-29 14:07:19 +02:00
Léo Lam
918d707f3f
Merge pull request #8131 from lioncash/move
...
UICommon/ResourcePack/Manager: Resolve use-after-move in Add()
2019-05-29 13:24:08 +02:00
Léo Lam
0cfdcf436d
Merge pull request #8136 from lioncash/arglist
...
VideoCommon/{NetPlayChatUI/NetPlayGolfUI}: Minor changes
2019-05-29 13:18:03 +02:00
Lioncash
7346679986
Common/FileUtil: Use std::string::data within ReadFileToString
...
With C++17, .data() for std::string now has a non-const overload, so we
can make use of that instead of taking the address of the first element.
2019-05-29 07:06:56 -04:00
Lioncash
c0f499b7f7
Common/FileUtil: Use std::string_view with WriteStringToFile
...
Allows writing out other forms of strings (e.g. C strings) without the
need to allocate a std::string and discard it after use.
2019-05-29 07:06:56 -04:00
Lioncash
eb475025b8
Common/FileUtil: Make WriteStringToFile consistent with ReadFileToString
...
Makes the parameter ordering consistent and less error-prone.
2019-05-29 07:06:53 -04:00
Lioncash
1a0f8e7804
VideoCommon/VertexLoaderX64: Add missing header guard
2019-05-29 06:35:22 -04:00
Lioncash
778623c48c
VideoCommon/NetPlayGolfUI: Remove unused header
...
This header doesn't actually make use of any std::string facilities.
2019-05-29 06:20:57 -04:00
Lioncash
cf0f2bbf1d
VideoCommon/NetPlayGolfUI: Default the destructor in the cpp file
...
Ensures the destruction logic is kept local to the translation unit. It
also doesn't really do much to have it specified in the header.
2019-05-29 06:20:05 -04:00
Lioncash
0fabab0760
VideoCommon/NetPlayGolfUI: Initialize netplay_client in the constructor initializer list
2019-05-29 06:20:05 -04:00
Lioncash
c958fc1278
VideoCommon/NetPlayChatUI: Default destructor in the cpp file
...
Ensures that the destruction logic is kept local to the translation unit
(making it nicer when it comes to forward declaring non-trivial types).
It also doesn't really do much to define it in the header.
2019-05-29 06:20:05 -04:00
Lioncash
53b115b81e
VideoCommon/NetPlayChatUI: Use nullptr where applicable
...
We gotsa type dedicated to this concept already :P
2019-05-29 06:14:43 -04:00
Lioncash
50a15b7484
VideoCommon/NetPlayChatUI: Take std::string by value in AppendChat()
...
Given we're simply storing the std::string into a deque. We can emplace
it and move it. Completely avoiding copies with the current usage of the
function.
2019-05-29 06:12:29 -04:00
Lioncash
08223bad9f
VideoCommon/NetPlayChatUI: Set member variable within the constructor initializer list
...
Member variables should be initialized within the constructor
initializer list if possible.
2019-05-29 06:09:49 -04:00
JosJuice
d4b069f458
DiscIO: Use std::string_view in FileSystem::FindFileInfo
...
...and in the functions that call it.
2019-05-29 08:29:56 +02:00
Sintendo
9fe3150358
x64EmitterTest: Test 64-bit MOV with 32-bit immediate
2019-05-29 01:04:16 +02:00
Sintendo
c84f34bd50
x64Emitter: Short MOVs for 32bit immediates
...
Prior to this commit, the emitter would emit a 7-byte instruction when
loading a 32-bit immediate to a 64-bit register.
0: 48 c7 c0 ff ff ff 7f mov rax,0x7fffffff
With this change, it will check if it can instead emit a load to a
32-bit register, which takes only 5 or 6 bytes.
0: b8 ff ff ff 7f mov eax,0x7fffffff
2019-05-29 01:04:09 +02:00
Lioncash
4d2e0c7b48
UICommon/ResourcePack/Manager: Resolve use-after-move in Add()
...
The pack is already has its validity checked at the beginning of the
function, so we don't need to check this again after inserting it.
Also resolves a use-after-move case.
2019-05-28 17:40:28 -04:00
Lioncash
b4470ad4c2
UICommon/GameFile: Make COVER_URL a plain C string
...
Same behavior but doesn't take up 8 bytes in the executable to store a
pointer. While we're at it, move it into an anonymous namespace within
the UICommon namespace.
2019-05-28 07:27:41 -04:00
Lioncash
8229ada922
UICommon/GameFile: Remove unused includes
...
Nothing within the source file makes use of anything in those includes,
so they can be removed.
2019-05-28 07:27:41 -04:00
Lioncash
80786cd295
UICommon/GameFile: Remove unnecessary value() calls in DownloadDefaultCover()
...
We already check ahead of time if the optional contains a value within
it before accessing it, so we don't need to use the throwing value()
accessor. We can just directly use operator->
2019-05-28 07:27:41 -04:00
Lioncash
ab0892e5a5
UICommon/GameFile: Deduplicate string paths where applicable
...
Rather than construct strings twice, we can just construct it once and
reuse it. While we're at it, we can move variables closer to where
they're actually used within DownloadDefaultCover()
2019-05-28 07:27:35 -04:00
Lioncash
27ecb93b32
UICommon/GameFile: Remove unnecessary initializers
...
All of the standardized types have constructors that will automatically
initialize them, so the explicit initializers are redundant.
2019-05-28 07:00:15 -04:00
Lioncash
56faf750be
UICommon/GameFile: std::move std::string argument in constructor
...
Allows for calling code to move the argument into the constructor,
avoiding a copy.
2019-05-28 06:57:48 -04:00
Lioncash
8e65869484
UICommon/GameFile: Default no-arg constructor and destructor within the cpp file
...
A GameFile instance contains quite a lot of non-trivial types, so
default construction and destruction in the same translation unit.
2019-05-28 05:53:40 -04:00
Lioncash
49ca31467d
UICommon/GameFile: Use in-class initializers where applicable
...
Allows deduplicating code within the constructor initializer list.
2019-05-28 05:51:51 -04:00
Léo Lam
800d875faa
Merge pull request #8127 from lioncash/resource
...
UICommon/ResourcePack: Minor cleanup
2019-05-27 23:05:10 +02:00
Léo Lam
256c9375c9
Move libusb utilities to LibusbUtils
...
* Simplifies libusb context usage and allows us to set options for
all contexts easily. Notably, this lets us enable usbdk support
in libusb, which is now opt-in in the latest version.
* Moves the libusb config descriptor wrapper class to LibusbUtils too
since that could easily be reused.
* Moves device listing to LibusbUtils too and add a lock around it
as some libusb backends are not thread safe.
* Consequences: only a single context and a single event handling
thread is used now, which is more efficient.
2019-05-27 20:09:55 +02:00
Lioncash
f07cf9ebab
UICommon/ResourcePack: Allow ReadCurrentFileUnlimited() to read into any contiguous container
...
This allows the same code to be used to read into a std::string, which
allows for eliminating the vector->string transfer when reading the
manifest file.
A ContiguousContainer is a concept that includes std::array,
std::string, and std::vector.
2019-05-27 13:29:40 -04:00
Lioncash
5c4d3f55da
UICommon/Manager: Remove unused std::string variable in Remove()
2019-05-27 13:09:21 -04:00
Léo Lam
42de5b9a10
Merge pull request #8126 from lioncash/todo
...
Core/GCMemcard: Remove obsolete TODO
2019-05-27 19:04:06 +02:00
Léo Lam
525c65dd19
Merge pull request #8125 from lioncash/verify
...
DiscIO/VolumeVerifier: Make use of unused variable (+ minor other changes)
2019-05-27 19:03:13 +02:00
Lioncash
41cda6fe6d
UICommon/ResourcePack: Use ScopeGuards to manage closing files
...
Makes it way harder to introduce resource leaks, and plugs the existing
resource leaks in the constructor and Install() where the file wouldn't
be closed in some error cases.
2019-05-27 13:02:04 -04:00
Lioncash
157a305507
UICommon/ResourcePack: Deduplicate string construction
...
A few cases duplicate the string patch creation, which is kind of
wasteful. We can just construct the string once.
2019-05-27 12:45:23 -04:00
Lioncash
a22cc615a9
UICommon/ResourcePack: Remove unnecessary resizes
...
We can simply construct the containers with the desired size in these
cases.
2019-05-27 12:37:46 -04:00
Lioncash
57701cd988
UICommon/ResourcePack: Make TEXTURE_PATH a regular array
...
Same behavior, only it doesn't unnecessarily store a pointer in the
executable. While we're at it, make it constexpr and move it into the
namespace.
2019-05-27 12:33:50 -04:00
Lioncash
b2b5b01eda
Core/GCMemcard: Remove obsolete TODO
...
Now that we assume C++17, the in-file definition of the std::array can
be removed. This is all that's necessary, as constexpr used on a static
member variable implies inline (and so, automatically has C++17's static
inline behavior).
2019-05-27 11:48:38 -04:00
Lioncash
d220e33862
DiscIO/VolumeVerifier: Make no-argument overload of GetBiggestUsedOffset() const
...
The overload taking a partition is already a const member function, so
this one can be turned into one as well.
2019-05-27 10:40:41 -04:00
Lioncash
bf6948c1d4
DiscIO/VolumeVerifier: Use structured bindings where applicable
...
Allows providing better names than "first" or "second".
2019-05-27 10:40:38 -04:00
Lioncash
fa57396e97
DiscIO/VolumeVerifier: In-class initialize members where applicable
...
Removes redundant initializers from the constructor and provides
initializers for all members that don't already have one for consistency
(and deterministic initial state).
2019-05-27 10:40:17 -04:00
Lioncash
52eb2d0d82
DiscIO/VolumeVerifier: Default destructor within the cpp file
...
Given the volume verifier has quite a few non-trivial object within it,
it's best to default the destructor within the cpp file to prevent
inlining complex destruction logic elsewhere, while also making it nicer
if a forward-declared type is ever used in a member variable.
2019-05-27 10:19:51 -04:00
Lioncash
0ccaa2b5d6
DiscIO/VolumeVerifier: Take std::string by value in AddProblem()
...
This allows both std::moving into the function and moving the parameter
from within the function, potentially avoiding an unnecessary copy.
2019-05-27 10:17:11 -04:00
Lioncash
a1f77fd14b
DiscIO/VolumeVerifier: Make use of unused variable in CheckMisc()
...
This variable wasn't being utilized when comments indicate that it
probably should be.
2019-05-27 10:09:55 -04:00
Lioncash
ab2adfb0a7
Common/HttpRequest: Simplify cURL initialization
...
std::call_once is guaranteed to execute the given callable object
exactly once. This guarantee holds even if the function is called
concurrently from several threads.
Given that, we can replace the mutex and boolean flag with
std::call_once and a std::once_flag to perform the same behavior.
2019-05-27 09:46:57 -04:00
Lioncash
b15f595130
Common/HttpRequest: Avoid unnecessary copies in loop in Fetch()
...
Previously, every entry pair within the map would be copied. The reason
for this is subtle.
A std::map's internal entry type is defined as:
std::pair<const Key, Value>
but the loop was declaring it as:
std::pair<Key, Value>
These two types aren't synonymous with one another and so the compiler
is required to always perform a copy.
Using structured bindings avoids this (as would plain auto or correcting
the explicit type), while also allowing the use of more appropriate
names compared to first and second.
2019-05-27 09:36:31 -04:00
Lioncash
8dc8cf8019
Common/HttpRequest: std::move callback in constructor
...
std::function is allowed to heap allocate in order to hold any necessary
bound data in order to execute properly (e.g. lambdas with captures), so
this avoids unnecessary reallocating.
2019-05-27 09:26:28 -04:00
Pokechu22
69d9d9f87a
Also free when initialization fails, and move to end
2019-05-26 19:59:29 -07:00
Pokechu22
19fb3bb4fe
DX11: Fix access violation on closing dolphin
2019-05-26 15:01:05 -07:00
Léo Lam
f92c17e76f
Merge pull request #7799 from Tilka/mapping
...
DolphinQt/Mapping: red = error, don't flash
2019-05-26 18:10:06 +02:00
Tillmann Karras
2195ef30f3
DolphinQt/Mapping: red = error, don't flash
2019-05-26 17:59:30 +02:00
Roland Munsil
4ce7079098
CheatsManager: Improve performance of searching & add input validation
...
The previous implementation of cheat search would reconvert the input
string for every single memory value. Now we do it once and construct
a comparison lambda which we pass to the search code.
In addition, I also added input validation. So, for example, if you've
selected Decimal input and you try to compare against "FF",
it won't search and will instead let the user know they've entered an
invalid value. Similar logic for if you enter "1.2" in a search for
bytes. Before, it would just use 0 if it failed to convert the value.
2019-05-26 17:32:48 +02:00
MerryMage
f6afce781f
Jit64AsmCommon: Use PEXT in GenConvertDoubleToSingle
2019-05-25 23:07:50 +01:00
MerryMage
12314577c1
Jit64AsmCommon: Make ConvertDoubleToSingle use RSCRATCH as output
2019-05-25 23:07:50 +01:00
MerryMage
ec8d57d882
UnitTests/Jit64Common: Test GenConvertDoubleToSingle
2019-05-25 23:07:50 +01:00
booto
c4799e5977
Jit64: Make DoubleToSingle a common asm routine
2019-05-25 23:07:50 +01:00
Admiral H. Curtiss
15abb1c92d
GCMemcardDirectory: Improve logic for which files are loaded into the virtual memory card.
...
- Files for the current game are now guaranteed to be loaded, space and validity permitting.
- Avoid showing PanicAlerts for every problem encountered, most of them aren't really important enough and will probably just annoy the user.
- And for the only error the user will definitely care about, when the save of the game they're trying to play fails to load, show an imgui message instead.
2019-05-25 21:51:36 +02:00
Admiral H. Curtiss
5af05f6714
GCMemcard/GCIFile: Implement LoadHeader().
2019-05-25 21:49:09 +02:00
Admiral H. Curtiss
884af05589
GCMemcardDirectory: Move GCIFile class to its own file.
2019-05-25 21:49:09 +02:00
8times9
00855552e9
Qt/MenuBar: Reorder Tools menu
2019-05-25 20:22:52 +02:00
Léo Lam
edf988b465
Merge pull request #8019 from AdmiralCurtiss/gcmemcard-header-cleanup
...
GCMemcard: A little cleanup.
2019-05-25 19:20:43 +02:00
Admiral H. Curtiss
e390fd0f4e
GCMemcard: Remove unused ability of ImportGci() to write a GCI file to disk.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
018572018e
GCMemcard: Dismantle the global return value enum into a few function specific enum classes.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
d09303683c
GCMemcard: Convert a few enums into constexprs.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
cbc5acb8cd
GCMemcard: Get rid of stray signed length in ImportGciInternal().
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
2d38364410
GCMemcard: Remove memsets that don't do anything in GCMemcard::Format().
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
88a0773309
GCMemcard: Rewrite checksum calculation without undefined behavior.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
fcd75841ca
GCMemcard: Rewrite Header::CalculateSerial() without undefined behavior.
2019-05-25 17:58:05 +02:00
Léo Lam
5fb56505b2
Merge pull request #8109 from leoetlino/ios-usb-fixes
...
IOS: USB fixes
2019-05-24 22:03:46 +02:00
Léo Lam
6dd0fe21f2
IOS/USB: Claim all interfaces ahead-of-time
...
To avoid having to claim/release interfaces all the time, and having to
trigger interface changes from several places, all interfaces are now
claimed ahead of time.
This commit also makes us avoid changing the active interface when it's
not necessary.
Changing the active interface has side effects such as resetting the
active alternate setting -- which is extremely undesirable because it
would require the emulated software to change the alternate setting
again, which isn't supposed to be necessary at all.
This fixes Your Shape, which submits isochronous transfers on an
endpoint that only exists in alt setting 6 right after submitting
control transfers (which would have reset to alt setting 0 prior to
this fix).
2019-05-24 20:47:46 +02:00
8times9
aeb02d83db
Qt/InterfacePane: Move "Keep on Window on Top" to Render Window section
2019-05-24 13:18:49 -05:00
Léo Lam
e07b514b62
Merge pull request #8115 from booto/powerpc_pvr
...
PowerPC: Add Broadway's PVR (retail Wii)
2019-05-24 14:51:06 +02:00
Léo Lam
9373bc3aa9
Merge pull request #8102 from dreamsyntax/debug-mousefix
...
Qt/Debugger CodeWidget navigation unification
2019-05-24 14:49:05 +02:00
dreamsyntax
e06a62d9d1
Qt: Fix CodeWidget navigation
...
Changed itemSelectionChanged and itemClicked signal to itemPressed in CodeWidget.
Holding mouse down and moving will only travel up/down the stack one time.
This fixes the common occurrence of unintentionally traveling deeper down the stack or higher up the callstack than intended.
2019-05-24 14:39:15 +02:00
Léo Lam
6eb7c525b2
Merge pull request #7801 from GerbilSoft/feature/Discord-PPCTitleChanged
...
Update Discord rich presence when the PPC title changes
2019-05-24 14:30:52 +02:00
David Korth
8417c78b7a
Update Discord rich presence when the title changes
...
This allows us to update the rich presence description if a channel
is launched from the Wii Menu. It also handles other PPC title
launches, e.g. Smash Bros. Masterpieces.
Host.h: Added Host_TitleChanged().
DolphinNoGUI/MainNoGUI.cpp: Implemented Host_TitleChanged().
DolphinQt/Host.cpp: Implemented Host_TitleChanged().
Android/jni/MainAndroid.cpp: Stubbed Host_TitleChanged().
DSPTool/StubHost.cpp: Stubbed Host_TitleChanged().
UnitTests/StubHost.cpp: Stubbed Host_TitleChanged().
2019-05-24 14:12:48 +02:00
booto
27cb407ecf
PowerPC: Add Broadway's PVR (retail Wii)
2019-05-23 19:56:41 -04:00
Léo Lam
702344ba9c
Merge pull request #8105 from 8times9/render-window
...
Qt/InterfacePane: Rename "In-Game" to "Render Window"
2019-05-23 13:06:36 +02:00
Léo Lam
617747e905
Merge pull request #8113 from lioncash/ini-key
...
Common/IniFile: Simplify Set()
2019-05-23 12:15:30 +02:00
Léo Lam
67c2aa0701
Merge pull request #8114 from lioncash/ini-line
...
IniFile: Prevent potential out-of-bounds access in ParseLine()
2019-05-23 12:12:41 +02:00
booto
c5a9a77684
clang-format: revert 'AfterCaseLabel' setting
2019-05-23 00:42:42 -04:00
Lioncash
2ae370fc37
IniFile: Prevent potential out-of-bounds access in ParseLine()
...
While current usages of ParseLine aren't problematic, this is still a
public function that can be used for other purposes. Essentially makes
the function handle potential external inputs a little nicer.
2019-05-22 21:09:11 -04:00
Lioncash
869acb96c6
Common/IniFile: Simplify Set()
...
We can just utilize map's insert_or_assign() function and check the
return value to determine whether or not we need to insert the key into
the keys_order vector.
2019-05-22 20:58:49 -04:00
Techjar
2e602344ea
Add BraceWrapping/AfterCaseLabel to .clang-format
2019-05-22 01:51:11 -04:00
Connor McLaughlin
68877c52d1
Merge pull request #8027 from MerryMage/MOVAPS
...
Jit64: Prefer MOVAPS where possible
2019-05-22 15:05:17 +10:00
booto
03d7fef5a6
ARAM: No ARAM backing DMA in wiimode
2019-05-21 22:23:42 -04:00
booto
70299f2505
ARAM: rework DMA
...
Changes include:
* Take into account how different size settings interact
* Do ARAM DMA transfers in chunks rather than all-at-once
2019-05-21 22:23:42 -04:00
booto
73c0a4ee81
DSP: Experiment with cleaning up ARAM accessor
2019-05-21 22:23:42 -04:00
Léo Lam
2b44e1b851
IOS/USB: Fix initial device scan
...
Even though libusb is supposed to be thread-safe, in practice
it's not (at least on Windows); getting a list of devices from two
different threads can result in libusb crashes. This is easily
fixed by waiting for the scan thread to complete scanning instead
of running the scan on the CPU thread.
This also fixes an issue that I had overlooked in the initial
implementation: IOS interfaces such as OH0 are sometimes opened
every frame, in which case we were doing a full device scan every
single frame on the CPU thread!
2019-05-21 19:07:30 +02:00
Léo Lam
b274a054a9
IOS/VEN: Read cancel endpoint correctly
...
Fixes an embarrassing bug that made the implementation utterly useless.
This fixes Your Shape hanging on shutdown. The game was waiting for an
interrupt transfer to be cancelled, and Dolphin wasn't cancelling
transfers on the correct endpoint.
2019-05-21 19:07:30 +02:00
Léo Lam
d7e23d71f8
IOS/VEN: Return -4 when no transfer was cancelled
...
Simple accuracy fix.
2019-05-21 19:07:30 +02:00
Léo Lam
4c6ef81291
IOS/USB: Verify that isochronous req buffer size is consistent
...
To catch possible bugs.
2019-05-21 19:07:30 +02:00
Léo Lam
a6da38d75d
IOS/USB: Fix TransferCommand length type
...
The total buffer size for isochronous transfers should be a u32,
not a u16. It is easy to hit the bug with devices such as cameras,
which require larger buffers.
This fixes Your Shape.
This also fixes the length type for bulk and interrupt transfers,
which should be u32 as that's what IOS supports. I'm not sure why
I made them u16... probably because OH0 uses u16 for most lengths...
2019-05-21 19:07:30 +02:00
Léo Lam
5226d6103a
IOS/USB: Add debug logging for all transfers
...
This makes debugging USB issues easier.
2019-05-21 19:07:29 +02:00
Léo Lam
57fbf1cd6e
Merge pull request #8107 from lioncash/string
...
DolphinQt/AboutDialog: Remove unnecessary QStringLiteral
2019-05-21 18:44:37 +02:00
Lioncash
1d22e50899
Core/Boot/Boot: Amend use-after-move cases in GenerateFromFile()
...
In terms of order of operations, the move would occur first before the
construction of the relevant reader would occur. However, given the
local variable 'path' was declared const, this bug actually wouldn't
occur, as std::move on a const variable does nothing (in a non-mutable
context), resulting in a copy instead, masking this issue.
Given this is a bug waiting to happen, we correct the code.
2019-05-21 08:44:29 -04:00
Lioncash
ae329b7b1b
DolphinQt/AboutDialog: Remove unnecessary QStringLiteral
...
QStrings automatically initialize to an empty string by default, making
this unnecessary.
2019-05-21 07:13:14 -04:00
Léo Lam
e2c769a9c5
Merge pull request #7992 from artemist/centering
...
ControllerEmu: Add support for setting the center of a ReshapableInput
2019-05-20 18:29:31 +02:00
Léo Lam
d2c7a6f239
Merge pull request #8094 from leoetlino/log-type-names
...
Qt/LogConfigWidget: Show log type short names
2019-05-20 18:27:57 +02:00
Artemis Tosini
4bbbd02de7
ControllerEmu: Do not change center when closing window
2019-05-19 16:55:29 +00:00
8times9
ba3b59fd18
Qt/InterfacePane: Rename In-Game to Render Window
2019-05-18 16:01:38 -05:00
Artemis Tosini
e5683988c0
ControllerEmu: Zero the center of a ReshapableInput when calibrating
2019-05-18 19:32:48 +00:00
Artemis Tosini
99cf9a57fc
Draw center when calibrating and remove constant
...
This adds the center to the calibration menu when it is nonzero.
It also refactors CENTER_COLOR to be a function, similar to other colors
after an earlier commit.
2019-05-18 18:36:28 +00:00
Artemis Tosini
49e46c8aff
ControllerEmu: Add support for setting the center of a ReshapableInput
...
This is useful in far out-of-calibration controllers, such as the
Switch Pro controller. This also adds support for configuring the center
in the Mapping widget.
2019-05-18 14:45:16 +00:00
Admiral H. Curtiss
6e04e4dd6a
GCMemcard: DEntry: Move code out of header.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
17da22a84f
GCMemcard: GCMBlock: Move code out of header.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
e4094d9d2d
GCMemcard: BlockAlloc: Move code out of header, fix naming conventions.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
4b46f71b3c
GCMemcard: Header: Move code out of header, fix naming conventions.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
0052b313d6
GCMemcard: Directory: Move code out of header, add some boundary checks, fix naming conventions.
2019-05-18 15:44:38 +02:00
Léo Lam
d3c4d278e2
Merge pull request #8077 from leoetlino/debugger-valign
...
Qt/Debugger: Fix register cell text vertical alignment
2019-05-17 20:17:52 +02:00
spycrab
bab00088d4
CMake/Windows: Add PCH support
2019-05-15 19:28:04 +02:00
spycrab
481b7cd085
DolphinQt/CMake: Fix Gettext not getting run on Windows
2019-05-15 19:19:16 +02:00
spycrab
bdd37c4dbc
DolphinQt/CMake: Copy files as a post build step
2019-05-15 19:19:15 +02:00
spycrab
ec734065db
Merge pull request #8087 from spycrab/cmake_win2019
...
Support CMake on Windows
2019-05-14 21:07:26 +02:00
Vincent Cunningham
b35c58451a
Clear existing GCPad state
2019-05-14 03:33:29 -04:00
Connor McLaughlin
1d5dd5db91
Merge pull request #8093 from JosJuice/android-runtime-extension-change
...
Android: Support changing Wii Remote extension while emulating
2019-05-12 15:22:07 +10:00
Connor McLaughlin
0ab41717a4
Merge pull request #8095 from leoetlino/audio-race
...
Fix a race condition when shutting down audio stream
2019-05-12 15:18:36 +10:00
Connor McLaughlin
707266aeed
Merge pull request #8069 from iwubcode/passive_support
...
VideoCommon: Implement passive stereoscopic 3D
2019-05-12 15:15:34 +10:00
spycrab
ba83cec6fb
Qt/CMake: Support MSVC w/ external CMake
2019-05-12 00:44:02 +02:00
spycrab
c8795f799e
Core/CMake: Silence some warnings
2019-05-12 00:44:02 +02:00
spycrab
1121a04718
DolphinQt/CMake: Silence some warnings
2019-05-12 00:44:01 +02:00
spycrab
53ef641da4
CMake: Add MSVC support
2019-05-12 00:44:00 +02:00
spycrab
199c0943a4
DolphinQt/CMake: Building on Windows
2019-05-12 00:05:10 +02:00
spycrab
6cef70c182
VideoBackends/D3D: Fix CMakeLists.txt
2019-05-12 00:05:09 +02:00
spycrab
b5160ec685
Common/CMake: Fix Windows build
2019-05-12 00:05:08 +02:00
TryTwo
86d1e6cd7e
Qt/Debugger: Improve Code View
...
* Use font based sizing for row height. Fits more rows on screen.
* Adds whitespace for better formatting and minimum column width.
Helps prevent frequent resizing while scrolling.
2019-05-11 17:48:49 +02:00
Léo Lam
7c46497f04
Fix a race condition when shutting down audio stream
...
The main EmuThread (in Core) is responsible for both initialising the
audio stream and shutting it down properly.
When the core is shutting down (when state is State::PowerDown), it is
possible that the CPU or CPU-GPU thread and the UI thread will both
try to stop the audio stream at the same time, which is an issue
because some audio backends such as cubeb are not thread-safe.
This commit prevents the race from ever happening in the first place
by removing the call to AudioCommon::SetSoundStreamRunning from
CPU::RunAdjacentSystems, which is actually completely unnecessary when
shutting down because Core::EmuThread is going to stop the stream and
perform more cleanup anyway.
Should fix https://bugs.dolphin-emu.org/issues/11722
2019-05-11 16:36:42 +02:00
Léo Lam
453c1d4170
Qt/LogConfigWidget: Show log type short names
...
Makes it easier for users to determine which option they need to
enable/disable as log messages only show the short name.
2019-05-11 16:05:22 +02:00
weihuoya
8a4d15ae47
Android: change runtime wiimote extension
2019-05-11 15:01:52 +02:00
Miksel12
ee8226cc1b
Set Cubeb as default on Windows
...
Cubeb and Xaudio2 are identical in features while Cubeb has lower
latency and is still actively being worked on.
2019-05-11 14:22:03 +02:00
Léo Lam
2f89a50318
Merge pull request #7778 from jordan-woyak/wheel-accel-brake
...
SI/GCSteeringWheel: Allow simultaneous use of accelerator and brake.
2019-05-11 12:24:19 +02:00
Léo Lam
57743637de
Merge pull request #8088 from Pokechu22/modal-control-mapping
...
Allow interacting with the render window while configuring controllers
2019-05-11 10:45:28 +02:00
Léo Lam
e35ccd5a9a
Merge pull request #8091 from leoetlino/traversal-chrono
...
TraversalServer: use C++ <chrono> instead of gettimeofday
2019-05-11 10:44:49 +02:00
Anthony
3ab06dcd02
Merge pull request #8016 from jordan-woyak/emu-wm-ir-rename
...
WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant Forward/Backward actions.
2019-05-10 19:16:40 -07:00
Anthony
46561cc242
Merge pull request #8092 from leoetlino/double-switcheroo
...
Core/AddressSpace & Qt/Debugger: Fix parameter order mixup
2019-05-10 19:11:01 -07:00
Anthony
e66d25312e
Merge pull request #8090 from stenzek/video-buffer-reset
...
CommandProcessor: Don't reset the video buffer when FIFO distance is changed
2019-05-10 19:10:39 -07:00
Léo Lam
e66547d6e5
Qt: Fix AddressSpace::WriteXXX parameter order mixup
2019-05-11 00:16:27 +02:00
Léo Lam
d00711b34f
AddressSpace: Fix PowerPC::HostWrite_XXX parameter order mixup
2019-05-11 00:15:15 +02:00
Jordan Woyak
f74f49383c
SI/GCSteeringWheel: Allow simultaneous use of accelerator and brake.
2019-05-10 17:11:43 -05:00
Michael M
916a97b869
TraversalServer: use C++ <chrono> instead of gettimeofday
2019-05-10 21:33:26 +02:00
Pokechu22
7c80fcde53
Allow interacting with the render window while configuring controllers
...
WindowModal allows alt+tabing to the render window, but prohibits interaction
with parent windows (controller settings window and the main dolphin window).
2019-05-10 11:27:36 -07:00
Léo Lam
e7bc86881d
Merge pull request #8056 from JosJuice/more-enums-to-constexpr
...
Turn more enum constants into constexpr
2019-05-10 18:52:52 +02:00
Stenzek
3e29fdb4a7
CommandProcessor: Don't reset the video buffer when FIFO distance is changed
...
This prevents partially-processed commands from being lost when switching buffers.
2019-05-11 00:31:37 +10:00
Léo Lam
672e8d78c6
Merge pull request #7994 from faxx1080/qt_adddebuglog
...
DolphinQt: Add debug log option in GUI for debug builds
2019-05-10 15:33:33 +02:00
JosJuice
8e2277e1f2
Turn more enum constants into constexpr
...
https://bugs.dolphin-emu.org/issues/11692#note-7
2019-05-10 15:04:16 +02:00
Léo Lam
123bbbca2c
Merge pull request #8073 from vladfi1/re-frame-mw
...
Bring back MemoryWatcher, but without CoreTiming
2019-05-10 14:55:27 +02:00
weihuoya
e98f43d2af
bbox minor fx
2019-05-09 17:30:17 +08:00
Jordan Woyak
374585f128
WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant Forward/Backward mappings.
2019-05-08 20:27:41 -05:00
spycrab
c7dcba1c5f
WinUpdater: Add CMakeLists.txt
2019-05-08 23:59:04 +02:00
spycrab
f1fae37a81
DolphinQt/CMake: Don't build SignalDaemon on Windows
2019-05-08 21:10:41 +02:00
spycrab
967252dded
IOS/FS/Filesystem: Work around macro problem
2019-05-08 21:06:17 +02:00
spycrab
12a26453e9
InputCommon/ControlGroup.h: Add missing include
2019-05-08 21:03:11 +02:00
spycrab
7eaece8814
InputCommon/Device.cpp: Add missing include
2019-05-08 21:02:26 +02:00
spycrab
98d808ab71
InputCommon/DInput.h: Add missing include
2019-05-08 21:01:46 +02:00
spycrab
5625baa32c
UICommon/VideoUtils.cpp: Add missing include
2019-05-08 21:00:23 +02:00
spycrab
35f7abfe76
VideoBackends/D3DCommon: Fix linking against self
2019-05-08 20:59:15 +02:00
Léo Lam
1030dec340
DolphinQt: Use LogTypes::LOG_LEVELS instead of magic numbers
...
Also gets rid of two unnecessary casts.
2019-05-08 14:54:30 +02:00
Frank
57c64e57ef
DolphinQt: Add debug log option in GUI for debug builds
2019-05-08 14:47:34 +02:00
Vlad Firoiu
239af3cdf9
Step MemoryWatcher at end of each video frame.
2019-05-08 11:20:59 +01:00
Léo Lam
6607d9512f
Merge pull request #8081 from jordan-woyak/structured-binding
...
DolphinQt: Use a structured binding.
2019-05-08 10:37:15 +02:00
Jordan Woyak
0de6b5f7fa
WiimoteEmu: Implement "Drawsome" tablet.
2019-05-07 18:07:24 -05:00
JosJuice
91f5d577cc
Merge pull request #8084 from leoetlino/wiisave-sign
...
WiiSave: Fix save signing
2019-05-07 14:43:50 +02:00
Léo Lam
2740ff9a9d
WiiSave: Fix save signing
...
The system menu is passing the SHA1 hash of the save data to ES
to sign, not the save data itself.
Fixes save import in the System Menu for saves that were exported
by Dolphin.
2019-05-07 01:09:48 +02:00
Jordan Woyak
f055d37346
WiimoteEmu: Add game quirk report for reading of EXT/IR input directly, which will fail with TAS/NetPlay.
2019-05-06 15:36:05 -05:00
Jordan Woyak
6ebd35d511
DolphinQt: Use a structured binding.
2019-05-06 15:33:57 -05:00
Techjar
ff972e3673
Reformat repo to clang-format 7.0 rules
2019-05-06 18:48:04 +00:00
Vlad Firoiu
f4d950f4e2
Revert "Core: Remove MemoryWatcher"
...
This reverts commit 0c02e77eee
.
2019-05-05 21:43:45 +01:00
JosJuice
bb1ed46753
Use [[fallthrough]] in DiscExtractor
...
This was missed in PR 6273 because the fallthrough was added to
DiscExtractor after that PR was created.
2019-05-05 10:35:45 +02:00
Léo Lam
db159ec8bf
Qt/Debugger: Vertically align text in register cells
...
Looks better with the text vertically aligned.
2019-05-05 10:30:22 +02:00
iwubcode
c513bb5309
VideoCommon: Implement passive stereoscopic 3D
2019-05-04 22:58:00 -05:00
Léo Lam
9133e8f1be
Require CMake 3.10 and use CMAKE_CXX_STANDARD
...
Removes the need to add -std= flags manually. CMake 3.10 is available
in Ubuntu 18.04, which is the oldest LTS version we support.
2019-05-05 00:13:13 +02:00
Léo Lam
ab9ece9bca
Replace MathUtil::Clamp with std::clamp
2019-05-04 23:12:17 +02:00
Léo Lam
6f84984b7b
Use attribute [[fallthrough]]
2019-05-04 23:04:18 +02:00
Léo Lam
cb168f22d6
Replace custom UNUSED macro with [[maybe_unused]]
2019-05-04 23:04:18 +02:00
Léo Lam
04c8201c32
Enable C++17
...
All supported platforms now have easy access to a compiler with C++17
support.
C++17 potentially allows for some nice cleanups and removes the need
for standard library backports (optional/variant).
See discussion at https://dolp.in/pr6264#discussion_r158134178
2019-05-04 23:04:18 +02:00
Léo Lam
99a4ca8de7
Merge pull request #7839 from ShFil119/impr/redundant
...
Remove redundant initialization
2019-05-04 22:50:51 +02:00
Léo Lam
afa46aaf43
Merge pull request #7887 from lioncash/hid
...
DolphinQt/Debugger/RegisterColumn: Add HID registers to the register pane
2019-05-04 22:33:45 +02:00
Léo Lam
623b37d928
Merge pull request #8053 from jordan-woyak/profile-dropdown-fix
...
DolphinQt: Profile combobox fixes.
2019-05-04 21:37:06 +02:00
Connor McLaughlin
184f334158
Merge pull request #8074 from Qyriad/fixes/set-user-dir-properly
...
UICommon: Properly set user dir if ./user is a file (not a directory)
2019-05-04 16:15:00 +10:00
Techjar
1dd8263375
Qt/NetPlayDialog: Fix checksum menu being visible for everyone
...
The wrong function was used to attempt to hide the menu. Non-hosts will
segfault upon trying to use it as they don't have a server instance.
2019-05-04 01:54:57 -04:00
Mikaela Szekely
8fe7e271f3
UICommon: Properly set user dir if ./user is a file (not a directory)
2019-05-03 23:30:50 -06:00
Jordan Woyak
6784225573
DolphinQt: Profile combobox fixes.
2019-05-03 16:29:22 -05:00
Léo Lam
159fa3ec36
Merge pull request #8057 from jordan-woyak/emu-tatacon
...
WiimoteEmu: Implement TaTaCon extension.
2019-05-03 11:52:39 +02:00
Léo Lam
6c7aeb3ffb
Merge pull request #8064 from JosJuice/notify-host-symbols-clear
...
Call Host_NotifyMapLoaded when clearing g_symbolDB
2019-05-03 11:47:26 +02:00
booto
2ff0486335
Debugger/Memory: Add support for address spaces
...
Different address spaces can be chosen in the memory view panel.
* Effective (or virtual): Probably the view people mostly want. Address
translation goes through MMU.
* Auxiliary: ARAM address space. Does not display anything in Wii mode.
* Physical: Physical address space. Only supports mem1 and mem2 (wii
mode) so far.
2019-05-02 21:14:30 -04:00
Jordan Woyak
27043c1dac
WiimoteEmu: Implement TaTaCon extension.
2019-05-02 19:35:46 -05:00
Léo Lam
3b16d2261a
Merge pull request #8065 from jordan-woyak/wm-ext-names
...
WiimoteEmu/DolphinQt: Better extension display names.
2019-05-02 13:14:17 +02:00
Jordan Woyak
77bda63627
DolphinQt: Don't refresh devices on open of mapping UI.
2019-05-01 19:30:02 -05:00
Jordan Woyak
99f537d499
WiimoteEmu/DolphinQt: Better extension display names.
2019-05-01 17:25:48 -05:00
Léo Lam
98b670dd29
Merge pull request #7966 from Techjar/fix-netplay-full-wii-save
...
Core/WiiRoot: Fix NetPlay full Wii save sync not copying all the saves back to main NAND
2019-05-01 19:29:38 +02:00
Léo Lam
f4d7b537cc
Merge pull request #7958 from Craftyawesome/cpu-emulation-order
...
Re-order cpu emulation options from fastest to slowest
2019-05-01 17:56:19 +02:00
JosJuice
8fd6f8f6e9
Call Host_NotifyMapLoaded when clearing g_symbolDB
...
Otherwise DolphinQt will have a stale symbol list and
you can get nullptr dereferences when trying to use it.
2019-05-01 17:48:27 +02:00
Léo Lam
bec85a0962
Merge pull request #8013 from JosJuice/titledatabase-japanese-gc
...
Show Japanese GC games in Japanese when using TitleDatabase
2019-05-01 17:37:31 +02:00
Léo Lam
ef88dd73b3
Merge pull request #8014 from JosJuice/getuniqueidentifier-language-independent
...
Make GameFile::GetUniqueIdentifier independent of language setting
2019-05-01 17:34:01 +02:00
z0z0z
5bacb2e4c6
Disable Vulkan overrides for RADV driver
2019-05-01 07:59:54 -04:00
Léo Lam
5ce8d97c68
Merge pull request #7163 from lioncash/pointer
...
BTEmu: Get rid of a few pointer casts
2019-05-01 13:13:58 +02:00
Jordan Woyak
0c81af74e1
WiimoteEmu: Drum extension accuracy improvements.
2019-04-30 20:14:12 -05:00
JMC47
e39aa5b026
Merge pull request #7880 from jordan-woyak/udraw-tablet-emu
...
WiimoteEmu: Implement 3rd-Party extension encryption and uDraw GameTablet.
2019-04-30 19:45:33 -04:00
Jordan Woyak
2babbd76d0
WiimoteEmu: Implement uDraw GameTablet.
2019-04-30 18:36:37 -05:00
Jordan Woyak
57a23cc4a0
InputCommon: Remove unused "sign" macro.
2019-04-29 18:28:56 -05:00
Filip Gawin
c110ffcdaa
Remove redundant initialization
2019-04-30 01:22:24 +02:00
JMC47
360f2b4a2f
Merge pull request #8042 from jordan-woyak/mapping-ui-clear-fix
...
DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension.
2019-04-29 06:14:27 -04:00
JMC47
0f483e7d61
Merge pull request #8050 from Techjar/memorywatcher-determinism
...
Core: Remove MemoryWatcher
2019-04-28 22:36:11 -04:00
spycrab
6e6f833bb3
Merge pull request #8044 from jordan-woyak/indicators-on-top
...
DolphinQt: Move mapping indicators to top of UI.
2019-04-29 02:48:23 +02:00
Connor McLaughlin
aee1551a55
Merge pull request #8043 from jordan-woyak/mapping-ui-event-block-fix
...
DolphinQt: Fix mapping of space, return, and mouse-clicks.
2019-04-28 23:49:23 +10:00
Connor McLaughlin
1b1662773e
Merge pull request #8048 from stenzek/vulkan-negative-scissor-rect
...
Vulkan: Don't set a negative offset in scissor rect
2019-04-28 23:37:51 +10:00
Jordan Woyak
4e39d833ae
DolphinQt: Fix mapping of space, return, and mouse-clicks from immediately re-activating detection.
2019-04-28 08:34:47 -05:00
Stenzek
32359bf2bb
Renderer: Adjust target rectangle in the base class
2019-04-28 23:33:24 +10:00
Stenzek
3c64f0c616
Renderer: Adjust source rectangle when crop would draw off screen
...
This prevents us from requiring an oversized and/or negative viewport by
shrinking the source rectangle instead.
2019-04-28 23:31:57 +10:00
Connor McLaughlin
d2d8d7ce90
Merge pull request #8051 from JosJuice/efb-constexpr
...
Turn EFB_WIDTH/EFB_HEIGHT into constexpr
2019-04-28 20:37:25 +10:00
Techjar
0c02e77eee
Core: Remove MemoryWatcher
...
MemoryWatcher only works on Linux and affects emulation determinism due
to scheduling additional events, which causes NetPlay to desync.
Considering that this interface is a rather specialized use case, the
communication with it is kinda crappy *and* it's affecting emulation, I
think it's best to just axe it and come up with a better implementation
of the functionality.
2019-04-28 06:22:27 -04:00
JosJuice
ced2306fc5
Turn EFB_WIDTH/EFB_HEIGHT into constexpr
...
https://bugs.dolphin-emu.org/issues/11692#note-5
Also change const into constexpr while we're at it.
2019-04-28 11:50:17 +02:00
Connor McLaughlin
e17bb8cfdf
Merge pull request #8025 from chargeflux/PathPaneAddBtn
...
Qt: Fix add button not releasing
2019-04-28 17:15:42 +10:00
Connor McLaughlin
f7199397a0
Merge pull request #8047 from stenzek/d3d-feature-level-10
...
D3D11: Fix Dolphin crashing on feature level 10.0 devices
2019-04-28 17:07:37 +10:00
Pokechu22
0cb27cc42c
Fix the screen going black on pause after changing windows
...
More info: https://zeduckmaster.frama.io/2016/how-to-create-a-custom-rendering-in-a-qt5-widget/
2019-04-27 23:26:44 -07:00
Stenzek
53af27b133
FramebufferManager: Fix invalid transitions for 1xIR in EFB cache
2019-04-28 16:13:49 +10:00
Stenzek
5399995c61
Vulkan: Don't set a negative offset in scissor rect
...
The spec/validation layers say this is invalid.
2019-04-28 16:01:09 +10:00
Stenzek
025767c929
D3D: Set optional features after creating the device
...
Fixes feature level 10.0 devices crashing during runtime.
2019-04-28 15:26:49 +10:00
Stenzek
51154d6907
FramebufferShaderGen: Don't emit SV_SampleIndex when not using SSAA
2019-04-28 15:26:21 +10:00
Stenzek
d5b3595314
TextureCache: Fix incorrect format string in GetXFBTexture()
2019-04-28 14:32:37 +10:00
spycrab
906ccdb1b4
Merge pull request #8030 from spycrab/qt_patch_preview
...
Qt/Debugger: Implement patch instruction preview
2019-04-28 00:32:36 +02:00
spycrab
f6e73a0aec
Qt/Debugger: Implement patch instruction preview
2019-04-27 23:31:19 +02:00
Jordan Woyak
af8b14f452
DolphinQt: Move mapping indicators to top of UI.
2019-04-27 14:23:29 -05:00
Jordan Woyak
74a997da65
DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension.
2019-04-27 10:51:57 -05:00
Mat M
687907e44d
Merge pull request #8035 from jordan-woyak/si-enum-constexpr
...
SI: Replace some unnamed enums with constexpr.
2019-04-27 08:40:41 -04:00
Mat M
621ede1268
Merge pull request #8040 from phire/fix_unintilized_xer
...
Fix uninitialized powerpc.xer_* variables
2019-04-27 08:36:09 -04:00
Jordan Woyak
9f0dc402f4
InputCommon: Make sure setting values are initialized in case they are used before config load.
2019-04-27 07:01:24 -05:00
JosJuice
3bef561e5d
Make GameFile::GetUniqueIdentifier independent of language setting
...
My bad.
We need this in the situation where two users are using different
languages and the game has a different name in each language.
2019-04-27 14:00:58 +02:00
MerryMage
e06111e86f
EmuCodeBlock: Prefer MOVAPS to MOVSD in ConvertDoubleToSingle
...
* The high half of the register is immediately masked so the value in it is irrelevant.
* MOVSD produces an unnecessary dependency on the high half of regOp.
* MOVAPS is implemented as a register rename on modern microarchitectures.
2019-04-27 12:57:03 +01:00
MerryMage
1baa8ee970
x64Emitter: Prefer MOVAPS to MOVSD
...
* The high half of regOp is immediately overwritten so the value in it is irrelevant.
* MOVSD produces an unnecessary dependency on the high half of regOp.
* MOVAPS is implemented as a register rename on modern microarchitectures.
2019-04-27 12:56:05 +01:00
MerryMage
2d4dd8cdc1
x64Emitter: Prefer MOVAPS to MOVAPD
...
There is no reason to use MOVAPD over MOVAPS, for two reasons:
* There has never been a microarchitecture with separate single and double domains.
* MOVAPD is one byte longer than MOVAPS
2019-04-27 12:54:43 +01:00
Scott Mansell
033f1d725f
Fix un-initialized powerpc.xer_* variables
2019-04-27 15:38:02 +12:00
Techjar
20530c2a96
Core/WiiRoot: Fix NetPlay full Wii save sync not copying all the saves back to main NAND
2019-04-26 23:33:35 -04:00
Connor McLaughlin
664cfb2ca5
Merge pull request #7970 from Techjar/netplay-mii-sync
...
NetPlay: Synchronize Mii data
2019-04-27 13:26:55 +10:00
Connor McLaughlin
b5c3542cb5
Merge pull request #8039 from iwubcode/monster_lab_fix
...
CommandProcessor: Don't reset gather pipe on write the high distance bit (fixes monster lab)
2019-04-27 13:26:29 +10:00
iwubcode
c2abf092e9
VideoCommon: Do not reset the gather pipe (WPAR buffer) as this does not reflect what actually happens on real hardware. On hardware, there's no way for the GPU to signal to reset the WPAR buffer. Instead, the WPAR buffer will be reset automatically upon receiving 32 bytes or when spr[WPAR] is written
2019-04-26 22:20:53 -05:00
JMC47
664376dae1
Merge pull request #7861 from jordan-woyak/mplus-emu
...
WiimoteEmu: Emulated MotionPlus and improved emulated swing.
2019-04-26 05:50:18 -04:00
spycrab
057fa6c092
Merge pull request #8032 from spycrab/netplay_md5
...
Qt/NetPlayDialog: Move MD5 button into menubar
2019-04-26 03:19:41 +02:00
spycrab
ea0846463f
Merge pull request #8031 from spycrab/qt_remove_iterative_input
...
Qt/Mapping: Remove iterative input
2019-04-24 14:03:17 +02:00
spycrab
8feacce783
Merge pull request #8028 from spycrab/issue_11690
...
Qt/NewPatchDialog: Fix crashes on entry removal
2019-04-24 02:49:09 +02:00
Jordan Woyak
ba1b335118
WiimoteEmu: Improve emulated swing.
2019-04-23 19:02:41 -05:00
Jordan Woyak
4374600367
WiimoteEmu: Implement MotionPlus parameter y0 and other cleanups.
2019-04-23 18:38:00 -05:00
Jordan Woyak
59e1c83445
WiimoteEmu/MotionPlus: Build non-hardcoded calibration data and other cleanups.
2019-04-23 18:38:00 -05:00
Jordan Woyak
9554ece874
WiimoteEmu: MotionPlus is now working.
2019-04-23 18:38:00 -05:00
Jordan Woyak
d97349af0d
SI: Replace some unnamed enums with constexpr.
2019-04-23 16:25:09 -05:00
spycrab
e97c61c196
Qt/NetPlayBrowser: Connect to session on double-click
2019-04-23 23:22:12 +02:00
spycrab
127b4e77ec
Merge pull request #8029 from spycrab/issue_11680
...
Qt/NetPlayBrowser: Prevent word wrap
2019-04-23 23:08:41 +02:00
spycrab
7f861f095a
Qt/Mapping: Remove iterative input
2019-04-23 22:59:34 +02:00
spycrab
8e3d1200da
Merge pull request #7833 from chargeflux/CodeWidgetHiding-macOS
...
Debugger: Apply hiding logic earlier (macOS)
2019-04-23 22:40:17 +02:00
spycrab
f7dcd191e3
Qt/NetPlayDialog: Move MD5 button into menubar
2019-04-23 22:37:22 +02:00
chargeflux
290275e8ea
Debugger: Move hiding logic via setHidden() to before setFloating()
2019-04-23 16:20:42 -04:00
spycrab
0ef3eced78
Qt/NetPlayBrowser: Prevent word wrap
2019-04-23 18:55:40 +02:00
spycrab
a6e7a90a4a
Qt/NewPatchDialog: Fix crashes on entry removal
2019-04-23 18:46:38 +02:00
chargeflux
cd5f42cee0
Qt: Fix add button not releasing
2019-04-22 20:32:01 -04:00
Markus Wick
2abe333ce9
Merge pull request #7287 from degasus/idle_skipping
...
Jit64 / JitArm64: Optimized idle skipping detection.
2019-04-22 23:08:03 +02:00
spycrab
e575fa92d7
Merge pull request #8005 from JosJuice/issue-11679
...
DolphinQt: Fix verify tab hash box sizes on macOS
2019-04-22 14:39:56 +02:00
spycrab
b4dfda0774
Merge pull request #8021 from spycrab/cm_overhaul
...
Qt/CheatManager: Fix a bunch of issues
2019-04-22 14:16:53 +02:00
spycrab
a154c56815
Qt/CheatsManager: Use ActionReplay constants
2019-04-22 14:09:47 +02:00
Connor McLaughlin
59c0e51f5b
Merge pull request #8000 from stenzek/more-videocommon-cleanup
...
Additional cleanup/fixes from VideoCommon merge
2019-04-22 12:50:22 +10:00
Connor McLaughlin
93be178f28
Merge pull request #7857 from stenzek/opengl-stereo
...
OGL: Fix stereoscopy
2019-04-22 12:41:12 +10:00
spycrab
fb841c75cb
Merge pull request #8022 from spycrab/issue_11676
...
Qt/GameConfigWidget: Show revision specific INIs
2019-04-21 21:38:56 +02:00
spycrab
e2abda0c9b
Qt/GameConfigWidget: Show revision specific INIs
2019-04-21 20:56:44 +02:00
spycrab
6c938cc070
Qt/VerifyWidget: Fix layout warnings
2019-04-21 20:28:55 +02:00
spycrab
4f7ff76801
Qt/CheatsManager: Fix locking defaulting to the value zero
2019-04-21 19:45:58 +02:00
spycrab
05eb91691c
Qt/CheatsManager: Fix value setting
2019-04-21 17:34:31 +02:00
Connor McLaughlin
44d5a71e27
Merge pull request #7965 from jordan-woyak/condvar-fixes
...
Minor changes to usages of std::condition_variable.
2019-04-21 23:50:53 +10:00
spycrab
0b56d49d97
Qt/CheatsManager: Deduplicate code
2019-04-21 15:38:59 +02:00
Jordan Woyak
a9ef110349
DolphinQt: Query mapping indicator colors using QPalette for better behavior with alternative themes.
2019-04-21 08:20:45 -05:00
spycrab
a6ed1b644b
Qt/CheatSearch: Fix locking being permanently disabled
2019-04-21 13:51:25 +02:00
Stenzek
356ebdf509
OGL: Set shared context state up to match main context
...
Has a better chance of avoiding recompiling if so.
2019-04-21 14:28:14 +10:00
Stenzek
6553cf8bb1
OGL: Only set GL_PROGRAM_POINT_SIZE on desktop GL
...
It is always enabled in GLES.
2019-04-21 14:28:14 +10:00
Stenzek
f2a594fad5
OGL: Fix binding error on shutdown
...
This was occurring if the imgui vertex format was bound on shutdown,
which is destroyed before the vertex buffers
2019-04-21 14:28:14 +10:00
Stenzek
9577d0641b
ShaderCache: Fix crash at shutdown on shared shader compilation fail
2019-04-21 14:28:14 +10:00
Stenzek
5c95dc61fc
OGL: Store shader source in OGLShader
...
So it can be dumped with info log when linking fails.
2019-04-21 14:28:14 +10:00
Stenzek
bbd1ae16db
OGL: Remove unused ProgramShaderCache::CompileShader()
2019-04-21 14:28:14 +10:00
Stenzek
f8c1ba409c
Replace EFBRectangle/TargetRectangle with MathUtil::Rectangle
2019-04-21 14:28:14 +10:00
JMC47
6ea43235d5
Merge pull request #7841 from iwubcode/config-mgr-onion
...
Config: Move the 'Display' settings from ConfigManager to the layered config system
2019-04-21 00:01:47 -04:00
Connor McLaughlin
ca55375d01
Merge pull request #8015 from jordan-woyak/dinput-cursor-optimize
...
ControllerInterface/DInput: Optimize cursor position updating.
2019-04-21 13:56:50 +10:00
Connor McLaughlin
5b4ebccf6b
Merge pull request #8012 from stenzek/bounding-box-shaders
...
PixelShaderGen: Don't emit bounding box shader code for old UIDs when disabled
2019-04-21 13:27:05 +10:00
Stenzek
b09a0e1a60
TextureCache: Check for out-of-range partial copy rect after scaling
2019-04-21 12:54:32 +10:00
Stenzek
3791262d96
TextureCache: Use linear filtering on y-scaled and >1xIR VRAM copies
2019-04-21 12:41:15 +10:00
Stenzek
708bd3d9f7
TextureCache: Simplify XFB reconstruction
...
This also better handles in-memory interlaced XFB data placed by the CPU
by considering the stride from the VI.
2019-04-21 12:41:15 +10:00
Stenzek
dbaba0062a
TextureDecoder: Move XFB decoding to Common
...
This was previously missing for generic (which is used on ARM).
2019-04-21 12:41:15 +10:00
degasus
6ec4ade3b6
Interpreter: Drop idle skipping in interpreter.
...
And reimplement it in the cached interpreter based on the idle loop detection.
2019-04-20 20:52:39 +02:00
degasus
55abe1a085
Jit64: Refactor WriteIdleExit helper.
2019-04-20 20:52:39 +02:00
degasus
b8b4b4a383
PowerPC: More idle loop detections.
2019-04-20 20:52:39 +02:00
degasus
55db7c7a05
Jit64: Optimized idle skipping detection.
2019-04-20 20:52:39 +02:00
Jordan Woyak
8c1310d1d1
ControllerInterface/DInput: Optimize cursor position updating.
2019-04-20 09:25:11 -05:00
Stenzek
eddde3e6c8
ShaderGen: Use interface blocks when geometry shaders are supported
...
We don't use explicit locations in OpenGL currently, so this breaks
when we use alternative names in the geometry shaders.
2019-04-20 23:44:33 +10:00
Stenzek
c6b45c5ca9
ShaderCache: Fix crash if pipeline from uid cache fails creation
2019-04-20 23:16:29 +10:00
Stenzek
96aa762d1e
PixelShaderGen: Don't emit bounding box shader code for old UIDs when disabled
...
If bounding box is enabled when a UID cache is created, then later disabled,
we shouldn't emit the bounding box portion of the shader.
Fixes pipeline creation errors on D3D12 backend for this case.
2019-04-20 23:16:14 +10:00
JosJuice
fbe7892bd2
ConfigManager: Remove TitleDatabase.h include
...
Made unnecessary by 8842a0f
.
2019-04-20 12:30:46 +02:00
JosJuice
e98f5fe665
Show Japanese GC games in Japanese when using TitleDatabase
...
Because the GC language setting cannot be set to Japanese, we
need a special condition for Japanese GC games. I accidentally
removed it in PR 7816, but here it is again in a new form.
We could do the same thing with Korean GC games if we want to
(which we couldn't do before PR 7816), but due to how spotty
GameTDB is with having Korean names for Korean GC releases,
things will be more consistent if we just use English for them.
2019-04-20 12:12:35 +02:00
Connor McLaughlin
c26f53bf84
Merge pull request #7999 from stenzek/pipeline-cache-data
...
Implement pipeline data cache for OpenGL and D3D12
2019-04-20 12:56:02 +10:00
JosJuice
f0323a59c3
DolphinQt: Fix verify tab hash box sizes on macOS
...
https://bugs.dolphin-emu.org/issues/11679
2019-04-19 19:15:04 +02:00
weihuoya
47e776d378
rm unused code
2019-04-17 20:15:56 +08:00
Jordan Woyak
779e618046
VideoCommon: Change free-look's middle-mouse action to roll the camera.
2019-04-17 05:10:11 -05:00
Jordan Woyak
1d024c8add
Fix u8 string literal C++20 compile error.
2019-04-16 16:31:12 -05:00
Markus Wick
f1620f25f4
Merge pull request #7981 from degasus/interpreter_psq_l
...
Interpreter: Fix psq_l with QUANTIZE_FLOAT.
2019-04-16 22:27:07 +02:00
Markus Wick
dbfdb16fbb
Merge pull request #7990 from MerryMage/fprf
...
EmuCodeBlock: Correct zero handling in SetFPRF for SSE4.1
2019-04-16 22:13:05 +02:00
JMC47
80d21b8ffb
Merge pull request #8002 from JMC47/CursorSlowdown
...
Slow down relative input cursor
2019-04-15 20:43:31 -04:00
JMC47
f3aaf5deaa
Reduce Relative Input Cursor Speed Dramatically
...
This makes it about 1/4th the speed which may be a bit slow, but should
work for most controllers.
2019-04-15 17:23:17 -04:00
Stenzek
00b83b4196
ShaderCache: Utilize pipeline cache data where possible
2019-04-16 00:39:43 +10:00
Stenzek
616ad378b7
OGL: Support returning pipeline cache data
2019-04-16 00:39:43 +10:00
Stenzek
5cef09e383
D3D12: Support returning pipeline cache data
2019-04-16 00:34:34 +10:00
Stenzek
61a656570e
AbstractPipeline: Support returning "cache data"
...
"Cache data" can be used to assist a driver with creating pipelines by
using previously-compiled shader ISA.
2019-04-16 00:09:47 +10:00
JosJuice
d7b5270348
Merge pull request #7988 from JosJuice/fix-wii-save-import
...
Fix importing Wii save files with sizes not divisible by 64
2019-04-14 17:17:00 +02:00
spycrab
0f8e5ab207
Merge pull request #7968 from Techjar/fix-netplay-browser-search-hang
...
Qt/NetPlayBrowser: Refresh session list asynchronously
2019-04-14 03:11:31 +02:00
JMC47
1cedbd5b82
Merge pull request #7923 from jordan-woyak/full-surface-rename
...
ControllerInterface: Rename full surface analog inputs.
2019-04-13 17:43:29 -04:00
JMC47
a891115ea3
Merge pull request #7952 from jordan-woyak/emu-shake-params
...
WiimoteEmu: Allow shake frequency and intensity to be configured.
2019-04-13 12:13:13 -04:00
Jordan Woyak
be897b41a7
ControllerInterface: Rename full surface analog inputs to be more visually dissimilar from their underlying inputs. e.g. "Full Axis X+".
2019-04-13 08:45:19 -05:00
spycrab
241166a1a5
Merge pull request #7991 from spycrab/npi_retcode
...
UICommon/NetPlayIndex: Handle non 200 HTTP return codes
2019-04-13 15:24:10 +02:00
spycrab
336edbef1e
UICommon/NetPlayIndex: Handle non 200 HTTP return codes
2019-04-13 12:58:23 +02:00
spycrab
eddcb70b84
Common/HttpRequest: Add option to allow non 200 response codes
2019-04-13 12:58:23 +02:00
Techjar
6d01f34d78
Core/NetPlayClient: Reset GCAdapter device type in UpdateDevices
...
This will ensure an origin reset is triggered on next boot.
2019-04-13 06:32:45 -04:00
Jordan Woyak
c89ddf8cba
WiimoteEmu: Allow shake frequency and intensity to be configured. Other minor cleanups.
2019-04-12 16:50:59 -05:00
JosJuice
635fd8c22c
Merge pull request #7984 from JosJuice/root-path-savestate
...
IOS/FS: Don't savestate m_root_path
2019-04-12 22:37:21 +02:00
MerryMage
e4d83a56a5
EmuCodeBlock: Correct zero handling in SetFPRF for SSE4.1
2019-04-12 20:03:42 +01:00
spycrab
2a1dee4dce
Merge pull request #7976 from spycrab/netplay_index_feedback
...
Qt/NetPlay: Show feedback for index adding
2019-04-12 14:21:42 +02:00
JosJuice
4f915760e8
Fix importing Wii save files with sizes not divisible by 64
2019-04-12 11:34:32 +02:00
Techjar
c7c4196c38
Qt/NetPlayBrowser: Refresh session list asynchronously
2019-04-11 22:02:13 -04:00
spycrab
f2e3f69d34
Merge pull request #7979 from Techjar/netplay-browser-possible-crash
...
UICommon/NetPlayIndex: Fix possible crash when Add is called again
2019-04-11 21:49:58 +02:00
spycrab
8b6bb39e82
Qt/NetPlay: Show feedback for index adding
2019-04-11 21:26:00 +02:00
spycrab
b9d110ed66
WinUpdater: Restore original executable name
2019-04-11 20:21:50 +02:00
JosJuice
822acf9ab9
IOS/FS: Don't savestate m_root_path
...
The NAND root path can be different on different systems,
so we must not savestate it.
2019-04-11 18:50:15 +02:00
JosJuice
d5ed3cbd88
Merge pull request #7922 from JosJuice/verify-disc
...
Add a Verify tab to game properties
2019-04-11 16:39:49 +02:00
spycrab
372b8552ce
Merge pull request #7974 from spycrab/winupdater
...
Move Updater to WinUpdater
2019-04-11 12:04:31 +02:00
degasus
399768c91b
Interpreter: Fix psq_l with QUANTIZE_FLOAT.
...
psq_l with QUANTIZE_FLOAT does not use the FPU, so it does not trim the precision of the u32 input data.
We already have the helper ConvertToDouble for floating point u32->u64 convertion used in lfs, so let's use it here as well.
2019-04-11 10:12:59 +02:00
Markus Wick
849ede9d0a
Merge pull request #7639 from CrystalGamma/pr-quantize
...
PowerPC: Thread state through PS (de)quantize helpers
2019-04-11 10:11:08 +02:00
CrystalGamma
e5c8b889ef
PowerPC: Thread state through PS quantize helper
2019-04-11 10:03:36 +02:00
CrystalGamma
e12cdbefa5
PowerPC: Thread state through PS dequantize helper
2019-04-11 10:03:36 +02:00
Techjar
f1e06b89da
UICommon/NetPlayIndex: Fix possible crash when Add is called again
2019-04-10 22:39:16 -04:00
Jordan Woyak
a9a4b53072
WiimoteEmu: Fix Data Report 0x32.
2019-04-10 20:17:34 -05:00
Markus Wick
d90d641ec7
Merge pull request #7889 from CrystalGamma/pr-floathelpers
...
PowerPC: Thread state through float helpers
2019-04-10 23:14:39 +02:00
Markus Wick
5a4700f589
Merge pull request #7638 from CrystalGamma/pr-addresshelpers
...
PowerPC: Thread state through the address helpers
2019-04-10 23:05:43 +02:00
weihuoya
04ebee686c
simplify config save
2019-04-10 18:32:27 +08:00
weihuoya
f2394b8c91
android: simple config load code
2019-04-10 18:30:45 +08:00
spycrab
d73987e466
Move Updater to WinUpdater
2019-04-10 10:46:49 +02:00
spycrab
1f6c67a6fb
Merge pull request #7969 from Techjar/fix-browser-radio-spacing
...
Qt/NetPlayBrowser: Fix radio button spacing
2019-04-10 08:11:42 +02:00
Techjar
b8abfba20b
Qt/NetPlayBrowser: Fix radio button spacing
...
The spacing was weird due to widgets in adjacent rows messing with the
column size, so we'll make those widgets span all the columns.
2019-04-09 19:41:58 -04:00
JMC47
e10a472134
Merge pull request #7936 from jordan-woyak/numeric-setting-cleanup
...
InputCommon: Clean up how numeric settings are handled.
2019-04-09 19:30:26 -04:00
JosJuice
8709b21ac3
VolumeVerifier: Verify WAD contents
2019-04-09 14:18:46 +02:00
JosJuice
a469fb3150
VolumeVerifier: Check whether invalid blocks are unused
2019-04-09 14:18:46 +02:00
JosJuice
eced9d7c7e
VolumeVerifier: Calculate CRC32/MD5/SHA-1
2019-04-09 14:18:46 +02:00
JosJuice
4fd2d8e8c4
VolumeVerifier: Check hashes in Wii partitions
2019-04-09 14:18:45 +02:00
JosJuice
84cbd5150f
Add a Verify tab to game properties
2019-04-09 14:18:41 +02:00
spycrab
0b8ac0a22f
Merge pull request #7971 from Techjar/go-away-golf-ui
...
Qt/NetPlayDialog: Don't create golf UI when host input authority is disabled
2019-04-09 13:14:54 +02:00
spycrab
a06c7df927
Merge pull request #7954 from Techjar/netplay-disable-bba
...
Disable BBA in NetPlay
2019-04-09 13:13:05 +02:00
spycrab
627a1a90c1
Merge pull request #7938 from Techjar/netplay-pending-start-stall
...
NetPlay: Fix hosting being stuck if player leaves during pending start
2019-04-09 13:07:17 +02:00
spycrab
746849f891
Merge pull request #7964 from Techjar/fix-netplayindex-segfault
...
UICommon/NetPlayIndex: Fix random segfaults after quitting NetPlay
2019-04-09 12:45:58 +02:00
Techjar
cd6c918973
Qt/NetPlayDialog: Don't create golf UI when host input authority is disabled
2019-04-08 07:09:20 -04:00
Techjar
1b8eda827b
NetPlay: Synchronize Mii data
...
It's bundled with the Wii saves for simplicity, since it's quite small.
2019-04-08 07:06:21 -04:00
spycrab
75f1a5d0cc
Qt/NetPlayBrowser: Various small fixes
2019-04-08 00:01:23 +02:00
Jordan Woyak
5efb717873
InputCommon: Clean up how numeric settings are handled. Add units of measure to UI. Eliminate hidden magic values of the IR cursor.
2019-04-07 09:32:49 -05:00
Techjar
c90df946ba
NetPlay: Add cancel button for chunked data transfers
2019-04-07 06:22:33 -04:00
Techjar
7870704087
NetPlay: Fix hosting being stuck if player leaves during pending start
...
The logic didn't account for the case where a player leaves, so the
host would be left in a dangling state where the UI is disabled but the
game won't start, requiring a full restart of Dolphin to fix.
2019-04-07 06:22:31 -04:00
Jordan Woyak
d34a9afe04
Minor changes to usages of std::condition_variable.
2019-04-06 17:39:25 -05:00
Techjar
dc552f2cbb
UICommon/NetPlayIndex: Fix random segfaults after quitting NetPlay
...
We can't join a detached thread, so NetPlayIndex gets deleted before
the notification thread exits, creating a race condition. We switch to
using Common::Event because just sleeping leaves the UI hung on the
thread join for a few seconds.
2019-04-06 17:23:37 -04:00
JMC47
75e74315e6
Merge pull request #7689 from jordan-woyak/sdl-improve
...
ControllerInterface: SDL cleanups/fixes
2019-04-06 14:53:51 -04:00
spycrab
ca5eac0c63
Common/HttpRequest: Fix EscapeComponent leaking memory
2019-04-06 13:27:49 +02:00
spycrab
23986d48f7
Merge pull request #7945 from spycrab/np_browser
...
Qt/NetPlay: Implement session/server browser
2019-04-06 12:36:29 +02:00
spycrab
094bf0d2ff
Qt/NetPlay: Integrate NetPlayIndex
2019-04-06 12:27:30 +02:00
JMC47
a7ee00ae25
Merge pull request #7960 from Techjar/netplay-fix-segfault-on-exit
...
Qt/MainWindow: Fix segfault on exit while NetPlay is open
2019-04-05 11:48:07 -04:00
spycrab
e44433c2f6
Merge pull request #7955 from Techjar/netplay-golf-mode
...
NetPlay golf mode
2019-04-05 17:25:23 +02:00
Techjar
6c393f9ff4
Add imgui golf mode overlay
2019-04-05 07:01:03 -04:00
Techjar
1a12876330
NetPlay: Implement golf mode
...
This is an extension of host input authority that allows switching the
host (who has zero latency) on the fly, at the further expense of
everyone else's latency. This is useful for turn-based games where the
latency of players not on their turn doesn't matter.
To become the so-called golfer, the player simply presses a hotkey.
When the host is the golfer, latency is identical to normal host input
authority.
2019-04-05 07:01:03 -04:00
Techjar
ab6583b430
Qt/MainWindow: Fix segfault on exit while NetPlay is open
2019-04-05 03:12:25 -04:00
Craftyawesome
20cc4508f0
Re-order cpu emulation options from fastest to slowest
...
Based on https://bugs.dolphin-emu.org/issues/11658
Update arrays.xml
2019-04-04 10:51:12 -04:00
JosJuice
bfde5b931e
Merge pull request #7956 from spycrab/fix_np_chat_escape
...
Qt/NetPlayDialog: Fix messages being html-escaped for NetPlay Chat
2019-04-03 18:50:33 +02:00
spycrab
923151e3e3
Merge pull request #7949 from spycrab/turbo_btn
...
Qt/TAS: Implement turbo mode
2019-04-03 18:43:11 +02:00
Techjar
a318c55cec
PixelShaderGen: Fix bounding box coordinates being offset by 1 pixel
2019-04-03 10:09:05 -04:00
JMC47
a2df9beb9f
Merge pull request #7924 from jordan-woyak/info-widget-fix
...
DolphinQt: Fix unused widgets in InfoWidget from being visible.
2019-04-02 19:59:44 -04:00
spycrab
628d72c67d
Qt/NetPlayDialog: Fix messages being html-escaped for NetPlay Chat
2019-04-02 23:23:38 +02:00
CrystalGamma
b00a7045aa
PowerPC: Thread state through float helpers
2019-04-02 19:59:29 +02:00
CrystalGamma
95b06d183e
PowerPC: Thread state through the address helpers
2019-04-02 19:52:59 +02:00
Techjar
e2f1da5210
NetPlay: Move host input authority logic to client
...
This is a prerequisite for golf mode, as the client needs to be in
control of sending pad states.
2019-04-02 08:17:13 -04:00
Techjar
980c076c67
Disable BBA in NetPlay
2019-04-01 09:14:28 -04:00
Stenzek
474500f07e
Vulkan: Prevent submission of command buffer with open queries
2019-04-01 20:49:42 +10:00
Stenzek
f2d8c8d2a8
D3D12: Fix rare case where command list was executed with open queries
2019-04-01 20:49:24 +10:00
Stenzek
92f1f553d1
D3D12: Fix case where perf queries weren't flushed
2019-04-01 20:13:39 +10:00
JMC47
42964e8531
Merge pull request #7921 from zackhow/fixir
...
Android: Fix touch IR
2019-03-31 23:15:04 -04:00
Connor McLaughlin
32e330eb35
Merge pull request #7950 from stenzek/out-of-range-efb-copies
...
BPStructs: Gracefully handle out-of-range EFB copies
2019-04-01 13:08:11 +10:00
Stenzek
113bd60fe7
Implement D3D12 backend
2019-04-01 11:24:55 +10:00
Jordan Woyak
2b6d718636
InputCommon: Fix Win32 init race.
2019-03-31 07:46:58 -05:00
Stenzek
378b605669
BPStructs: Gracefully handle out-of-range EFB copies
...
Since the copy X and Y coordinates/sizes are 10-bit, the game can configure a
copy region up to 1024x1024. Hardware tests have found that the number of bytes
written does not depend on the configured stride, instead it is based on the
size registers, writing beyond the length of a single row. The data written
for the pixels which lie outside the EFB bounds does not wrap around instead
returning different colors based on the pixel format of the EFB.
This suggests it's not based on coordinates, but instead on memory addresses.
The effect of a within-bounds size but out-of-bounds offset
(e.g. offset 320,0, size 640,480) are the same.
As it would be difficult to emulate the exact behavior of out-of-bounds reads,
instead of writing the junk data, we don't write anything to RAM at all for
over-sized copies, and clamp to the EFB borders for over-offset copies.
2019-03-31 22:05:53 +10:00
spycrab
039b1baa3a
Qt/TAS: Implement turbo mode
2019-03-31 05:27:34 +02:00
Connor McLaughlin
39139a52e7
Merge pull request #7939 from Techjar/no-more-disabled-gfx-features
...
Qt/HacksWidget: Fix backend feature support checks
2019-03-31 11:59:34 +10:00
spycrab
0866ec3fb0
Merge pull request #7948 from spycrab/open_failed_warn
...
Qt/GameConfigEdit: Show warning if opening in an external editor fails
2019-03-31 03:37:54 +02:00
spycrab
74c1e92640
Qt/GameConfigEdit: Show warning if opening in an external editor fails
2019-03-31 03:30:41 +02:00
iwubcode
840afc2ad4
Config: Move the 'Display' settings from ConfigManager to the layered config system
2019-03-30 18:43:02 -05:00
JMC47
735a705e4d
Merge pull request #7776 from jordan-woyak/wm_devicechange
...
Add hotplug support to DInput and XInput controller backends
2019-03-30 18:41:46 -04:00
spycrab
3d84dbe649
Qt/GCMemcardManager: Don't bold the header
2019-03-30 20:22:04 +01:00
spycrab
0279d12055
Core/NetPlayServer: Integrate NetPlayIndex
2019-03-30 17:13:57 +01:00
spycrab
622ba68595
Core/Config: Add index entries to NetPlaySettings
2019-03-30 17:13:57 +01:00
spycrab
827e40d78a
UICommon: Add NetPlayIndex helper
2019-03-30 17:13:57 +01:00
spycrab
3dbf44417a
Common/HttpRequest: Implement EscapeComponent
2019-03-30 17:13:57 +01:00
JosJuice
c885fed9da
DiscIO: Make Korean GC checks in Enums.cpp less fragile
2019-03-30 12:45:28 +01:00
JosJuice
c028a84531
Volume: Add a GetCertificateChain function
2019-03-30 12:45:28 +01:00
JosJuice
abb3c5bccd
VolumeWad: Implement GetTicket
2019-03-30 12:45:17 +01:00
JosJuice
cf9ab6ddcc
DiscExtractor: Make P prefix for partition names optional
...
Also added constants for common partition types.
2019-03-30 12:45:17 +01:00
JosJuice
3014dadfa8
DiscIO: Add way of checking whether blob data size is accurate
2019-03-30 12:45:17 +01:00
JMC47
0bce1c509d
Merge pull request #7942 from jordan-woyak/gc-adapter-calib-fix
...
HW/SI: GCAdapter calibration fix.
2019-03-30 06:37:23 -04:00
Stenzek
3c455de799
FramebufferManager: Fix broken EFB peeks in GL with MSAA on
2019-03-30 03:14:29 +10:00
spycrab
963370d7e6
Merge pull request #7941 from 8times9/contextmenu
...
Qt/GameList: Set consistent capitalization for context menu
2019-03-29 21:09:49 +01:00
Jordan Woyak
4ee999723e
DolphinQt: Make MD5 result text box read only.
2019-03-29 12:31:09 -05:00
Stenzek
b685a66753
Vulkan: Fix crash when checking subgroup support on Mesa
2019-03-30 00:18:26 +10:00
Jordan Woyak
eadbdd6bc3
ControllerInterface/Win32: Prevent devcies from losing their "id" on a hotplug event.
2019-03-29 09:04:16 -05:00
Stenzek
a6bb06174f
Vulkan: Fix library load failure on Android
2019-03-29 23:36:53 +10:00
Michael M
d26c1ce24d
Add hotplug support to DInput and XInput controller backends
2019-03-29 08:01:40 -05:00
Michael M
92ca6e124e
Add ControllerInterface::Win32 to wrap XInput and DInput
2019-03-29 08:01:39 -05:00
Techjar
5d37b2b951
Qt/HacksWidget: Fix backend feature support checks
2019-03-29 08:45:21 -04:00
Jordan Woyak
a015851b02
HW/SI: GCAdapter calibration fix.
2019-03-29 06:15:58 -05:00
Stenzek
604ab67c7f
Vulkan: Simplify perf queries using vkGetQueryPoolResults
2019-03-29 20:54:44 +10:00
Stenzek
6d40ea8553
Vulkan: Fix barrier validation layer errors for bounding box
2019-03-29 20:54:44 +10:00
Stenzek
23a655217c
Vulkan: Fix validation layer error for unbound texture layouts
2019-03-29 20:54:44 +10:00
Stenzek
087b11e780
TextureCacheBase: Fix possible crash on shutdown with deferred EFB copies
2019-03-29 20:54:44 +10:00
Stenzek
427dd45151
Vulkan: Simplify command buffer fence tracking
2019-03-29 20:54:44 +10:00
Connor McLaughlin
f3fadd7302
Merge pull request #7869 from stenzek/d3dcommon
...
D3D: Move sharable D3D11/D3D12 code to common library
2019-03-29 20:40:06 +10:00
Connor McLaughlin
78cf615a9b
Merge pull request #7937 from Techjar/netplay-defer-efb-invalidation
...
NetPlay: Synchronize EFB access cache options
2019-03-29 20:31:15 +10:00
Stenzek
d66d778bae
PixelShaderGen: Use subgroup reduction operations for bounding box
2019-03-29 20:06:56 +10:00
Stenzek
6561850f2b
Vulkan: Support subgroup reduction operations via GL_KHR_shader_subgroup
2019-03-29 20:06:56 +10:00
Stenzek
86da282570
OGL: Support subgroup reduction operations via GL_NV_shader_thread_shuffle
2019-03-29 20:06:56 +10:00
Connor McLaughlin
1304e963ad
Merge pull request #7895 from stenzek/framebuffer-corruption
...
FramebufferManager: Don't discard in ReinterpretPixelData
2019-03-29 20:03:13 +10:00
Connor McLaughlin
154eeae8ae
Merge pull request #7915 from stenzek/bbox-scaled-update
...
VideoBackends: Scale bounding box rectangle in the pixel shader
2019-03-29 19:59:25 +10:00
Stenzek
d0d010f854
D3D11: Make stateman a unique_ptr
2019-03-29 19:55:00 +10:00
Stenzek
3b86c93285
VertexManagerBase: Increase vertex/uniform buffer sizes
...
ZTP was uploading 10MB+ of uniforms per frame, reducing paralellism by
forcing GPU waits.
2019-03-29 19:52:38 +10:00
Stenzek
2a4bca8b4a
VideoBackends: Verify validity before doing full renderer init
...
Prevents attempting to create invalid MSAA configurations, for example.
2019-03-29 19:52:38 +10:00
Stenzek
1151a1238f
D3D11: Use ComPtr smart pointer where possible
2019-03-29 19:52:38 +10:00
Stenzek
3d8014beb5
D3D11: Use D3DCommon where appropriate
2019-03-29 19:52:38 +10:00
Stenzek
ea15080d8f
Add D3DCommon (shared code between D3D11 and D3D12)
2019-03-29 19:52:38 +10:00
Stenzek
f6641b7e4f
Vulkan: Use Common::DynamicLibrary
2019-03-29 19:52:38 +10:00
Stenzek
a4f7c04470
Common: Add DynamicLibrary helper class
2019-03-29 19:52:33 +10:00
8times9
8c37214bee
Qt/GameList: Set consistent capitalization for context menu
2019-03-28 21:22:46 -05:00
Stenzek
e9cfcf4632
ShaderCache: Don't create invalid logic op pipelines
...
uint_output will never be set unless logic ops are enabled. Also clears
the bits so we're not compiling unused pixel shaders on the other
backends.
2019-03-28 20:35:02 +10:00
Stenzek
5732769a3c
ShaderCache: Set correct primitive in dummy ubershader pipelines
2019-03-28 20:35:02 +10:00
Stenzek
7dd9d74eec
RenderBase: Add EFBHasAlphaChannel() helper
2019-03-28 20:35:02 +10:00
Techjar
6e5d92e3c3
NetPlay: Synchronize EFB access cache options
2019-03-28 00:53:07 -04:00
spycrab
9b6c9252e4
Merge pull request #7932 from spycrab/qt_tas_fixes
...
Qt/TAS: Some fixes
2019-03-27 18:37:35 +01:00
JosJuice
6a18bf4d2e
Merge pull request #7935 from JosJuice/cli-arg-movie
...
DolphinQt: Add support for the --movie parameter
2019-03-27 18:34:24 +01:00
JMC47
b4b0ebae27
Merge pull request #7934 from stenzek/stretched-efb-peeks
...
FramebufferManager: Fix EFB peek cache stretching last tile
2019-03-27 10:53:47 -04:00
Stenzek
92fa6c34cd
FramebufferManager: Fix EFB pokes being offset by 1 in D3D
2019-03-27 23:28:34 +10:00
JosJuice
6451496776
DolphinQt: Add support for the --movie parameter
...
Regression from DolphinWX.
2019-03-27 14:26:17 +01:00
Stenzek
c28393d6f9
FramebufferManager: Fix EFB peek cache stretching last tile
2019-03-27 22:12:40 +10:00
JMC47
a1f53716dc
Merge pull request #7893 from jordan-woyak/mapping-ui-cleanup
...
DolphinQ: Mapping UI cleanups.
2019-03-26 20:30:30 -04:00
spycrab
e222b91953
Merge pull request #7929 from spycrab/np_chat_toggle
...
NetPlayChatUI: Add activate chat hotkey
2019-03-26 22:35:26 +01:00
spycrab
f7897778ff
NetPlayChatUI: Add activate chat hotkey
2019-03-26 18:13:32 +01:00
spycrab
4ad67f471c
Qt/TAS: Improve layout
2019-03-26 01:18:11 +01:00
spycrab
04583b17da
Qt/TAS: Fix issue #11620
2019-03-26 00:38:25 +01:00
JMC47
e636b3e712
Merge pull request #7871 from jordan-woyak/wm-real-cleanup
...
WiimoteReal: Improve state changes and code cleanups.
2019-03-25 19:28:22 -04:00
spycrab
fdb8b4af13
Qt/NetPlayDialog: Change buffer size message color
2019-03-25 10:09:21 +01:00
Stenzek
16294acd2a
VideoBackends: Scale bounding box rectangle in the pixel shader
2019-03-25 18:47:58 +10:00
Mat M
20999db93c
Merge pull request #7928 from JosJuice/ipl-hashes
...
Remove invalid IPL hashes (NTSC-U and NTSC-J use same IPL)
2019-03-24 14:12:17 -04:00
JosJuice
d42fa8f80e
Remove invalid IPL hashes (NTSC-U and NTSC-J use same IPL)
...
See https://bugs.dolphin-emu.org/issues/11467 . We now only have
the hashes that have been confirmed on Redump.
For the reference, MAME's list of bad GameCube IPL dumps:
80b2ca6088/src/mame/drivers/gamecube.cpp (L152-L158)
2019-03-24 14:19:23 +01:00
Stenzek
cff60f5ba0
FramebufferManager: Only clear tile array when valid
...
When looking into the Faron Woods fifolog, I noticed this code was quite
high in the profile (~10%). Clearing 4096 entries from the vector isn't
needed every draw, we only need to do this when the cache was actually
valid in the first place.
Should provide a slight general performance boost.
2019-03-24 15:03:04 +10:00
Jordan Woyak
d106169a83
DolphinQt: Fix unused widgets in InfoWidget from being visible.
2019-03-23 20:20:09 -05:00
spycrab
c89139d75d
Merge pull request #7903 from spycrab/imgui_np_chat
...
Add imgui-based Netplay Chat
2019-03-23 21:11:33 +01:00
spycrab
7cfb626a83
Add imgui-based Netplay Chat
2019-03-23 20:13:24 +01:00
zackhow
f6225e9694
Android: update IR defaults
2019-03-23 08:54:12 -04:00
zackhow
dc51b95313
Android: fix touch ir from pr7829 changes
2019-03-23 08:40:28 -04:00
spycrab
672b582bec
Merge pull request #7918 from spycrab/iokit_refactor
...
InputCommon/OSX: Refactor IOKit controller interface
2019-03-22 21:18:27 +01:00
JosJuice
0b3385ac1f
Merge pull request #7919 from JosJuice/disc-extractor-cert-h3
...
DiscExtractor: Fix extracting certificate chain and H3 hashes
2019-03-22 17:44:47 +01:00
spycrab
80fd01c3c3
InputCommon/OSX: Refactor IOKit controller interface
2019-03-22 14:04:30 +01:00
Tilka
0a1aacb5d0
Merge pull request #7906 from jordan-woyak/leak-fix
...
DolphinQt/InputCommon: Fix a few memory leaks.
2019-03-21 23:26:54 +00:00
Tilka
87cf94ec86
Merge pull request #7914 from stenzek/partial-update-infinite-loop
...
TextureCacheBase: Fix infinite loop in DoPartialTextureUpdates
2019-03-21 23:22:17 +00:00
Tilka
b016417106
Merge pull request #7907 from jordan-woyak/search-close-with-esc
...
DolphinQt: Make Ctrl+F show the game list search and escape close it.
2019-03-21 23:20:48 +00:00
spycrab
094c852158
Merge pull request #7916 from spycrab/issue_11623
...
MacUpdater: Fix updater not closing after update is completed
2019-03-21 23:42:06 +01:00
JosJuice
c558803cbd
DiscExtractor: Fix extracting certificate chain and H3 hashes
...
Dolphin is currently not using this data, but still,
the way it was being extracted was not at all correct.
2019-03-21 23:07:24 +01:00
Jordan Woyak
94c4975b5d
DolphinQt: Make Ctrl+F show the game list search and select the search text if already open. Escape closes.
2019-03-21 17:06:16 -05:00
spycrab
d1f7f0fcc0
Qt/AudioPane: Fix volume box not keeping consistent width
2019-03-21 14:38:12 +01:00
spycrab
544f6d547d
MacUpdater: Fix updater not closing after update is completed
2019-03-21 13:47:23 +01:00
spycrab
8cfbbbe9dc
VideoCommon/RenderBase: Disable backculling for ImGui
2019-03-21 13:16:21 +01:00
spycrab
61350b3d98
Core/Host: Allow frontends to block inputs
2019-03-21 13:16:21 +01:00
spycrab
0a3279ae6b
Fix ImGui key mapping Enter to the numpad
2019-03-21 13:16:21 +01:00
spycrab
fcd0dbef2c
Merge pull request #7901 from spycrab/issue_11585
...
Qt/Mapping: Use QGridLayout in a few more places
2019-03-20 23:53:01 +01:00
spycrab
e8b3c6cb3e
Qt/Mapping: Use QGridLayout in a few more places
2019-03-20 23:46:45 +01:00
Stenzek
bf0b52efc6
TextureCacheBase: Fix infinite loop in DoPartialTextureUpdates
2019-03-20 20:05:51 +10:00
Jordan Woyak
b53636827b
ControllerInterface: Unbreak DirectInput POV Hats having bad values on init.
2019-03-19 16:05:49 -05:00
LAGonauta
99a35568ca
Allow XAudio2 to be selected as a surround backend.
2019-03-18 09:21:40 -03:00
LAGonauta
f37ff190e4
Added DPL2 decoder to XAudio2 and XAudio2_7 backends.
2019-03-18 09:06:41 -03:00
Jordan Woyak
725d34b2f0
DolphinQt/InputCommon: Fix a few memory leaks.
2019-03-17 18:31:41 -05:00
Jordan Woyak
0bdfa19650
ControllerInterface: SDL: Replace unclear bool parameter with enum class.
2019-03-17 08:53:53 -05:00
Jordan Woyak
4fb68c530b
ControllerInterface: SDL cleanup and FF effect fixes.
2019-03-17 08:53:13 -05:00
spycrab
c4036d2d6a
Qt/MD5Dialog: Make dialog modal
2019-03-16 18:54:15 +01:00
JMC47
7acefe8a28
Merge pull request #7898 from spycrab/qt_netplay_empty_chat
...
Qt/NetPlayDialog: Prevent players from sending empty chat messages
2019-03-16 13:09:28 -04:00
spycrab
a40b5f9133
Merge pull request #7900 from spycrab/qt_general_align
...
Qt/GeneralPane: Align "Auto Update" on macOS
2019-03-16 17:57:23 +01:00
JMC47
ae533185c4
Merge pull request #7899 from spycrab/qt_netplay_bold
...
Qt/NetPlayDialog: Don't bold the player table headers
2019-03-16 12:12:30 -04:00
JMC47
2a9f01c1ba
Merge pull request #7897 from spycrab/qt_mapping_dialog
...
Qt/PadMappingDialog: Improve layout
2019-03-16 12:07:43 -04:00
spycrab
502cba255f
Qt/GeneralPane: Align "Auto Update" on macOS
2019-03-16 16:20:21 +01:00
spycrab
2046f93de8
Qt/NetPlayDialog: Don't bold the player table headers
2019-03-16 15:44:03 +01:00
spycrab
e64b6d27c8
Qt/NetPlayDialog: Prevent players from sending empty chat messages
2019-03-16 15:33:38 +01:00
spycrab
19dfd4d7ab
Qt/PadMappingDialog: Improve layout
2019-03-16 15:12:20 +01:00
JosJuice
08ca9ec21f
Merge pull request #7884 from JosJuice/save-movie-on-exit
...
DolphinQt: Save movie when closing emulation
2019-03-16 14:58:16 +01:00
Stenzek
8aa0ea10d9
FramebufferManager: Don't discard in ReinterpretPixelData
...
This was causing the depth buffer to be discarded as well, which
has an effect on mobiles (doesn't get loaded into tile memory).
If we find this is hindering performance (remember, the EFB is
only a 640x528 texture), it may be worth changing the interface to
support discarding only the colour buffer.
2019-03-16 23:45:08 +10:00
Jordan Woyak
9cb17b062c
DolphinQ: Mapping UI cleanups.
2019-03-15 18:32:25 -05:00
Connor McLaughlin
861fc42fc9
Merge pull request #7891 from kvark/vk-frame-view
...
[vk] Use proper view type of framebuffer images
2019-03-16 09:26:01 +10:00
JosJuice
c71216419b
Merge pull request #7874 from vadosnaprimer/ffv1_fix
...
FFV1 fix
2019-03-15 23:17:02 +01:00
Tilka
c57e5701cd
Merge pull request #7879 from spycrab/open_gc_save_folder
...
Qt/GameList: Implement 'Open gamecube save folder'
2019-03-15 18:25:19 +00:00
Dzmitry Malyshau
4173a8f545
Use proper view type of framebuffer images
2019-03-15 12:24:39 -04:00
spycrab
90522a7666
Qt/GameList: Implement 'Open gamecube save folder'
2019-03-15 14:22:54 +01:00
JMC47
011ecd92e8
Merge pull request #7829 from jordan-woyak/detect-input-improve
...
ControllerInterface/DolphinQt: Improve input detection.
2019-03-13 19:00:24 -04:00
JosJuice
bc9e9caf19
Merge pull request #7888 from lioncash/const
...
UICommon/ResourcePack: Mark ResourcePack's operator== as const
2019-03-13 21:41:07 +01:00
spycrab
635afc1db4
Merge pull request #7883 from spycrab/qt_no_dark_mode
...
Qt: Don't use 'Dark Mode'
2019-03-13 21:19:20 +01:00
Lioncash
6045b44203
UICommon/ResourcePack: Provide inequality operator to complement equality operator
...
Provides symmetrical behavior with the equality operator.
2019-03-13 15:55:20 -04:00
Lioncash
9d096a5e16
UICommon/ResourcePack: Mark ResourcePack's operator== as const
2019-03-13 15:53:30 -04:00
Lioncash
02da306d9a
DolphinQt/Debugger/RegisterColumn: Add HID registers to the register pane
...
Adds the Hardware Implementation-Dependent registers to the register
pane, which makes it much nicer to see which hardware-specific features
are enabled or disabled.
2019-03-13 15:45:28 -04:00
Tilka
7b354fa7ac
Merge pull request #7637 from CrystalGamma/pr-crhelpers
...
PowerPC: Factor out CR helpers into POD class
2019-03-13 18:12:52 +00:00
JosJuice
185b1cf90c
DolphinQt: Fix OnStopRecording/OnExportRecording logic
2019-03-13 17:35:20 +01:00
JosJuice
6c89957cf1
DolphinQt: Save movie when closing emulation
...
Missing feature from DolphinWX.
2019-03-13 15:40:36 +01:00
spycrab
339914f56d
Qt: Don't use 'Dark Mode'
2019-03-13 14:30:43 +01:00
Mat M
7944a055a6
Merge pull request #7876 from JosJuice/4-char-window-title
...
Fix title database not working when running games with 4-char game IDs
2019-03-12 05:17:33 -04:00
Stenzek
cce7ac43d4
FramebufferManager: Fix panic in VertexManager with large EFB depth poke batches
2019-03-12 18:26:07 +10:00
JosJuice
d879283e2d
Fix title database not working when running games with 4-char game IDs
...
Regression from 8842a0f
.
2019-03-12 08:42:05 +01:00
JMC47
22e7419747
Merge pull request #7838 from stenzek/efb-tile-cache
...
FramebufferManager: Implement EFB tile cache
2019-03-12 03:10:20 -04:00
Jordan Woyak
49218c32ed
WiimoteReal: Improve state changes and minor code cleanups.
2019-03-11 15:46:04 -05:00
feos
7fd940411b
decrease gop size (keyint)
...
this makes seeking a lot smoother (especially at high resolutions), while only adding less than 1% of filesize with this codec.
2019-03-11 22:17:13 +03:00
feos
005e60fa22
change pixel format from BGRA to BGR0
...
for this kind of footage carrying alpha information makes no sense, and it additionally complicates things by hugely damaging compatibility of the resulting video. after this change alone the video becomes compatible with VfW/WinAPI and tools that rely on it (avisynth, virtualdub).
fixes https://bugs.dolphin-emu.org/issues/11141 and https://bugs.dolphin-emu.org/issues/10193
2019-03-11 22:17:12 +03:00
spycrab
909e9322e7
Merge pull request #7875 from spycrab/qt_msgbox_fixes
...
ModalMessageBox: Remove superfluous buttons and ensure correct parent
2019-03-11 19:36:19 +01:00
spycrab
63fd931245
ModalMessageBox: Remove superfluous buttons and ensure correct parent
2019-03-11 18:24:59 +01:00
JMC47
9e4ab87a34
Merge pull request #7765 from AdmiralCurtiss/fzero-save-file-out-of-bounds
...
GCMemcard: Fix out of bounds access in F-Zero GX checksum calculation.
2019-03-11 12:40:03 -04:00
spycrab
8293724f4e
Merge pull request #7834 from Techjar/netplay-dialog-declutter
...
Qt/NetPlayDialog: Move most options into a menu bar
2019-03-11 17:27:55 +01:00
Jordan Woyak
224e678cf8
WiimoteEmu: Fix a config change callback causing a crash on exit.
2019-03-09 06:51:37 -06:00
Stenzek
9293c82b24
DolphinQt: Add option for deferred EFB cache invalidation
2019-03-09 12:36:32 +10:00
Stenzek
a218a794cb
FramebufferManager: Implement deferred EFB cache invalidation
2019-03-09 12:24:04 +10:00
Stenzek
6bc4bfd26a
FramebufferManager: Implement EFB tile cache
...
The new tile cache is dynamic in size and can be turned on/off.
2019-03-09 12:23:33 +10:00
Stenzek
65216c9e87
VideoConfig: Add SupportsPartialDepthCopies to backend info
...
D3D11 doesn't support partial copies of depth buffers via
CopySubResource(), so we need to use a different path for the EFB cache.
2019-03-09 12:19:53 +10:00
CrystalGamma
e3075f3834
PowerPC: Factor out CR helpers into POD class
2019-03-08 20:42:09 +01:00
Tillmann Karras
1790497789
Work around GCC 8.2 ICE
2019-03-08 09:47:06 +00:00
spycrab
db2542886a
Merge pull request #7844 from spycrab/updatecommon_electric_boogaloo
...
UpdaterCommon: Move most of the programs here
2019-03-07 19:09:35 +01:00
Connor McLaughlin
7d17163ce8
Merge pull request #7862 from spycrab/macos_vulkan_crash
...
VideoCommon/RenderBase: Don't destroy pipelines that are in use
2019-03-07 23:15:48 +10:00
spycrab
ae8412b901
Merge pull request #7858 from spycrab/more_padding
...
Qt: Increase padding a bit
2019-03-07 14:03:17 +01:00
spycrab
f72652f690
Revert "Vulkan: Show backend as Vulkan (MoltenVK) on macOS"
2019-03-07 02:05:59 +01:00
spycrab
9ca394bbea
VideoCommon/RenderBase: Don't destroy pipelines that are in use
2019-03-07 01:59:46 +01:00
spycrab
a5534ec950
Vulkan: Show backend as Vulkan (MoltenVK) on macOS
2019-03-06 15:25:54 +01:00
spycrab
f7e93a6556
Qt/ModalMessageBox: Use Warning instead of Critical icon for questions
2019-03-06 13:54:43 +01:00
spycrab
470b9e68e7
Qt: Increase padding a bit
2019-03-06 13:46:00 +01:00
Tilka
a865cc0bf6
Merge pull request #7806 from jordan-woyak/wiimote-emu-swing-improve
...
WiimoteEmu: Reimplement tilt/swing/camera/orientation data using matrix math.
2019-03-05 23:37:00 +00:00
Techjar
b65faa0549
Qt/NetPlayDialog: Move most options into a menu bar
...
This eliminates the clutter of checkboxes at the bottom of the window.
A QAction within a QMenu cannot have a tooltip however, so they have
been removed and the options will be documented on the wiki.
2019-03-05 05:56:22 -05:00
Mat M
5d7701dec2
Merge pull request #7856 from lioncash/unused
...
DolphinQt/MenuBar: Remove unused ModalMessageBox instance
2019-03-04 23:04:36 -05:00
Mat M
86fd8e25f7
Merge pull request #7854 from Techjar/ini-editor-menus
...
Qt/GameConfigEdit: Use QPushButton instead of QToolButton for presets menu
2019-03-04 22:29:16 -05:00
Lioncash
3e0854c4aa
DolphinQt/MenuBar: Remove unused ModalMessageBox instance
2019-03-04 20:16:45 -05:00
Techjar
86d036ec4b
Qt: Remove "What's this?" button from modal message boxes
2019-03-04 18:55:22 -05:00
Techjar
d44b1b563a
Qt/GameConfigEdit: Use QPushButton instead of QToolButton for presets menu
...
QToolButton looks ugly on macOS, and doesn't seem appropriate for this
use case anyways.
2019-03-04 18:39:25 -05:00
spycrab
70da86f1c3
Qt: Use ModalMessageBox everywhere
2019-03-04 21:53:02 +01:00
spycrab
d1cb79f644
QtUtils: Add ModalMessageBox
2019-03-04 21:48:23 +01:00
Connor McLaughlin
a59010fa29
Merge pull request #7851 from Tilka/efb_stats
...
VideoCommon: add EFB peek/poke stats
2019-03-04 15:28:22 +10:00
Tillmann Karras
05fa667d03
VideoCommon: add EFB peek/poke stats
2019-03-04 02:49:59 +00:00
Mat M
191ef76da2
Merge pull request #7775 from chargeflux/QComboBoxBGColorFix-macOS
...
Fix QComboBox background and transparency workaround on macOS
2019-03-03 20:52:32 -05:00
Jordan Woyak
c389d68186
ControllerInterface/DolphinQt: Make mapping "all devices" way less hacky.
2019-03-03 18:39:02 -06:00
Jordan Woyak
48b69ca018
ControllerInterface: Input detection improvements.
2019-03-03 18:36:16 -06:00
spycrab
13b2b93d3d
Merge pull request #7846 from spycrab/qt_no_ticks
...
Qt/MappingButton: Don't show ticks
2019-03-04 01:29:48 +01:00
Mat M
66a8220011
Merge pull request #7845 from jordan-woyak/elided-button-fix
...
DolphinQt: Fix ElidedButton (MappingButton) from growing with long text.
2019-03-03 18:53:01 -05:00
Mat M
503b96c617
Merge pull request #7848 from jordan-woyak/config-change-callbacks
...
Common/Config: Add a utility class to defer config change callbacks.
2019-03-03 18:44:34 -05:00
Jordan Woyak
1cae9b9b39
DolphinQt: Fix ElidedButton (MappingButton) from growing with long text.
2019-03-03 17:41:48 -06:00
Jordan Woyak
bbc6bf5294
Common/Config: Add a utility class to suppress config change callbacks.
2019-03-03 17:35:22 -06:00
Mat M
2eb9140e07
Merge pull request #7850 from jordan-woyak/device-and-profile-dropdown-fix
...
DolphinQt: Prevent contents of device and profile dropdowns from throwing off layout.
2019-03-03 18:33:16 -05:00
Jordan Woyak
031149cc1d
DolphinQt: Prevent contents of device and profile dropdowns from throwing off layout.
2019-03-03 16:09:24 -06:00
spycrab
2dcb703a1e
Merge pull request #7842 from spycrab/win_updater_hidpi
...
Updater: Support HiDPI
2019-03-03 22:46:19 +01:00
Jordan Woyak
4db4840d7c
WiimoteEmu: Reimplement tilt/swing/camera/orientation data using matrix math.
2019-03-03 12:43:25 -06:00
spycrab
0d203cf0bb
Qt/GCMemcardManager: Make message boxes modal
2019-03-03 16:36:58 +01:00
spycrab
326e2fb300
Qt/FIFOPlayerWindow: Make message box modal
2019-03-03 16:26:23 +01:00
spycrab
1ba810901d
Qt/MappingWindow: Make message boxes modal
2019-03-03 16:19:50 +01:00
spycrab
103cb430f4
Qt/ControllerWindow: Make message boxes modal
2019-03-03 16:16:25 +01:00
spycrab
7f9084f87f
Qt/USBDeviceATWhitelistD: Make message boxes modal
2019-03-03 16:12:12 +01:00
spycrab
606c61e7c9
Settings/InterfacePane: Make message box modal
2019-03-03 16:05:07 +01:00
spycrab
0c886b5e3c
Settings/GeneralPane: Make message boxes modal
2019-03-03 15:56:23 +01:00
spycrab
386accd2c8
Qt/MappingButton: Don't show ticks
2019-03-03 15:49:24 +01:00
spycrab
19bf2c166d
UpdaterCommon: Move most of the programs here
2019-03-03 15:02:44 +01:00
spycrab
2a3c075330
Merge pull request #7843 from spycrab/mac_update_label
...
MacUpdater: Properly display and truncate update messages
2019-03-03 13:30:43 +01:00
spycrab
833cb88c38
MacUpdater: Properly display and truncate update messages
2019-03-03 13:27:18 +01:00
spycrab
1e13ebd091
Updater: Support HiDPI
2019-03-03 12:56:26 +01:00
Mat M
8156df2758
Merge pull request #7837 from jordan-woyak/deadzone-math-fix
...
ControllerEmu: Deadzone math fix.
2019-03-03 02:32:04 -05:00
Mat M
7a8ddbaccb
Merge pull request #7840 from jordan-woyak/game-config-save-fix
...
DolphinQt: Fix invalid error message when trying to save a zero-sized game config.
2019-03-03 02:27:12 -05:00
Jordan Woyak
2cec5d0a08
DolphinQt: Fix invalid error message when trying to save a zero-sized game config.
2019-03-02 21:23:39 -06:00
Jordan Woyak
ecb67cf815
ControllerEmu: Deadzone math fix.
2019-03-01 17:40:10 -06:00
Tillmann Karras
24ba3bf2f2
TextureConversionShader: fix XFB decoding shader
2019-03-01 21:54:33 +00:00
spycrab
3c2ebec84e
Merge pull request #7828 from spycrab/updatecommon2
...
UpdaterCommon: Prevent duplicate downloads and respect symlinks
2019-02-28 13:04:15 +01:00
spycrab
7b66b3de8d
UpdaterCommon: Prevent duplicate downloads and respect symlinks
2019-02-28 12:59:38 +01:00
Tilka
6be35422e9
Merge pull request #7832 from stenzek/xfb-decoding-regression
...
TextureCache: Fix GPU decoding of XFB copies
2019-02-28 11:03:25 +00:00
Stenzek
8192c0dd48
TextureConversionShader: Fix XFB decoding shader for D3D
...
D3D has no mix() equivalent with a bool parameter. Compilers should be
able to optimize the ternary into a select anyway.
2019-02-28 20:43:50 +10:00
Stenzek
21d81f99ff
VideoBackends: Fix GPU decoding of XFB buffers
...
Was using UNORM instead of UINT, resulting in invalid values.
2019-02-28 20:35:22 +10:00
Stenzek
db6763019d
TextureCache: Fix GPU decoding of XFB copies not falling back to CPU
2019-02-28 20:19:37 +10:00
Stenzek
7f0111b022
TextureCache: Fix EFB2RAM copies at >1xIR sampling out-of-range
2019-02-28 20:11:46 +10:00
chargeflux
77777cd1d7
Fix QComboBox background and transparency workaround on macOS
2019-02-26 17:03:38 -05:00
spycrab
902e407ae5
Merge pull request #7823 from spycrab/updatercommon
...
Move shared Updater logic into UpdaterCommon
2019-02-26 22:15:42 +01:00
spycrab
f10fdce158
Merge pull request #7825 from spycrab/fileutil_osx_path
...
Common/FileUtil: Fix GetExePath() cutting off the bundle name
2019-02-26 21:56:27 +01:00
spycrab
873d22b8b2
Merge pull request #7826 from spycrab/issue_11586
...
MacUpdater: Set LSUIElement to true
2019-02-26 21:52:45 +01:00
spycrab
f0b749d8e2
MenuBar: Implement proper update-capabilities check
2019-02-26 20:42:55 +01:00
spycrab
d0d85c15b4
MacUpdater: Set LSUIElement to true
2019-02-26 20:26:52 +01:00
spycrab
3e3f6922c0
Common/FileUtil: Fix GetExePath() cutting off the bundle name
2019-02-26 20:00:23 +01:00
spycrab
9c84524684
Move shared Updater logic into UpdaterCommon
2019-02-26 19:27:36 +01:00
spycrab
0ebf3b90e3
MacUpdater: Fix permissions some more
2019-02-26 17:16:04 +01:00
Tilka
19f4772e47
Merge pull request #7816 from JosJuice/titledatabase-edge-cases
...
Fix edge cases in TitleDatabase, cover downloading, Gecko code downloading
2019-02-26 04:25:45 +00:00
Tilka
02f5a7505f
Merge pull request #7821 from jordan-woyak/emu-turntable-effect-dial-fix
...
WiimoteEmu: Fix turntable effect dial mapping.
2019-02-26 04:22:45 +00:00
Tilka
6ce7f44b8a
Merge pull request #7753 from stenzek/videocommon-all-the-things
...
Move a significant amount of video backend logic to VideoCommon
2019-02-26 04:21:05 +00:00
Jordan Woyak
4b830ddc26
WiimoteEmu: Fix turntable effect dial mapping.
2019-02-25 15:54:36 -06:00
Tillmann Karras
8396ad541b
DolphinQt: clean up includes
2019-02-25 20:15:12 +00:00
Tillmann Karras
8b330e1ca3
Discord: fix typo
2019-02-25 19:31:49 +00:00
JosJuice
71e6243c54
TitleDatabase: Don't hardcode HBC IDs that actually are in GameTDB
2019-02-25 19:55:49 +01:00
JosJuice
9df763b4ac
TitleDatabase: Don't merge multiple languages into same map
...
Instead of selecting languages based on the user config at the time
of TitleDatabase creation and merging the different languages into one
map for GC and one map for Wii, have one map for each language, and
have the caller supply the language they want. This makes us not need
the IsGCTitle function, which is inaccurate for IDs that start with D.
2019-02-25 19:55:46 +01:00
JosJuice
8842a0f402
Keep track of GameTDB ID separately from game ID
...
The difference between Dolphin's game IDs and GameTDB's game IDs
is that GameTDB uses four characters for non-disc titles, whereas
Dolphin uses six characters for all titles.
This fixes:
- TitleDatabase considering Datel discs to be NHL Hitz 2002
- Gecko code downloading not working for discs with IDs starting with P
- Cover downloading mixing up discs with channels (e.g. Mario Kart Wii
and Mario Kart Channel) and making extra HTTP requests. (Android was
actually doing a better job at this than DolphinQt!)
2019-02-25 19:54:25 +01:00
Mat M
de3c8fee22
Merge pull request #7808 from Ebola16/331
...
Android Studio 3.3.1 Updates
2019-02-25 13:41:16 -05:00
Mat M
d27036eb77
Merge pull request #7814 from JosJuice/overwrite-aspect-mode
...
VideoConfig: Don't overwrite aspect_mode with suggested_aspect_mode
2019-02-25 13:29:03 -05:00
Mat M
fad9c0cc93
Merge pull request #7813 from jordan-woyak/wiimote-emu-ir-enable-fix
...
WiimoteEmu: Minor IR Camera behavior fix.
2019-02-25 13:28:14 -05:00
JMC47
fa685afd77
Merge pull request #7723 from zackhow/newcale
...
Android: Wiimote only(no nunchuck) overlay upgrades
2019-02-25 11:48:05 -05:00
spycrab
96786d0501
MacUpdater: Retain file permissions
2019-02-25 10:14:26 +01:00
Jordan Woyak
d64f29d234
WiimoteEmu: Minor IR Camera behavior accuracy fix.
2019-02-23 16:40:47 -06:00
Tilka
83ff3aa691
Merge pull request #7815 from JosJuice/elf-dol-size
...
Don't show asterisk next to DOL/ELF size in game list
2019-02-23 15:46:03 +00:00
JosJuice
5ace78bf20
Don't show asterisk next to DOL/ELF size in game list
2019-02-23 16:17:39 +01:00
JosJuice
ea7b96342b
VideoConfig: Don't overwrite aspect_mode with suggested_aspect_mode
...
Unnecessary since b93b7ec
. It was needed before that commit becase
RenderBase.cpp only was checking the value of aspect_mode, not
suggested_aspect_mode.
2019-02-23 16:00:18 +01:00
Jordan Woyak
58f1ff3773
WiimoteEmu: Minor accuracy fixes.
2019-02-20 17:44:55 -06:00
Stenzek
f039149198
Move most backend functionality to VideoCommon
2019-02-19 16:57:54 +10:00
Ryan Meredith
f0e6527f3e
Android Studio 3.3.1 Updates
2019-02-18 10:32:57 -05:00
Stenzek
933f3ba008
TextureCache: Don't copy out-of-range rectangles when stitching textures
...
This can cause driver crashes or GPU hangs if we do.
2019-02-17 16:35:43 +10:00
Stenzek
2165523fdc
TextureConverterShader: Write EFB2Tex XFB copies with alpha value of 1
...
This way we don't end up with artifacts of the EFB's alpha values in
frame dumps. XFB copies loaded from RAM also set the alpha to 1, so this
will match.
2019-02-17 16:35:43 +10:00
Stenzek
50bdcb8d9c
TextureCache: Bind textures/samplers after loading all textures
...
Since loading textures can result in rendering, e.g. partial copies, we
don't want to disturb partially-bound GX state.
2019-02-17 16:35:43 +10:00
JosJuice
286aafd4ed
Merge pull request #7791 from JosJuice/android-show-files
...
Android: Show files in the directory picker
2019-02-16 18:11:20 +01:00
Stenzek
eabde77892
CMake: Add an ENABLE_NOGUI option
2019-02-15 18:40:46 +10:00
Stenzek
836f76da89
DolphinNoGUI: Runtime selection of platform
2019-02-15 18:40:46 +10:00
Stenzek
f9869cb216
Vulkan: Support runtime selection of WSI
2019-02-15 18:40:46 +10:00
LAGonauta
c209d07c96
Removed FFDShow DPL2 decoder
2019-02-13 22:52:41 -02:00
LAGonauta
f4cf1e4f49
Removed zeroing-out the LFE as it is not needed anymore.
...
Also removed minimum number of frames needed when decoding DPL2, and use
std::numeric_limits to clamp the samples when needed.
Clamping is still needed, but those samples are much rarer now and depend
on the game.
2019-02-13 22:52:40 -02:00
LAGonauta
fdfd9d6953
Cleaned up PulseAudio as we now use FreeSurround
2019-02-13 22:52:40 -02:00
LAGonauta
df631f0d75
Swapped FFDShow's DPL2 decoder by FreeSurround
...
Added class in AudioCommon for the surround decoder
2019-02-13 22:52:40 -02:00
LAGonauta
7b9375875c
Added FreeSurround to Externals
...
Also cleaned up its source code to support only 5.1 and 7.1 setups.
2019-02-13 22:52:39 -02:00
JosJuice
5067e96f37
Minor fixes to translatable strings
2019-02-13 18:54:45 +01:00
Tilka
131f4931fb
Merge pull request #7792 from jordan-woyak/auto-calibration
...
DolphinQt/ControllerEmu: Add stick calibration "wizard".
2019-02-13 02:13:27 +00:00
Tilka
8d59d1bb11
Merge pull request #7798 from ShFil119/impr/empty
...
Use empty instead of size
2019-02-13 01:59:43 +00:00
Filip Gawin
49fe9f5db1
Use empty instead of size
2019-02-13 00:03:49 +01:00
Mat M
6b22693e6e
Merge pull request #7796 from stenzek/glx-context
...
GLContext: Fix shared context creation error on Mesa
2019-02-11 09:23:52 -05:00
spycrab
eb11d045d7
Merge pull request #7790 from spycrab/rp_fixes
...
ResourcePacks: Fix various bugs
2019-02-11 11:09:43 +01:00
spycrab
f86b34ceb9
ResourcePacks: Fix various bugs
2019-02-11 11:05:35 +01:00
Tilka
4d85bb2d18
Merge pull request #7782 from jordan-woyak/wiimote-emu-speaker-pan
...
WiimoteEmu: Change speaker pan to use "constant power pan law".
2019-02-11 00:20:07 +00:00
Jordan Woyak
3c77b4aa4b
WiimoteEmu: Change speaker pan to use "constant power pan law" and change UI setting max value from 127 to 100.
2019-02-10 17:55:11 -06:00
Tilka
226affe00b
Merge pull request #7788 from jordan-woyak/mapping-ui-clear-button
...
DolphinQt: Make the mapping window clear button use ControllerEmu's clear functionality.
2019-02-10 23:29:33 +00:00
Tilka
33e51da3b8
Merge pull request #7785 from Tilka/patch_editor
...
DolphinQt: limit patch padding to 8
2019-02-10 23:22:20 +00:00
Jordan Woyak
0064f70c8a
DolphinQt/ControllerEmu: Replace Input Radius/Shape settings with an input calibration "wizard".
2019-02-10 07:55:47 -06:00
Stenzek
cecefa2d97
ChunkFile: Don't access element zero of empty container
...
This was causing assertion failures in debug MSVC builds.
2019-02-10 13:28:50 +10:00
Stenzek
ef3306e954
GLContext: Fix shared context creation error on Mesa
...
This was failing if the first version tried (4.6) didn't succeed.
2019-02-09 21:51:23 +10:00
Mat M
e030a48741
Merge pull request #7793 from spycrab/logging_async
...
Qt/LogWidget: Make logging asynchronous
2019-02-08 14:31:11 -05:00
Mat M
7fb1c1e3a6
Merge pull request #7795 from JosJuice/android-wii-change-disc
...
Android: Allowing changing disc while emulating Wii
2019-02-08 14:30:42 -05:00
JosJuice
74fced8327
Android: Allowing changing disc while emulating Wii
...
There's no good reason this should be locked to GameCube.
Think of all the Dragon Quest X fans :(
2019-02-08 19:40:31 +01:00
JosJuice
0fa7b23067
Android: Improve the description for backend multithreading
2019-02-08 19:19:51 +01:00
JosJuice
c520a033be
Android: Show files in the directory picker
...
People in the Google Play reviews still seem to be confused about
games not showing up in the directory picker, so let's show them
even though they can't be selected. (Either that or they haven't
realized that they need to extract their pirated games.)
2019-02-08 18:24:37 +01:00
spycrab
0abb1c6ea6
Qt/LogWidget: Make logging asynchronous
2019-02-08 13:21:21 +01:00
Anthony
2987e8313a
Merge pull request #7752 from 8times9/text-tweaks
...
Qt: Minor text tweaks
2019-02-07 10:21:00 -08:00
8times9
d45dad7bf7
Qt: Minor text tweaks
2019-02-07 11:53:07 -06:00
Jordan Woyak
64c3c52ef3
DolphinQt: Make the mapping window clear button use ControllerEmu's clear functionality.
2019-02-06 17:40:58 -06:00
spycrab
63cdebba88
UICommon/AutoUpdate: Add macOS support
2019-02-06 20:50:09 +01:00
spycrab
80f4181f60
MacUpdater: Initial implementation
2019-02-06 20:50:09 +01:00
spycrab
fa01db4904
Qt/GameConfigEdit: Fix some settings being in the wrong section
2019-02-06 09:42:33 +01:00
Tillmann Karras
03a7071c57
DolphinQt: limit patch padding to 8
2019-02-05 04:59:52 +00:00
Tillmann Karras
74c5e60327
DolphinQt: show game descriptions in one line
2019-02-03 22:32:36 +00:00
Anthony
b72b128076
Merge pull request #7687 from weihuoya/android-minor-fx
...
Android: some minor changes
2019-02-03 12:48:39 -08:00
Anthony
dc15c969ed
Merge pull request #7724 from zackhow/rum
...
Android: Don't clear vibrators in onStop
2019-02-03 12:45:02 -08:00
Anthony
f65b3a998c
Merge pull request #7739 from zackhow/multib
...
Android: Disable backend multithreading and add option to gfx menu
2019-02-03 12:44:00 -08:00
Anthony
e05cc3f61d
Merge pull request #7718 from cristian64/display_listcolumns_via_rightclick_on_header
...
Qt/MainWindow: Also display "List Columns" menu via right-click on table's header.
2019-02-03 12:41:39 -08:00
Anthony
227a26490d
Merge pull request #7773 from spycrab/rp_compression
...
ResourcePacks: Support compression
2019-02-03 12:34:11 -08:00
Anthony
eee24cd1ce
Merge pull request #7746 from Techjar/fix-hotkey-conflicts
...
[RFC] Core/HotkeyManager: Fix default hotkey conflicts
2019-02-03 12:26:14 -08:00
Tilka
8aaebfa2b3
Merge pull request #7716 from stenzek/stereo
...
Stereoscopy regression fixes
2019-02-03 19:57:01 +00:00
Anthony
4e825beddf
Merge pull request #7757 from jordan-woyak/wiimote-connection-status-checkmarks
...
WiimoteDevice: Update UI when wiimote connection status changes.
2019-02-03 10:28:08 -08:00
Anthony
e9130734af
Merge pull request #7688 from jordan-woyak/evdev-improve
...
ControllerInterface: evdev: Cleanups and effect processing fixes.
2019-02-03 10:25:23 -08:00
Jordan Woyak
69b617ce76
WiimoteEmu: Remove redundant Matrix library and use the one in Common.
2019-02-03 12:02:02 -06:00
Jordan Woyak
b9a00a40a9
Common: Move Matrix classes out of MathUtil into their own files and make their interface more friendly.
2019-02-03 11:35:31 -06:00
Jordan Woyak
9c1a8891e5
WiimoteEmu: Code cleanups.
2019-02-02 19:40:31 -06:00
Jordan Woyak
3945aa6242
WiimoteEmu: Fix battery level handling and remove old comments.
2019-02-02 19:40:31 -06:00
Jordan Woyak
6c0902ab0a
WiimoteEmu: Add logic for enabling/disabling M+ and force it disabled for now.
2019-02-02 19:40:31 -06:00
Jordan Woyak
0d1fbe7bbc
WiimoteEmu: Major renaming and cleanup.
2019-02-02 19:40:31 -06:00
Jordan Woyak
b1f350ab1c
WiimoteEmu: Cleanups, Kill some now-redundant constants.
2019-02-02 19:40:30 -06:00
Jordan Woyak
6e5847a790
WiimoteEmu: Fix wiimote pan setting from keeping center at half volume.
2019-02-02 19:40:30 -06:00
Jordan Woyak
d3906e548d
WiimoteEmu: Cleanup ack handling. Improve accuracy of report handling with unusual values. Eliminated outdated comments.
2019-02-02 19:40:30 -06:00
Jordan Woyak
3a889c35ad
WiimoteEmu: Cleanups, Kill more magic numbers and use some enum classes.
2019-02-02 19:40:30 -06:00
Jordan Woyak
86c94b8b22
WiimoteEmu: Motion plus now works half of the time in Wii Sports Resort.
2019-02-02 19:40:30 -06:00
Jordan Woyak
0b4329e077
Implement the rest of the wiimote input reports.
2019-02-02 19:40:30 -06:00
Jordan Woyak
10c2101e72
WiimoteReal: Unbreak.
2019-02-02 19:40:30 -06:00
Jordan Woyak
42b9392784
WiimoteEmu: Cleanups and work towards making motion plus functional.
2019-02-02 19:40:30 -06:00
Jordan Woyak
a25e8cb516
Advance save state version.
2019-02-02 19:40:30 -06:00
Jordan Woyak
a0721b256f
WiimoteEmu: Cleanup, kill some magic numbers, and unbreak wiimote speaker pan setting.
2019-02-02 19:39:29 -06:00
Jordan Woyak
372b12c67f
WiimoteEmu: Emulated motion plus is detected by game now.
2019-02-02 19:39:29 -06:00
Jordan Woyak
ba936923bd
WiimoteEmu: Tweak the i2c bus code to better support motion plus and its passthrough port.
2019-02-02 19:39:29 -06:00
Jordan Woyak
84d32f6645
WiimoteEmu: Fix usage of ReportFeatures in TAS related code.
2019-02-02 19:39:29 -06:00
Jordan Woyak
4dc0aa6f8e
WiimoteEmu: Process wiimote read data requests like they are on a real wiimote. It's not a queue. New requests are ignored and input is suppressed while processing a request. This simplifies the save state code greatly.
2019-02-02 19:39:29 -06:00
Jordan Woyak
ec460da36d
WiimoteEmu: Add wiimote speaker logic to i2c bus. Temporarily break the "pan" setting.
2019-02-02 19:39:29 -06:00
Jordan Woyak
62b66580c3
WiimoteEmu: Unbreak wiimote extensions.
2019-02-02 19:39:29 -06:00
Jordan Woyak
ebc2e58fa4
WiimoteEmu: Partially emulate i2c bus to more closely simulate the real thing. Transfer most of IR camera logic to the i2c bus. Temporarily break everything else.
2019-02-02 19:39:29 -06:00
Jordan Woyak
6c40c47472
WiimoteEmu: Remove some remnants of hybrid wiimote.
2019-02-02 19:39:28 -06:00