Commit Graph

34931 Commits

Author SHA1 Message Date
e6dfb08746 Merge pull request #9855 from JosJuice/wia-ice-2
DiscIO: Add workaround for MSVC ARM64 ICE
2021-06-30 06:37:01 +01:00
6042df71d9 Merge pull request #9853 from Bonta0/sinocancel
SI: Don't cancel transfer with TSTART=0
2021-06-29 22:00:13 -04:00
04a1c2e1b2 Merge pull request #9847 from JosJuice/dvd-pitfall
DVDInterface: Don't evict cache block i unless block i + 2 was read
2021-06-29 21:58:20 -04:00
6a46d35c73 Merge pull request #9839 from OatmealDome/bluetooth-scanning
WiimoteScannerDarwin: fix hang on quit and clean up
2021-06-29 21:07:47 -04:00
6320861c45 Merge pull request #9856 from JosJuice/jitarm64-msvc-warning
JitArm64: Fix MSVC warning '~': zero extending 'u32' to 'u64'
2021-06-29 12:39:54 +01:00
e581d970d6 JitArm64: Fix MSVC warning '~': zero extending 'u32' to 'u64'
While the third parameter of ANDI2R is u64, the upper half of
it does not get read if we're emitting a 32-bit instruction
(which we are doing here).
2021-06-29 10:44:41 +02:00
30f9f31a69 DiscIO: Add workaround for MSVC ARM64 ICE 2021-06-29 10:24:09 +02:00
3b3fb9d4c3 Merge pull request #9852 from Pokechu22/wii-change-disc
DVDInterface: Fix decrypting reads clearing the drive state
2021-06-29 04:09:28 +01:00
901a4fb5f4 Merge pull request #9811 from JosJuice/fprf-denormal-singles
Fix FPRF handling of denormal singles
2021-06-29 03:18:18 +01:00
856c82aa24 Merge pull request #9851 from JosJuice/jitarm64-mfcr
JitArm64: Handle SO and LT simultaneously in mfcr
2021-06-29 02:01:31 +01:00
e440b21640 DVDInterface: Fix decrypting reads clearing the drive state
This broke ejecting Wii discs while the game is running, as the drive state was set to Ready even when no disc was present, but other code still reported the missing disc, which confused games as you can't be both ready to read and have no disc.  That would cause games to show an unrecoverable error screen, instead of a "please insert the game disc" screen.

This only affected Wii games; the GameCube games used regular disc reads which worked fine.
2021-06-28 10:38:03 -07:00
1df1f20c44 JitArm64: Handle SO and LT simultaneously in mfcr 2021-06-28 19:22:46 +02:00
bb2d576ecc Merge pull request #9849 from Tilka/x87
x64Emitter: remove unused x87 instructions
2021-06-28 17:53:54 +01:00
aaea38be46 SI: Don't cancel transfers 2021-06-28 17:59:30 +02:00
2ef2eee2e0 Merge pull request #9464 from Sintendo/jit64addxreloaded
Jit64: addx revisited
2021-06-28 13:53:44 +02:00
156f625106 Merge pull request #9850 from Tilka/so_lt
PowerPC: move SO bit to a more convenient location
2021-06-28 11:14:13 +01:00
4648e1a035 DVDInterface: Fix small backwards seek after non-cached seek
If we seek to a block that isn't in the cache, the block prior
to it doesn't end up getting read into the buffer.
2021-06-28 11:02:05 +02:00
c6ede09035 DVDInterface: Don't evict cache block i unless block i + 2 was read
Intends to fix https://bugs.dolphin-emu.org/issues/12279.
I have hardware tested the behavior, but I haven't tested the game.
2021-06-28 09:48:04 +02:00
a68c1bf648 PowerPC: add enum values for emulator SO and LT shifts 2021-06-28 03:30:07 +01:00
25a701aa1b PowerPC: move SO bit to a more convenient location
Spacing the LT and SO bits like in the native PowerPC format makes it easier to
convert to that format (see mfcr).
2021-06-28 03:06:45 +01:00
afb9398059 x64Emitter: remove unused x87 instructions 2021-06-28 02:56:37 +01:00
ccd8233ea3 Jit64: Fix FPRF handling of denormal singles 2021-06-27 20:37:18 +02:00
8d2c069c34 Interpreter: Return float from ForceSingle
Performance optimization, along with making the code a little
neater. Saves us from performing a single -> double -> single
conversion when calling UpdateFPRFSingle.
2021-06-27 20:34:49 +02:00
d56721ebb9 Interpreter: Fix FPRF handling of denormal singles 2021-06-27 20:34:49 +02:00
def5666419 JitArm64: Fix FPRF handling of denormal singles
The interpreter was wrong after all. Hardware verified.
2021-06-27 20:34:49 +02:00
aff39af5fb Merge pull request #9810 from JosJuice/fprf-cmp-mask
Jits: Fix fcmpX FPRF mask
2021-06-27 19:32:19 +01:00
4166567f92 Merge pull request #9812 from JosJuice/fprf-x64-neg-zero
Jit64: Fix FPRF non-SSE4.1 handling of negative zero
2021-06-27 19:21:51 +01:00
52fb2fad40 Merge pull request #9845 from Sintendo/jit64mtfsfx
Jit64: mtfsfx - Optimized masking
2021-06-26 13:20:10 -04:00
7de4623d48 Jit64: mtfsfx - Optimized masking
The masking logic can be eliminated when the mask is known to be all
ones. This case is very common.

