21728 Commits

Author SHA1 Message Date
Pierre Bourdon
e096ca20e9
Merge pull request #7358 from Techjar/qt-memcard-manager-deletion-fix
Qt/GCMemcardManager: Fix deletion of multiple files
2018-08-27 04:48:07 +02:00
Pierre Bourdon
dbb7563cce
Merge pull request #7363 from Techjar/netplay-hia-comments
NetPlay: Add additional comments for host input authority mode
2018-08-27 04:45:20 +02:00
Pierre Bourdon
db55c36f09
Merge pull request #7359 from stenzek/intel-d3d-crash
PixelShaderGen: Ensure all components of ocol1 are initialized
2018-08-27 04:42:28 +02:00
Pierre Bourdon
246b1f4459
Merge pull request #7350 from zackhow/android-analytics
Android: Add usage statistics to android
2018-08-27 04:37:17 +02:00
Techjar
1ba834d13c NetPlay: Add additional comments for host input authority mode 2018-08-26 22:28:23 -04:00
Pierre Bourdon
0cc3ae72a5
Merge pull request #7344 from delroth/discord-pics
DiscordPresence: use game-specific artwork if available
2018-08-27 00:11:21 +02:00
Pierre Bourdon
9bcd7bfe1e
Merge pull request #7360 from Techjar/netplay-host-input-authority
NetPlay host input authority mode
2018-08-26 23:15:44 +02:00
Techjar
5519efa66e NetPlay host input authority mode
Currently, each player buffers their own inputs and sends them to the
host. The host then relays those inputs to everyone else. Every player
waits on inputs from all players to be buffered before continuing. What
this means is all clients run in lockstep, and the total latency of
inputs cannot be lower than the sum of the 2 highest client ping times
in the game (in 3+ player sessions with people across the world, the
latency can be very high).

Host input authority mode changes it so players no longer buffer their
own inputs, and only send them to the host. The host stores only the
most recent input received from a player. The host then sends inputs
for all pads at the SI poll interval, similar to the existing code. If
a player sends inputs to slowly, their last received input is simply
sent again. If they send too quickly, inputs are dropped. This means
that the host has full control over what inputs are actually read by
the game, hence the name of the mode. Also, because the rate at which
inputs are received by SI is decoupled from the rate at which players
are sending inputs, clients are no longer dependent on each other. They
only care what the host is doing. This means that they can set their
buffer individually based on their latency to the host, rather than the
highest latency between any 2 players, allowing someone with lower ping
to the host to have less latency than someone else.

This is a catch to this: as a necessity of how the host's input sending
works, the host has 0 latency. There isn't a good way to fix this, as
input delay is now solely dependent on the real latency to the host's
server. Having differing latency between players would be considered
unfair for competitive play, but for casual play we don't really care.
For this reason though, combined with the potential for a few inputs to
be dropped on a bad connection, the old mode will remain and this new
mode is entirely optional.
2018-08-26 17:10:23 -04:00
BhaaL
5f95ed5263 Jit64: get rid of global g_jit accesses 2018-08-25 16:53:49 +02:00
spycrab
476037d1f2
Merge pull request #7345 from spycrab/qt_cover_uniform
Qt/GridProxyModel: Ensure uniform sizes in cover mode
2018-08-25 02:01:14 +02:00
Stenzek
bae1168fe9 PixelShaderGen: Ensure all components of ocol1 are initialized
This was causing a warning in the shader compiler, as the rgb components
were not initialized. Which shouldn't be an issue, as the rgb is not
used in the blend equation, only the alpha. However, the lack of
initialization causes crashes in Intel's D3D shader compiler, so we'll
play nice and initialize all the channels.
2018-08-24 23:53:00 +10:00
Techjar
fd7d51eed6 Qt/GCMemcardManager: Fix deletion of multiple files 2018-08-24 07:58:38 -04:00
spycrab
248afb9fa7
Merge pull request #7347 from spycrab/qt_fix_visibility
Qt: Fix widgets being visible when they shouldn't be
2018-08-24 01:58:55 +02:00
spycrab
398cce52be
Merge pull request #7352 from Techjar/qt-signal-blocker
Qt: Switch to QSignalBlocker for scoped signal blocking
2018-08-24 01:58:21 +02:00
zackhow
82f82a6b7d Android: Add usage statistics to android.
Added an option in General config to enable/disable usage statistics. Added a popup on first open if
the user would like to engage in reporting. Clicking cancel or out of the box opts out. Only
clicking 'Ok' will enable reporting. Also added a new android specific values to report.
2018-08-23 17:31:17 -04:00
Techjar
1547b185c7 Qt: Switch to QSignalBlocker for scoped signal blocking 2018-08-23 07:11:52 -04:00
Techjar
d72f4ed468 Qt/AdvancedPane: Block signals during Update() 2018-08-23 07:00:20 -04:00
Techjar
5512eadd08 VideoCommon/HiresTextures: Change wildcard to a Windows-compatible character 2018-08-21 15:54:25 -04:00
Pierre Bourdon
d44087128e
Merge pull request #7342 from spycrab/qt_dbg_scroll
Qt/Debugger: Improve scrolling
2018-08-20 21:41:54 +02:00
Pierre Bourdon
183fb9bf6a
Merge pull request #7338 from booto/controller_modes
Fix analog modes that use 4 bits for c-stick data
2018-08-20 13:02:32 +02:00
Markus Wick
3c354d9280
Merge pull request #7333 from weihuoya/gamecover-nomedia
Hide game cover in android gallery
2018-08-20 10:01:50 +02:00
spycrab
77ebd721e3 Qt: Fix widgets being visible when they shouldn't be 2018-08-20 00:39:57 +02:00
spycrab
5b992f138b Qt/Debugger: Improve scrolling
Reduces the scrolling speed for both keyboard and mouse scrolling so
users are able to navigate the code and memory view line by line
2018-08-19 22:36:04 +02:00
JosJuice
be890c56ac Fix critital buffer overflow in LoadPNG 2018-08-19 17:35:15 +02:00
spycrab
2ea6cc66ba Qt/GridProxyModel: Ensure uniform sizes in cover mode 2018-08-19 17:13:29 +02:00
Pierre Bourdon
4ecee3cb99 DiscordPresence: use game-specific artwork if available
Since we don't have a way (AFAIK) to dynamically collect the list of
available art assets, we hardcode a list of gameids with available
artwork inside Dolphin. It's not great, but I don't think it's a
terrible solution either.

