Commit Graph

493 Commits

Author SHA1 Message Date
Henrik Rydgård
67a35d3476
Merge pull request #17356 from unknownbrackets/minor-cleanup
Cleanup some more string formats, mostly in debugger
2023-05-23 08:29:23 +02:00
Bobby Smith
085027b067 [Libretro] Show/hide some options depending on the renderer + remove MSAA option 2023-05-20 13:32:48 +02:00
Henrik Rydgård
cf9a628a2e AndroidContentURI: Move code from the header to cpp. Some assorted cleanup, add a unit test for Download paths 2023-05-16 16:08:51 +02:00
Unknown W. Brackets
bab2461a48 Windows: Use cpu_features on arm64.
It's now supported.
2023-04-29 10:59:32 -07:00
Henrik Rydgård
5a1e9ed8f1 Add ConfigSettings.cpp/h 2023-04-08 09:22:02 +02:00
Henrik Rydgård
12bd0ed26d Restore the shared_ptrs 2023-04-07 10:35:01 +02:00
Unknown W. Brackets
5c1e66a910
Merge pull request #17228 from hrydgard/vfpu-fallbacks
Add back our older VFPU approximations, as fallbacks if the table files are missing
2023-04-03 23:53:12 -07:00
Henrik Rydgård
aba026f7e9 Add back our older VFPU approximations, as fallbacks if files are missing.
PR #16984 added more accurate versions of these functions, but they require
large lookup tables stored in assets/.

If these files are missing, PPSSPP would simply crash, which isn't good.

