Commit Graph

38161 Commits

Author SHA1 Message Date
TellowKrinkle 1e9b6f88e4 VideoCommon: Support hot reloading of VS expand 2022-10-22 20:18:02 -05:00
TellowKrinkle 3912fa7a2e VideoCommon: Add reasons for disabled VS expand 2022-10-22 20:18:02 -05:00
TellowKrinkle b567f3afcf VideoCommon: Move repeated point/line expansion code to ShaderGenCommon 2022-10-22 20:13:24 -05:00
TellowKrinkle 0a42c534c3 VideoCommon: Add configuration to prefer VS for line/point expansion 2022-10-22 20:13:24 -05:00
TellowKrinkle 1eeba6dcca VideoBackends:D3D12: Add support for vertex shader point and line expansion 2022-10-22 20:13:24 -05:00
TellowKrinkle 9624479933 VideoBackends:OGL: Add support for vertex shader point and line expansion 2022-10-22 20:13:24 -05:00
TellowKrinkle 3a5901d12e VideoBackends:Vulkan: Add support for vertex shader point and line expansion 2022-10-22 20:13:24 -05:00
TellowKrinkle 678ee48bfc VideoBackends:Metal: Add support for vertex shader point and line expansion 2022-10-22 20:13:24 -05:00
TellowKrinkle 68f49df0f8 VideoCommon: Add vertex shader point and line expansion 2022-10-22 20:13:24 -05:00
Robin Kertels 3ffbf94b2a
VideoBackends:Vulkan: Set up VMA
Co-authored-by: iwubcode <iwubcode@users.noreply.github.com>
2022-10-23 02:54:35 +02:00
Robin Kertels 5e96733e35
Externals: Add VMA 2022-10-23 02:33:03 +02:00
Pokechu22 bac75de79c Fifo recorder: Fix incorrect calculation of the size of an array
The old calculation was stride * (max_index + 1), which fails if stride is less than the size of a component (for instance, if float XYZ positions are used, and the stride was set to 4 (i.e. sizeof(float)) instead of 12 (i.e. 3 * sizeof(float)), it would be missing the last 8 bytes of the final element in the array.  Or, if stride was set to 0, then no bytes would be recorded at all (though that's not a useful configuration so it's unlikely to actually exist).

I'm not aware of any games affected by this issue.
2022-10-22 13:36:16 -07:00
Pokechu22 c9ff2a9b3d Fifo recorder: Fix NormalIndex3
This should fix recording the wall in the staircase leading to the basement in Luigi's Mansion (though I haven't tested it, as I don't own a copy of Luigi's Mansion).  This uses NormalIndex3, and the index for the normal vector (generally 0x02XX or 0x01XX) there is always lower than the tangent or binormal (generally 0x07XX).  Other games seem to usually have a similar range of indices for the normal, tangent, and binormal, so this issue wouldn't affect them.
2022-10-22 13:36:16 -07:00
Pokechu22 24b761acda Fifo recorder: Fix position's type being used for normals/colors/texture coords
In most cases, games will use the same type for all vertex components (either Index8 or Index16 or Direct).  However, RS2's deflection towers use Index16 for the texture coordinate and Index8 for everything else, meaning the texture coordinates were recorded incorrectly (the first byte was used, so only indices 0 and 1 were recorded instead of 0 through 0x0192).  Worse still, some background elements in RS2 use direct positions but indexed normals or texture coordinates, and those would not be recorded at all.

This is a regression from b5fd35f951.
2022-10-22 13:36:16 -07:00
JMC47 804e42150e
Merge pull request #11188 from GaryOderNichts/feature/vwii_ancast
Support for loading vWii System Menu
2022-10-22 15:57:55 -04:00
Pokechu22 6de55e416b WaveFile: Fix size check
`count` is the number of stereo samples to write (where each stereo sample is two shorts), while `BUFFER_SIZE` is the size of the buffer in shorts.  So `count` needs to be multiplied by `2`, not `BUFFER_SIZE`.  Also, when this check was failed, the previous code just clobbered whatever was past the end of the buffer after logging the warning, which corrupted `basename`, eventually resulting in Dolphin crashing.

This affected Datel's Wii-compatible Action Replay, which uses a block size of 2298, or 18384 stereo samples, which is 36768 shorts, which is bigger than the buffer size of 32768. (However, the previous commit means that only one block is transfered at a time, eliminating this issue; fixing the bounds check is just a general safety thing instead of an actual bugfix now.)
2022-10-22 11:44:38 -07:00
Pokechu22 2a83b17ffb DSP: Copy audio dma samples one block at a time
Reverts 9f8e1e2a0d, but keeps the changes from e4e44909d5.

This fixes missing audio in Datel titles; see https://bugs.dolphin-emu.org/issues/12281.
2022-10-22 11:44:38 -07:00
GaryOderNichts 88c57a00a3 Show vWii System Menu version in Menu Bar 2022-10-22 13:36:55 +02:00
GaryOderNichts 82d20ce352 Support for loading Ancast images 2022-10-22 13:35:49 +02:00
JMC47 5b69c67b3a
Merge pull request #11147 from JosJuice/jitarm64-arith-org
JitArm64: Merge ps_mulsX, ps_maddXX, and parts of fp_arith
2022-10-22 06:37:27 -04:00
JMC47 b7310a180f
Merge pull request #11170 from JosJuice/jit64-dispatcher-no-check
Jit64: Add dispatcher_no_timing_check jump target
2022-10-22 06:19:00 -04:00
JMC47 55d269c9e0
Merge pull request #11190 from jordan-woyak/shinkansen-ui-button-order
WiimoteEmu: Shinkansen Tweaks
2022-10-22 05:21:00 -04:00
JosJuice 812067ab7c JitArm64: Move ps instructions from fp_arith to ps_arith
This lets us simplify fp_arith without making ps_arith much more
complicated.

