Commit Graph

38397 Commits

Author SHA1 Message Date
Shawn Hoffman 68875dc06b MacUpdater: add version info to Updater.app too 2022-10-29 20:32:59 -07:00
Shawn Hoffman 836bc74b2d windows: Rename: use std::filesystem::rename for posix behavior 2022-10-29 19:57:26 -07:00
Pokechu22 fe559f3ed3 VideoCommon/Statistics: Require semicolons after statistics macros
This is clearer and reduces IntelliSense problems.
2022-10-29 15:39:41 -07:00
Admiral H. Curtiss 0628794cb6
Merge pull request #11226 from K0bin/d3d12-fix
VideoBackends:D3D12: Fix hang in Twilight Princess
2022-10-30 00:24:16 +02:00
Robin Kertels a07ee729e5
VideoBackends:D3D12: Defer binding framebuffer in SetAndDiscardFramebuffer
BindFramebuffer depends on the pipeline which might not be set yet.
That's why the framebuffer dirty flag exists in the first place.
I assume BindFramebuffer was called directly here, in order to handle
the texture state transitions necessary for DiscardResource.
The state is tracked anyway, so we can just issue those transitions there
too and defer binding the actual framebuffer.

Fixes an issue in Zelda Twilight Princess with EFB depth peeks.
Dolphin would bind a frame buffer which doesn't have an integer format
descriptor for the color target before binding the new pipeline.
So it would accidentally use the 0 descriptor.

