Commit Graph

30135 Commits

Author SHA1 Message Date
Tillmann Karras a5dfd65eb4 DSPSpy: fix $prod printing 2021-07-25 15:15:15 +01:00
Tilka 55a465c6e6
Merge pull request #9949 from JosJuice/wia-ice-3
DiscIO: Fix broken workaround for MSVC ARM64 ICE
2021-07-25 05:14:10 +01:00
Tilka c42b1c1b9f
Merge pull request #9921 from Pokechu22/non-power-of-2-wrap
Software: Handle texture wrapping more accurately
2021-07-25 05:08:11 +01:00
JosJuice 5fe23ccc3e DiscIO: Fix broken workaround for MSVC ARM64 ICE
The workaround added in 30f9f31 caused a regression where Dolphin
incorrectly replaced runs of one byte with runs of another byte
when writing WIA and RVZ files. ReuseID::operator< was always
returning false unless the ReuseIDs being compared had different
partition keys, which caused std::map<ReuseID, GroupEntry>
to treat all ReuseIDs with the same partition key as equal.
2021-07-24 13:29:03 +02:00
JosJuice f70df930a6 Android: Adjust DSP selection names
The Android strings were not updated in 59e6048 along with the
DolphinQt strings.
2021-07-23 08:57:39 +02:00
Mai M f380c23fda
Merge pull request #9890 from JosJuice/jitarm64-mtfsb0x
JitArm64: Implement mtfsb0x
2021-07-22 21:41:01 -04:00
Mai M 971f110b99
Merge pull request #9937 from Techjar/netplay-split-save-sd-write
NetPlay: Split save and SD card write settings
2021-07-22 21:40:31 -04:00
Mai M 4f87821f21
Merge pull request #9938 from Pokechu22/e-reader-context-menu-item
GBA: Add "Scan e-Reader Card(s)" context menu item
2021-07-22 21:39:10 -04:00
Mai M 885a4646f8
Merge pull request #9941 from JMC47/dsprecommendations
AudioPane: Adjust DSP selection names
2021-07-22 21:37:49 -04:00
JMC47 59e6048200 AudioPane: Adjust DSP selection names 2021-07-22 20:59:35 -04:00
Pokechu22 bcf2c6b9b9 MemoryViewWidget: Remove unnecessary column
This column would end up containing junk data after changing the data type.
2021-07-22 17:39:35 -07:00
Markus Wick 5af5656383
Merge pull request #9932 from JosJuice/jitarm64-dcbz-backpatch
JitArm64: Fix dcbz backpatch
2021-07-23 01:58:59 +02:00
Markus Wick 8ad7508620
Merge pull request #9767 from JosJuice/jitarm64-fpr-callee-saved
JitArm64: Improve Arm64FPRCache::GetCallerSavedUsed
2021-07-23 01:53:44 +02:00
Pokechu22 50109d70b6 GBA: Add "Scan e-Reader Card(s)" context menu item 2021-07-22 12:18:07 -07:00
JosJuice db5a78781f
Merge pull request #9929 from Tilka/ax
DSPHLE: re-enable low-pass filter
2021-07-22 19:05:29 +02:00
JosJuice 484279f013
Merge pull request #9933 from Dentomologist/remove_stringutil_buildcompletefilename
StringUtil: Remove unused function BuildCompleteFilename
2021-07-22 19:05:07 +02:00
JosJuice fdcea8566d JitArm64: Improve Arm64FPRCache::GetCallerSavedUsed
If we're only using the lower 64 bits of a callee-saved
register, GetCallerSavedUsed can return false for it.
2021-07-22 10:42:44 +02:00
Techjar 3ce5caf887 NetPlay: Split save and SD card write settings
This actually eliminates any setting pertaining to SD cards from the
NetPlay dialog, as it would effectively just be a duplicate of the
setting in the Wii pane, potentially causing confusion.