We should probably try to warn the user somehow that these files are
missing, though...
2023-04-03 11:33:41 +02:00
Henrik Rydgård
2d73551af2 Makefile/readme updates 2023-04-03 10:46:38 +02:00
Henrik Rydgård
1d0afd4867 libretro: Rip out the audio speed control logic, libretro should handle that internally. 2023-04-03 10:01:49 +02:00
Henrik Rydgård
335df0fc71 libretro buildfix 2023-04-01 09:08:41 +02:00
Henrik Rydgård
2814668cf5
Show a MIPS stack trace on crash screen (#17211)
* Print simple stack traces to log on crashes.

* Display stack traces on crash screen

* Show the in-function offset in the printed callstacks.

* Libretro buildfix attempt
2023-03-31 10:08:12 +02:00
Unknown W. Brackets
76ef95a841 headless: Remove printfEmuLog, simplify output. 2023-03-26 10:17:34 -07:00
Unknown W. Brackets
0ade62d264 Core: Remove Host entirely. 2023-03-25 17:47:25 -07:00
Unknown W. Brackets
b8758a3cac libretro: Remove unused LibretroHost. 2023-03-25 17:12:44 -07:00
Henrik Rydgård
d0669d118d Libretro buildfix 2023-03-25 11:04:56 +01:00
Henrik Rydgård
67353e8f0b
Merge pull request #17177 from hrydgard/libretro-avoid-double-resample
libretro: Bypass PPSSPP's resampler, since libretro already has one
2023-03-25 08:10:39 +01:00
Henrik Rydgård
677cba6e77 buildfix 2023-03-24 23:04:14 +01:00
Henrik Rydgård
72ab6cd0bc libretro: Bypass PPSSPP's resampler, since libretro already has one
Hopefully, this will fix the reported bad audio performance and
behavior. Running two speed-compensating resamplers in a row can't be a good thing.
2023-03-24 18:52:41 +01:00
Henrik Rydgård
5a5779dcd6 Remove symbol-map related functions from Host 2023-03-24 18:08:31 +01:00
Henrik Rydgård
349b73acec
Move the resampler usage to a common file, AudioCommon. (#17176)
* Move the resampler usage to a common file, AudioCommon.

Ports that don't want to use the resampler can now simply exclude that
file and provide their own implementation. Next up, libretro will be
converted to do it that way.

* Android.mk typo

* libretro makefile fix

* libretro buildfix

* libretro: try a different approach for the temporary solution

* duh

* double duh
2023-03-24 17:19:57 +01:00
Henrik Rydgård
b440e28e38 Remove System_SendMessage!
iOS, Qt buildfixes
2023-03-22 23:52:51 +01:00
Henrik Rydgård
70f0ac04af Port the file browser spawned by the Load button to the new request stuff 2023-03-22 15:36:14 +01:00
Henrik Rydgård
8bbb9e7c95 Buildfixing 2023-03-22 13:22:10 +01:00
Henrik Rydgård
de064e210e Replace the inputbox queue with a more generic RequestManager. 2023-03-22 12:41:11 +01:00
Henrik Rydgård
47f063550a Remove InitGraphics/ShutdownGraphics from Host, except for headless 2023-03-21 22:47:20 +01:00
Henrik Rydgård
f5472ba0d8 Cleanup up unnecessary audio init functions 2023-03-21 13:39:02 +01:00
Henrik Rydgård
06fcc9ccd7 Add System_Notify 2023-03-21 13:37:16 +01:00
Henrik Rydgård
d3955b42bb Rename some system functions, merge the Launch* ones.
android launchurl buildfix
2023-03-21 12:22:59 +01:00
Henrik Rydgård
32e8ab3b5d Import all of basisu_transcoder, set up build 2023-03-13 12:37:43 +01:00
Henrik Rydgård
f936a6e9ce Structs and enums and build files 2023-03-11 11:19:33 +01:00
Henrik Rydgård
cb10862510 Move texture replacer to GPU/Common.
Add new files ReplacedTexture.cpp/h too.
2023-03-09 21:11:53 +01:00
Henrik Rydgård
53172eff63 Renaming and file splitting 2023-03-06 16:42:50 +01:00
Henrik Rydgård
3b39e9e068 Turn the VFS into a class, to be able to reuse it for other purposes. 2023-03-06 16:42:47 +01:00
Henrik Rydgård
4c45f8a4b0 Pass in draw directly in GPUCommon::DeviceRestore, instead of awkwardly fetching it 2023-02-25 23:04:27 +01:00
Henrik Rydgård
18999c3687 Create the GPUCommonHW class. 2023-02-25 14:42:10 +01:00
xielei
8ff78cb921 aioemu 2023-02-15 17:21:45 +08:00
Henrik Rydgård
29859c84fc
Merge pull request #16969 from unknownbrackets/libretro-android
libretro: Update flags for Android ndk-build
2023-02-15 07:33:16 +01:00
Unknown W. Brackets
037bf3575e libretro: Update flags for Android ndk-build. 2023-02-14 21:30:06 -08:00
Henrik Rydgård
a7baa3580b Some code cleanups around rewind. 2023-02-14 10:09:36 +01:00
Eric Warmenhoven
40e92ce753 Build for tvOS as a libretro core 2023-02-07 12:11:35 -05:00
Henrik Rydgård
d502198aa3 Move GLFrameData out of GLRenderManager.
Small refactor to prepare for adding delayed readback support to the
OpenGL backend.
2023-02-07 12:12:00 +01:00
Eric Warmenhoven
ec54095b68 Build for iOS as a libretro core 2023-02-07 01:00:47 -05:00
Henrik Rydgård
53f961acf5
Merge pull request #16918 from unknownbrackets/libretro-android
libretro: Add cpu_features flags to Android.mk
2023-02-06 09:57:18 +01:00
Unknown W. Brackets
3fcdf0e4df libretro: Add cpu_features flags to Android.mk. 2023-02-05 23:52:28 -08:00
Henrik Rydgård
fb8aff5a8c Split out the depth stuff from the file, move to GPU/Common 2023-02-03 21:06:43 +01:00
Eric Warmenhoven
165dffea22 Avoid symbol collisions with RetroArch on mac 2023-01-31 23:02:09 -08:00
Henrik Rydgård
9ec8ee1b20
Merge pull request #16870 from unknownbrackets/cpu-detect
libretro: Probably fix macOS cpu_features build
2023-02-01 06:27:11 +01:00
Eric Warmenhoven
712e3b9d9c Fix vulkan mac libretro crash due to not creating the surface 2023-01-31 12:14:55 -08:00
Henrik Rydgård
c8dce81ff0
Merge pull request #16156 from hrydgard/opengl-thread-refactor
OpenGL threading refactor
2023-01-31 11:14:01 +01:00
Eric Warmenhoven
3a2852f9e8 Fix libretro Mac x64 build, add Mac arm64 build 2023-01-30 20:33:40 -08:00
Unknown W. Brackets
eb1b18ed47 libretro: Probably fix macOS cpu_features build. 2023-01-30 18:09:50 -08:00
Henrik Rydgård
5735b9a8ac Buildfixes for libretro, ios 2023-01-30 15:57:18 +01:00
Henrik Rydgård
b62572a78f Refactor the framedata/GPU thread management. 2023-01-30 11:49:31 +01:00
Unknown W. Brackets
489411359e Common: Add cpu_features library. 2023-01-29 14:35:58 -08:00
hsoftxl
97b65156b0
use std c++17 2023-01-21 20:56:45 +08:00
hunterk
ce4e42eb2b expose analog-is-circle functionality to libretro 2023-01-13 17:22:24 -06:00
Henrik Rydgård
c27689910e Break out ScrollView from ViewGroup.h, and PopupScreens from UIScreen.h 2023-01-11 10:56:31 +01:00
Gabriel Morazán
6c2f830d3b
(Libretro) Makefile Tweak 2023-01-10 11:25:19 -04:00
Bobby Smith
7b47eb0fbd [Libretro] Prevent the removal of "huf_decompress_amd64.S" when doing "make clean" on Linux 2023-01-10 12:30:27 +01:00
Unknown W. Brackets
87aa4e127c Build: Update to glslang v11.13.0, use upstream.
This switches the submodule origin.
2023-01-01 10:28:53 -08:00
Bram Verweij
e3658ab0ef convert tabs to spaces 2022-12-24 12:36:06 +01:00
Bram Verweij
fc281a1f96 Issue 16646: strip leading zeros from IP address 2022-12-24 12:18:15 +01:00
hsoftxl
983336b88c
std use c++14 2022-12-19 14:01:31 +08:00
Henrik Rydgård
03433c42ce
Merge pull request #16514 from rf2222222/libretro_cheat_support
Libretro: Cheat Support
2022-12-09 12:16:43 +01:00
Henrik Rydgård
d04771252d
Merge pull request #16513 from rf2222222/libretro_cpu_setting
Libretro: Set Interpreter as default CPU and get CPU from setting
2022-12-09 11:52:49 +01:00
Henrik Rydgård
2a1daccd22
Merge pull request #16515 from rf2222222/libretro_ios_compile
Libretro: ios compile settings
2022-12-09 11:52:11 +01:00
Richard
a02df90335 feat(Libretro): Cheat Support 2022-12-08 11:56:24 -05:00
Stuart Kenny
6042af78ec Expose MSAA option for libretro. 2022-12-07 11:28:02 +00:00
Richard
4de64666d0 feat(libretro): ios compile settings 2022-12-06 12:23:09 -05:00
Richard
10eafe2e02 Libretro: Set Interpreter as default CPU and get CPU from setting 2022-12-06 11:15:33 -05:00
Henrik Rydgård
31af24a230 Break out VKRFramebuffer/VKRRenderpass from VulkanRenderManager 2022-11-27 10:22:37 +01:00
Gabriel Morazán
5e4492b43f
Libretro Buildbot Fix 2022-11-24 13:51:13 -04:00
GABO1423
2af55d37ad (Libretro) Huge MSVC Build Overhaul 2022-11-24 12:42:38 -04:00
Henrik Rydgård
ddd2c6e343
Merge pull request #16409 from hrydgard/preserve-framebuffers
Preserve framebuffer on pause screen even if render resolution is changed
2022-11-22 10:03:47 +01:00
Henrik Rydgård
ec6d330ae4 Move AsyncImageFileView to Common, which required some more shuffling around of stuff. 2022-11-21 20:38:20 +01:00
Henrik Rydgård
cf44adbf5d Libretro fixes 2022-11-21 18:09:04 +01:00
Henrik Rydgård
f597b4ca51 Blind libretro fix 2022-11-06 20:01:29 +01:00
Unknown W. Brackets
31cb3a8eae
Merge pull request #16346 from hrydgard/remove-retain-changed-textures-setting
Change the "Retain changed textures" option into a compat.ini option.
2022-11-06 10:18:21 -08:00
Henrik Rydgård
200c055823 libretro fix, more games 2022-11-06 18:59:31 +01:00
Henrik Rydgård
95cb358fbf Change the "Retain changed textures" option into a compat.ini option.
This option benefits so few games and can hurt others, so that it's
better that we specifically enable it for known cases like Popolocrois.
2022-11-06 17:28:50 +01:00
Henrik Rydgård
0ef39d11d8 Add a dynamic loader for OpenXR so the VR code can link. Make it all build on Windows. 2022-11-06 15:37:58 +01:00
bslenul
26a66dc37f [Libretro] Update core options to v2 + add a few new ones
Updated core options to v2 + added the following options: "Cache Full ISO in RAM", "PSP Model" and "Hardware Tesselation".
2022-11-02 20:34:24 +01:00
Unknown W. Brackets
404f67be8a Build: Enable libzip on libretro. 2022-11-01 23:08:24 -07:00
Henrik Rydgård
767bf55afb Remove duplicate line in libretro makefile.
Fixes #16269
2022-10-22 17:11:40 +02:00
Henrik Rydgård
2b18241763 Libretro buildfix attempt again 2022-10-20 10:48:40 +02:00
Henrik Rydgård
1e343370ae Libretro buildfix attempt 2022-10-20 10:02:40 +02:00
Henrik Rydgård
70488be450 Make as much as possible of the VR code build on all platforms 2022-10-17 20:12:48 +02:00
Henrik Rydgård
d4bfe9299d Track min and max GPU time, init time, render CPU time.
Mainly wanted to see if init time is a factor, there are optimizations
we can do there.
2022-10-10 10:53:27 +02:00
Henrik Rydgård
49097d359b More libretro buildfix, thanks stuken 2022-10-03 16:36:03 +02:00
Kingcom
e025629d4b Attempt to fix libretro build 2022-10-03 15:50:33 +02:00
Henrik Rydgård
cdee10fe86 Vulkan: Basic geoshader code generation. 2022-10-02 07:42:17 -07:00
Unknown W. Brackets
559fdd167f armips: Also update UWP and ARM64, etc. 2022-09-30 20:16:34 -07:00
Henrik Rydgård
fabd50b178 Move FrameData out of VulkanRenderManager 2022-09-17 01:34:38 +02:00
Henrik Rydgård
242efba6f7 Remove splitSubmit setting. Now we submit init commands before the acquire. 2022-09-17 01:07:30 +02:00
Unknown W. Brackets
c9780e7609 Build: Another attempt to fix libretro.
As per lib/common/portability_macros.h in zstd.
2022-09-07 20:44:45 -07:00
Henrik Rydgård
ad12aced6c Another attempt at fixing libretro, this time the win build failed 2022-09-07 21:55:22 +02:00
Henrik Rydgård
8782061539
Merge pull request #15980 from unknownbrackets/zstd-update
Build: Add additional zstd file for libretro
2022-09-07 14:45:43 +02:00
Unknown W. Brackets
35157e8762 Build: Add additional zstd file for libretro. 2022-09-06 18:48:33 -07:00
Henrik Rydgård
ae23c3c266
Merge pull request #15974 from unknownbrackets/debugger-gecond
Add breakpoint conditions to GE debugger
2022-09-06 23:39:26 +02:00
Unknown W. Brackets
14d45c2e77 Build: Include all zstd files in libretro.
This was previously commented out, and was intentionally changed in zstd
so you could use a different xxhash.
2022-09-05 17:43:58 -07:00
Henrik Rydgård
14ef126137 Correct libretro buildfix (hopefully) 2022-09-05 22:17:02 +02:00
Unknown W. Brackets
542e7aa555 GE Debugger: Add a table of register metadata.
So far, not used, but indicates info about each GE register.
2022-09-05 12:15:53 -07:00
Henrik Rydgård
97ad3c21b4 libretro build fix, see #15968 2022-09-05 19:21:04 +02:00
Henrik Rydgård
6b6271a53e
Merge pull request #15968 from hrydgard/remove-fast-matrix-asm
Remove the assembly implementation of 4x4 matrix mul, in favor of intrinsics.
2022-09-05 18:14:37 +02:00
Henrik Rydgård
a42807ea62 Fix case problem in libretro make file, see #15964 2022-09-05 12:40:38 +02:00
Henrik Rydgård
ed8c4e8758 Remove the assembly implementation of 4x4 matrix mul, in favor of intrinsics. 2022-09-05 10:33:05 +02:00
Henrik Rydgård
8c56abd3dc Remove setting "Disable slower framebuffer effects" 2022-09-03 11:06:43 +02:00
Henrik Rydgård
1cd34f9d2b Another buildfix attempt 2022-09-01 14:07:27 +02:00
Henrik Rydgård
7c5d36eca7 libretro buildfix 2022-09-01 13:33:46 +02:00
Henrik Rydgård
67d6549afd Rename Slow Framebuf effects to Shader Blending (might remove). Reassign readbacks to BlockTransferGPU. 2022-08-31 14:23:33 +02:00
Henrik Rydgård
82a6c42e17 DepalettizeCommon -> TextureShaderCommon. Simplifications. 2022-08-22 12:21:20 +02: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
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
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
Henrik Rydgård
69c4b59edd libretro buildfix 2022-07-30 15:20:36 +02:00
Henrik Rydgård
f9a25458d5 Libretro fix 2022-07-24 14:10:12 +02:00
Henrik Rydgård
a831cab14c
Remove unmotivated check preventing texture ini creation on mobile. (#15647)
* Remove unmotivated check preventing  texture ini creation on mobile.

Fixes #15644

* Show a "toast" message on platforms that don't support opening a text editor, when you try to create/open a texture ini file.

* Avoid the need to ifdef around calls to SystemToast

* UWP buildfix (and some warning fixes).

And possibly libretro fix

* Rename for a bit more consistency
2022-07-10 22:34:44 +02:00
ANR2ME
43beb26896 Added psp.gameplayer.club public Adhoc Server. 2022-06-26 19:47:33 +07:00
jdgleaver
75bd828a5d (libretro) Add option to detect and notifiy frontend of internal frame rate changes (60 <-> 30 <-> 20 fps, etc.) + restore 'Duplicate Frames in 30 Hz Games' core option 2022-05-17 16:22:29 +01:00
Bram Verweij
2da2525414 Limit minimum timeout to [0, 100, 200, ..., 5000] 2022-05-15 11:06:34 +02:00
Bram Verweij
4dbeb5cd57 For Libretro -DUSE_DISCORD=1 is not added in CMakeLists.txt 2022-05-14 21:01:37 +02:00
Bram Verweij
f74b884526 Let port offset cover the entire range in steps of 1k 2022-05-14 19:44:59 +02:00
Bram Verweij
47a52d2db9 Remove options for network chat, since these only work for standalone 2022-05-14 11:17:28 +02:00
Bram Verweij
eab3320e20 Make MAC address configurable and randomize when not set 2022-05-14 00:34:25 +02:00
Bram Verweij
8a6c1f803f Fix update of chat screen position 2022-05-13 22:40:50 +02:00
Bram Verweij
25e380577a Disable UPnP by default 2022-05-13 20:21:20 +02:00
Bram Verweij
2b1d40706c Correct indentation and some strings 2022-05-13 16:59:21 +02:00
Bram Verweij
899efa4a45 Expose networking options in libretro core 2022-05-13 16:48:06 +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
Stuart Kenny
c48680ccdb Add missing Config.h include 2022-02-09 11:39:05 +00: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
Stuart Kenny
1a3fed4344 Expose 2xBRZ texture filter option. 2022-01-27 08:27:04 +00: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
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
jdgleaver
cdbebc1898 (libretro) Force enable g_Config.bRenderDuplicateFrames + minor audio buffer tweaks 2021-12-07 16:21:59 +00:00
twinaphex
df8dbd8861 (Libretro) Reimplement audio -
* Move audio callback to the main thread (fixes the longstanding hang
  issues when using OpenGL)
* 64ms on desktop isn't enough due to excess buffering going on in this
  emulator. Set default to 128ms instead.
* Different audio approach is necessary due to the following: it sets a
  fixed framerate of 60, then sends either too many or too few audio
samples per frame in order to force the frontend to run at the correct
speed (.e.g. making the frontend run in slow motion for games that run
at 30fps) - this is undesirable for libretro, we want a consistent
amount of audio samples per batch. See further comments in libretro.cpp
for more information
2021-12-05 17:31:36 +01: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
Stuart Kenny
c0e61c9658 Add review suggestion. 2021-11-25 16:03:23 +00:00
Stuart Kenny
d609a7c8bf Destroy backbuffer when shutting down vulkan conext. 2021-11-25 15:32:44 +00:00
Stuart Kenny
afdd51c0e6 Build with correct preprocessor flag 2021-11-24 16:37:29 +00:00
Henrik Rydgård
8f29d9542c Buildfixes 2021-11-22 19:53:00 +01:00