Commit Graph

27310 Commits

Author SHA1 Message Date
44fe5812b9 Fix FIFO player crashing when USE_MEMORYWATCHER is defined 2019-07-10 20:43:15 +02:00
d2d7bf5c3b Common/DebugInterface: Remove GetInstructionSize()
This is completely unused, so it can be removed.
2019-07-09 14:19:40 -04:00
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
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
d01220e69d SI: CMD_ORIGIN/CMD_RECALIBRATE gets 10 byte reply 2019-07-08 23:08:35 -04:00
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
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
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
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
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
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
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
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
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
da87638ea2 Fix GDB stub 2019-07-07 05:17:33 +01:00
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
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
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
e24789b4fb Add a hotkey for inserting/ejecting the SD card 2019-07-03 22:44:51 +02:00
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
7f841e9bfd Android: Suggest deleting game INIs if they contain global INI data 2019-07-02 19:28:38 +02:00
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
0a7395bfba Merge pull request #8128 from altimumdelta/FrameDumpUpgradePrep1
Code: Rename AVIDump to FrameDump
2019-06-30 21:13:19 +10:00
1df655e376 VideoCommon: Rename AVIDump to FrameDump 2019-06-30 13:02:39 +02:00
0d2c3e6efc Merge pull request #8219 from Pokechu22/float-watch
Show values as floats in watch
2019-06-30 11:34:29 +10:00
ae0843f53d Show values as floats in watch 2019-06-29 12:04:20 -07:00
e388f01e11 Merge pull request #8215 from CookiePLMonster/appverifier-sanitize
Fixed various errors spotted with Application Verifier
2019-06-30 01:27:25 +10:00
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
341ce45ed6 Merge pull request #8176 from VinDuv/handle-open-files
QtGui: Handle file open events
2019-06-29 22:22:46 +10:00
8a122de999 Merge pull request #8192 from Miksel12/qt-changes
Reorder graphics config
2019-06-29 22:21:53 +10:00
a88deda307 Merge pull request #8193 from lioncash/disasm
Common/GekkoDisassembler: Minor changes
2019-06-29 10:38:36 +02:00
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
0dfff81a56 Merge pull request #8205 from Techjar/crop-fix
VideoCommon/RenderBase: Fix crop
2019-06-29 10:24:37 +02:00
a9099fc96b Merge pull request #8207 from lioncash/macro
VideoCommon/Statistics: Use std::array for projection values
2019-06-29 09:36:33 +02:00
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
75b2b53be2 Merge pull request #8200 from randomstuff/detach_driver
Automatically detach/reattach bluetooth driver in passthrough
2019-06-29 08:46:59 +02:00
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
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
6fd435fdff Merge pull request #8208 from lioncash/fmt
Core/IOS: Use fmt where applicable
2019-06-28 18:53:47 +02:00
e50a6f4c46 Reorder graphics config 2019-06-26 21:59:47 +02:00
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
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
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
5f0b4d8da5 Fix a crash in DSPTool on malformed command line 2019-06-23 21:55:51 +02:00
9eab3feddf Fix out of bounds read in HttpRequest::Impl::Fetch logging 2019-06-23 21:44:51 +02:00
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
dacba85a08 UpdaterCommon: Hide Updater before Dolphin quits 2019-06-23 19:47:18 +02:00
396546f5c0 Config/ARCodeWidget: Add option for alphabetical sorting 2019-06-22 19:54:13 +02:00
1d43d9afc1 Config/GeckoCodeWidget: Add option for alphabetical sorting 2019-06-22 19:54:13 +02:00
93393a288c Qt/ARCodeWidget: Support drag and drop reordering 2019-06-22 19:54:13 +02:00