No behavior change.
2022-10-22 11:15:41 +02:00
JosJuice 554a2fd332 JitArm64: Merge ps_mulsX and ps_maddXX
They have a lot of shared code, most notably the code for rounding c.

No behavior change.
2022-10-22 11:12:19 +02:00
JMC47 2153276ab9
Merge pull request #10046 from JosJuice/jitarm64-improve-const-stores
JitArm64: FIFO optimization improvements
2022-10-22 05:03:43 -04:00
JMC47 bc4d08047d
Merge pull request #10979 from tellowkrinkle/QuartzWindowSpeed
InputCommon:QuartzKB&M: Use KVO to watch window position
2022-10-22 04:55:12 -04:00
JMC47 4bf8a2393c
Merge pull request #11179 from OatmealDome/mvk-1.2.0
MoltenVK: Update to version 1.2.0
2022-10-22 04:53:01 -04:00
JMC47 5f1b7012ed
Merge pull request #10853 from RedStoneMatt/master
Kirby's Return to Dreamland "Bypass Metafortress" patch ported to PAL
2022-10-22 04:45:13 -04:00
Markus Wick 7a2256469e
Merge pull request #11127 from JosJuice/aarch64-jitasm-macro-op
JitAsm64: Reorder instructions in routines to allow macro-op fusion
2022-10-22 10:31:54 +02:00
Markus Wick 583c2b8a0c
Merge pull request #11181 from JosJuice/jitarm64-25-bit-urshr
JitArm64: Reimplement Force25BitPrecision
2022-10-22 10:26:07 +02:00
Markus Wick 5c7b5514ed
Merge pull request #11148 from JosJuice/jitarm64-remove-cdts-inst
JitArm64: Remove unnecessary instruction from ConvertDoubleToSingle
2022-10-22 10:10:23 +02:00
JosJuice 4dbf0b8e90 JitArm64: Reimplement Force25BitPrecision
The previous implementation of Force25BitPrecision was essentially a
translation of the x86-64 implementation. It worked, but we can make a
more efficient implementation by using an AArch64 instruction I don't
believe x86-64 has an equivalent of: URSHR. The latency is the same as
before, but the instruction count and register count are both reduced.
2022-10-22 10:03:52 +02:00
Jordan Woyak d9d6428189 WiimoteEmu: Replace shinkansen MixedTriggers with Triggers. 2022-10-22 02:42:40 -05:00
Jordan Woyak d705b8d4b8 WiimoteEmu: Reorder shinkansen buttons in UI. 2022-10-22 02:37:28 -05:00
Markus Wick bba38a3642
Merge pull request #11182 from JosJuice/aarch64-emit-shift-imm
Arm64Emitter: Combine immh and immb for Emit(Scalar)ShiftImm
2022-10-22 09:23:06 +02:00
JMC47 19e25e32a1
Merge pull request #11175 from b3rru/patch-2
GZLP01.ini – Update Cheatcode to Remove Distance Blur
2022-10-22 03:20:24 -04:00
JMC47 091b448209
Merge pull request #11156 from dvessel/soulcalibur2ini
Remove outdated SoulCalibur 2 ini.
2022-10-22 03:09:14 -04:00
JMC47 b331b017a1
Merge pull request #11187 from jordan-woyak/wiiu-adapter-cleanups
GCAdapter: Code cleanups.
2022-10-22 02:36:30 -04:00
Jordan Woyak 5ed0543430 GCAdapter: Process pad state in read thread and other general cleanups. 2022-10-22 00:38:59 -05:00
Shawn Hoffman 2b43f96899 WinUpdater: Defer modifying any files until Updater.exe
Fixes https://bugs.dolphin-emu.org/issues/12151
2022-10-21 19:14:00 -07:00
Léo Lam 79e09c3731
Merge pull request #11186 from GaryOderNichts/ios/device_creation
IOS::HLE::Kernel::InitIPC: Replace s_ios check with Core::IsRunning
2022-10-21 21:17:58 +02:00
GaryOderNichts 2fb45660b3 IOS::HLE::Kernel::InitIPC: Replace s_ios check with Core::IsRunning 2022-10-21 20:38:02 +02:00
JMC47 00e23da607
Merge pull request #11051 from shuffle2/update-vcredist
WinUpdater: Check OS and VC++ Redist versions
2022-10-21 13:55:51 -04:00
JMC47 9222956acd
Merge pull request #10859 from tellowkrinkle/UniformBufferSize
VideoCommon: Increase uniform stream buffer size to 64mb
2022-10-20 17:13:31 -04:00
JosJuice 84375a91d9 Arm64Emitter: Combine immh and immb for Emit(Scalar)ShiftImm
This simplifies the callers of EmitShiftImm and EmitScalarShiftImm.
2022-10-19 20:20:39 +02:00
OatmealDome 68b33b9718 MoltenVK: Update framebuffer fetch patch for 1.2.0 2022-10-18 17:52:06 -04:00
OatmealDome 4b790b10ae Revert "MoltenVK: Add patch to resolve a crash on macOS Mojave"
This reverts commit dae3bf9a7d.
2022-10-18 17:43:18 -04:00
OatmealDome 0928060a23 MoltenVK: Update to version 1.2.0 2022-10-18 17:40:43 -04:00
JMC47 9aece1810c
Merge pull request #10836 from iwubcode/d3d_uint_fix
VideoCommon: fix uint shader compiler error when using d3d
2022-10-18 12:12:08 -04:00
Léo Lam ee5a93c6b8
Merge pull request #11177 from Lobsterzelda/simplify-device-save-state
IOS: Simplify IOS::HLE::Device savestate method
2022-10-18 08:36:50 +02:00