Commit Graph

670 Commits

Author SHA1 Message Date
Henrik Rydgård
6e98dbb574 Split out the Qt font drawer in its own file. 2017-06-04 11:52:14 +02: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
8d1ece05ca Finally move flash0 into assets, fixing #9468 and #9520
CMake fix
Fix the innosetup and zip scripts for the new assets location
2017-04-01 00:20:53 +02:00
Jan Beich
11485f6a10 Qt: don't require QtMultimedia if building with SDL for #9157 2017-03-31 06:05:33 +00:00
Florent Castelli
7d4c8780e5 cmake: Fix linking against system Snappy 2017-03-19 18:44:12 +01:00
Florent Castelli
e0cce7602b cmake: Fix linking against system GLEW 2017-03-19 18:44:12 +01:00
Henrik Rydgård
1424713f62 Minor resource reorg 2017-03-17 12:35:27 +01:00
Henrik Rydgård
48c0b56db2 Forward the GOLD cmake variable to a CPP define. 2017-03-16 11:04:48 +01:00
Henrik Rydgard
468d01eeff CMakelist cleanup, might buildfix things on Linux Clang 2017-03-16 10:16:29 +01:00
Henrik Rydgård
d6b9b7f41f Fix a mistake with cflags reorg 2017-03-15 19:42:17 +01:00
Henrik Rydgård
f8343e9efc Add Gradle build. This time, we don't remove the old build system and we don't switch Travis. 2017-03-15 19:42:17 +01:00
Henrik Rydgård
a4699a37df Update armips with regex workaround 2017-03-15 15:47:30 +01:00
Henrik Rydgård
7e007c3973 Merge pull request #9426 from unknownbrackets/input-state
Remove various legacy parts of the InputState
2017-03-14 09:34:57 +01:00
Unknown W. Brackets
02855e7abb Remove unused pad_buttons and old virtual_input.
GamepadEmu does this now.
2017-03-13 22:57:22 -07:00
Henrik Rydgård
7b460b1815 Remove armips from the generic CMake build again, it didn't build on iOS 2017-03-13 19:28:56 +01:00
Henrik Rydgard
5e88fae640 Link to armips in CMake build 2017-03-13 17:30:19 +01:00
Henrik Rydgård
a83d1feb20 Add missing file to CMakeLists.txt 2017-03-13 16:52:33 +01:00
Henrik Rydgard
d46397627e Buildfixes 2017-02-28 11:40:29 +01:00
Henrik Rydgard
a362af74c0 Buildfix the CMake-based Windows build 2017-02-16 17:58:31 +01:00
Henrik Rydgard
b5034c4e00 Hide the D3D11 backend if Windows version is older than Win8 2017-02-14 10:33:42 +01:00
Henrik Rydgard
76587ec61c Further stuff. 2017-02-09 13:28:59 +01:00
Henrik Rydgard
01e11c6437 Some mostly empty files for D3D11 2017-02-08 17:47:07 +01:00
Henrik Rydgard
55aa879216 A lot of buildfixes 2017-02-06 16:16:43 +01:00
Henrik Rydgard
f1c96c056d Move all the GL/D3D9 FBO code into thin3d. 2017-02-06 11:40:16 +01:00
Henrik Rydgard
41f770d815 Move dx_state into gfx/d3d9_state 2017-02-05 20:54:24 +01:00
Henrik Rydgard
ba52ba8714 Move global.cpp to native/gfx/d3d9_shader.cpp 2017-02-05 20:50:17 +01:00
Subs
f9ac218d21 Typo: ARMV64 -> ARM64 2017-02-03 19:16:20 +01:00
Subs
fcffad2ccd CMakeLists: add linux/aarch64 to ffmpeg 2017-02-03 17:43:01 +01:00
zhyk
8c185b2f3a Add Qt with SDL support to CMake.
Fixes #9157.
2017-02-01 14:37:36 +08:00
Henrik Rydgård
23e354847d Buildfix 2017-01-25 19:29:43 +01:00
Henrik Rydgard
73a2a1bc0f The MemArena code has way too many ifdefs. Split it up by platform. 2017-01-25 16:20:21 +01:00
Henrik Rydgård
5e92a94175 Buildfix 2017-01-24 20:58:59 +01:00
Henrik Rydgard
e1cc13fd84 Buildfix 2017-01-23 17:08:58 +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
9658c8dd5c Basic D3D11 context setup code 2016-12-25 11:37:26 +01:00
Henrik Rydgård
1dd9bb7162 Remove the old glslang build 2016-12-20 00:43:26 +01:00
Florent Castelli
2149d3db7f cmake: New FindFFmpeg module
This new module should be able to handle both libraries in the regular
paths and fallback to pkg-config.
It is also able to find dynamic libraries, not just static libraries.
It will generate imported targets with the name FFmpeg::<lib> that you
can use in your scripts.