This also enables save data writing by default, as this is probably
what most players want, and should avoid them losing hours of progress
because they forgot to tick a checkbox.
2021-07-22 01:16:20 -04:00
Dentomologist f5e5e8553c StringUtil: Remove unused function BuildCompleteFilename 2021-07-21 12:39:00 -07:00
JosJuice 1df3456267 JitArm64: Remove a comment in dcbz implementation
This implementation is pretty efficient in my opinion. And "As
long as we aren't falling back to interpreter we're winning a lot"
applies to basically every instruction to some degree anyway.
2021-07-21 19:24:41 +02:00
JosJuice d91d6fcdc5 JitArm64: Fix dcbz backpatch
The dcbz instruction needs to lock W30 so that the slowmem code will
push and pop it when calling into C++. Also, the slowmem code expects
that the address is present in W0, so replace the use of W0 as a scratch
register in the fastmem code with the now locked W30.
2021-07-21 19:19:52 +02:00
JosJuice 302b47f5e6 JitArm64: Add temp reg parameter to Arm64RegCache::Flush
We currently have a bug when calling Arm64GPRCache::Flush with
FlushMode::MaintainState, zero free host registers, and at least
one guest register containing an immediate. We end up grabbing
a temporary register from the register cache in order to be
able to write the immediate to memory, but grabbing a temporary
register when there are zero free registers causes the least
recently used register to be flushed in a way which does not
maintain the state of the register cache.