Debug layer error:
D3D12 ERROR: ID3D12CommandList::OMSetRenderTargets:
Specified CPU descriptor handle ptr=0x0000000000000000 does not refer to
a location in a descriptor heap. pRenderTargetDescriptors[0] is the issue.
[ EXECUTION ERROR #646: INVALID_DESCRIPTOR_HANDLE]
2022-10-29 23:41:32 +02:00
Robin Kertels a6aa651291
VideoBackends:D3D12: Use COMMON as initial state for default heap buffer
Fixes the following error in the D3D12 debug layer:

D3D12 WARNING: ID3D12Device::CreateCommittedResource:
Ignoring InitialState D3D12_RESOURCE_STATE_UNORDERED_ACCESS.
Buffers are effectively created in state D3D12_RESOURCE_STATE_COMMON.
[ STATE_CREATION WARNING #1328: CREATERESOURCE_STATE_IGNORED]
2022-10-29 23:39:32 +02:00
Robin Kertels 22fecb41fc
VideoBackends:D3D12: Don't query GPU descriptor handle for non-shader visible heap
Fixes the following error in the D3D12 debug layer:

D3D12 ERROR: ID3D12DescriptorHeap::GetGPUDescriptorHandleForHeapStart:
GetGPUDescriptorHandleForHeapStart is invalid to call on a descriptor
heap that does not have DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE set.
If the heap is not supposed to be shader visible, then
GetCPUDescriptorHandleForHeapStart would be the appropriate method
to call. That call is valid both for shader visible and non shader
visible descriptor heaps.
[ STATE_GETTING ERROR #1315: DESCRIPTOR_HEAP_NOT_SHADER_VISIBLE]
2022-10-29 23:39:27 +02:00
Tilka a1e41f305e
Merge pull request #11229 from Tilka/verifier
VolumeVerifier: fix bogus "serial/version missing" error
2022-10-29 21:45:52 +01:00
Tillmann Karras cacdd18ca0 VolumeVerifier: fix bogus "serial/version missing" error
When searching for a disc where the revision doesn't match any disc in
the datfile, the loop would never get to the part where serials_exist is
set to true, leading to a bogus error message.
2022-10-29 21:32:57 +01:00
Pokechu22 6dcf8a6fc9
Merge pull request #11201 from JoshuaMKW/fix-instruction-patches
MemoryPatches: Fix instruction patches
2022-10-29 12:34:00 -07:00
JosJuice aeb0fcb8ab
Merge pull request #11092 from t895/view-binding
Android: Use view binding
2022-10-29 17:20:08 +02:00
Charles Lombardo 5c30f65bbb Android: Use view binding 2022-10-29 11:05:09 -04:00
JosJuice 7d55e9f9c7
Merge pull request #11202 from t895/androidx-prefs
Android: Use androidx preference manager
2022-10-29 16:08:48 +02:00
JosJuice 431ee1c48a JitArm64: Improve register handling for MMIO loadstores
Because of the previous commit, `regs_in_use` must not include `dest_reg`
when calling MMIOLoadToReg. There are also some other registers we can
skip including in regs_in_use just for efficiency's sake.

The `addr_reg_set = false` statements that I've added in this commit are
technically redundant – if `mmio_address` is non-zero then `addr_reg_set`
is already false – but it's just a coincidence that that's the case.
2022-10-29 14:16:53 +02:00
JosJuice 0660f12da4 JitArm64: Move MMIO handler result before popping stack
Otherwise we might throw the result away.
Fixes https://bugs.dolphin-emu.org/issues/13083.
2022-10-29 14:16:43 +02:00
Admiral H. Curtiss 0716fa3c52
Merge pull request #11224 from iwubcode/d3d12_subresource
VideoBackends: fix d3d12 subresource calculation
2022-10-29 05:09:22 +02:00
iwubcode ea3e133200 VideoCommon: call texture load graphics mod hook when Dolphin loads a texture 2022-10-28 19:24:43 -05:00
iwubcode 0e1ffe009a VideoBackends: fix d3d12 subresource calculation 2022-10-28 19:07:08 -05:00
Admiral H. Curtiss 8efd7833e5
Merge pull request #11150 from jordan-woyak/all-devices-less-confusing
DolphinQt: Make "All Devices" mapping hopefully less confusing.
2022-10-29 00:53:19 +02:00
Admiral H. Curtiss 8001535d12
Merge pull request #11211 from jordan-woyak/fix-focus-resume-after-manual-pause
DolphinQt: Fix window focus from unpausing after a manual pause.
2022-10-29 00:35:50 +02:00
Admiral H. Curtiss c624629dfd
Merge pull request #11223 from JMC47/dkcrfiltering
Disable Force Texture Filtering in DKCR
2022-10-28 18:47:04 +02:00
JMC47 1049ae629e Disable Force Texture Filtering in DKCR
This enhancement causes a rather distracting outline around the main characters.
2022-10-28 01:13:27 -04:00
Admiral H. Curtiss 904551fdb9
Merge pull request #11218 from JMC47/pxdmmu
Enable MMU in Pokemon XD
2022-10-28 04:24:44 +02:00
JMC47 8209f96a4f Add Force Progressive Patch for Egg Mania
This patch substitutes field rendering with full frame rendering in the
NTSC and NTSC-J versions of Eggmania.  This allows Dolphin's
"Force Progressive" hack to work with this title.

Codes originally from Swiss, written by Extrems.
2022-10-27 20:07:35 -04:00
JMC47 8080ebcd76 Enable MMU in Pokemon XD
Fixes invalid read spam during normal battles and Pokemon Bingo.
2022-10-27 16:29:53 -04:00
JosJuice 5ee7a55588
Merge pull request #11217 from JMC47/nsmbwvertexrounding
Disable Vertex Rounding in New Super Mario Bros. Wii
2022-10-27 20:48:27 +02:00
JosJuice 59c8358e40
Merge pull request #11215 from JMC47/wiiplayvertexrounding
Disable Vertex Rounding in Wii Play
2022-10-27 20:32:05 +02:00
JMC47 895e5ca3e3 Disable Vertex Rounding in New Super Mario Bros. Wii
Vertex Rounding causes severe animation issues on 3D models,
so let's disable it.  Also correct the game title to match the wiki.
2022-10-27 14:17:42 -04:00
JMC47 1158fab3b7 Disable Vertex Rounding in Wii Play
Prevents severe graphical issues in "Tanks" Minigame.
2022-10-27 14:13:45 -04:00
JMC47 76ce7da022 Disable "Force Texture Filtering" in Owls of Ga'Hoole
Fixes broken FMV visuals.
2022-10-27 00:56:06 -04:00
JoshuaMK e2f4400f49 Make SetPatch responsible for overwriting old patches 2022-10-26 22:46:49 -05:00
Pokechu22 1d86a48db6
Merge pull request #11214 from Pokechu22/GraphicsSettings-unused-FreelookControlType
GraphicsSettings: Remove unused FreelookControlType enum forward declaration
2022-10-26 16:43:05 -07:00
Pokechu22 2f3805e1b4 GraphicsSettings: Remove unused FreelookControlType enum forward declaration 2022-10-26 16:23:13 -07:00
JMC47 c3f3d2b6ba Enable slight CPU Overclock for Manhunt 2
Fixes video hangs in single core and unknown opcodes during FMVs in Dualcore.
2022-10-26 15:59:11 -04:00
Tilka d367b3ec3b
Merge pull request #11160 from Pokechu22/vertexloader-no-initializer-workaround-functions
VertexLoader: Remove "too many initializer values" workaround functions
2022-10-26 06:30:23 +01:00
Jordan Woyak 4fc05dd025 DolphinQt: Fix window focus from unpausing after a manual pause. 2022-10-25 19:39:41 -05:00
Pokechu22 581a575042 VertexLoader: Remove "too many initializer values" workaround functions
I originally added these in 2b1d1038a6, for both the TPipelineFunction and the size. The size was moved into the header in fdcd2b7d00 (making the size functions obsolete), but it seems that the functions themselves are no longer needed now.

I think I didn't use this approach before because it would have required ComponentFormatTable and ComponentCountRow to be templated, which would end up resulting in lines that were too long and thus wrapped in awkward places. (I *think* they didn't get inferred properly.) Now that we only need TPipelineFunction, the templating is not needed, and this ends up being a more readable version of the version with the wrapper functions.
2022-10-25 15:29:09 -07:00
JMC47 b25956849d Force Safe Texture Cache in Legend of Spyro: A New Beginning
Fixes freezes/stuttering during FMV cutscenes.
2022-10-25 04:48:23 -04:00
JMC47 c94f87151f Force EFB2RAM in WWE WrestleMania XIX
Fixes invisible models in Revenge Mode.
2022-10-25 04:42:17 -04:00
Admiral H. Curtiss 060d928d49
Merge pull request #11206 from JMC47/deepakini
Add Safe Texture Cache for Deepak Chopra's Leela
2022-10-25 10:35:12 +02:00
JMC47 027e10460a
Merge pull request #10977 from tellowkrinkle/FixBackendMultithreading
VideoBackends:Vulkan: Improve backend multithreading
2022-10-25 04:14:01 -04:00
JMC47 9ef7a3b44c
Merge pull request #11207 from Pokechu22/invalid-normal-count
VideoCommon: Treat invalid normal count as NormalTangentBinormal
2022-10-25 03:17:19 -04:00
Pokechu22 574939b683 VideoCommon: Treat invalid normal count as NormalTangentBinormal
See https://bugs.dolphin-emu.org/issues/13070.
2022-10-24 22:36:43 -07:00
JMC47 5c24d7bd8d Add Safe Texture Cache for Deepak Chopra's Leela
Fixes missing text issues.
2022-10-24 19:19:32 -04:00
JMC47 b66793194e
Merge pull request #11028 from tellowkrinkle/MetalFixes
Various Metal renderer improvements
2022-10-24 15:22:37 -04:00
JMC47 4787b25a7f
Merge pull request #10741 from Pokechu22/audio-dma-one-block-at-a-time
DSP: Copy audio dma samples one block at a time
2022-10-24 01:43:22 -04:00
Charles Lombardo a78e266a26 Android: Use androidx preference manager 2022-10-23 22:34:23 -04:00
JMC47 4ab47231bc
Merge pull request #11200 from Pokechu22/lego-indiana-jones-missing-color-value-is-a-hack
GameSettings: Properly set MissingColorValue for Lego Indiana Jones 1
2022-10-23 20:33:47 -04:00
Pokechu22 e4a02f3229 GameSettings: Properly set MissingColorValue for Lego Indiana Jones 1
In 3465b2af27 (#10937) I incorrectly put it under [Video_Settings] instead of [Video_Hacks], so it didn't work. https://bugs.dolphin-emu.org/issues/12987 should now properly be fixed.
2022-10-23 17:01:58 -07:00
JoshuaMK 2594447c25 Have UnsetPatch only unset the argument address 2022-10-23 18:42:34 -05:00