The way it’s used in our main build script has been updated to match.
We also won’t link external libraries used by ffmpeg automatically since
it is not reliable and depend on custom options.
You should use a proper static build with no external dependencies or
a shared build that will have the proper dependencies listed.
2016-12-19 02:07:08 +01:00
Florent Castelli
5db12ca54d Fix arch detection for fast_matrix_mul
Needed for iOS Simulator build
2016-12-18 22:17:41 +01:00
Florent Castelli
46fdc0f5f5 cmake: Move some cmake includes to ext 2016-12-18 22:17:41 +01:00
Florent Castelli
6852c602b9 glew: Move to ext 2016-12-18 21:13:45 +01:00
Henrik Rydgard
b6fb3be907 Make sure Vulkan is fully disabled where not available. 2016-12-05 21:41:14 +01:00
Henrik Rydgard
a4816bdb73 Commit silly typo 2016-12-05 17:34:26 +01:00
Henrik Rydgard
f4b1152b00 Pick some safe changes from the android gradle branch (including windows CMake fixes) 2016-12-05 16:52:03 +01:00
Florent Castelli
24440591a8 cmake: Update FindSDL2 and use imported target 2016-10-29 19:56:30 +02:00
Florent Castelli
8c3552de74 cmake: Detect features at compile time
Instead of relying on manually passed down flags from CMake,
we now have ppsspp_config.h file to create the platform defines for us.
This improves support for multiplatform builds (such as iOS).
2016-10-19 12:31:19 +02:00
Florent Castelli
cb4d0732df qt: Remove qrc files 2016-10-17 23:45:21 +02:00
Florent Castelli
f02e2b59b0 qt: Build Qt frontend with CMake. Requires Qt5. 2016-10-17 23:45:21 +02:00
Henrik Rydgard
f7a983a632 Attempt linux buildfix 2016-10-14 22:46:01 +02:00
Henrik Rydgard
486963487b Move unix-icons out of assets 2016-10-14 22:38:33 +02:00
Henrik Rydgard
c87d4a66c1 Move lang into assets. 2016-10-14 22:33:45 +02:00
Florent Castelli
9623611427 osx: Specify minimum version for C files too 2016-10-13 18:16:12 +02:00
Florent Castelli
d861fa54a6 ios: Fix resource copying 2016-10-12 21:55:42 +02:00
Florent Castelli
05b0918e38 cmake: Merge GPU and Core targets 2016-10-12 18:52:30 +02:00
Florent Castelli
d6f2c6da2b cmake: Android Studio doesn't need the output in a specific location 2016-10-12 18:52:30 +02:00
Florent Castelli
2cec77e9ec cmake: Move ccache setup to another file 2016-10-12 18:52:29 +02:00
Florent Castelli
eb2eb4cd9b cmake: Move some platform configuration to a toolchain file 2016-10-12 18:52:23 +02:00
Florent Castelli
9f9e11ed25 cmake: Move modules to a sane location 2016-10-12 18:52:23 +02:00
Florent Castelli
032f3a50ea ios: Fix path to plist file 2016-10-12 18:52:23 +02:00
Florent Castelli
fddba83081 cmake: Bump requirement to CMake 3.6 2016-10-12 18:31:49 +02:00
Florent Castelli
94d57f4573 maemo: Remove! 2016-10-12 13:13:09 +02:00
Henrik Rydgård
705627d6d3 Merge pull request #9053 from Orphis/android_define
android: Change preprocessor define to standard __ANDROID__
2016-10-12 13:12:14 +02:00
Florent Castelli
e0ff68b3f6 c++11: Remove compat header base/functional.h
We want a proper C++11, not tr1. We don't target those compilers anyway.
2016-10-12 11:32:45 +02:00
Florent Castelli
70593d1004 android: Change preprocessor define to standard __ANDROID__
ANDROID is only standard to the old Makefile buildsystem, not the platform.
2016-10-12 11:14:09 +02:00
Henrik Rydgård
ad71d27809 Merge pull request #9045 from Orphis/cmake_cleanup
cmake: Use preprocessor for conditional compilation in Common
2016-10-11 18:19:22 +02:00
Florent Castelli
373db56a16 blackberry: Remove! 2016-10-11 17:40:32 +02:00
Florent Castelli
83aaf30207 cmake: Use preprocessor for conditional compilation in Common
CommonExtra is gone!
Still need to fix CommonFake later though.
2016-10-11 16:55:29 +02:00
Henrik Rydgård
fb31d3612f Merge pull request #9047 from unknownbrackets/blackberry
Remove Blackberry support from CMake
2016-10-11 08:25:57 +02:00
Henrik Rydgard
c40e507f3d Get rid of some blackberry build stuff
Conflicts:
	CMakeLists.txt
