Sintendo
305cd31bd9
Jit64: Fix FinalizeCarryOverflow XER[OV/SO]
...
FinalizeCarryOverflow didn't maintain XER[OV/SO] properly due to an
oversight. Here's the code it would generate:
0: 9c pushf
1: 80 65 3b fe and BYTE PTR [rbp+0x3b],0xfe
5: 71 04 jno b <jno>
7: c6 45 3b 03 mov BYTE PTR [rbp+0x3b],0x3
000000000000000b <jno>:
b: 9d popf
At first glance it seems reasonable. The host flags are carefully
preserved with PUSHF. The AND instruction clears XER[OV]. Next, an
conditional branch checks the host's overflow flag and, if needed, skips
over a MOV that sets XER[OV/SO]. Finally, host flags are restored with
POPF.
However, the AND instruction also clears the host's overflow flag. As a
result, the branch that follows it is always taken and the MOV is always
skipped. The end result is that XER[OV] is always cleared while XER[SO]
is left unchanged.
Putting POPF immediately after the AND would fix this, but we already
have GenerateOverflow doing it correctly (and without the PUSHF/POPF
shenanigans too). So let's just use that instead.
2021-01-09 22:52:18 +01:00
Léo Lam
0776263c5e
Merge pull request #9428 from JosJuice/tv-folder-picker
...
Android: Use old folder picker on Android TV
2021-01-09 11:54:02 +01:00
JosJuice
116a5a79da
Android: Use old folder picker on Android TV
...
See the comment I added to the code. This is a rather serious
issue for Android TV users from what I've heard.
2021-01-08 16:27:33 +01:00
Léo Lam
4cdcbb6ab2
Merge pull request #9308 from smurf3tte/re23_patch
...
Patches for Resident Evil 2/3 audio issues
2021-01-06 01:52:15 +01:00
Léo Lam
0b1db65aa1
Merge pull request #9405 from Filoppi/patch-7
...
Rename "Use Fullscreen" setting to "Start in Fullscreen"
2021-01-06 01:44:46 +01:00
Pierre Bourdon
27013e8d18
Merge pull request #9300 from leoetlino/ncd-wd-fixes
...
IOS: WD and NCD fixes
2021-01-06 00:51:33 +01:00
Léo Lam
eafb9de047
Merge pull request #9323 from waddlesplash/haiku
...
Rehabilitate Haiku support.
2021-01-05 16:09:43 +01:00
Léo Lam
840ecfb32f
Merge pull request #9409 from AdmiralCurtiss/wii-save-import-tmd
...
Make WiiSave::Import() behave closer to the Wii System Menu's SD Card save copying.
2021-01-05 15:36:36 +01:00
Léo Lam
e48377dfc6
Merge pull request #9404 from Filoppi/patch-5
...
Fix typos and code coding conventions
2021-01-05 15:33:43 +01:00
Filippo Tarpini
a5a6ef8512
Fix a couple of typos
...
[committer note: fixed commit message style]
2021-01-05 15:24:21 +01:00
Filippo Tarpini
0805b58302
DolphinQt: Remove some useless includes
...
[committer note: fixed commit message style]
2021-01-05 15:24:13 +01:00
Filippo Tarpini
3acd1726b9
Core: Fix variable naming conventions
...
[committer note: squashed two commits]
2021-01-05 15:23:40 +01:00
Léo Lam
ee25f03ff9
Merge pull request #9418 from Filoppi/patch-10
...
Fix DualShockUDP not adding/removing devices correctly
2021-01-05 15:15:53 +01:00
Léo Lam
9069ad6cce
Merge pull request #9420 from MerryMage/ext
...
Externals: Link against required libraries
2021-01-05 15:15:15 +01:00
Pierre Bourdon
bd89523e63
Merge pull request #9392 from smurf3tte/audio_wmask
...
DSP: Fix write masks on AUDIO_*/AR_* MMIO registers
2021-01-05 15:08:06 +01:00
Filippo Tarpini
1e4a1bee43
Fix DualShockUDP not adding/removing devices correctly
...
-If adding 2 devices with the same name, they their unique id wouldn't be increased, causing a conflict.
-Removing a device wouldn't actually remove it from the internal devices list because the list of devices had already been updated when going through it.
-It was possible to remove devices belonging to other sources by adding a device with the same name and then removing it.
2021-01-03 21:06:06 +02:00
JosJuice
e957ed0809
Merge pull request #9422 from MerryMage/__builtin_clz
...
BitUtils: __builtin_clz is undefined when value == 0
2021-01-03 18:53:25 +01:00
MerryMage
6106d6481f
BitUtils: __builtin_clz is undefined when value == 0
2021-01-03 17:35:15 +00:00
LC
4b9259d691
Merge pull request #9415 from Filoppi/patch-8
...
Fix cursor going to +infinite if the window size was 0
2021-01-03 11:26:11 -05:00
LC
f477a10e65
Merge pull request #9421 from MerryMage/JitBlockData
...
JitArm64: Do not use offsetof on non-standard-layout types
2021-01-03 11:25:04 -05:00
MerryMage
8ae0bf93e7
JitArm64: Do not use offsetof on non-standard-layout types
...
Applying PR #8687 to Arm64 JIT.
2021-01-03 15:26:01 +00:00
MerryMage
14c03388b3
Externals: Link against required libraries
...
* curl requires zlib
* hidapi when not using libudev requires libusb
2021-01-03 14:26:38 +00:00
waddlesplash
2df11d3911
Rehabilitate Haiku support.
2021-01-02 16:54:24 -05:00
Filippo Tarpini
8813ba69f5
Fix Quartz cursor going to +infinite if the window size was 0
2021-01-02 19:55:19 +02:00
Admiral H. Curtiss
2932b5f8cd
Qt: Give better error messages when Wii save importing fails.
2021-01-02 17:46:12 +01:00
Admiral H. Curtiss
d9c686db30
WiiSave: Delete existing save, if any, before importing one.
2021-01-02 17:46:12 +01:00
Admiral H. Curtiss
700d53e00f
WiiSave: In Import(), make sure the TMD exists or can be reinstalled before allowing save to be imported.
2021-01-02 17:46:11 +01:00
Admiral H. Curtiss
46e4c17db3
WiiUtils: Add utility functions to handle prep-work for importing 'SD-card export' style Wii saves.
2021-01-02 17:46:11 +01:00
Filippo Tarpini
5a5c815ff0
Fix DInput cursor going to +infinite if the window size was 0
2021-01-02 18:33:13 +02:00
Filippo Tarpini
75f35393c3
Fix XInput2 cursor going to +infinite if the window size was 0
2021-01-02 18:30:14 +02:00
JosJuice
f06e9c55c8
Merge pull request #9411 from lioncash/enum3
...
Arm64Emitter: Remove unused OpType enum
2021-01-01 19:11:06 +01:00
Lioncash
36af39853d
Arm64Emitter: Remove unused OpType enum
...
This isn't used anywhere, so we can remove it.
2021-01-01 11:06:05 -05:00
Léo Lam
fcdcdd7beb
Merge pull request #9410 from lioncash/enum2
...
Arm64Emitter: Convert ArithOption enums into enum classes
2021-01-01 13:25:35 +01:00
Lioncash
95cc53edec
Arm64Emitter: Convert ArithOption enums into enum classes
...
Makes the enums strongly typed. While we're at it, we can also make
these enums private.
2021-01-01 07:10:41 -05:00
Léo Lam
452aad29f1
Merge pull request #9401 from lioncash/jittable
...
JitArm64_Tables: Construct tables at compile-time
2021-01-01 01:22:49 +01:00
Léo Lam
344a74aa11
Merge pull request #9396 from lioncash/arm
...
JitArm64_RegCache: Interface cleanup
2021-01-01 01:03:55 +01:00
Léo Lam
f59ee87031
Merge pull request #9402 from lioncash/emitter
...
Arm64Emitter: Interface cleanup
2021-01-01 00:52:40 +01:00
JosJuice
871d1d5953
Translation resources sync with Transifex
2020-12-31 20:16:11 +01:00
Admiral H. Curtiss
7abe1085e3
IOS/ES: Pass relevant caller title information to ImportTmd() and ExportTitleInit().
2020-12-31 17:13:46 +01:00
Filippo Tarpini
57c59c18d4
Rename "Use Fullscreen" setting to "Start in Fullscreen"
...
The name was confusing as changing it at runtime would not change the window to fullscreen, as it effectively only affects the start of the emulation.
Also blocked the ability to change it when the emulation is running, to be more inline with other similar settings, like "Render to main Window".
2020-12-31 13:39:45 +02:00
JosJuice
7bf590ee5a
Merge pull request #9403 from lioncash/guard
...
ArmCommon: Add missing header guard
2020-12-31 12:17:28 +01:00
Lioncash
e45aa019ec
ArmCommon: Mark NO_COND as constexpr
...
Allows it to be used in compile-time expressions if ever necessary.
2020-12-30 20:54:05 -05:00
Lioncash
c9711a5eca
ArmCommon: Add missing header guard
...
Prevents any multiple inclusion errors from occurring.
2020-12-30 20:53:31 -05:00
Lioncash
cca0dffebd
Arm64Emitter: Add shorthand member functions for hint instructions
...
Allows for more concise code.
2020-12-30 20:49:20 -05:00
Lioncash
6046a15267
Arm64Emitter: Make ShiftAmount enum an enum class
...
Reduces namespace pollution and makes the enum strongly typed.
2020-12-30 20:49:20 -05:00
Lioncash
fab2053439
Arm64Emitter: Make RoundingMode enum an enum class
...
Prevents namespace pollution and makes the enum members strongly typed.
2020-12-30 20:49:20 -05:00
Lioncash
d87ec71615
Arm64Emitter: Make PStateField enum an enum class
...
Prevents namespace pollution and makes the enum members strongly typed.
2020-12-30 20:49:20 -05:00
Lioncash
5c3f2fde22
Arm64Emitter: Make BarrierType enum an enum class
...
Prevents namespace pollution and enforces strong typing.
2020-12-30 20:49:20 -05:00
Lioncash
f21c740919
Arm64Emitter: Make SystemHint enum an enum class
...
Avoids polluting the namespace and makes the members strongly typed.
2020-12-30 20:49:20 -05:00
Lioncash
5011c155ec
Arm64Emitter: Make type member of FixupBranch an enum class
...
Eliminates some magic numbers and makes the type member strongly typed.
2020-12-30 20:49:20 -05:00