Art has to be manually uploaded to our Discord app configuration, and we
have a limit of ~150 assets, so most likely we'll limit ourselves to a
small set of popular games.
2018-08-19 14:53:40 +02:00
Mat M
8f847c7655
Merge pull request #7343 from spycrab/qt_bp_fix
Qt/Debugger: Readd title bar to breakpoint widget
2018-08-19 08:41:36 -04:00
Pierre Bourdon
0fdb6f4267
Merge pull request #7249 from yourWaifu/discord-rpc-join
Add Discord Join Net Play functionally
2018-08-19 13:43:33 +02:00
spycrab
27bc9046e7 Qt/Debugger: Readd title bar to breakpoint widget
Removed it by accident in #7299
2018-08-19 13:37:59 +02:00
Admiral H. Curtiss
5df424a1ec Use simplified libpng PNG reading API to avoid PNG reading bugs. 2018-08-19 13:14:11 +02:00
spycrab
12a5fd80bd
Merge pull request #7299 from spycrab/qt_compact
Qt/Debugger: Make spacing more compact
2018-08-17 15:28:03 +02:00
booto
168fdf814b Fix analog modes that use 4 bits for c-stick data
Also get rid of a load of unnecessary casts
2018-08-16 02:17:17 -04:00
spycrab
8e5c3d5b4e
Merge pull request #7326 from spycrab/qt_tas_fancy
Qt/TAS: Enable antialiasing for Stick/IR widgets
2018-08-15 19:46:56 +02:00
spycrab
8d184ab9bd Qt/Debugger: Make spacing more compact 2018-08-15 19:26:04 +02:00
BreadFish64
b246678c8c
Fix spelling in assert macro 2018-08-15 12:12:19 -05:00
weihuoya
eefef73141 nomedia, add comment text 2018-08-15 19:41:55 +08:00
spycrab
6d56b03304
Merge pull request #7325 from spycrab/qt_tas_reset
Qt/TAS: Implement recentering feature
2018-08-15 13:07:58 +02:00
weihuoya
2fac523e10 hide game cover in android gallery 2018-08-15 16:37:00 +08:00
Lioncash
67b015d76b Arm64Emitter: Get rid of a pointer cast within SetJumpTarget()
Type punning like this is undefined behavior. Instead, we use std::memcpy to
copy the necessary data over, which is well defined (as it treats both
the source and destination as unsigned char).
2018-08-14 23:47:53 -04:00
spycrab
fb382e90eb
Merge pull request #7324 from spycrab/qt_independent_tas
Qt/TAS: Make TAS input windows independent
2018-08-15 01:51:26 +02:00
master0fdisaster
0d79e8a2ca Qt: Config/Advanced: Fix CPU Clock Speed Slider
Changes rounding from ceiling to nearest, when updating the slider value. Using ceiling as rounding made some values inaccessible.
2018-08-14 17:22:30 +02:00
master0fdisaster
1544d7d681 Qt: Config/Interface: Fix "Show Active title in Window Title" Checkbox
Makes the checkbox save when it's toggled.
2018-08-14 17:22:30 +02:00
master0fdisaster
bc3cc01cc9 Qt: Config/Interface: Fix User Style Drop Down
makes the user style drop down load the right custom style after a restart
2018-08-14 17:21:50 +02:00
Sleepy Flower Girl
158c0d54b1 Force IPv4 on external IP addresses 2018-08-13 21:17:38 -04:00
Pierre Bourdon
6c1f39458b Jit64: Update PC before checking for exceptions 2018-08-14 02:27:48 +02:00
spycrab
1c793503b1 Qt/TAS: Implement recentering feature 2018-08-13 23:34:25 +02:00
Billy Robert O'Neal III
6640d1ec81 Attempt to fix linter issues. 2018-08-13 12:17:56 -07:00
Billy Robert O'Neal III
a0af0bf588 Workaround use of private constant _Snan no longer being present in <limits>. 2018-08-13 12:05:50 -07:00
spycrab
55c608b482 Qt/TAS: Enable antialiasing for Stick/IR widgets 2018-08-13 15:05:30 +02:00
spycrab
9739ad9f48 Qt/TAS: Make TAS input windows independent 2018-08-13 14:15:09 +02:00