Before:
66 48 0F 7E F0       movq        rax,xmm6
8B 55 5C             mov         edx,dword ptr [rbp+5Ch]
83 E0 FF             and         eax,0FFFFFFFFh
83 E2 00             and         edx,0
0B C2                or          eax,edx
89 45 5C             mov         dword ptr [rbp+5Ch],eax
48 8D 15 C3 3C FE 01 lea         rdx,[19520020h]
83 E0 07             and         eax,7
0F AE 14 82          ldmxcsr     dword ptr [rdx+rax*4]

After:
66 48 0F 7E F0       movq        rax,xmm6
89 45 5C             mov         dword ptr [rbp+5Ch],eax
48 8D 15 2A D1 FD 01 lea         rdx,[19440000h]
83 E0 07             and         eax,7
0F AE 14 82          ldmxcsr     dword ptr [rdx+rax*4]
2021-06-26 17:31:31 +02:00
156ffef98c WiimoteScannerDarwin: Fix lint 2021-06-24 17:59:58 -04:00
b494d109d4 WiimoteScannerBackend: Allow StopThreads to request that any Wiimote searching stops
Used by WiimoteScannerDarwin to know when to exit its runloop.
2021-06-23 23:09:01 -04:00
0de30fa0bb WiimoteScannerDarwin: Initialize IOBluetoothHostController in constructor 2021-06-23 22:55:15 -04:00
c77a5f7e32 Merge pull request #9825 from JosJuice/jitarm64-mcrfs
JitArm64: Implement mcrfs
2021-06-24 03:05:15 +02:00
0087eed235 Merge pull request #9793 from sepalani/template-mmio
MMIOHandlers: Move method definitions to MMIO.cpp
2021-06-24 02:42:52 +02:00
ede9f2a76a Merge pull request #9838 from JMC47/batensetting
GameINI:  Enable Single Core for Baten Kaitos: Eternal Wings and the Lost Ocean
2021-06-24 02:23:26 +02:00
965a8bd64c Merge pull request #9814 from thyrc/musl
Fix includes for musl libc
2021-06-24 02:10:32 +02:00
7a1922fd8f Fix includes for musl libc 2021-06-24 02:01:07 +02:00
03b48801f6 Fix Baten Kaitos Shop Crashes
Baten Kaitos will crash with certain items in your inventory if you
scroll over them in the shop screen.  SyncGPU does not fix the issue,
but single core does.
2021-06-23 19:57:04 -04:00
4979974a57 Merge pull request #9828 from JosJuice/android-pressed-opacity
Android: Apply opacity setting to pressed buttons too
2021-06-24 01:36:02 +02:00
9476733a80 Merge pull request #9829 from sepalani/ai-samples
AudioInterface: Fix sample counter
2021-06-24 01:35:29 +02:00
cf26846225 Merge pull request #9830 from skylersaleh/m1-unit-tests
Apple M1: Add support for running unit tests on universal builds
2021-06-24 01:15:02 +02:00
a632a6a404 Merge pull request #9833 from Pokechu22/ubershaders-tevcoord
UberShaderPixel: always set tevcoord, even if the stage has no texture
2021-06-24 01:05:17 +02:00
b66e88e4b9 Merge pull request #9837 from AdmiralCurtiss/mysterious-voodoo-performance-fix
VideoCommon/Fifo: Move SConfig::GetInstance() outside the GPU loop.
2021-06-24 00:41:43 +02:00
46120a6108 Merge pull request #9742 from Pokechu22/sw-resolution
Software: Fix bad backbuffer size
2021-06-23 18:36:04 -04:00
63c028c5df Merge pull request #9832 from Pokechu22/software-color-asserts
Software: Remove texinfo.sourcerow == SourceRow::Colors assert
2021-06-23 18:34:19 -04:00
95ecb73b11 Merge pull request #9826 from Techjar/fix-tmem-mips
VideoCommon/TextureInfo: Fix mipmap loading from tmem
2021-06-23 18:21:55 -04:00
1183fb3d2d VideoCommon/Fifo: Move SConfig::GetInstance() outside the GPU loop. 2021-06-23 23:52:26 +02:00
eb7b70b48d WiimoteScannerDarwin: Don't attempt to scan if inquiry doesn't start 2021-06-23 14:31:16 -04:00
6794532abe IOdarwin_private: Remove hack for bug fixed in newer macOS SDKs 2021-06-23 04:03:28 -04:00
74755e5939 WiimoteScannerDarwin: Rename stopScanning for code style compliance 2021-06-23 04:01:42 -04:00