Andrew Church
163ed5b5f7
Linux: Properly avoid committing address space for large mmap().
...
A shared or writable mapping is charged to the process's memory
commitment regardless of MAP_NORESERVE, so the mmap() call to find a
4G base can still fail depending on memory usage and overcommit settings.
2020-12-19 19:45:42 +09:00
Henrik Rydgård
7de7680416
Apple driver bug workaround. See issue #13451
2020-12-16 14:39:08 +01:00
Henrik Rydgård
2dcfa63498
GL: Detect Apple GPUs as a category
2020-12-14 22:10:18 +01:00
Henrik Rydgård
559ccd9f33
Minor cleanups
2020-12-14 20:06:06 +01:00
Henrik Rydgård
32c9728c0c
Some cleanups in GL feature and shader language detection.
...
Gets rid of many wrong or bad checks for IsCoreContext.
2020-12-14 19:46:11 +01:00
Henrik Rydgård
f3ebd6553d
Turn off vertex range culling in bezier/spline calls.
...
When we do lower res tess than the real PSP, we cant trust the game to not cause range culling to kick in.
Fixes #11692
2020-12-13 16:04:16 +01:00
Henrik Rydgård
1c925e705f
Merge pull request #13760 from hrydgard/fix-dirt-graphics
...
Fix car lighting issues in DiRT 2.
2020-12-13 09:19:34 +01:00
Henrik Rydgård
6a5522b185
thin3d: Add a way to query the current render target for debugging.
2020-12-13 00:20:13 +01:00
Halo-Michael
0652d2b52f
Change the typo
2020-12-08 14:42:07 +08:00
Halo-Michael
a40674d770
Fix loader
2020-12-08 14:40:29 +08:00
Halo-Michael
277b00dfa0
Bundle libMoltenVK
2020-12-08 13:46:14 +08:00
gameblabla
7ef8e64303
Add missing header in Logmanager.h
2020-12-04 21:24:18 +01:00
gameblabla
4fe3786499
Fix headers in MIPSCPUDetect.
2020-12-04 21:23:36 +01:00
Halo-Michael
cbcfbca895
sz must be longer than target string
2020-12-03 21:05:00 +08:00
Halo-Michael
95e6a1c7a5
Why not iOS?
2020-12-03 11:43:20 +08:00
Henrik Rydgård
9c8feefcdc
M1: Correctly detect core count.
2020-12-02 21:59:18 +01:00
Henrik Rydgård
20d579c3b8
Cleaner way to flush the instruction cache on Mac ARM64
2020-12-02 19:15:08 +01:00
Henrik Rydgård
5077a004ff
Mark ARM64 Macs as needing WX-exclusive memory protection
2020-12-02 19:13:52 +01:00
Henrik Rydgård
c0a5fa3e8b
Fix a crash if JIT space failed to allocate
2020-12-02 00:33:51 +01:00
Henrik Rydgård
c0c2bfb293
D3D11: Fix shader module leak in thin3d.
...
Thanks Unknown.
2020-12-01 09:20:13 +01:00
Henrik Rydgård
032890803e
Need to take renderArea into account when merging render passes.
...
Fixes #13664
2020-11-26 23:29:59 +01:00
iota97
a014d7c785
Remember game list scroll
2020-11-23 10:10:20 +01:00
Henrik Rydgård
3c2733d8eb
Adreno/OpenGL: Limit shader depal to 6xx series GPUs. Should help #13668 .
...
Also make a function static.
2020-11-22 18:00:07 +01:00
Henrik Rydgård
29b2f2c4ef
Better GLSL version handling. Now specify the latest version supported by the device.
...
Correct the version check for our own implementations of packUnorm4x8 etc.
2020-11-16 23:30:07 +01:00
Henrik Rydgård
90cc325b53
Clears didn't always properly set the RenderArea. Should help #13664
2020-11-15 22:30:16 +01:00
Henrik Rydgård
e14437cb3f
OpenGL: Assorted shader-depal bugfixes and regression fixes.
...
Fixes #13517
2020-11-11 23:09:48 +01:00
Henrik Rydgård
a3d06e366f
OpenGL: Detect Adreno model number
2020-11-11 22:46:25 +01:00
Henrik Rydgård
34efa1281b
More consistent use of GLSL precision modifiers, now use them in Vulkan too.
...
Might help #13464 ?
2020-11-10 22:42:41 +01:00
Henrik Rydgård
d99cba7308
Outrun on OpenGL: Fix weird purple highlight seen on some devices
...
mediump int is just not enough.
2020-11-10 22:01:57 +01:00
Henrik Rydgård
5eea7435d0
Minor cleanup in GL backend, fixes #13647
...
Was a stray old texture in boundTextures_ in thin3d. Now makes sure to
invalidate them, and also make it possible to look up bound framebuffer
textures when checking for valid tex parameters.
2020-11-10 00:13:44 +01:00
Henrik Rydgård
9f33a82b49
Merge pull request #13646 from hrydgard/framebuffer-fetch-fixes
...
Framebuffer fetch fixes
2020-11-09 19:30:35 +01:00
Henrik Rydgård
ba139975e0
Linker fix - need to move init_resources along.
2020-11-09 15:39:46 +01:00
Henrik Rydgård
69108ab2e9
On GLES3, GL_EXT_shader_framebuffer_fetch works a little differently.
2020-11-09 13:32:49 +01:00
Henrik Rydgård
2384b7a17d
Remove support for NV_shader_framebuffer_fetch extension, very old and rare.
...
Minor refactor.
2020-11-09 13:31:39 +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
864cc54aa4
Remove ForceGL2 flag. Add comments... hm.
2020-11-09 11:18:43 +01:00
Henrik Rydgård
766dbc5a9f
Move ShaderTranslation.cpp/h to Common/GPU.
2020-11-09 11:18:43 +01:00
Henrik Rydgård
50619af71d
Fix HLSL shader gen issue
2020-11-09 09:10:44 +01:00
Henrik Rydgård
b9dd866c2d
Merge pull request #13640 from hrydgard/shader-color-write-mask
...
Fix car reflections in Outrun by implementing per-bit color masking
2020-11-09 08:45:28 +01:00
Henrik Rydgård
0c3ead1437
Temporarily disable GL frame-init error checks, see #13639
2020-11-09 00:30:24 +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
9105249901
Add compat flag for reinterpret shader, also disable on platforms that can't support it yet
2020-11-08 11:32:55 +01:00
Henrik Rydgård
4e16fcaf1a
Fix reinterpret shader for D3D11
2020-11-08 11:32:55 +01:00
Henrik Rydgård
96c36d5c10
More work on reinterpret. Get Vulkan running
2020-11-08 11:32:55 +01:00
Henrik Rydgård
1ccc8c129c
Reinterpret code runs, no idea if it works
2020-11-08 11:32:55 +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
d9ee06a60d
Reorganize the DeviceLost code a little. FramebufferManagerCommon now sees it.
2020-11-07 10:51:54 +01:00
Henrik Rydgård
e12c0fb205
Oops, what happened there..
2020-11-06 23:20:02 +01:00
Henrik Rydgård
26e09c758b
Some GL error logging improvements
2020-11-06 22:42:09 +01:00
Henrik Rydgård
6a1e669c45
Fix GLSL version detection bug. Fixes #13631
2020-11-06 21:55:16 +01:00
Henrik Rydgård
7a690f177e
Move shader language feature detection to the draw context.
2020-11-06 09:11:57 +01:00
Henrik Rydgård
84037f448e
Remove colorDepth property of framebuffers. They're all 8888.
2020-11-05 14:51:46 +01:00
Henrik Rydgård
7b2236778b
Remove remnants of an old, no longer applicable readback optimization
2020-11-05 14:38:20 +01:00
Henrik Rydgård
6db943e831
Merge the two ShaderStage enums
2020-11-05 08:34:35 +01:00
Henrik Rydgård
207b76da6e
Show an error on screen if a shader fails to compile.
...
Part of #1 investigation of #13541
2020-11-05 08:27:13 +01:00
Henrik Rydgård
03e8eac6ef
Merge the two ShaderLanguage enums.
2020-11-04 09:40:11 +01:00
Henrik Rydgård
733a152c54
Move ShaderWriter to Common/GPU, along with some stuff from ShaderCommon.h.
2020-11-04 09:18:35 +01:00
Henrik Rydgård
0292d1719d
GEDebugger: Use utf-8 internally.
2020-11-02 10:02:52 +01:00
Henrik Rydgård
291742535b
Safety, comments
2020-11-02 10:02:52 +01:00
Henrik Rydgård
d32fc34b2b
Remove inPrefix. HLSL shaders gets slightly longer but probably no biggie.
...
The extra variable should be optimized out anyway.
Tried doing it with the preprocessor, couldn't get it to work.
2020-10-31 23:22:06 +01:00
Henrik Rydgård
2f1bbd314e
Fragment shader gen: Remove unnecessary allocations
2020-10-31 18:32:43 +01:00
Henrik Rydgård
7a63b5e69e
Cleanup
2020-10-31 18:32:43 +01:00
Henrik Rydgård
3d4fc7c696
Check for a couple additional GL extensions
2020-10-31 18:32:43 +01:00
Henrik Rydgård
c311eeaf7d
Switch D3D9 too to the glsl shader generator
2020-10-31 18:32:43 +01:00
Henrik Rydgård
8d70fd269e
Minor D3D9 fixes
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
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
f3c05cb81a
Merge pull request #13575 from Florin9doi/android_audio_record2
...
[Android] Audio record using OpenSL
2020-10-31 10:25:14 +01:00
Henrik Rydgård
5ee9cfef0d
Remove support for D3D11_level_9 (previously only really used for Windows Phone, probably).
...
Can always fall back to D3D9, which is not going away anytime soon and
still needs to be there. One less HLSL variant to care about.
2020-10-29 00:52:19 +01:00
Florin9doi
6531c7f4f8
[Android] Retrieve isMicStarted from AndroidAudio state
2020-10-24 20:16:22 +03:00
Henrik Rydgård
254c316b10
Merge pull request #13570 from hrydgard/gl-allow-wrap-framebuffers
...
GL: Allow texture wrapping on framebuffers
2020-10-23 22:41:10 +02:00
Henrik Rydgård
43ce4e7493
Remove an unmotivated ifdef. Additional cleanup
2020-10-22 00:10:21 +02:00
Henrik Rydgård
3a870a9d81
OpenGL: Allow texture wrapping on framebuffers if supported
...
Fixes minor texture glitch in Wipeout, and probably more
2020-10-22 00:03:44 +02:00
Henrik Rydgård
d4c02ccc1c
Address feedback about recent changes
...
Thanks unknown.
2020-10-19 22:50:31 +02:00
Henrik Rydgård
92e1dce2db
Error handling fixes
2020-10-18 20:26:19 +02:00
Henrik Rydgård
d3339d93b0
Set up depth buffers to be bound as shader resource views
2020-10-18 20:14:25 +02:00
Henrik Rydgård
f526f5977b
OpenGL: Disable auto invalidation of framebuffers, it has somehow broken
...
(Breaks DBZ: Tag Team)
2020-10-17 12:51:45 +02:00
Henrik Rydgård
74f8b3c69a
Yet another one
2020-10-15 00:03:47 +02:00
Henrik Rydgård
f46759be5a
Another missing header buildfix
...
thanks autechre
2020-10-14 23:49:59 +02:00
Henrik Rydgård
dc3c161b21
Add missing include in URL.h
...
Thanks autechre.
2020-10-14 23:30:51 +02:00
Henrik Rydgård
6cc8c2ebc1
Merge pull request #13328 from hrydgard/libretro-fixes
...
Fix libretro with Vulkan
2020-10-14 22:08:11 +02:00
Henrik Rydgård
332bb7feeb
VK: Whenever safely possible, shrink the render area.
...
We just set the render area to the union of the scissor rects used in a pass.
Might help some games on some mobile hardware, a little bit.
Possibly #13464 ?
2020-10-11 23:23:25 +02:00
Henrik Rydgård
dffc36b854
Get Vulkan going again with libretro. Rendering is the wrong size and crashes on exit, but it's a start.
...
Only tested on Windows.
2020-10-11 19:06:09 +02:00
Henrik Rydgård
5ece3de8ba
Track and accumulate pipeline flags for render passes.
...
(Information that will later let us make some interesting optimizations)
2020-10-11 12:22:25 +02:00
Henrik Rydgård
9d78ba93e0
Bugfix
2020-10-11 11:17:43 +02:00
Henrik Rydgård
692048fb8b
VK: Separate layout transitions from renderpasses again.
...
According to sage advice from themaister, this is just unnecessary overengineering.
Having them separate reduces the size of the renderpass key - we might be able to just
change that to an array lookup again. Will also make it easier to in the future add
depth-less render passes.
2020-10-11 11:06:54 +02:00
Henrik Rydgård
940611fe65
Remove the USE_GENERAL_LAYOUT_FOR* debug defines.
2020-10-11 11:06:54 +02:00
Henrik Rydgård
dc0f7ca8ee
VK: Copy depth buffer if we can't blit. Some GPUs can't blit to depth.
...
Fixes some recent issues with Intel GPUs on Vulkan.
2020-10-11 10:57:35 +02:00
Henrik Rydgård
e97baa503a
Avoid a division in time_now_d(). Minor optimizations.
2020-10-10 19:05:46 +02:00
Henrik Rydgård
886a8b1ac6
Remove Timer.cpp/h. Move various collections into Common/Data/Collections.
2020-10-05 21:05:23 +02:00
Henrik Rydgård
7d43ca5125
Fix Qt build by simply moving the offending file to the native project. No idea why Qt include paths only work there.
2020-10-05 10:36:57 +02:00
Henrik Rydgård
4310e35714
Windows: Remove the native project.
2020-10-05 06:56:10 +02:00
Henrik Rydgård
b236691548
Complete the eradication of D3DX9 compiler loader
2020-10-05 00:13:29 +02:00
Henrik Rydgård
8761bf2bc9
Move text rendering to Common.
2020-10-05 00:05:28 +02:00
Henrik Rydgård
0e3a84b4a8
Move most GPU things to Common.
...
It works after the move, on Windows and Android at least.
Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00
Henrik Rydgård
4f43cff5ca
Move fileutil, net, image loaders, ui to Common. ( #13506 )
...
* Move and rename file_util/fd_util to Common/File/FileUtil and DirListing
Let's also move net while we're at it.
Move the ZIM/PNG loaders over to Common.
Move the UI framework into Common
iOS buildfix
* Buildfix
* Buildfixes
* Apple buildfix
* This typo again..
* UWP buildfix
* Fix build of PPSSPPQt, such as it is (it's not in good condition...)
* Guess what? Another buildfix.
2020-10-04 20:48:47 +02:00
Henrik Rydgård
7ba8f684a0
Mac/ios buildfix
2020-10-04 12:37:19 +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
b7edf75437
Move Display.cpp/h to Common.
2020-10-04 11:42:16 +02:00
Henrik Rydgård
821817e6d4
Move the profiler to Common
2020-10-04 11:42:16 +02:00
Henrik Rydgård
989e353482
Common.h shouldn't include Log.h.
...
Buildfixes
More buildfixes. Move JSON code to common.
2020-10-04 11:42:14 +02:00
Henrik Rydgård
9e41fafd0d
Move math and some file and data conversion files out from native to Common.
...
Buildfixing
Move some file util files
Buildfix
Move KeyMap.cpp/h to Core where they belong better.
libretro buildfix attempt
Move ini_file
More buildfixes
2020-10-04 09:12:46 +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
Bartłomiej Burdukiewicz
826656a840
Fixed missing cstring include.
...
Signed-off-by: Bartłomiej Burdukiewicz <bartlomiej.burdukiewicz@gmail.com>
2020-10-02 14:11:11 +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
15382d5f94
Move threading utils from native to Common
2020-10-01 09:27:25 +02:00
Henrik Rydgård
65617889dd
Merge ext/native/ext/... directly into ext.
2020-09-30 00:30:42 +02:00
Henrik Rydgård
4d3ec20082
ByteSwap.h results in a file name collision on some systems with byteswap.h. Fix this by merging it into BitSet.h.
2020-09-30 00:09:13 +02:00
Henrik Rydgård
e8ff546457
retro buildfix
2020-09-29 20:42:08 +02:00
Henrik Rydgård
5e976ff842
Buildfixes
2020-09-29 19:33:18 +02:00
Henrik Rydgård
11ab77b995
Remove some TLS.
2020-09-29 15:51:51 +02:00
Henrik Rydgård
d9edc68966
Remove unnecessary use of thread local storage
2020-09-29 15:51:51 +02:00
Henrik Rydgård
311fe431d0
Move buffer.cpp/h from base to Common
2020-09-29 15:51:51 +02:00
Henrik Rydgård
17a9767585
Buildfixes
2020-09-29 15:51:51 +02:00
Henrik Rydgård
40ec0d8358
Finish getting rid of basictypes.h
2020-09-29 15:51:51 +02:00
Henrik Rydgård
3162f30158
Merge base/basictypes.h into Common/Common.h (mostly).
2020-09-29 15:51:51 +02:00
Henrik Rydgård
ed88761ecc
Merge ext/native/stringutil.cpp/h into Common/StringUtils.cpp/h.
2020-09-29 15:51:51 +02:00
Henrik Rydgård
5411a40f2a
TimeUtil.cpp cleanup
2020-09-29 00:36:29 +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
Henrik Rydgård
a9fef066b5
Reduce string allocations in Vulkan memory allocator
2020-09-24 00:32:52 +02:00
Henrik Rydgård
28b58ca05d
More asserts
2020-09-17 20:52:32 +02:00
Henrik Rydgård
6bcff8cbda
Linux: Use MAP_NORESERVE when finding a memory base pointer. See #13187
2020-09-13 17:13:07 +02:00
Unknown W. Brackets
2b49c3e464
MemMap: Check for MAP_FAILED in mmap call.
2020-09-13 00:37:20 -07:00
Henrik Rydgård
f595f7368f
Optimize a couple more single color conversion functions
2020-09-12 16:10:17 +02:00
Henrik Rydgård
60a6bf6d43
Optimize the DarkStalkers software rendering path a little more.
2020-09-12 16:10:17 +02:00
Henrik Rydgård
a22181df1c
Partially fix Katamari (flicker due to choice of the wrong depth buffer still happening).
2020-09-01 22:54:36 +02:00
Henrik Rydgård
cb3ed8f4a1
Merge pull request #13343 from unknownbrackets/xxhash
...
Switch to XXH3
2020-08-28 12:20:26 +02:00
Unknown W. Brackets
15c25be42b
GPU: Switch vertex/lookup hashes to XXH3.
...
This is faster pretty much everywhere.
2020-08-27 20:37:49 -07:00
Henrik Rydgård
3607f0ab32
Log validation errors normally as well as using OutputDebugString.
2020-08-27 21:50:05 +02:00
Unknown W. Brackets
90344fdee5
Exception: Don't trust sigaltstack().
...
Let's just track our allocation separately and free it, always.
2020-08-26 21:44:38 -07:00
Henrik Rydgård
479dedf0ba
Some logging improvements. Show more coordinates for block transfers, etc.
2020-08-16 22:27:21 +02:00
Henrik Rydgård
0bf6bd9175
More Log.h cleanup.
2020-08-16 14:48:54 +02:00
Henrik Rydgård
9561a4f80a
Move MsgHandler into Log.cpp/h
2020-08-16 14:48:54 +02:00
Henrik Rydgård
5704ebfb61
More cleanup of Log.h, move AndroidAssert into MsgHandler.cpp/h.
2020-08-16 14:48:54 +02:00
Henrik Rydgård
e8a9845d93
First step of cleaning up Log.h. Plus a few other bits and bobs.
2020-08-16 14:48:54 +02:00
Henrik Rydgård
61bf512244
Merge pull request #13291 from hrydgard/assert-cleanup
...
Assert function cleanup
2020-08-16 13:57:22 +02:00
Henrik Rydgård
8db6599e77
Buildfixes
2020-08-16 12:48:09 +02:00
Henrik Rydgård
449f80b74f
Address feedback.
2020-08-16 10:15:17 +02:00
Henrik Rydgård
5d64fc5ff1
Switch to PPSSPP's assert functions (don't use the system's)
2020-08-16 10:01:10 +02:00
Henrik Rydgård
c5147c01a0
Fix newlines in logging before the manager is initialized.
2020-08-16 10:01:09 +02:00
Henrik Rydgård
c8a06d40c9
Buildfix
2020-08-16 10:00:26 +02:00
Henrik Rydgård
7aacf3df37
Remove time_now() - time_now_d() is the replacement. Absolute time values can't be stored reliably in floats.
2020-08-16 09:37:18 +02:00
Henrik Rydgård
80aa527f1a
Merge pull request #13288 from hrydgard/move-timeutil
...
Move timeutil to Common. (Experiment to see how much work it is to move these).
2020-08-15 23:44:23 +02:00
Henrik Rydgård
761ea58fb8
Merge branch 'cmake' of https://github.com/Kingcom/ppsspp into Kingcom-cmake
2020-08-15 21:35:46 +02: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
99a5a9aac5
Address feedback
2020-08-15 20:02:07 +02:00
Henrik Rydgård
3c412ea21e
Fix build of ZimTool/AtlasTool. Had to break the ugly backwards dependency from LogManager to g_Config.
2020-08-15 19:09:09 +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