Commit Graph

504 Commits

Author SHA1 Message Date
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
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
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
41e327a66b Cleanup and testfixes 2022-08-03 13:34:59 +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
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
Unknown W. Brackets
8f23025209 irjit: Add tests for IR passes. 2022-07-24 11:35:54 -07: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
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
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
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
Unknown W. Brackets
ce3b80dcea Debugger: Add initial GPU stats shell. 2021-10-19 10:01:40 -07: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
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
Henrik Rydgård
03c79ae055 Additional android buildfix 2021-06-12 13:03:54 +02:00
Henrik Rydgård
75fb783433 Android.mk buildfix 2021-06-12 13:03:54 +02:00
Henrik Rydgård
1b0ac23a69 Get rid of Executor.cpp/h.
There was only one implementation.
2021-06-12 13:03:53 +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
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
6c3825bfbd UWP and Android buildfixes 2021-06-07 00:24:52 +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
64e007c0ce Debugger: Add stub API for replay functionality. 2021-05-29 14:50:57 -07:00
Unknown W. Brackets
8eb773888f Update to libpng v1.7.0beta90.
Previously at 1.7.0beta35.
2021-05-16 11:32:17 -07:00
Unknown W. Brackets
f6a1ffdd14 Update zstd to 1.5.0.
This improves GE frame dump compression speed and ZIM load speed.
2021-05-16 11:15:24 -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
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
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
d9aecffd72 Build: Remove old ARM define. 2021-03-02 21:26:03 -08:00
Unknown W. Brackets
f7740edc6d Debugger: Add more metadata for memory usage. 2021-02-15 15:01:21 -08: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
Unknown W. Brackets
3734df347b Android: Add NEON/SSE funcs into Headless/UnitTest. 2021-01-10 12:38:20 -08:00
Unknown W. Brackets
e2efc245db Android: Fix headless and unittest build. 2021-01-10 12:16:02 -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
Unknown W. Brackets
83644ec1b8 Android: Remove old NDK profiler.
Pretty sure this no longer works.
2021-01-01 08:42:23 -08: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
0b1b36921e Move the now-renamed fragment shader generator to GPU/Common. 2020-10-31 19:03:14 +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
020fb55a65 Completes the merge, deleting the Vulkan-specific fragment shader generator. 2020-10-23 10:03:44 +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
4310e35714 Windows: Remove the native project. 2020-10-05 06:56:10 +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
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
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
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
Unknown W. Brackets
37d7096703 SaveState: Update to latest Snappy v1.1.8. 2020-09-12 18:16:27 -07:00
Unknown W. Brackets
e383b0279f Plugins: Support for loading game-specific plugins. 2020-09-08 09:12:19 -07:00
Henrik Rydgård
9561a4f80a Move MsgHandler into Log.cpp/h 2020-08-16 14:48:54 +02:00
Henrik Rydgård
d3d90a11cf Android.mk fix 2020-08-15 22:18:54 +02:00
Unknown W. Brackets
b8342fb8ec SaveState: Rename ChunkFile files to Serialize.
Makes more sense and less weird than ChunkFileDoMap, etc.
2020-08-10 08:04:05 +00:00
Unknown W. Brackets
4b4e3432cd SaveState: Split Do() into a separate header. 2020-08-10 08:03:41 +00:00
Henrik Rydgård
58ef0c8e80 Texture from framebuffer: Logging improvements 2020-08-04 14:45:14 +02:00
Henrik Rydgård
882cc6295e Rename FramebufferVulkan.cpp/h to FramebufferManagerVulkan.cpp/h 2020-08-03 23:22:11 +02:00
Henrik Rydgård
d57edfbdac Rename FramebufferCommon.cpp/h to FramebufferManagerCommon.cpp/h for consistency 2020-08-03 23:17:22 +02:00
Henrik Rydgård
aebbff55f1 Some renaming and cleanup in the Android audio code 2020-07-28 14:24:40 +02:00
parport0
fd62d30773 Debugger: Add memory.read_*, memory write_* 2020-07-26 01:18:16 +03:00
Henrik Rydgård
597647a2eb Create an Android.mk for miniupnp 2020-07-22 01:19:40 +02:00
Henrik Rydgård
47f0031f57 Add PortManager.cpp to Android.mk 2020-07-22 00:13:52 +02:00
Henrik Rydgård
fa0b9dc1bc Make the instance counter global and initialized at startup.
Turn off config saving for secondary instances.
2020-07-20 11:40:54 +02:00
Henrik Rydgård
626d173d10 Split the fault handling from MemMap.cpp to MemFault.cpp. 2020-07-15 12:12:57 +02:00
Henrik Rydgard
fdcf4f06f2 Add x64Analyzer to Android.mk. Some minor cleanup 2020-07-14 09:25:45 +02:00
Henrik Rydgard
1fce6de8b1 Simple exception handler so we can ignore accesses that happen within the PSP memory space. 2020-07-14 09:25:45 +02:00
Unknown W. Brackets
d39b0bdca2 GPU: Split FramebufferCommon into two classes.
Only some things moved over so far.