2016-10-10 21:58:54 -07:00
Florent Castelli
853143e9df cmake: Fix ccache setup 2016-10-11 00:49:25 +02:00
sum
5a224d1601 Build fix for non-windows 2016-10-09 12:40:40 +02:00
Neil Munday
7d9eed90e8 Added installation of the SDL game controller database to CMakeLists.txt 2016-09-20 22:04:01 +01:00
Chris Burgener
7d089a0f76 Clean up various files 2016-09-03 19:23:17 -04:00
Chris Burgener
9fb152ce01 Fix non-Windows builds 2016-09-03 15:09:30 -04:00
Chris Burgener
78d1af4b50 Fix builds for non-Win32 2016-09-02 12:53:54 -04:00
Unknown W. Brackets
30e99206c9 UI: Add a generic word wrapper class. 2016-07-04 16:03:22 -07: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
ee29c6c50f http: Allow binding a random port, timeout.
The timeout is useful to allow for shutdown of the thread.
2016-07-03 22:13:45 -07:00
Henrik Rydgård
3147f1ac95 Merge pull request #8775 from unknownbrackets/http
Clean up HTTP server implementation
2016-05-28 12:34:55 +02: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
41e7d3ecde http: Switch to using input/output sinks.
This should be more performant than reading one byte at a time in a loop.
2016-05-26 18:16:38 -07:00
Unknown W. Brackets
27163279d6 Enable ccache in CMakeLists directly.
This makes cmake/clang use ccache on Travis, as well as Blackberry.
2016-05-21 09:31:05 -07:00
Henrik Rydgard
e711a47a75 Complete the separation of the IR compiler frontend from the "Jit" 2016-05-09 20:05:06 +02:00
Henrik Rydgard
f8659b8e1e Move the IR interpreter out into its own file. Rename it in the UI. First CMake and Android fixes. 2016-05-08 22:06:13 +02:00
Unknown W. Brackets
9280bb3eda Merge pull request #8715 from unknownbrackets/tex-replace
Initial texture replacement support
2016-05-01 09:58:16 -07:00
Henrik Rydgard
ffe4c266ef Add CodeBlockCommon base class to remove further arch-specificity in JitBlockCache
Remove unused ArmThunk.
2016-05-01 11:40:00 +02:00
Henrik Rydgard
8b450c8034 Merge NativeJit.cpp/h with JitCommon.cpp/h 2016-05-01 11:39:59 +02:00
Henrik Rydgard
a5be0976bd Remove preprocessor hacks to choose JIT implementation.
Opens up for having multiple JIT implementations available at runtime,
which could be use for experimenting with new JIT compiler types or for
unit testing one JIT on another architecture.

