Henrik Rydgård
4da2ca0935
Implement shader blending for D3D9
...
This was easy, dunno why I never got around to it before..
I guess I didn't know about VPOS.
This does raise our minimum shader model requirement to ps_3_0.
2022-08-30 12:19:56 +02:00
Henrik Rydgård
5247ffa0af
Merge pull request #15910 from unknownbrackets/riscv-emitter
...
Add LI and compressed instructions for RISC-V
2022-08-28 15:57:03 +02:00
Unknown W. Brackets
216fcb228c
riscv: Add a simple unit test.
...
Since I haven't tried running these yet, at least best to validate...
2022-08-28 06:03:31 -07:00
Henrik Rydgård
1ccfd7986a
wip
2022-08-26 15:51:25 +02:00
Henrik Rydgård
048a556ada
Add floating point version of reinterpret shaders
2022-08-24 14:40:37 +02:00
Henrik Rydgård
5084743bbb
Use Draw2D for depal shaders (except the actual blit, for now)
2022-08-23 11:21:40 +02:00
Henrik Rydgård
83b7386f7d
Switch reinterpret shaders over to the Draw2D framework.
2022-08-23 11:12:23 +02:00
Henrik Rydgård
82a6c42e17
DepalettizeCommon -> TextureShaderCommon. Simplifications.
2022-08-22 12:21:20 +02:00
Henrik Rydgård
5a7bddbfa6
Allow binding depth as 565 by going through depal.
...
This is a partial fix for #6105 (Ratchet & Clank particles visible
through things), but there's still weird glitchiness. There's a pass
during rendering that scrambles the mini depth buffer by using a
triangle mesh. I wonder if it's trying to simulate the swizzle? But it
doesn't really look like it...
2022-08-21 09:58:58 +02:00
Henrik Rydgård
31fe0fc39e
Remove some unnecessary bool returns.
2022-08-16 11:23:34 +02:00
Henrik Rydgård
83fd8a2fd8
Convert depal shaders to use the ShaderWriter. Add tests for depal shaders.
2022-08-09 15:32:27 +02:00
Henrik Rydgård
41e327a66b
Cleanup and testfixes
2022-08-03 13:34:59 +02:00
Henrik Rydgård
cacb2a3200
Unit test, comment
2022-08-03 13:34:58 +02:00
Unknown W. Brackets
7b081a61c8
irjit: Correct another PurgeTemps case.
...
In this case:
Mov A, B
AndConst A, A, 1
Load32 C, A, 0
Was still swapping the Load32 to B, not just the AndConst.
Fixes #15735 .
2022-07-27 19:38:16 -07:00
Unknown W. Brackets
b620c966e0
irjit: Correct initialization warning.
2022-07-24 11:52:19 -07:00
Unknown W. Brackets
16188fa437
irjit: Add test for double clobber in #15713 .
2022-07-24 11:35:54 -07:00
Unknown W. Brackets
2154f747fc
irjit: Simplify more arithmetic to Movs.
...
Later passes rely on things being Mov, so better to have them more often.
2022-07-24 11:35:54 -07:00
Unknown W. Brackets
8f23025209
irjit: Add tests for IR passes.
2022-07-24 11:35:54 -07:00
Henrik Rydgård
f54ed3757c
Always use the stable quick tex hash. Doesn't actually make a difference except on new CPU archs.
2022-04-13 11:18:18 +02:00
Henrik Rydgård
a68ddd0a8d
Merge separate NEON functions into the normal functions.
...
We no longer support non-NEON ARM.
It's nice also to have the NEON and SSE implementations "close" to each
other, easier to port optimizations back and forth etc.
2022-04-12 23:43:21 +02:00
Henrik Rydgård
d1e2b19ebb
Make the number of threads flexible in the threadmanager test. Increase to 9, just because.
2022-04-10 22:39:42 +02:00
Henrik Rydgård
bde54ccdc0
Fix misuses of cond.wait (should return true when you want to stop waiting!)
2022-04-08 12:28:45 +02:00
Henrik Rydgård
5b20ace502
OK, this does crash
2022-04-08 12:04:34 +02:00
Henrik Rydgård
e0f73507f9
Time the stress test
2022-04-08 11:55:49 +02:00
Henrik Rydgård
b04e5925d2
Add a scheduling stress test to TestThreadManager.cpp.
...
Was hoping to find the cause of the issue I looked at in #15431
2022-04-08 11:41:50 +02:00
Unknown W. Brackets
73ece5b5ca
Windows: Correct root vol handling for UNC paths.
...
Otherwise CreateFullPath() fails.
2022-03-01 21:07:17 -08:00
Unknown W. Brackets
2479d52202
Global: Reduce includes of common headers.
...
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
Unknown W. Brackets
3df6cb704f
Global: Fix some type conversion warnings.
...
Hidden by some warning disables.
2022-01-30 16:09:33 -08:00
Henrik Rydgård
77502db4c4
Merge pull request #15363 from unknownbrackets/softjit-unittest
...
Add unit test to verify compilation of sampler/pixel jits
2022-01-30 10:47:30 +01:00
Unknown W. Brackets
43819fcd16
UI: Cleanup some reference warnings.
2022-01-29 22:36:08 -08:00
Unknown W. Brackets
a40d32d581
samplerjit: Validate compile in a unit test.
2022-01-29 20:31:18 -08:00
Unknown W. Brackets
0d93200faf
softjit: Add tests for compile success.
2022-01-29 18:47:36 -08:00
Unknown W. Brackets
7099df6619
unittest: Skip D3D shader compile on non-Windows.
...
Tests were just failing before.
2022-01-29 14:07:26 -08:00
Unknown W. Brackets
95e292ef63
unittest: Correct Windows-specific Path tests.
2022-01-29 13:36:50 -08:00
Unknown W. Brackets
a397bf811b
UI: Fix some sign/size comparison warnings.
...
Mostly size_t vs int.
2022-01-06 20:40:29 -08:00
Henrik Rydgård
4f85b8b2ef
Threading: Remove a level of indirection from Promise and Mailbox.
...
Makes using small copyable or POD objects in these more efficient, and if you want
to you can just put a pointer or smart pointer in there, which will
effectively do the same thing as the old setup.
2021-11-20 22:40:10 +01:00
Unknown W. Brackets
7dc3287617
UI: Handle newlines after ellipsis.
2021-09-25 12:01:41 -07:00
Unknown W. Brackets
2f570481b7
UI: Cleanup ellipsis more.
...
Arg, silly me.
2021-09-25 11:46:00 -07:00
Unknown W. Brackets
bbc83bcdab
UI: Correct text wrap with shy or Unicode spaces.
2021-09-25 11:37:10 -07:00
Unknown W. Brackets
7d730f2a8b
UI: Add unit tests for text wrapping.
2021-09-25 10:59:54 -07:00
Henrik Rydgård
928bc88b01
Rename Unthrottle to Fast-forward globally
2021-08-18 09:28:13 +02:00
Henrik Rydgård
ed7053329a
Fix some mis-handling of single file URI. Fixes the Load... button.
2021-08-07 12:17:31 +02:00
Henrik Rydgård
f51b8116a0
Basic flow of setting up and moving the PSP directory works now.
2021-08-04 23:22:43 +02:00
Henrik Rydgård
6d634f0c96
Mailbox: Address feedback
2021-06-13 11:27:12 +02:00
Henrik Rydgård
e7b3afbc7a
Minor cleanups
2021-06-13 10:28:27 +02:00
Henrik Rydgård
81f0c3a8e4
Address feedback (except the mailbox refcount)
2021-06-13 10:16:53 +02:00
Henrik Rydgård
50d9d7ea6f
Unittest buildfixes on mac
2021-06-12 22:42:10 +02:00
Henrik Rydgård
5b64a41a97
ParallelLoop: A bit smarter straggler handling.
2021-06-12 22:04:55 +02:00
Henrik Rydgård
3be5c7bd9a
Make the minimum items per thread explicit. Found some bugs, optional arguments are evil.
2021-06-12 21:21:28 +02:00
Henrik Rydgård
0fa27ff9d7
Autodetect number of threads (remove setting). Fix some bugs.
2021-06-12 21:06:59 +02:00
Henrik Rydgård
73871b9b7e
Implement new thread manager, port stuff to it.
2021-06-12 13:03:53 +02:00
Unknown W. Brackets
39f479025e
Io: Correct CreateFullPath() on Linux.
...
Fixes #14519 .
2021-06-09 23:09:04 -07:00
Henrik Rydgård
dba0a6ba12
Rewrite CreateFullPath to be agnostic of path format.
2021-06-07 00:24:52 +02:00
Henrik Rydgård
5e3019073c
Android content URI support in Path.
2021-06-07 00:24:51 +02:00
Henrik Rydgård
1f018d33c5
Start work on supporting Android Content URIs in the FileUtil API.
...
Add tentative Android Content URI support to much of FileUtil.h.
Buildfix
Fix some issues with the file browser in storage URIs.
2021-06-07 00:24:51 +02:00
Henrik Rydgård
e3cf04bb34
Implement file filters for Android in PathBrowser
...
asdf
Move Android file listing parsing logic into app-android.cpp.
Add utility for parsing/writing Android Content Storage URIs.
Fix some bugs. Allow upwards navigation in file browser from directories downstream from tree URIs.
2021-06-07 00:24:51 +02:00
Henrik Rydgård
8727679353
Clean up PathBrowser a bit
...
Fix UWP build
Fix booting homebrew.
Qt buildfix
2021-05-13 10:39:16 +02:00
Henrik Rydgård
2e16e83159
It never ends...
2021-05-13 10:39:16 +02:00
Henrik Rydgård
ae06499a0c
Change Copy, Rename to use Path. Remove std::string version of Exists().
...
Buildfixes
Buildfix
2021-05-13 10:39:16 +02:00
Henrik Rydgård
025bcb1673
Introduce Path, start using it all over the place.
...
Still lots left to convert!
Convert GetSysDirectory to return Path.
More buildfixing
Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Unknown W. Brackets
07cb37c2c1
Compat: Remove single/double sincos path.
...
New implementation should work for both cases.
2021-04-25 07:09:50 -07:00
Unknown W. Brackets
86585e9551
unittest: Fix jit harness init.
2021-04-24 15:48:17 -07:00
Unknown W. Brackets
744d17e13c
Core: Correct ValidSize outside scratchpad.
...
And simplify all the scratchpad valid checks.
2021-04-21 19:32:22 -07:00
Unknown W. Brackets
d3e2aa6d28
Build: Add libzstd to build.
2021-04-11 09:13:10 -07:00
Unknown W. Brackets
bab9581901
Core: Unbreak ValidSize limits.
...
Broken in bdd2029
.
2021-03-28 19:42:29 -07:00
Henrik Rydgård
5802529daa
UTF-8 PPGe: Remove overlong encodings. Work around a weird issue in Ratchet & Clank. See issue #14297
2021-03-20 13:38:13 +01:00
Unknown W. Brackets
cae0815095
jit: Avoid using mips identifier directly.
...
Apparently this gets defined on mips systems.
2021-02-26 07:24:58 -08:00
Henrik Rydgård
bd7b283399
Add iOS version detection, turn off JIT on bootup if >= 14.3.
2021-02-22 09:16:51 +01:00
Sean McGovern
9a318673a7
UnitTest: call InitVFPUSinCos() to set vfpu_* function pointers
2021-02-21 12:59:17 -05:00
Unknown W. Brackets
e7a3faaa8c
Windows: Stop ignoring all deprecated warnings.
2021-02-18 08:56:36 -08:00
Sean McGovern
e9dbc925ea
TestVertexJit: fmodf() definition requires math.h
2021-02-17 22:25:26 -05:00
Sean McGovern
4fa9973936
UnitTest: test that the function pointer for vfpu_sincos() is non-null
2021-02-17 16:41:28 -05:00
Unknown W. Brackets
e2efc245db
Android: Fix headless and unittest build.
2021-01-10 12:16:02 -08:00
Henrik Rydgård
1c753e4a22
Use hacky methods to retrieve SD card directory if available.
...
This will disappear in future Android versions but can be useful for
older devices.
Fixes (or at least tries to) #10199 , at least for some devices.
Might help #13827 ?
Tested on Pocophone F1.
2021-01-07 00:55:35 +01:00
Henrik Rydgård
7de7680416
Apple driver bug workaround. See issue #13451
2020-12-16 14:39:08 +01:00
Henrik Rydgård
e77a9d7368
Reorganize the end of the fragment shader generator.
...
Thanks unknown.
2020-11-09 11:19:02 +01:00
Henrik Rydgård
6310af25fa
Get shader color write masking going on all backends.
2020-11-08 23:45:47 +01:00
Henrik Rydgård
f2e315b9a6
More shadergen work
...
Buildfix
2020-11-08 11:32:53 +01:00
Henrik Rydgård
19b4febbbf
More reinterpret shader gen and test work.
...
More work on reinterpret
Buildsystem fixes
2020-11-08 10:41:20 +01:00
Henrik Rydgård
03e8eac6ef
Merge the two ShaderLanguage enums.
2020-11-04 09:40:11 +01:00
Henrik Rydgård
f4ea3ccf22
Move the generic vertex shader generator into GPU/Common and rename it.
2020-11-01 19:58:54 +01:00
Henrik Rydgård
be837912e1
Delete the HLSL shader generator, switch to the newly generic one.
2020-11-01 19:58:54 +01:00
Henrik Rydgård
ba7c2e856b
Fix through mode differences
2020-11-01 19:58:50 +01:00
Henrik Rydgård
8efb40180e
Make the hardware skinning code match
2020-11-01 19:58:50 +01:00
Henrik Rydgård
fbb7f72eec
Vertex shader merge work
2020-11-01 19:58:45 +01:00
Henrik Rydgård
0b1b36921e
Move the now-renamed fragment shader generator to GPU/Common.
2020-10-31 19:03:14 +01:00
Henrik Rydgård
3d0630c04a
Remove the HLSL fragment shader generator. The GLSL one can now do its job.
2020-10-31 18:32:43 +01:00
Henrik Rydgård
b7d674411e
Test parsing of generated OpenGL shaders too (by using glslang).
2020-10-31 18:32:43 +01:00
Henrik Rydgård
c2a6090c3f
More D3D9 fixes.
2020-10-31 18:32:43 +01:00
Henrik Rydgård
af4d6e7642
Set up the test for D3D9, start fixing stuff.
2020-10-31 18:32:43 +01:00
Henrik Rydgård
b070ed45e9
Evolve the HLSL and GLSL fragment shader generators even closer together.
2020-10-31 18:32:42 +01:00
Henrik Rydgård
984a4d2641
Start adding HLSL support to the GLSL shader generator.
2020-10-31 18:32:42 +01:00
Henrik Rydgård
200c25bcc9
wip
2020-10-31 18:32:42 +01:00
Henrik Rydgård
2977c56a12
Complete the vertex shader merge, deleting the Vulkan-specific vertex shader generator.
2020-10-25 08:34:35 +01:00
Henrik Rydgård
fb2ac3a67e
Additional fixes
2020-10-25 08:34:35 +01:00
Henrik Rydgård
6055350a2c
Initial work on fixing tess
2020-10-25 08:34:35 +01:00
Henrik Rydgård
057fd9f8a3
Bridge more vertex shader differences
2020-10-25 08:34:35 +01:00
Henrik Rydgård
22b26ffc09
Time for the vertex shaders. Set up a test, start eliminating differences.
2020-10-25 08:34:35 +01:00
Henrik Rydgård
020fb55a65
Completes the merge, deleting the Vulkan-specific fragment shader generator.
2020-10-23 10:03:44 +02:00
Henrik Rydgård
aea4635d60
Fix minute differences between the shader generators found by the new tester
2020-10-23 10:03:44 +02:00
Henrik Rydgård
ef18938aa0
Hack up a test comparing Vulkan fragment haders generated by the GL GLSL generator to the ones generated by the Vulkan generator.
2020-10-23 10:03:44 +02:00
Henrik Rydgård
3d36049b65
Rename shader generator functions, a bit of moving around and adding an errorString param.
2020-10-21 23:20:25 +02:00
Henrik Rydgård
c6f51bbc1e
Add brute force shader generator tester. Tests D3D11 and Vulkan shaders.
...
Found a potential error with tesselation without normals already.
2020-10-21 23:20:15 +02:00
Henrik Rydgård
16654d37ea
VFPU: Compute sines and cosines in double precision.
...
Let's see if we can do without the special checks in double precision.
2020-10-10 17:45:42 +02:00
Henrik Rydgård
4310e35714
Windows: Remove the native project.
2020-10-05 06:56:10 +02:00
Henrik Rydgård
f01ba6dc84
Move NativeApp.h to Common/System, split into NativeApp.h and System.h
...
Buildfix
2020-10-04 11:42:16 +02:00
Henrik Rydgård
ff8148dd92
Move native/util, native/data and native/i18 to Common/Data.
...
Also move colorutil.cpp/h
linking build fix experiment
Delete a bunch of unused CMakeLists.txt files
CMakeLists.txt linking fix
Don't include NativeApp.h from any headers.
Android.mk buildfix
Half of the UWP fix
Buildfix
Minor project file cleanup
Buildfixes
Guess what? More buildfixes!
2020-10-04 07:28:29 +02:00
Henrik Rydgård
342ed97291
Move input utilities from native to Common/Input.
2020-10-01 09:42:32 +02:00
Henrik Rydgård
054acf768c
Don't cache time in a variable.
...
A little weirdness in the code that has stuck around for a long, long
time. It's really not necessary and mostly just confusing.
2020-09-24 23:52:43 +02:00
Unknown W. Brackets
6b8f7294b3
Global: Remove ARM64 define.
...
Was barely used anymore, and some users are specifying it when it's not
the case, so better to detect consistently.
2020-08-29 08:45:50 -07:00
Unknown W. Brackets
3b0f7e109d
unittest: Fix build on Android.
2020-08-27 20:01:37 -07:00
Henrik Rydgård
ccc0331279
Move timeutil to Common. (Experiment to see how much work it is to move these).
2020-08-15 20:53:08 +02:00
Henrik Rydgård
80e0f85332
Getting really close to getting rid of base/logging.h now.
...
Qt buildfix
2020-08-15 19:09:01 +02:00
Unknown W. Brackets
7910b4029a
arm64jit: Track writable and non-writable pointers.
...
Switch uses different memory regions. We can handle this, might as well
cleanup some const abuse.
2020-05-17 00:15:12 -07:00
Florin9doi
7c92b1abda
update VS projects
2020-04-19 09:19:13 +03:00
Unknown W. Brackets
efceb031ce
UI: Make System_InputBox API asynchronous.
...
Doing this as a precursor to cleaning up the Android madness.
2020-03-08 18:59:17 -07:00
李通洲
55bb58e13e
NativeApp: add System_GetPropertyFloat all the places
2020-02-04 09:20:34 +08:00
shenweip
9becb4b72b
BuildFix2
2020-01-14 18:12:28 +08:00
Unknown W. Brackets
bdd2029623
Core: Fix memory range guard check.
...
Was allowing sizes with the high bits set, which could cause all kinds of
weird issues and crashes.
2019-09-28 08:40:41 -07:00
Unknown W. Brackets
c3ae97e237
Travis: Build Windows on Travis too.
2019-07-06 14:56:29 -07:00
Henrik Rydgård
30831f3ea1
Implement and test clz32, use it in the MIPS interpreter cores.
...
This will be useful for our vfpu-dot implementations later.
2019-06-14 18:39:15 +02:00
Unknown W. Brackets
eff793cb7b
Fix spurious unit test failure.
2019-05-26 07:33:41 -07:00
Henrik Rydgård
efa1406d8f
VS2017: Add hack to automatically select the newest installed Windows 10 SDK. VS2019 already does this by default if you specify 10.0.
...
Should hopefully fix the buildbot.
2019-05-19 15:23:25 +02:00
Henrik Rydgård
20d666ff55
Remove DbgNew.h forced include in ARM debug builds, doesn't work for some reason.
2019-05-10 23:18:31 +02:00
Henrik Rydgård
1f40aa4828
Add WindowsSDKDesktopARM64Support to vcxproj files
2019-05-10 22:44:12 +02:00
Henrik Rydgård
c3fab33354
Revert "Remove default SDK version from project files"
...
Seems to have been the wrong thing to do, see:
https://developercommunity.visualstudio.com/content/problem/140294/windowstargetplatformversion-makes-it-impossible-t.html
Though due to the bug described there, there's no perfect solution, just
some ugly ones (which I might try later). Anyway, I guess most people
will move on to VS 2019 anyway..
This reverts commit 056494522e
.
2019-05-09 23:58:23 +02:00
driver1998
87f43d51ef
Fix UnixTests and HeadlessHost on ARM
2019-05-04 23:56:55 +08:00
driver1998
763b85d723
Update Visual Studio project files for Windows ARM32/ARM64
2019-05-04 22:45:15 +08:00
LunaMoo
056494522e
Remove default SDK version from project files
2019-04-27 23:01:41 +02:00
LunaMoo
280f7fec39
Fix VS2019 builds and remove _xp dependency
...
(drops Win XP support, allows latest SDK etc.)
2019-04-25 23:56:55 +02:00
xebra
070e29d921
Disable "Edit & Continue" with VS debug mode.
2018-12-07 13:01:16 +09:00
Henrik Rydgård
6f173b9134
Harmonize some VS project settings.
2018-08-14 22:41:39 +02:00
Unknown W. Brackets
b4496f1975
Core: Move config enums to separate file.
...
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Henrik Rydgård
36fd2711d6
Revert "Remove further remains of hardware skinning."
...
This reverts commit 40db61a680
.
2018-04-10 12:22:41 +02:00
Unknown W. Brackets
2f26fdff27
TexCache: unit test the quick tex hash.
...
Just a few sample cases to make sure it's behaving correctly.
2018-03-25 18:52:16 -07:00
Henrik Rydgård
40db61a680
Remove further remains of hardware skinning. Fixes #10661
2018-03-05 00:03:47 +01:00
Unknown W. Brackets
6b3944d329
UnitTest: Correct vertex and jit tests.
...
We now convert texcoords to floats.
2017-05-06 18:45:04 -07:00
Unknown W. Brackets
3b4103cb3b
System: Use a separate API for bool props.
...
This simplifies defaulting, instead of -1 being "true".
2017-04-29 17:35:12 -07:00
Henrik Rydgard
cf365bb257
Minor cleanup with GOLD define - only use it in System_GetPropertyInt
2017-04-05 16:21:08 +02:00
LunaMoo
4a2677e0c6
Revert unintentional change from: 429bf5d8b3
2017-03-23 11:54:54 +01:00
Henrik Rydgård
e17772b58d
Merge pull request #9430 from unknownbrackets/input-state
...
Remove legacy InputState tracking
2017-03-15 10:16:14 +01:00
Unknown W. Brackets
9e390510df
Remove legacy InputState.
2017-03-14 22:07:07 -07:00
LunaMoo
429bf5d8b3
Use $(DefaultPlatformToolset)_xp for easier VS builds with different toolsets.
2017-03-13 21:40:08 +01:00
Henrik Rydgard
b9b3a022fb
Switch another enum to enum class
2017-03-02 12:36:54 +01:00
Henrik Rydgard
a1ec735f6c
ARM64Emitter: Implement instructions to move data to/from SP
2017-01-26 14:23:42 +01:00
Florent Castelli
6852c602b9
glew: Move to ext
2016-12-18 21:13:45 +01:00
Unknown W. Brackets
419b960403
x86jit: Fix params in Replace_fabsf.
2016-05-31 10:40:14 -07:00
Unknown W. Brackets
afdd01571c
Uncouple savestates from NativeApp some.
...
Still have osm.
2016-05-27 20:41:37 -07:00
Unknown W. Brackets
2353cf6e85
Delete no longer needed linkage hacks.
2016-05-27 20:25:10 -07:00
Unknown W. Brackets
95d912c378
Get rid of the input_state global linkage.
2016-05-27 20:24:01 -07:00