FramebufferCommon does too much, we want to share it with softgpu without
all the buffer management stuff.
2020-05-13 18:07:22 -07:00
Henrik Rydgård
bf73d3d663 Address Unknown's feedback
https://github.com/hrydgard/ppsspp/pull/7965/files
2020-04-26 11:19:31 +02:00
ANR2ME
93b59afed5 Fix building errors 2020-03-03 00:23:12 +07:00
ANR2ME
142e60974c Merge branch 'rechat' of https://github.com/adenovan/amultios-ppsspp into rechat 2020-03-02 22:25:18 +07:00
Henrik Rydgård
45d94c4877 Switch all images to dynamic lookup in the atlas by string ID.
SLN fix

It works, but with the wrong images and the wrong characters!

Fix another bug in atlastool's binary output

Get Android building again.

Oops, didn't mean to disable this permanently.

Error checking

Minor cleanup

Gotta tweak my git ignores...

Regenerate metadata
2020-03-01 12:06:47 +01:00
Florin9doi
58b04ef77b QT Api for Camera (Linux/macOS)
Allow the use of different resolutions (win/android/iOS)
2020-02-10 08:47:55 +02:00
Henrik Rydgård
970adfbcc9 Isolate most of the softgpu specialization code to RasterizerRectangle.
See comments.
2019-10-28 09:33:30 +01:00
Florin9doi
99c4a00dae sceUsbMic 2019-08-03 21:09:33 +03:00
Unknown W. Brackets
93069756e6 GE Debugger: Split playback into a separate file. 2019-06-23 18:49:27 -07:00
Henrik Rydgård
2ed535af29 Update SPIRV-Cross 2019-06-20 00:41:47 +02:00
Henrik Rydgård
04646fe678 Build system updates 2018-12-19 14:01:19 +01:00
Unknown W. Brackets
e49568f67d GLES: Move depth packing code to dedicated file. 2018-12-16 17:34:16 -08:00
Unknown W. Brackets
653129c528 Debugger: Add an event for GE dump recording. 2018-09-01 10:59:37 -07:00
Unknown W. Brackets
a4c0640f01 GE Debugger: Factor out host calls some.
Moving more of this to cross platform for the web debugger.
2018-09-01 08:32:03 -07:00
LunaMoo
f038b6489a Add sceUsbAcc stubs, improves EyePet(fixes endless loop on boot) 2018-08-15 18:35:07 +02:00
Henrik Rydgård
9c22f6ed55 Don't forget to update the other build systems and try to fix the
builds.
2018-08-13 00:28:12 +02:00
Henrik Rydgård
a589a371e6 Update SPIRV-Cross to a fresher version. 2018-07-16 20:00:45 +02:00
Henrik Rydgård
da5f0f7f2b
Merge pull request #11186 from unknownbrackets/debugger
Debugger: Add APIs to retrieve render image
2018-06-17 21:53:38 +02:00
Unknown W. Brackets
4a92db4cd6 Debugger: Update to latest armips.
Reduces warning noise now that it's included in the build.
2018-06-17 10:50:11 -07:00
Unknown W. Brackets
e6917cccf6 Debugger: Add APIs to retrieve render image. 2018-06-16 15:33:02 -07:00
Unknown W. Brackets
5bfba9b284 Debugger: Add HLE API funcs.
Lumping function symbols in here too, they're pretty related...
2018-06-08 06:59:18 -07:00
Unknown W. Brackets
29d93c56c7 Debugger: Initial breakpoint APIs. 2018-06-08 06:59:18 -07:00
Unknown W. Brackets
e746a2d106 Debugger: Add stepping to WebSocket API. 2018-06-08 06:59:17 -07:00
Unknown W. Brackets
944948a5f4 Debugger: Initial disasm API. 2018-06-08 06:59:17 -07:00
Unknown W. Brackets
3dac5f2103 Debugger: Add current game info. 2018-06-08 06:59:17 -07:00
Unknown W. Brackets
1f987bf1c1 Debugger: Initial register get/set APIs. 2018-06-08 06:59:16 -07:00
Unknown W. Brackets
b37d59e8fa Debugger: Organize WebSocket event handling.
Just a starting point to organize it.  Trying to keep it simple.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
c2b9b5a9e8 Debugger: Serve a simple log listener WebSocket.
Planning to add more functionality to it, and sharing the reporting port
is possibly not ideal - although it would make discovery easier.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
3a8a2ff933 http: Move web server to core and use flags.
This way we can independently control the debugger and disc sharing, since
debugger could have security impact.
2018-06-07 16:28:01 -07:00
Unknown W. Brackets
e21753bc93 Debugger: Add assembler to build. 2018-06-06 05:59:24 -07:00
Unknown W. Brackets
89186d8113 Replay: Initial structure for replay functionality. 2018-04-07 15:36:28 -07:00
Henrik Rydgård
c60c8ed68a Debug visualization for the Vulkan memory allocator. Shows some interesting behaviour. 2018-01-29 19:38:10 +01:00
Henrik Rydgård
133bef575a Split Android graphics context implementations into their own files. 2018-01-20 21:47:16 +01:00
Henrik Rydgård
6f0b382d9e Move vulkan debug callback out from WindowsVulkanContext into a file that can be shared with other platforms later. 2017-12-13 19:29:42 +01:00
Henrik Rydgård
58fd674bbf Try to fix build with the old Android build system too... 2017-12-08 10:25:42 +01:00
Henrik Rydgård
b8dc4d1fb8 Buildfixes for Android 2017-11-12 16:55:36 +01:00
Henrik Rydgård
5018e400f2 Remove some code duplication 2017-11-01 14:51:15 +01:00
Henrik Rydgård
ca7a2d06ca Vulkan: Implement stencil upload (for Star Ocean). 2017-11-01 14:18:39 +01:00
Unknown W. Brackets
7db9dfb50b Headless: Reduce some duplication.
We can share the screenshot code for SDL.
2017-09-20 09:25:28 -07:00
Florin9doi
892bc8617d Integrate sceUsbGps and sceUsbCam with Android 2017-08-27 17:19:11 +03:00
Ade Novan
18525ea523 Android Chat Support 2017-07-02 01:28:38 +08:00
Unknown W. Brackets
36069d1446 GE Debugger: Simple framework to load dumps.
This tries to execute them within the context of the emulator as much as
possible, so we don't have weird bugs.  Going with a file type so we can
easily load the dump by opening the file directly.
2017-06-03 15:29:11 -07:00
Unknown W. Brackets
cbbd3cac7e GE Debugger: Initial structure for GE data dumping.
This snapshots the GE commands and drawing to facilitate debugging.
2017-06-03 15:29:09 -07:00
Unknown W. Brackets
1b491fe156 SoftGPU: Stub a jit for texel fetch. 2017-05-30 22:57:30 -07:00
Unknown W. Brackets
d5426e4360 SoftGPU: Move sampler code to a dedicated file. 2017-05-30 22:53:23 -07:00
Henrik Rydgard
c219ae9e63 Further UWP fixes 2017-02-25 09:57:24 +01:00
Henrik Rydgård
0ae06b0148 Android buildfix 2017-02-11 10:52:43 +01:00
Henrik Rydgard
ad29974a56 Change when drawcontexts are allocated. Hook up backbuffer events to fix d3d9 resizing. 2017-02-06 11:40:16 +01:00
Henrik Rydgard
f1c96c056d Move all the GL/D3D9 FBO code into thin3d. 2017-02-06 11:40:16 +01:00
Henrik Rydgård
23e354847d Buildfix 2017-01-25 19:29:43 +01:00
Henrik Rydgård
5e92a94175 Buildfix 2017-01-24 20:58:59 +01:00
Henrik Rydgard
d9acd27126 Rename GLES files to match the convention the other backends use. 2017-01-23 17:08:58 +01:00
Henrik Rydgård
73ed466e19 Set up Android build for the proper glslang 2016-12-20 02:31:41 +01:00
sum
5a224d1601 Build fix for non-windows 2016-10-09 12:40:40 +02:00
Unknown W. Brackets
f4e2ca0359 http: Add a screen under tools for the server. 2016-07-03 22:13:47 -07:00
Unknown W. Brackets
a1fbcc3d93 Avoid directly calling osm from Core/GPU code.
This allows UI to handle the message however it wants to, and reduces
cross linkage issues.
2016-05-27 22:05:30 -07:00
Unknown W. Brackets
eb45c5bc89 Update to latest armips to fix unittest on Android.
Also fixes ARRAY_SIZE warning.
2016-05-21 09:29:20 -07:00