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
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
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
2ef2eee2e0
Merge pull request #9464 from Sintendo/jit64addxreloaded
...
Jit64: addx revisited
2021-06-28 13:53:44 +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
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
7a1922fd8f
Fix includes for musl libc
2021-06-24 02:01:07 +02:00
9476733a80
Merge pull request #9829 from sepalani/ai-samples
...
AudioInterface: Fix sample counter
2021-06-24 01:35:29 +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
2f1726e3f3
UberShaderPixel: always set tevcoord, even if the stage has no texture
...
This fixes NES game graphics when UberShaders are in use.
2021-06-21 13:01:25 -07:00
51862135d6
Software: Remove texinfo.sourcerow == SourceRow::Colors assert
...
These asserts were removed for the hardware renderer in #3684 .
2021-06-20 18:05:57 -07:00
2d59dcb95d
VideoCommon/TextureInfo: Fix mipmap loading from tmem
...
Even address needs to be offset to the first mipmap entry.
2021-06-20 16:49:39 -04:00
df53a5f880
VideoCommon: enhance hi res texture support by having exact matches be picked before wildcard matches. Additionally, add the ability to ignore the texture hash portion of the texture name when loading a hi res texture
2021-06-19 21:15:38 -05:00
8fb0f91331
VideoCommon: split the texture hash from the base name when generating the texture name
2021-06-19 21:15:38 -05:00
0a7627d74e
AudioInterface: Fix sample counter
2021-06-19 14:19:22 +04:00
b11b5955ae
Jit64: Optimize mcrfs when mask == 0
2021-06-18 18:26:49 +02:00
79a610b4b4
JitArm64: Implement mcrfs
2021-06-18 18:22:20 +02:00
93d2fd19e8
JitArm64: Use SBC/SBCS for emulating subfzex
...
I missed this one in fac8420
.
2021-06-17 17:30:08 +02:00
503c62ec00
Merge pull request #9819 from JosJuice/jitarm64-sbc
...
JitArm64: Use SBC/SBCS for emulating subfex
2021-06-17 16:15:57 +02:00
fac842021c
JitArm64: Use SBC/SBCS for emulating subfex
...
SBC/SBCS does the same thing as subfex, except with the source
operands in the opposite order.
2021-06-17 15:30:17 +02:00
18aaf488b0
Jit64: subfic - Optimize constants for d != a
...
These optimizations were already present, but only when d == a. They
also make sense when this condition does not hold.
- imm == 0
Before:
41 BB 00 00 00 00 mov r11d,0
45 2B DF sub r11d,r15d
After:
45 8B DF mov r11d,r15d
41 F7 DB neg r11d
- imm == -1
Before:
41 BD FF FF FF FF mov r13d,0FFFFFFFFh
44 2B EE sub r13d,esi
0F 93 45 68 setae byte ptr [rbp+68h]
After:
44 8B EE mov r13d,esi
41 F7 D5 not r13d
C6 45 68 01 mov byte ptr [rbp+68h],1
2021-06-16 20:33:02 +02:00
4c37cc7e5e
Merge pull request #9816 from JosJuice/aarch64-fma-true
...
Common: Set bFMA to true for AArch64
2021-06-15 13:04:21 +02:00
ee58f1c188
Merge pull request #9775 from dbrookman/fix-gameini-gfxbackend
...
GameINI: Fix GFXBackend crash
2021-06-15 12:47:55 +02:00
2b88a46b1a
Common: Set bFMA to true for AArch64
...
Without this, the code added in ac28b89
misbehaves and considers
AArch64 netplay clients to not have hardware FMA support, telling
all clients to disable FMA support, which causes a desync between
x64 and AArch64 due to JitArm64 not being able to disable FMA support.
2021-06-14 15:51:59 +02:00