Commit Graph

35321 Commits

Author SHA1 Message Date
Admiral H. Curtiss 3296d2fc1f PowerPC: Reorder members of TranslateAddressResult to reduce struct size. 2021-08-09 01:25:04 +02:00
Tilka 0ee97c47e8
Merge pull request #10009 from OatmealDome/re3-inv-texture-cache
GameINI: Force safe texture cache on Resident Evil 3
2021-08-08 21:05:36 +01:00
OatmealDome 2680a13564 GameINI: Force safe texture cache accuracy on Resident Evil 3 2021-08-08 16:00:30 -04:00
Léo Lam 8e1dbdb257
Merge pull request #10006 from Tilka/pulse
AudioCommon: fix bogus error + cleanup
2021-08-08 13:16:54 +02:00
Tilka 682c7454f0
Merge pull request #10005 from JMC47/incredibleini
GameINI:  Fix EFB Copy Offset in more games
2021-08-08 11:11:46 +01:00
Tillmann Karras eda2035874 AudioCommon: rename isValid() to IsValid() 2021-08-08 03:05:03 +01:00
Tillmann Karras b6d8c111bc AudioCommon: make SoundLoop() non-virtual and private 2021-08-08 00:15:05 +01:00
Tillmann Karras d14b9a73b2 AudioCommon: get rid of Update(), it never does anything 2021-08-08 00:14:49 +01:00
Tillmann Karras c2d396526b AudioCommon: fix "Error stopping stream" when emulation is paused 2021-08-08 00:14:24 +01:00
JMC47 fd4e644fb4 GameINI: Fix EFB Copy Offset in more games
SpongeBob SquarePants: Battle for Bikini Bottom and The Movie Game,
along with the two Incredibles titles suffer from an EFB offset issue
described in earlier commits.  This commit adds offsets for the
Incredibles and The Incredibles: Rise of the Underminer releases
and adds additional inis for SpongeBob special releases.
2021-08-07 11:36:38 -04:00
JosJuice a4e5d233be
Merge pull request #9864 from PEmu2/wiimote
Change "Wiimote" to "Wii Remote" in interface
2021-08-07 12:44:55 +02:00
JosJuice c79757618d
Merge pull request #9993 from Techjar/late-vi-output
VI: Implement post-scanout XFB output
2021-08-07 12:41:59 +02:00
Tilka f2a77069b7
Merge pull request #10004 from Pokechu22/dff-read-error-handling
FifoDataFile: Improve error handling when reading
2021-08-07 02:15:01 +01:00
Pokechu22 59a1a603ff FifoDataFile: Improve error handling when reading 2021-08-06 15:55:50 -07:00
Admiral H. Curtiss e3a784ffba PowerPC: Convert enum in TranslateAddressResult to enum class. 2021-08-07 00:07:46 +02:00
Tilka ac6d008008
Merge pull request #10002 from OatmealDome/macos-nunchuk-shake
Nunchuk: Use correct middle click expression on macOS
2021-08-06 22:05:43 +01:00
Tilka 5cd2160d43
Merge pull request #9996 from OatmealDome/spirv-opsource
ShaderCompiler: Attach shader source code to SPIR-V
2021-08-06 21:48:31 +01:00
OatmealDome fc4f6bb9b0 Nunchuk: Use correct middle click expression on macOS 2021-08-06 16:47:29 -04:00
Mai M 67c06cfc55
Merge pull request #10001 from JosJuice/pte-1
PowerPC: Fix bad copypaste in LookupTLBPageAddress
2021-08-06 12:53:49 -04:00
JosJuice 37b218b344 PowerPC: Fix bad copypaste in LookupTLBPageAddress
Fixes https://bugs.dolphin-emu.org/issues/12611.
2021-08-06 18:03:54 +02:00
Mai M 857d1c399d
Merge pull request #9999 from JosJuice/jit-dcbx-masking
Jit: Re-add dcbx masking
2021-08-06 09:35:17 -04:00
JosJuice 125af42e4b Jit: Re-add dcbx masking
When making 92d1d60, I checked whether the ~0x1f masking in dcbx
actually was necessary. I came to the conclusion that it wasn't,
so I removed it. However, I hadn't checked the second half of
InvalidateICache closely enough - the masking is actually needed.

This commit re-adds the masking, but this time in C++ code instead
of in jitted code in order to save icache. Though I suppose the
difference doesn't matter all that much, since this is in farcode
and all...

Hopefully fixes https://bugs.dolphin-emu.org/issues/12612.
2021-08-06 14:55:07 +02:00
Mai M 37115f04ac
Merge pull request #9997 from JosJuice/jitarm64-store-w8
JitArm64: Fix W8 slowmem store
2021-08-05 12:37:08 -04:00
JosJuice e753455abb JitArm64: Fix W8 slowmem store
Regression from 12629be.
2021-08-05 10:57:41 +02:00
OatmealDome d453390c48 ShaderCompiler: Attach source text to SPIR-V for debuggers like RenderDoc 2021-08-05 03:04:18 -04:00
Tilka 942545b7fc
Merge pull request #9964 from JosJuice/uncached-unaligned-writes
PowerPC: Implement broken masking for uncached unaligned writes
2021-08-04 22:23:07 +01:00
JosJuice f333c0949f PowerPC: Implement PI interrupt for uncached unaligned writes 2021-08-04 23:09:43 +02:00
JosJuice 543ed8a97c PowerPC: Implement broken masking for uncached unaligned writes
This implements the behavior described in
https://bugs.dolphin-emu.org/issues/12565.

