Commit Graph

32284 Commits

Author SHA1 Message Date
Sintendo 1c25e6352a Jit64: addx - Emit nothing when possible
When the destination register matches a source register, the other
source register contains zero, and overflow isn't needed, the
instruction becomes a nop and we don't need to emit anything.

We could add specialized handling for the case where overflow is needed,
but none of the titles I tried would hit this path.

Before:
83 C7 00             add         edi,0

After:
2020-04-21 22:35:17 +02:00
Sintendo f1c3ab359d Jit64: addx - Deduplicate branches part 2
No functional change, just simplify some repeated logic in the case
where we're dealing with exactly one immediate and one simple register
when overflow isn't needed.
2020-04-21 22:06:46 +02:00
Sintendo 72fbdf1a6b Jit64: addx - Deduplicate branches part 1
No functional change, just simplify some repeated logic for the cases
where the destination register matches one of the sources.
2020-04-21 22:06:39 +02:00
Mat M c33565295d
Merge pull request #8713 from sepalani/dbg-printf
HLE: Add more debug functions
2020-04-21 12:58:34 -04:00
JMC47 d845b31579
Merge pull request #8717 from stenzek/mismatched-xf-bp
VertexManagerBase: Skip drawing objects with mismatched xf/bp stages
2020-04-21 10:07:36 -04:00
JMC47 2d8758daaa
Merge pull request #8750 from leoetlino/close-before-rename
IOS/FS: Fix FST write failure on some platforms
2020-04-18 06:50:59 -04:00
Léo Lam b2cf106ae9 IOS/FS: Fix FST write failure on some platforms
On some platforms (like Windows), the temporary file must be closed
before it can be renamed.

I guess nobody noticed this for so long because (1) the FS code has a
failsafe for missing FST entries (because existing users do not have
a FST), and most games do not care about file metadata;
(2) the write failures can only be seen in the logs.

Because we don't want this to break, I have turned the ERROR_LOGs into
PanicAlerts.
2020-04-18 12:42:12 +02:00
JosJuice 21e3e14d8a Translation resources sync with Transifex 2020-04-17 11:44:24 +02:00
JosJuice cf67b2093e
Merge pull request #8735 from Ebola16/INIT
Android: Reload Wii Remote settings upon saving them
2020-04-17 11:31:18 +02:00
JMC47 9de3717c50
Merge pull request #8340 from stenzek/max-res
DolphinQt: Don't overwrite >8x IR scale in ini, add maximum internal res option
2020-04-16 21:01:14 -04:00
JMC47 ba4438f08d
Merge pull request #8746 from Ebola16/ASD
Android: Set Insert SD Card default setting to true
2020-04-16 19:38:35 -04:00
Ryan Meredith 096e63d3f9 Android: Set Insert SD Card default setting to true 2020-04-16 19:11:19 -04:00
JMC47 935b12d785
Merge pull request #8730 from JosJuice/frame-advance-duplicate-frame
Core: Skip duplicate frames when using frame advance
2020-04-16 18:29:16 -04:00
JMC47 85a8325701
Merge pull request #8733 from JosJuice/di-baten-kaitos
Adjust s_DIMAR/s_DILENGTH behavior (fixes Baten Kaitos music)
2020-04-16 18:28:09 -04:00
JMC47 19fc43f190
Merge pull request #8708 from Ebola16/Wii
Android: Add Insert SD Card and update the description
2020-04-16 18:27:51 -04:00
JMC47 55ed980620
Merge pull request #8711 from Ebola16/SDDE
Set Insert SD Card default value to true
2020-04-16 18:25:47 -04:00
JosJuice 3629e75dd2
Merge pull request #8716 from Pokechu22/properties-leak
Delete properties dialog on close
2020-04-16 13:53:37 +02:00
JMC47 744abab478
Merge pull request #8741 from cristian64/add_checkbox_to_filter_ingame_netplay_sessions
DolphinQt: Added checkbox to filter out NetPlay sessions that are already in-game.
2020-04-13 08:52:23 -04:00
JMC47 c0ae9cbc45
Merge pull request #8584 from jordan-woyak/widescreen-heuristic-fix
VideoCommon: Tweak widescreen heuristic.
2020-04-13 05:57:19 -04:00
JMC47 39f107f360
Merge pull request #8742 from Techjar/netplay-usbhost-hang
IOS/USBHost: Skip starting threads when determinism is enabled
2020-04-12 23:53:47 -04:00
Techjar bb99062f18 IOS/USBHost: Skip starting threads when determinism is enabled
The threads can't actually be started when determinism is enabled, as
the behavior would not be deterministic, but Open() still tries to
start the threads and wait, resulting in a deadlock when booting
certain games and homebrew in NetPlay.
2020-04-12 23:44:53 -04:00
Christian Aguilera dab4f8b36e DolphinQt: Added checkbox to filter out NetPlay sessions that are already in-game. 2020-04-13 00:42:03 +02:00
Mat M 013e0528d5
Merge pull request #8736 from Pokechu22/dsp-lle-no-thread-hang
Fix bug 11920
2020-04-10 18:10:49 -04:00
Pokechu22 d3dc81ba74 Fix bug 11920
DSP LLE Interpreter does not have a DSP thread, so trying to wait would hang. (DSP LLE recompiler also has no thread when in determinism mode).
2020-04-10 12:15:06 -07:00
Ryan Meredith 0b66310957 Android: Reload Wii Remote settings upon saving them 2020-04-10 10:23:32 -04:00
Mat M d8d620ef0e
Merge pull request #8734 from JosJuice/movie-update-comment
Remove outdated comment from Movie::FrameUpdate
2020-04-09 19:52:19 -04:00
JosJuice b2c9149cf8 Remove outdated comment from Movie::FrameUpdate
9c5c3c0 made this function be called on the CPU thread.
2020-04-10 00:18:53 +02:00
JosJuice 94f83db2b5 Adjust s_DIMAR/s_DILENGTH behavior (fixes Baten Kaitos music)
https://bugs.dolphin-emu.org/issues/11997

