Commit Graph

1046 Commits

Author SHA1 Message Date
Felix Yan
87f51c5ead
Fix dependency of RISC-V targets on common JIT code
Fixes #15861
2022-08-18 17:41:53 +03:00
Lubos
71df50a354 OpenXR - GL and OXR logging added 2022-08-16 17:39:54 +02:00
Lubos
c00fea1b22 Merge branch 'master' into feature_openxr_6dof 2022-08-07 20:33:14 +02:00
fp64
48aed2fabc
Add -Wformat (see issue #15792), no idea if ok.
Unfamiliar with CMake, just added a couple of lines at relevant-looking place.

I did, at least, test that is compiles (and enables that flag) on my machine.
2022-08-07 09:12:58 -04:00
Henrik Rydgård
de10c1fddd Buildfixes 2022-08-06 18:27:04 +02:00
Henrik Rydgård
7085861aad Switch over D3D9 as well. Buggy, will debug after unification 2022-08-06 18:27:03 +02:00
Henrik Rydgård
e345a6ba3c Works with D3D11, except the depth texturing case 2022-08-06 18:27:03 +02:00
Henrik Rydgård
37555fd442 Move to Common 2022-08-06 18:27:02 +02:00
Lubos
5f377f82eb Merge branch 'master' into feature_openxr_6dof 2022-08-05 13:49:42 +02:00
ANR2ME
41de63f13c Moving sceNpMatching2-stuff to sceNp2.cpp/h.
PS: Register_sceNpMatching2 not being added to HLETables because currently the callback didn't work properly yet and could crash the game.
2022-08-04 16:12:29 +07:00
ANR2ME
dcf3ece8f4 Implement NP Signin Dialog (faked signin) 2022-08-04 16:12:25 +07:00
Lubos
3578656b8b OpenXR - Introduce VR tweaks 2022-08-03 18:52:55 +02:00
Henrik Rydgård
59b3df0643 Draw2D 2022-08-03 14:12:55 +02:00
Henrik Rydgård
9bead443c3 Unify stencil buffer upload using Draw. Only OpenGL tested yet (shaders need adaptation). 2022-08-03 13:31:13 +02:00
Lubos
aea91bda1d OpenXR - Refactor the common math methods 2022-08-01 17:11:23 +02:00
Henrik Rydgård
392d83fb22
Merge pull request #15659 from lvonasek/feature_openxr_quest
Oculus Quest native support
2022-07-31 16:34:45 +02:00
Henrik Rydgård
063cd18254 Simplify CPU upscaling code
Use the existing expandTo32bit mode in the texture decoder instead of
the backend-specific switches and stuff.

Just gets rid of a bunch of redundant code and makes further changes
easier.
2022-07-30 15:06:25 +02:00
Lubos
89f5038c01 OpenXR - Move VR folder under Common 2022-07-26 18:06:08 +02:00
Lubos
c543c8fd52 Merge branch 'master' into feature_openxr_quest 2022-07-26 17:22:04 +02:00
Unknown W. Brackets
8f23025209 irjit: Add tests for IR passes. 2022-07-24 11:35:54 -07:00
Lubos
0d41691413 OpenXR - Input class added 2022-07-17 14:45:02 +02:00
Lubos
f693850d94 OpenXR - Initial version of VR renderer added 2022-07-12 18:53:46 +02:00
Lubos
9893e5c4ab OpenXR - VR mode initialization added 2022-07-08 14:44:20 +02:00
Lubos
dc977a2eed OpenXR - VR framebuffer class added 2022-07-07 19:30:06 +02:00
Lubos
99a4a06286 OpenXR - SDK added 2022-07-07 17:39:17 +02:00
Lubos
71da6a9293 OpenXR - Quest target into Android Studio project added 2022-07-06 21:38:41 +02:00
Henrik Rydgård
b93be29a30 Tweak -latomic preconditions in CMakeLists.txt. See comments on 14e9aab96e 2022-05-09 23:04:25 +02:00
Henrik Rydgård
14e9aab96e Enable -latomic on Linux. Fixes build on Raspberry Pi 3b for me. 2022-05-07 13:04:42 +02:00
Henrik Rydgård
3b9ab88b21 Add utility class VulkanBarrier 2022-05-01 10:20:11 +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
Unknown W. Brackets
b71f17586e Switch: Avoid loading Vulkan. 2022-04-02 16:34:13 -07:00
iota97
e5843160fe Add themes to assets 2022-02-14 07:37:56 +01:00
iota97
5e1062678f Allow custom UI themes 2022-02-11 12:42:38 +01:00
Unknown W. Brackets
ad2e380987 Display: Move listeners to separate HW file.
Mixing this in with the HLE management funcs was messy.
2022-01-30 09:41:08 -08:00
Unknown W. Brackets
0d93200faf softjit: Add tests for compile success. 2022-01-29 18:47:36 -08:00
Unknown W. Brackets
7b4006045d unittest: Use more consistent output executable.
PPSSPPHeadless has PPSSPP as a prefix, so should PPSSPPUnitTest.
2022-01-29 12:31:13 -08:00
Unknown W. Brackets
a0a9b1e89b softgpu: Add class to manage and enqueue for bins.
For now, just forwarding.
2022-01-13 09:26:59 -08:00
Cameron Cawley
26203552b4 Use System_GetPropertyInt to report the keyboard layout 2022-01-10 00:11:08 +00:00
Henrik Rydgård
55fe21db1e Add a simple GPU profiler to profile individual events, rather than full passes. 2021-12-12 12:11:54 +01:00
Henrik Rydgård
e1ff73061a
Merge pull request #15223 from hrydgard/multi-atlas
Split off the fonts from the atlas
2021-12-12 09:10:27 +01:00
Unknown W. Brackets
35a5f257f5 Build: Correct AppleClang warning handling. 2021-12-11 10:45:27 -08:00
Unknown W. Brackets
a009a04b2d Build: Avoid compiler flag warning.
These are clang warnings.
2021-12-11 10:45:27 -08:00
Unknown W. Brackets
aeee317368 Vulkan: Ignore VMA nullability warnings. 2021-12-11 10:16:35 -08:00
Unknown W. Brackets
7e578b31f5 Build: Remove old-style android/assets/.
We now read everything directly from assets/, so there's no need for
outdated duplicates.

Also cleanup some outdated files/instructions.
2021-12-11 09:01:15 -08:00
Henrik Rydgård
d4237fd542 Split the atlas into three, well two, but two different cases for the fonts.
Platforms that can use OS fonts don't need font_atlas.zim but they do
need ascii font for debug, so does use asciifont_atlas.zim.
2021-12-10 23:22:08 +01:00
李通洲
17171bc9dc Use system headers when building with system miniupnpc
Fixes https://github.com/hrydgard/ppsspp/pull/15185
2021-12-07 15:36:30 +08:00
Henrik Rydgård
f825b2cf51
Merge pull request #15184 from orbea/cmake
cmake: Generate git-version.cpp in the build dir
2021-11-30 09:06:00 +01:00
李通洲
521b04452e ext: Support building with system miniUPnPc 2021-11-30 14:40:32 +08:00
orbea
c05c699eaf cmake: Generate git-version.cpp in the build dir 2021-11-29 10:16:50 -08:00
Unknown W. Brackets
3d5bced296 softjit: Rename reg cache so it can be reused.
Intentionally just the name changes in this commit.
2021-11-28 08:03:15 -08:00
Unknown W. Brackets
ae3299ea04 softjit: Add stubbed DrawPixel for x64. 2021-11-26 08:21:11 -08:00
Henrik Rydgård
8f29d9542c Buildfixes 2021-11-22 19:53:00 +01:00
Unknown W. Brackets
09dc38080a softgpu: Move draw pixel code to separate file.
This separates things better anyway.  No major perf impact.
2021-11-21 08:23:32 -08:00
Unknown W. Brackets
953200c995 softgpu: Add func to calculate pixel func ID.
This normalizes some things, and eventually can be used for a jit key.
2021-11-20 15:27:04 -08:00
Henrik Rydgård
4d38905474
Merge pull request #15100 from vit9696/master
SDL: Read assets from Resources on macOS like on iOS
2021-11-07 23:21:29 +01:00
Halo-Michael
ab2f057883 Update CMakeLists.txt 2021-11-06 14:59:37 +08:00
Halo-Michael
55e64b0ab4 Update CMakeLists.txt & zh_CN.ini 2021-11-06 14:55:44 +08:00
vit9696
1066224b6f SDL: Read assets from Resources on macOS like on iOS
closes #15041
2021-11-06 09:22:08 +03:00
Vitaly Cheptsov
440a0090ce
Build: Add missing bundle identifier to macOS builds 2021-11-01 04:49:37 +03:00
李通洲
63966cb7a7 Build: allow using system zstd library 2021-10-29 10:28:56 +08:00
Unknown W. Brackets
ce3b80dcea Debugger: Add initial GPU stats shell. 2021-10-19 10:01:40 -07:00
Henrik Rydgård
b501f1c914
Merge pull request #15012 from vit9696/patch-1
Fix macOS 10.8~10.15 run compatibility
2021-10-13 09:23:29 +02:00
Unknown W. Brackets
9fdf0e1071 Common: Remove MakeUnique.h.
No longer used.
2021-10-12 20:33:07 -07:00
Vitaly Cheptsov
3b0305a005
Clear legacy flags 2021-10-13 04:53:14 +03:00
Vitaly Cheptsov
c4f330664b
Fix macOS 10.8~10.15 run compatibility 2021-10-13 03:47:50 +03:00
Unknown W. Brackets
39d3b4d933 Debugger: Centralize context menu handling.
This deduplicates a bit, but more importantly keeps all the IDs together.
2021-10-07 19:48:13 -07:00
Unknown W. Brackets
ee8dd8b747 Windows: Remove some old and outdated files.
These aren't being used.
2021-10-03 06:17:33 -07:00
Unknown W. Brackets
6814f5e7af Debugger: Add web debugger to build packaging. 2021-09-26 12:27:54 -07:00
vit9696
14c2231500 Add FAT support for macOS with automatic GitHub releases
closes #11799
closes #13708
closes #14815
2021-09-13 02:01:22 +03:00
Halo-Michael
8f60d99cd9 Update libMoltenVK.dylib to support M1 chips 2021-09-12 22:56:20 +03:00
Henrik Rydgård
8cab56c948 Move keymap defaults to a separate file. Not exactly a clean separation though. 2021-08-28 15:12:10 +02:00
Fadhil Mandaga
1a767f0413 Change ffmpeg include headers priority to avoid collission with system ffmpeg 2021-08-13 10:05:43 +07:00
Henrik Rydgård
43ae32e5b8
Merge pull request #14713 from amverweij/vulkan-display-khr
First pass on using Display KHR, needs proper init flags
2021-08-11 01:34:38 +02:00
Henrik Rydgård
ff340b8183
Merge pull request #14561 from archanox/master
RISC-V Port
2021-08-07 13:36:13 +02:00
Sean McGovern
a3e17807a7 cmake: use vendor-neutral GL implementation when available; fallback to legacy GL 2021-08-02 14:22:35 -04:00
Sean McGovern
a7a64beb88 fix overlinking of OpenGL libraries 2021-08-01 13:20:08 -04:00
Pierce Andjelkovic
d9a3741fcb RISC-V CPU detect 2021-07-28 21:58:56 +10:00
Pierce Andjelkovic
6b4da9324a
Merge branch 'hrydgard:master' into master 2021-07-22 17:47:20 +10:00
Henrik Rydgård
98372c465f Break out EmuScreen's key/axis inputs to ControlMapper.cpp/h
Additionally, break out the analog stick mapping to the same file.

This will make more sense soon when I change where the analog mapping
is called from, but want this refactor in separately for testing.
2021-07-08 22:24:00 +02:00
Pierce Andjelkovic
549ad024e4 Include FakeJit in RISC-V build 2021-06-29 21:46:17 +10:00
Pierce Andjelkovic
b999b9cb99 Update CMakeLists.txt 2021-06-25 04:56:43 +10:00
Henrik Rydgård
50d9d7ea6f Unittest buildfixes on mac 2021-06-12 22:42:10 +02:00
Henrik Rydgård
446c2c027e Get rid of the PrioritizedWorkQueue. Instead just queue tasks on the ThreadManager. 2021-06-12 13:03:53 +02:00
Henrik Rydgård
73871b9b7e Implement new thread manager, port stuff to it. 2021-06-12 13:03:53 +02:00
Henrik Rydgård
37d651a89d Address a bunch of the feedback 2021-06-07 00:26:26 +02:00
Henrik Rydgård
9b32ea2f55 Split out AndroidStorage.cpp from android/jni/app-android.cpp, move to Common 2021-06-07 00:26:24 +02:00
Henrik Rydgård
6553b96368 Remove AndroidStorageFileSystem. Not useful. 2021-06-07 00:24:51 +02:00
Henrik Rydgård
b397e5c455 Assorted plumbing.
wip

Buildfix
2021-06-07 00:24:51 +02:00
Henrik Rydgård
beb0b4e9f3 More work on AndroidStorageFileSystem.cpp. Fix current directory getting reset. 2021-06-07 00:24:51 +02:00
Unknown W. Brackets
64678e0114 Reporting: Move message report interface to Common.
This makes it so we can call reporting from Common.
2021-06-06 09:22:03 -07:00
Unknown W. Brackets
5c9bb83e37
Build: Disable NEON png on non-Android too.
Just to be safe.  It's likely a problem on iOS, etc. too.
2021-06-04 20:30:57 -07:00
LunaMoo
c6b5eef347 Disable NEON optimizations for libpng17 as a try to fix android texture replacement. 2021-06-04 10:26:52 +02:00
Unknown W. Brackets
64e007c0ce Debugger: Add stub API for replay functionality. 2021-05-29 14:50:57 -07: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
18a51b8e97 Update libzip to 1.7.3. 2021-05-09 20:45:53 -07:00
Unknown W. Brackets
1e22966984 http: Separate out net buffer code from formatting. 2021-05-01 11:20:05 -07:00
Unknown W. Brackets
8a8328c431 Common: Move ColorConv to a more appropriate place. 2021-05-01 11:20:05 -07:00
Henrik Rydgård
e6aa841b78 Common: Get rid of Executor.cpp/h.
There was only one implementation.
2021-04-30 22:33:34 -07:00
Henrik Rydgård
eb07a3e111 Buildfixes 2021-04-18 00:34:18 +02:00
Henrik Rydgård
8314a805f8
Merge pull request #14358 from unknownbrackets/debugger
Add basic APIs for managing memory info tagging
2021-04-17 18:35:38 +02:00
Unknown W. Brackets
d3e2aa6d28 Build: Add libzstd to build. 2021-04-11 09:13:10 -07:00
Unknown W. Brackets
7a1398844a Debugger: Add simple API to control tagging detail.
In case a client requires it.
2021-04-04 20:23:51 -07:00
Unknown W. Brackets
ff98d81e33 Build: Simplify by always including FakeCPUDetect. 2021-03-20 17:25:50 -07:00
Unknown W. Brackets
a42d3834f2 Build: Remove "fake" vertex decoder jit.
We don't really need this.  Just replace it with a stub that always fails
to generate a vertex decoder.
2021-03-20 17:06:21 -07:00
Paul Cercueil
08e60c27d7
Fix build with USE_MINIUPNPC=OFF
Instead of adding platform-specific dirty workarounds, why not try to
handle things *properly*?

With this commit, the PortManager will compile UPnP specific code only
if USE_MINIUPNPC is set.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2021-03-19 12:48:28 +00:00
Henrik Rydgård
1f4e84dc8d
Merge pull request #14301 from pcercuei/no-x11
CMake: Don't include X11 headers when compiling for FBDEV
2021-03-17 19:53:28 +01:00
Paul Cercueil
0b5e528bc4
CMake: Fix build when ENABLE_SPVREMAPPER=OFF
It previously tried to link inconditionally to SPVRemapper.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2021-03-17 15:24:34 +00:00
Paul Cercueil
38ea5b3c60
CMake: Don't include X11 headers when compiling for FBDEV
When compiling for FBDEV, we don't need/want the X11 headers.
These are included by default by <EGL/eglplatform.h>; compile with
the EGL_NO_X11 macro set to prevent that.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2021-03-17 14:35:49 +00:00
Unknown W. Brackets
c679fe1fc8 Build: Remove force include CMake line.
This reverts commit e29bb7bcdf.
2021-03-03 00:00:23 -08:00
Henrik Rydgård
e29bb7bcdf Only remove tha CMake line for Apple. 2021-03-01 22:59:26 +01:00
Henrik Rydgård
203d1364a8 Time to remove this line in CMakeLists.txt now. 2021-03-01 22:06:58 +01:00
Sean McGovern
6bc6b0c547 CMake: enable testing 2021-02-21 12:59:17 -05:00
Sean McGovern
082a58287a CMake: add TestShaderGenerators source back to unitTest 2021-02-21 12:59:17 -05:00
Henrik Rydgård
2f3bc2d373
Merge pull request #14056 from unknownbrackets/debugger-mem
Track memory allocations and writes for debug info
2021-02-21 10:18:11 +01:00
Sean McGovern
1fd4a680e9 CMake: use vendor GL implementations by setting CMP0072 to NEW 2021-02-16 18:15:35 -05:00
Unknown W. Brackets
f7740edc6d Debugger: Add more metadata for memory usage. 2021-02-15 15:01:21 -08:00
Unknown W. Brackets
0c876754a6 Windows: Remove unused file. 2021-02-15 09:28:38 -08:00
Unknown W. Brackets
92ce375e7a CMake: Correct headless build on Windows. 2021-02-15 06:09:12 -08:00
Kingcom
5109fd7cdc CMake: Correct build on Windows. 2021-02-15 06:09:12 -08:00
Unknown W. Brackets
622b078518 Build: Use ws2_32 and iphlpapi names directly.
On mingw, find_library can't find these.  We already use them directly
elsewhere in this same file.
2021-02-14 10:30:10 -08:00
Gleb Mazovetskiy
08dbec532a CMake: Fix UBSAN link error 2021-01-29 23:29:54 +00:00
Gleb Mazovetskiy
0fb42e07a6 CMake: Rename USE_ADDRESS_SANITIZER to USE_ASAN
For consistency with USE_UBSAN
2021-01-29 23:10:22 +00:00
Gleb Mazovetskiy
3bd3046315 CMake: Add USE_UBSAN 2021-01-29 23:08:00 +00:00
Henrik Rydgård
74f3542af4 Add back XCode TARGETED_DEVICE_FAMILY config line
xcode warns that the value is deprecated or something, but maybe it still does something. Appears iPad support is broken right now.
2021-01-26 18:12:44 +01:00
Unknown W. Brackets
f97df5d153 Debugger: Broadcast ctrl input events.
This can be useful to trigger debugging functionality on button press.
2021-01-18 18:14:48 -08:00
Unknown W. Brackets
de3277c679 Debugger: Add API to trigger buttons. 2021-01-18 16:58:34 -08:00
Henrik Rydgård
ec91417610
Merge pull request #13936 from hrydgard/ios-minor
iOS CMake fixes and new --ios-xcode ./b.sh command.
2021-01-17 12:23:54 +01:00
Henrik Rydgård
1759f1fad8 CMake fixes and new --ios-xcode ./b.sh command.
Also enables stencil for the iOS backbuffer. Fixes the GPU test and will doubtlessly
fix problems with running non-buffered (which you shouldn't do anyway though).

Slim alternative to #13766 with less risk to buildbots.
2021-01-17 11:34:27 +01:00
Henrik Rydgård
fe450b4987 There's little reason to build at O3, so let's just not. Changing to O2.
See #13920 for a breakage report.
2021-01-17 10:43:43 +01:00
orbea
0e0385eee9 cmake: Silence warning. 2021-01-05 06:38:06 -08:00
Unknown W. Brackets
3c9ab13672 GPU: Remove NULL GPU.
We can use the software GPU without a backend now, and this is in every
way superior and will result in better tests/headless behavior.
2021-01-02 09:36:13 -08:00
Conrad Kreyling
e3540ccd17 First pass on using Display KHR, needs proper init flags 2020-12-16 13:15:39 -05:00
Henrik Rydgård
afaff2e299 ARM64 buildfix
I guess previously ARM was defined in 64-bit mode too?
2020-12-14 19:43:40 +01:00
Henrik Rydgård
cc19136e02
Merge pull request #13751 from Halo-Michael/master
Initial support for vulkan on iOS. In addition, MoltenVK is bound to the framework.
2020-12-13 00:25:49 +01:00
orbea
c5b9924dd6 cmake: Enable the install target for non-linux unix systems. 2020-12-10 07:18:20 -08:00
Halo-Michael
277b00dfa0 Bundle libMoltenVK 2020-12-08 13:46:14 +08:00
Halo-Michael
cc5fa598f5 Specify Target 2020-12-07 16:12:55 +08:00
orbea
e8ec18bfbb cmake: Add a desktop file. 2020-12-05 20:42:35 -08:00
orbea
96b061bd1c cmake: Add an install target. 2020-12-05 20:42:35 -08:00
Henrik Rydgård
90f8799065 Safer hack to build on M1. 2020-12-02 22:46:56 +01:00
Henrik Rydgård
5126c91a81 CMakeLists.txt fixes for M1. It sets cpu arch to "arm64", not "aarch64" 2020-12-02 22:36:11 +01:00
C.W. Betts
eb831aaf14
Make universal binary version of ffmpeg work. (#13457)
* Make universal binary version of ffmpeg work.

* Update ffmpeg

* Update ffmpeg dependancy.
2020-12-02 00:25:48 +01:00
Henrik Rydgård
766dbc5a9f Move ShaderTranslation.cpp/h to Common/GPU. 2020-11-09 11:18:43 +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
733a152c54 Move ShaderWriter to Common/GPU, along with some stuff from ShaderCommon.h. 2020-11-04 09:18:35 +01:00
Henrik Rydgård
97e8d5b93b Buildfix the rest of the platforms 2020-11-02 10:37: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
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