To get around this, require callers to pass in a temporary
register in the GPR MaintainState case. In other cases,
passing in a temporary register is not required but can help
avoid spilling a register (if the caller already had a
temporary register at hand anyway, which in particular will
be the case in my upcoming memcheck pull request).
2021-07-21 16:28:19 +02:00
CrystalGamma c991904e04 PowerPC: Add reservation monitor to save state 2021-07-21 12:14:07 +02:00
CrystalGamma d763d693e8 PowerPC: Move lwarx/stwcxd. reservation into PowerPCState 2021-07-21 12:12:19 +02:00
Léo Lam 9a91b867ab
Merge pull request #9912 from Pokechu22/memory-viewer-physical-mem2
Fix MEM2 in the memory viewer in physical mode
2021-07-21 11:37:15 +02:00
JosJuice a3c8fb06c5 NetPlayClient: Remove a designated initializer
release-ubu-x64 currently fails with "sorry, unimplemented: non-trivial
designated initializers not supported". pr-ubu-x64 doesn't for some
reason, but we might as well remove the designated initializer.
2021-07-21 09:36:52 +02:00
JosJuice b2d87c49b6 JitArm64: Implement mtfsb0x
Part 3 of implementing the FPSCR system register instructions.
2021-07-21 09:22:13 +02:00
JMC47 a1e806ed76
Merge pull request #9600 from Bonta0/mgba-pr
Full GBA Controllers Integration with mGBA
2021-07-21 02:36:43 -04:00
Tillmann Karras 4a5c723114 DSPHLE: re-enable low-pass filter
Maybe this got fixed? Sonic Colors probably needs it for underwater audio.
2021-07-21 03:59:25 +01:00
Pokechu22 fa9c43cfaa Software: Handle texture wrapping more accurately
This fixes various texture offsetting issues with negative texture coordinates (bringing the software renderer in line with the hardware renderers).  It also handles the invalid wrap mode accurately (as was done for the hardware renderers in the previous commit).  Lastly, it handles wrapping with non-power-of-2 texture sizes in a hardware-accurate way (which is somewhat broken looking, as games aren't supposed to use wrapping with non-power-of-2 sizes); this has not been done for the hardware renderers.
2021-07-20 19:23:23 -07:00
Pokechu22 19332575aa WrapMode=3 behaves the same as Clamp 2021-07-20 19:23:23 -07:00
JMC47 b515786c8d
Merge pull request #9927 from OatmealDome/double-usbgecko
GeckoSockServer: Only join connectionThread if it is joinable
2021-07-20 22:18:33 -04:00
OatmealDome 48bcd96526 GeckoSockServer: Only join connectionThread if it is joinable 2021-07-20 14:56:09 -04:00
JosJuice 92fc4f1eca PixelShaderGen: Fix OpenGL ES bounding box compilation error 2021-07-20 11:39:32 +02:00
Techjar 5e0520b6e0 VideoCommon: Expand vector comparisons instead of overloading any()
For whatever stupid reason, Mali drivers do not allow overloading
built-in functions.
2021-07-20 05:24:47 -04:00
Dentomologist fe670a3e68 FileUtil: Remove duplication in FileInfo constructor 2021-07-19 11:50:17 -07:00
Pokechu22 2d460b8e31 Fix MEM2 in the memory viewer in physical mode 2021-07-18 13:09:42 -07:00
Tillmann Karras c948d7f436 PostProcessing: fix link error when switching shaders
Switching to a post-processing shader with different configuration options will
change the UBO, so we need to recompile the vertex shader as well.
2021-07-18 04:08:48 +01:00
Shawn Hoffman 8bddd8c675 remove SetRoundMode
we only care about SSE rounding mode, and set
that manually in SetSIMDMode
2021-07-17 19:29:22 -07:00
Tilka 3c90b657f3
Merge pull request #9907 from shuffle2/roundmode-bitfield
make FPSCR.RN an enum
2021-07-18 03:12:28 +01:00
Shawn Hoffman 197075293d make FPSCR.RN an enum 2021-07-17 18:55:06 -07:00
Shawn Hoffman e1bddd4c18 remove DSP::Profiler*
this is not used anywhere and seems trivial to
ressurect if it's ever needed again.
2021-07-17 18:26:32 -07:00
Shawn Hoffman c89ae53677 msvc: remove warning disables which no longer fire 2021-07-17 18:24:36 -07:00
Tilka d7a5558dc5
Merge pull request #9905 from shuffle2/msvc-outdated-comment
remove an outdated comment
2021-07-18 02:20:56 +01:00
Shawn Hoffman f5b05ae080 remove an outdated comment
seems to have been solved 5 years ago by
b707e199c2
2021-07-17 17:46:57 -07:00
Shawn Hoffman 1009825cb2 unittests: remove some msvc-specific casts
compiles on contemporary msvc
checked there is still a mul in release codegen
2021-07-17 17:41:41 -07:00
Shawn Hoffman 7117bd5772 msbuild: remove deprecated MinimalRebuild
we were explicitly disabling it, which is
effectively the new behavior
2021-07-17 14:29:03 -07:00
Léo Lam 5021a13aa9
DSPHLE: Fix running and is_stream checks in AX HLE
A voice is considered running if and only if `running` equals 1,
not if `running` is not equal to 0.

This fixes https://bugs.dolphin-emu.org/issues/12508 because for some
reason *The Sims 2 - Castaway* sets `running` to 8 when a stream
finishes playing; previously our AX HLE would just loop the voice
and eventually crash after accessing invalid memory addresses.

Thanks to JMC47 and delroth's help, I've verified that this is the
correct check for the following ucodes:

GC:
* 0x3ad3b7ac
* 0x3daf59b9
* 0x4e8a8b21
* 0x07f88145
* 0xe2136399
* 0x3389a79e

Wii:
* 0x347112ba
* 0xfa450138
* 0xadbc06bd

And while I was fixing the running check, I noticed that the is_stream
field was also being handled incorrectly, so I've fixed that as well.
2021-07-14 19:21:35 +02:00
Léo Lam 887fcfc99a
DSPHLE: Remove redundant accelerator end check for AX Wii 2021-07-14 19:20:25 +02:00
Connor McLaughlin 9b17805be9
Merge pull request #9881 from blaahaj/postprocessing-fix
PostProcessing: Fix OpenGL UBO linking with configuration options
2021-07-14 13:14:17 +10:00