The problem seemed to be that s_DILENGTH would get set to 0
at times when it shouldn't. Simply not changing it in case
of NoReply or DTK seems to fix the problem. However, we can
actually go one step further in accuracy and use data.size()
to change s_DIMAR and s_DILENGTH as partial reads (NoReply
commands) complete, instead of jumping directly to 0 when
the whole read completes.
2020-04-09 22:13:45 +02:00
JosJuice 812ad4257c Core: Skip duplicate frames when using frame advance
It used to be the case that frame advance skipped duplicate frames
(i.e. it would take 30 frame advances to get through one second
of emulated time in a 30 fps game), but this broke in 9c5c3c0.
Skipping duplicate frames making TASing less annoying.
2020-04-09 11:39:29 +02:00
JosJuice 1a42355f96 Core: Clarify Callback_VideoCopiedToXFB and FrameUpdate 2020-04-09 00:21:04 +02:00
Mat M 9a2d8a9623
Merge pull request #8715 from JosJuice/panic-alert-deadlock
DolphinQt: Fix the panic alert deadlock (a.k.a. "Question" issue)
2020-04-08 17:20:32 -04:00
Connor McLaughlin 960ba4fe5e
Merge pull request #8728 from stenzek/update-mvk
Vulkan: Switch from vkCreateMacOSSurfaceMVK() to vkCreateMetalSurfaceEXT() and Update MoltenVK
2020-04-08 00:30:40 +10:00
Stenzek a2f4fafe86 Vulkan: Switch from vkCreateMacOSSurfaceMVK() to vkCreateMetalSurfaceEXT()
Since we are calling this off the UI thread, we can't use anything which
accesses the underlying NSView object. We create and set the Metal layer
on the UI thread before the video backend is initialized. This extension
is both compatible with MoltenVK and gfx-portability for accepting a
layer at surface creation.
2020-04-07 18:56:55 +10:00
Stenzek 52d4756679 Externals: Update MoltenVK to SDK version 1.2.131.2 2020-04-07 18:53:26 +10:00
Pokechu22 e11a2bda56 Delete properties dialog on close
Fixes the game file being locked until Dolphin closes.
2020-04-02 16:14:37 -07:00
JosJuice 4ff855921e
Merge pull request #8720 from webgeek1234/master
Android: Fix ATV on API 28+
2020-04-02 09:46:59 +02:00
Stenzek ff7180cac4 Analytics: Add quirk for mismatched xf/bp texgens/colors 2020-04-02 12:52:16 +10:00
Stenzek a9c1dcf656 VertexManagerBase: Skip drawing objects with mismatched xf/bp stages
Hardware tests have shown that if the number of texgens/channels do not
match, you get garbage rendering. Presumably because the output
registers from the XF stage are fed into the incorrect input registers
for TEV/BP.

Currently, this causes Dolphin to crash/generate invalid shaders with an
assertion failure in the hardware backends. Instead, we log an error.

Perhaps in the future we should just spit out all texgens/colors anyway
from both stages, and let cross-stage optimization take care of DCE'ing
it away. But doing so would require changing the UIDs and invalidating
everyone's shader caches.
2020-04-02 12:51:41 +10:00
Paul Keith 85ac06a57d Android: Force an AppCompat theme in the analytics AlertDialog
This fixes a crash on ATV devices, because the the AlertDialog is
from the appcompat class, but the theme derived from the parent
view on ATV devices isn't from AppCompat.
2020-04-01 18:46:57 -05:00
JosJuice ee98042b81 Translation resources sync with Transifex 2020-03-31 23:14:12 +02:00
JosJuice ef778723a2 DolphinQt: Fix the panic alert deadlock (a.k.a. "Question" issue) 2020-03-31 21:00:32 +02:00
Ryan Meredith a3ff20a5f9 Android: Add Insert SD Card and update description 2020-03-31 14:58:00 -04:00
Sepalani 85cd59c585 HLE: Add more debug functions 2020-03-30 17:46:50 +04:00
Ryan Meredith fdc9ea6ca0 Set Insert SD Card default value to true 2020-03-30 06:15:17 -04:00
JosJuice 1b97f081b8
Merge pull request #7920 from Ebola16/DISO
Android: Add Paths to UI
2020-03-29 15:13:27 +02:00
JosJuice 5988d20917
Merge pull request #8698 from howard0su/warning_capture
Cleanup warnings of -Wunused-lambda-capture
2020-03-26 10:37:33 +01:00
JosJuice 4b91185056 Translation resources sync with Transifex 2020-03-24 23:36:58 +01:00
Ryan Meredith d15d6e70d7 Android: Don't let onSettingChanged clobber ConfirmRunnable changes 2020-03-24 17:08:35 -04:00
Connor McLaughlin 651595c521
Merge pull request #8701 from howard0su/static_wiimote
Wiimote: Cleanup warnings of -Wmissing-variable-declarations
2020-03-24 23:14:46 +10:00
Jun Su da223a2271 Cleanup warnings of -Wunused-lambda-capture
Remove unused lambda captures.
2020-03-24 20:14:10 +08:00