Thank you to eigenform, delroth, phire, marcan, segher, and Extrems
for all helping in one way or another with the efforts to reverse
engineer this behavior, and to Rylie for reporting the issue.
2021-08-04 23:04:02 +02:00
JosJuice 12629beff8 JitArm64: Call swap variants of memory write functions
Write_U16_Swap leaves the upper 32 bits alone. Reimplementing this
correctly in the JIT would require more than one instruction,
so let's just call Write_U16_Swap instead, like Jit64 does.
2021-08-04 23:04:02 +02:00
JosJuice ecbce0a204 PowerPC: Pass on full 32-bit register contents for 8/16-bit writes 2021-08-04 23:04:02 +02:00
JosJuice c56526d5f8 PowerPC: Keep track of write-through/cache-inhibited
One of the following commits will add emulation of a quirk
that only happens when writing to memory which is mapped as
write-through or cache-inhibited, so let's keep track of
which memory is mapped in this way.
2021-08-04 23:04:02 +02:00
Tilka 9c65519e79
Merge pull request #9986 from Pokechu22/partition-info
FilesystemWidget: Show more information about partitions
2021-08-04 21:54:07 +01:00
Léo Lam 28b7e2ef30
Merge pull request #9995 from AdmiralCurtiss/dcbx-virtual-address
Jit64: Always pass effective address to InvalidateICache() in dcbx.
2021-08-04 22:24:41 +02:00
Admiral H. Curtiss 0e76dabbbb Jit64: Always pass effective address to InvalidateICache() in dcbx. 2021-08-04 22:17:42 +02:00
Léo Lam 234859e2f3
Merge pull request #9994 from JMC47/spongebobmovie
GameINI: SpongeBob SquarePants Movie QoL Settings
2021-08-04 11:52:53 +02:00
JMC47 f27203a2e1 GameINI: SpongeBob SquarePants Movie QoL Settings
SpongeBob SquarePants: The Movie suffers from all of the same issues as
Battle for Bikini Bottom.  These patches are not based on any existing
cheats or codes.
2021-08-04 01:51:50 -04:00
Techjar dbfe2bde3d GameINI: Disable early XFB output for WWE Crush Hour
The game has flickering problems when using early output.
2021-08-03 23:38:17 -04:00
Techjar 797d0b7b1b VI: Implement post-scanout XFB output
This adds about a frame of latency, and since most games don't change
VI registers during scanout, we can get away with outputting the XFB at
the start of scanout. WWE Crush Hour is the (only currently known)
exception, which has flickering problems when doing it this way.

This adds a path to perform the output at the end of scanout, and gates
it behind an option which defaults to using the latency-reducing
pre-scanout path.
2021-08-03 23:37:50 -04:00
Léo Lam c68bd518c3
Merge pull request #9987 from Filoppi/patch-15
Preserve spaces in mapping preview of control names
2021-08-04 03:29:12 +02:00
Léo Lam 893b648d8d
Merge pull request #9992 from JMC47/gladiusregions
GameINI: Add Gladius Patch to Other Regions
2021-08-04 03:10:16 +02:00
Léo Lam c9c5f7a89c
Merge pull request #9928 from Pokechu22/shadow-the-hedgehog-eyelids-NaN
Convert NaN to 1 when generating texture coordinates
2021-08-04 03:08:34 +02:00
Léo Lam 45cddda3bc
Merge pull request #9989 from JMC47/sbbfbbpatch
GameINI: SpongeBob SquarePants: Battle For Bikini Bottom Quality of Life settings
2021-08-04 00:41:12 +02:00
JMC47 ecf092d7f8 GameINI: Add Gladius Patch to Other Regions
Only the NTSC version of Gladius got a patch with smurf3tte's reverse
engineering work.  Since most of the work was done, I ported over the
fix to the PAL, French, and German releases.  Leoetlino helped figure
out a consistent way to find the correct address.
2021-08-03 16:09:53 -04:00
JosJuice 5bd188d40d Jit64: Fix BATAddressLookup bit test
BT sets the carry flag, not the zero flag.
2021-08-03 17:32:04 +02:00
JMC47 7b07037723 GameINI: SpongeBob SquarePants: BFBB QoL
This enables Vertex Rounding Hack and has a game patch for two bugs
resulting from game choices.  The game draws an efb copy at
coordinate 0.00195313 to 1.00195 repeating which only works due to how the
numbers work out at low resolution.

The Vertex Rounding Hack is a null operation on 1x IR, so there should
be no concern enabling it by default since higher resolutions are
completely broken without it.
2021-08-03 11:28:58 -04:00
Filippo Tarpini a99932da12
Preserve spaces in mapping preview of control names
PR https://github.com/dolphin-emu/dolphin/pull/9700 removed spaces from within control names, which some user complained about, and their point of view is kind of understandable:
https://bugs.dolphin-emu.org/issues/12605
with this change, only spaces outside (between) control names are trimmed, which are the ones we wanted to trim in the first place.
This will still retain the major advantages from 9700.

Basically, "`Button 1`   +  `Button 2`" was showing as "`Button1`+`Button2`", while it will now show as "`Button 1`+`Button 2`".
2021-08-03 00:04:22 +03:00
Pokechu22 0b86a03438 FilesystemWidget: Show more information about partitions 2021-08-02 12:20:48 -07:00
Tilka 4b022a4bb1
Merge pull request #9948 from Dentomologist/fix_wiimotescanner_shutdown_crash
WiimoteReal: Fix Dolphin shutdown crash
2021-08-02 17:44:17 +01:00
JMC47 20c7edff8a
Merge pull request #9985 from JMC47/spongetruthini
GameINI: Add Safe Texture Cache to SpongeBob's Truth or Square
2021-08-01 23:36:24 -04:00
JMC47 5bf1a8af8e GameINI: Add Safe Texture Cache to SpongebobToS
Text in SpongeBob's Truth of Square needs Safe Texture Cache in order to
render properly.
2021-08-01 23:28:51 -04:00