Very few of the newly virtual calls are on any sort of critical path so
hopefully there will not be a performance loss.
2016-05-01 11:39:53 +02:00
Unknown W. Brackets
9039dd606f Move TextureReplacer to Core.
Probably makes more sense here after all.
2016-05-01 00:30:40 -07:00
Unknown W. Brackets
bf39e61458 Setup initial structure for texture replacements. 2016-04-30 13:44:31 -07:00
Henrik Rydgard
7cb6192005 Rename the TransformPipeline files to DrawEngine, and GLES_GPU to GPU_GLES 2016-04-10 10:31:42 +02:00
Henrik Rydgard
96273c6616 Turn off Vulkan in CMake-based and Qt-based builds, for now 2016-03-20 19:30:39 +01:00
Chaoren Lin
1283336034 Fix CMake build for Android.
Seems like some files have been moved.
2016-01-21 15:39:48 -08:00
Unknown W. Brackets
dd5c91108c Use a background thread to load ISO into RAM.
This way we don't get slow startup.  This will also cache the CSO data,
for example, rather than the raw data, using up less RAM.  It might even
be reasonable to enable on 32-bit.
2015-12-19 15:23:25 -08:00
Unknown W. Brackets
df6cbafe0f Measure free disk space to size block count. 2015-11-18 21:56:03 -08:00
Victor Xie
5dd805259b Fixed build on Mac OS X. 2015-11-06 11:13:59 +08:00
Karen Tsai
91418f9e5d Re-add -mmacosx-version-min=10.7 to CMAKE_CXX_FLAGS (because someone removed it at some point?) 2015-11-04 18:09:46 -05:00
Karen Tsai
1ba873a496 Override JIT setting in ppsspp.ini for JIT-incapable environments, fakesign PPSSPP binary via adhoc signing in order to prevent crash-at-launch on iOS 9, separate jailbreak detection logic from JIT support logic, temporary change to only enable JIT on iOS 8 and below. 2015-11-03 12:34:33 -05:00
LunaMoo
ae1cf1d85d Add Display layout editor to use for example on tablets, but also includes automatic screen cropping for 16:9 cases(default).
//Rebased & removed atlas stuff which was added with #8096
//squashed with some improvements
2015-10-31 20:50:02 +01:00
Henrik Rydgård
5ebb5d5630 Merge pull request #8116 from hrydgard/reverb
Implement sceSas' reverb effect, guessing that the reverb is the same as the one in PSX's SPU
2015-10-29 11:13:04 +01:00
Jools Wills
bca9a9011f add RASPBIAN options to workaround threading issues when building for ARMV7 on Raspbian
raspbian is built for an armv6 target, so when building for armv7, there is a problem with the ABI compatibility
for threaded applications. /usr/include/c++/*/ext/concurrence.h - undefining __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 makes it use _S_mutex
as it would when ppsspp is built for an armv6 target

see https://github.com/raspberrypi/firmware/issues/491#issuecomment-151723041

fixes problems found by users on #7479
2015-10-28 05:20:59 +00:00
Henrik Rydgard
85c8f7d3c2 Hook up SasReverb. It sounds more like a buzzsaw than a reverb at the moment, needs debugging.
Added a bit of code that only enables it when a reverbed sound is active. This will need to be turned off later but useful right now for hearing when it's used..
2015-10-27 12:36:30 +01:00
Henrik Rydgård
05687e656a Merge pull request #8107 from joolswills/rpi_fix
fix building for rpi2 by disabling armv7.
2015-10-25 22:46:46 +01:00
Jools Wills
e451cade69 fix building for rpi2 by disabling armv7.
added missing rpi include
correct cflags for rpi1/rpi2 (although rpi2 will build for armv6 for now)
only build Common/ColorConvNEON.cpp on armv7
2015-10-25 17:40:04 +00:00
Henrik Rydgard
edafa9bc17 Centralize the GPU state conversion functions 2015-10-24 23:49:05 +02:00
Henrik Rydgard
92389a4966 Use a common ShaderId class. Start moving shader ID code to GPU/Common 2015-10-24 23:24:06 +02:00
xiushu
14e7658bbb Implement on-screen touch combo keys.
Replace A,B,cross1,square1,triangle1 with number images 1-6

Rebuild the atlas, update the code to use combo keys 1-5

Also add psp_display.png from pull request #8082.
2015-10-24 13:22:43 +02:00
Henrik Rydgard
7f4e473e8c Add new shader viewing tool 2015-10-14 18:10:21 +02:00
Henrik Rydgard
7fee5abf9f x86/x64: Don't use a separate code block for pregenerated functions, just like on ARM 2015-10-08 22:15:28 +02:00
Henrik Rydgard
b7725c4f40 Remove empty header files 2015-10-08 18:54:33 +02:00
mgaver
6a24adc11c Update CMakeLists.txt
iconv_library check
2015-10-08 14:27:15 +09:00
mgaver
fda8cfbbcc Update CMakeLists.txt
Buildfix for Xcode 7(adding iconv library)
In IOS 9, the Default-568h.png file must be located in root app directory.
2015-10-08 13:43:33 +09:00
Henrik Rydgard
5ff5cf1ac7 Add compat.ini as a dependency to our various build systems 2015-09-27 11:50:23 +02:00
Henrik Rydgard
b07b002040 Introduce "Compatibility Flags".
These should be used very restrictively, see comment in Compatibility.h.

Should help #8004, by disabling depth rounding in Fight Night round 3.
2015-09-27 01:23:20 +02:00
Henrik Rydgard
ecbef7a2ff Remove easy_file.cpp/h. Minor cleanups. 2015-09-19 14:29:02 +02:00
Henrik Rydgard
a5d7b32bfe MSVC buildfix, remove color.h 2015-09-19 12:32:57 +02:00
Henrik Rydgård
333ed22907 Remove gfx_es2/vertex_format 2015-09-19 11:07:52 +02:00
Henrik Rydgård
c219793803 Remove the old UI texture class 2015-09-19 11:05:00 +02:00
Henrik Rydgård
ca0a6dc7f9 Remove native audio mixer (Unused in PPSSPP) and stb_vorbis 2015-09-19 10:43:58 +02:00
Henrik Rydgård
95584a8966 Remove bits, varint 2015-09-19 10:35:16 +02:00
Henrik Rydgård
1a59e3820a Remove aabb, hamming, perlin 2015-09-19 10:32:35 +02:00
Henrik Rydgård
58ffa5f38c Remove file/dialog.cpp,h 2015-09-19 10:29:16 +02:00
Henrik Rydgård
df47f41db6 Remove scoped_ptr (now unique_ptr), midi 2015-09-19 10:26:27 +02:00
Henrik Rydgård
45e3b7122b Remove some unused code (error_context, fastlist, stats) 2015-09-19 10:15:24 +02:00
Henrik Rydgård
6ddbe00961 Merge pull request #7971 from sergiobenrocha2/master
Improve FFmpeg detection on debian systems (cmake)
2015-09-18 23:12:44 +02:00
Karen Tsai
11387f834c ENABLE_BITCODE should not be prefixed with CLANG_ 2015-09-17 17:03:11 -04:00
Karen Tsai
aeb9068fa9 Set ENABLE_BITCODE = NO; in generated project.pbxproj (fixes compilation on Xcode 7's iPhoneOS9.0.sdk) 2015-09-17 16:50:00 -04:00
sergiobenrocha2
e81fa01bf0 Improve FFmpeg detection on debian systems; fix build when git is installed but there is no .git folder. 2015-09-16 19:07:25 -03:00
sergiobenrocha2
5ec87f3459 Improve detection of for shared libs in both sdl and Qt (zlib, libzip, snappy and glew). 2015-09-16 00:59:31 -03:00
sergiobenrocha2
c23f51480e Add option to shared libzip and libsnappy in CMakeLists.txt. 2015-09-15 22:46:51 -03:00
Henrik Rydgård
315ff819b4 Merge pull request #7966 from unknownbrackets/hle-minor
Move ThreadQueueList to its own file, minor tweaks
2015-09-13 21:31:12 +02:00
Unknown W. Brackets
e1df8fc45f Centralize sampling params and test optimizations. 2015-09-13 06:38:07 -07:00
Unknown W. Brackets
c03b163537 Move ThreadQueueList to a separate file.
Not reused anywhere, but just so it's a little cleaner.
2015-09-12 13:03:15 -07:00
Unknown W. Brackets
85533dad6e Native merge part 2: update build files.
And a couple minor stragglers.
2015-09-06 13:06:57 -07:00
Henrik Rydgard
ab3468ea02 Move native/gfx_es2/gl_state.cpp/h into GPU/GLES/GLStateCache.cpp/h 2015-09-06 13:45:17 +02:00
Henrik Rydgard
d822cbf60b Move fbo.cpp/h from native into PPSSPP 2015-09-06 13:13:37 +02:00
Unknown W. Brackets
ba15718db3 Track hovering in GE debugger to show pixel value.
This works for texture, framebuffer, depth, and stencil.

Importantly, allows debugging the actual depth values present.
2015-08-23 09:25:05 -07:00
Henrik Rydgard
2430c283a5 More GPU cleaning, removing uses of GPUState.h where not needed.
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.

Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Henrik Rydgård
0763dbc641 Cleanup and comments in sceGe.cpp 2015-07-24 19:52:42 +02:00
Unknown W. Brackets
808db2482a Initial structure for vertexjit tests. 2015-07-03 15:25:40 -07:00
Unknown W. Brackets
88b23460f1 Add a file loader to perform disk caching.
Had to do some tricks to handle gameinfocache threads properly.
2015-07-02 20:58:58 -07:00
Unknown W. Brackets
da827d9ef0 Move file loader code into directories.
Not making sense to put these all in the same fiel anymore.
2015-07-02 20:58:53 -07:00
Sacha
c27e634795 Blackberry: Fix build. Blackberry doesn't support XOPEN_SOURCE=700. 2015-06-17 17:32:13 +10:00
Henrik Rydgård
4a0ae081fc Merge pull request #7793 from alucryd/system_ffmpeg
Try to dynamically link against system ffmpeg when possible
2015-06-14 00:03:43 +02:00
Henrik Rydgard
084aad74c3 Make GameInfoCache understand PSP savedata as a "game" type. Use it to create a basic savedata listing screen. 2015-06-11 20:22:16 +02:00
Maxime Gauduin
983ae517e1 Try to dynamically link against system ffmpeg when possible 2015-06-01 23:03:37 +02:00
Henrik Rydgård
cbe1a1890e Merge pull request #7772 from jbeich/bsd_misc
Miscellaneous portability fixes
2015-05-28 13:05:02 +02:00
Karen Tsai
8a57e8cda3 Do not copy ICNS assets (iOS uses PNGs) or generate a MacOS folder when building for iOS 2015-05-27 03:37:49 -04:00