Commit Graph

320 Commits

Author SHA1 Message Date
Unknown W. Brackets
496b2bff35 Vulkan: Fix fragment depth rounding.
Was slightly off in the accurate depth path.
2017-12-26 16:19:11 -08:00
Unknown W. Brackets
766b40aad8 GPU: Reset GPUBackend on graphics init.
This way, when using a port that doesn't support Vulkan, it doesn't just
silently use upside down GL, etc.
2017-12-26 16:02:55 -08:00
Henrik Rydgård
7d0fc9ce65 Rework GL lost-device to work more like Vulkan. Gets rid of gl_lost manager etc. 2017-12-07 15:05:59 +01:00
Henrik Rydgård
023c3736c6 Disable anisotropic filtering in headless, screws up mipmap test 2017-11-15 18:14:04 +01:00
Henrik Rydgård
830645e7c5 Fix headless to work better in vulkan mode 2017-11-15 15:35:15 +01:00
Unknown W. Brackets
9080f41642 Headless: Prevent segfaults with Vulkan. 2017-11-14 22:34:18 -08:00
Henrik Rydgård
d618b3673b Count readbacks in a frame and show in GPU debug stats. 2017-11-08 11:57:53 +01:00
Henrik Rydgård
b9ba525de1 Don't call functions in asserts, they get compiled out in release... 2017-10-20 14:45:00 +02:00
Henrik Rydgård
017d3da067 Allow D3D9 context creation to bail if shader compilation fails (D3D9 runtime not installed).
Fixes an issue where after switching to D3D9 on a PC without the D3D9 runtime, it's impossible to start PPSSPP anymore.
2017-10-20 11:53:07 +02:00
Unknown W. Brackets
40f663664b Headless: Oops, call SDL_Init(). 2017-09-20 10:49:32 -07: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
Unknown W. Brackets
5a3d229d04 Headless: Add support for SDL. 2017-09-20 07:24:58 -07:00
Henrik Rydgård
6a1fa728d8 Remove Globals.h 2017-08-31 17:15:22 +02:00
Henrik Rydgård
1b05a54800 Remove the Mipmap setting. One step forward for #8171 2017-05-26 10:21:20 +02:00
Unknown W. Brackets
6b3944d329 UnitTest: Correct vertex and jit tests.
We now convert texcoords to floats.
2017-05-06 18:45:04 -07:00
Unknown W. Brackets
3b4103cb3b System: Use a separate API for bool props.
This simplifies defaulting, instead of -1 being "true".
2017-04-29 17:35:12 -07:00
Unknown W. Brackets
90f3ae14e0 Windows: Simplify host shutdown.
The whole nativeHost/oldHost thing is unnecessary.

This also fixes gl lost holder mismatches.
2017-04-29 12:04:54 -07:00
Unknown W. Brackets
b2711c2ebf Headless: Enable mipmaps. 2017-04-22 18:17:48 -07:00
Unknown W. Brackets
19a3e166ec Headless: Fix DirectX11 support on Windows. 2017-04-22 18:17:03 -07:00
Unknown W. Brackets
930d6c0558 Headless: Fix graphics tests.
The draw context wasn't being passed through, so it was segfaulting.
2017-04-20 21:10:59 -07:00
Henrik Rydgard
cf365bb257 Minor cleanup with GOLD define - only use it in System_GetPropertyInt 2017-04-05 16:21:08 +02: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
LunaMoo
4a2677e0c6 Revert unintentional change from: 429bf5d8b3 2017-03-23 11:54:54 +01:00
Henrik Rydgard
4f707a1022 Simplify logging code some more. Cleaner log output on Android. 2017-03-18 10:47:36 +01:00
Henrik Rydgard
1ccca2ef33 We don't really support different listeners per log type, so let's get rid of that fiction. 2017-03-17 17:57:32 +01:00
Henrik Rydgård
e17772b58d Merge pull request #9430 from unknownbrackets/input-state
Remove legacy InputState tracking
2017-03-15 10:16:14 +01:00
Unknown W. Brackets
9e390510df Remove legacy InputState. 2017-03-14 22:07:07 -07:00
LunaMoo
429bf5d8b3 Use $(DefaultPlatformToolset)_xp for easier VS builds with different toolsets. 2017-03-13 21:40:08 +01:00
Henrik Rydgard
b9b3a022fb Switch another enum to enum class 2017-03-02 12:36:54 +01:00
Florent Castelli
6852c602b9 glew: Move to ext 2016-12-18 21:13:45 +01: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
Florent Castelli
4145b60a0e symbian: Remove! 2016-10-11 18:49:08 +02:00
Florent Castelli
373db56a16 blackberry: Remove! 2016-10-11 17:40:32 +02:00
Unknown W. Brackets
fa0e88f1b7 Add a flag to use the display vfb for screenshots.
This fixes proportions of reporting, savestate screenshots, and TAS
recording for PS1 ports, mainly.
2016-09-25 16:32:18 -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
afdd01571c Uncouple savestates from NativeApp some.
Still have osm.
2016-05-27 20:41:37 -07:00
Unknown W. Brackets
2353cf6e85 Delete no longer needed linkage hacks. 2016-05-27 20:25:10 -07:00
Unknown W. Brackets
95d912c378 Get rid of the input_state global linkage. 2016-05-27 20:24:01 -07:00
Unknown W. Brackets
a5560c657e Headless: Use --ir instead of -ir.
Other multi-letter options are prefixed too, let's be consistent.
2016-05-14 19:23:52 -07:00
Henrik Rydgard
ce8aae5ed1 Make the IRJit core selectable in developer tools 2016-05-08 01:43:27 +02:00
Henrik Rydgard
e611915a52 Rename some GPU classes and enums to fix some consistency issues between the backends. 2016-04-10 10:21:48 +02:00
Unknown W. Brackets
d909b0395b Make tests use high quality splines. 2016-04-09 21:10:41 -07:00
Unknown W. Brackets
add506a0d3 Cleanup differences in aniso handling.
Some places were not handling it as a power of two.
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
c770349475 Switch headless to using graphics contexts.
Vulkan doesn't work yet, needs some thin3d for the command buffer?
2016-03-20 19:31:02 +01:00
Henrik Rydgard
b7b0b59e9a Update Vulkan headers to 1.0.5. Remove references to vulkan-1.lib as we load dynamically. 2016-03-20 19:31:02 +01:00
Henrik Rydgard
4ddca8607f Further vulkan stuff 2016-03-20 19:26:12 +01:00
Henrik Rydgard
73d6d2dc72 More vulkan in thin3d 2016-03-20 19:25:53 +01:00
Henrik Rydgard
2a449f78bb More vulkan fixing 2016-03-20 19:25:30 +01:00
Henrik Rydgard
c64064024d Initial vulkan code.
This was squashed from nine commits but using old versions of Vulkan.
2016-03-20 19:18:35 +01:00
Henrik Rydgard
35b6c7341b Fix a bunch of memory leaks, after enabling file+line-number memory leak tracking for the MS Debug CRT.
Few of these were serious, most were on-exit, but good to have a cleaner memory report after running.
2016-02-10 15:36:10 +01:00
Unknown W. Brackets
d5196b44f9 Minor tweaks. 2016-01-17 09:45:55 -08:00
Henrik Rydgard
3ba911bf07 Replace some calls to fopen with File::OpenCFile (utf8). 2016-01-17 15:59:20 +01:00
Unknown W. Brackets
6c38b22467 Fix crashes when running games, tests, etc.
Need the graphicsContext value to stick around.
2016-01-03 11:05:36 -08:00
Henrik Rydgard
3398288bd0 Some cleanup around input_state 2016-01-01 14:40:18 +01:00
Henrik Rydgard
15de6e6b98 GraphicsContext: Abstract away things like swapbuffers etc before adding even more backends.
Needed to prevent clutter all over the codebase.

Does not go all the way yet, goal would be a common render loop between platforms but not there yet.
2016-01-01 14:40:16 +01:00
Unknown W. Brackets
86127b3d0d Update armips to latest version.
The new version has some speed and other improvements.
2015-12-26 20:30:35 -08:00
Henrik Rydgard
732b1239e7 Add some permission infrastructure, add an ugly button that asks you to grant STORAGE permission if necessary. 2015-12-17 22:41:50 +01:00
Unknown W. Brackets
9df0c2758b Check OpenGL extensions in headless.
This makes some tests more correct on hardware that supports more
features.
2015-11-15 00:17:31 -08:00
Henrik Rydgard
44be9f2a50 Move Windows GPU init code into Windows/GPU 2015-11-03 23:22:09 +01:00
Henrik Rydgard
b998131581 Move the symbol map to the heap, deallocate it when no game is running. 2015-10-31 23:01:19 +01:00
Henrik Rydgard
bfed830f91 Remove the ability to disable rounding mode support. It's time. 2015-10-08 14:54:42 +02:00
Henrik Rydgard
0f4df6c67b Add some missing _ARCH_32 and _ARCH_64 definitions to MSVC project files.
Fixes obscure crash in Moppi PSP Flower homebrew.
2015-09-23 19:30:14 +02:00
Henrik Rydgard
3232e46c36 Make debug build nearly warning free in MSVC 2015 2015-09-17 22:02:15 +02:00
LunaMoo
fc5d4db3cd Update Headless.vcxproj 2015-09-07 10:01:44 +02: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
fdea85138c Update project files, fix minor issues for VS 2015 2015-09-06 19:32:15 +02:00
Henrik Rydgard
08735b806f Remove silly use of gstate.SetVSyncInterval 2015-09-06 13:36:33 +02:00
Henrik Rydgard
d822cbf60b Move fbo.cpp/h from native into PPSSPP 2015-09-06 13:13:37 +02:00
Henrik Rydgard
72ae497350 Remove glstate usage except in the GPU implementation. Prepare for moving it into PPSSPP. 2015-09-06 12:42:15 +02:00
Unknown W. Brackets
4ddc12ce40 Generate windows version automatically.
This allows for the same customization git-version.cpp allows.

Also, improve messaging slightly during build if git is missing, and
disallow reporting for builds generated without version info to make it
clear to users.
2015-08-16 14:03:59 -07:00
Henrik Rydgard
cde585a29a Include dependency cleanup 2015-07-29 11:48:20 +02:00
Henrik Rydgard
aae254254b Fix bad cleanup change, thanks to tapcio for pointing it out in 07b17560f 2015-07-28 01:09:48 +02:00
Unknown W. Brackets
90093faffc Ensure headless doesn't crash when profiler on.
Obviously, the frame profiler graph isn't very useful in headless (maybe
it could be?) but at least, it's nice to not have to change the .h and
rebuild all kinds of files when using headless for testing.
2015-05-30 12:53:57 -07:00
Henrik Rydgard
c2cf2bd97e Move some more color conversion functions to ColorConv 2015-04-08 22:52:47 +02:00
Unknown W. Brackets
9a8cd2c067 Log some file reading errors. 2015-04-08 12:14:07 -07:00
Chin
37f50a3792 Change to pass some arguments by reference 2015-03-01 16:49:00 +01:00
Henrik Rydgard
001eda39e0 Add really primitive save preview on "Next Slot". Improve pause screen layout a little. 2015-02-01 18:04:50 +01:00
Henrik Rydgard
28cd190e0a Temporary workaround for Debug build linking problem (ffmpeg's static release CRT clashes with static debug CRT) 2015-01-24 16:37:01 +01:00
Henrik Rydgard
4ebdf49fb6 Update ffmpeg to master, also switching to static linking of MSVCRT. Don't forget to update your submodules! 2015-01-24 13:30:37 +01:00
Henrik Rydgard
cae58cafee Revert "Merge pull request #7361 from hrydgard/color-conv-centralize"
This reverts commit f1b57dabf5, reversing
changes made to 41001637ce.
2015-01-22 19:53:32 +01:00
Henrik Rydgard
2623a48b4a Centralize color conversion functions in Common/ColorConv. 2015-01-20 17:32:54 +01:00
Henrik Rydgard
62d86f3246 Remove useless indirection class "PSPMixer" 2015-01-11 12:02:49 +01:00
Unknown W. Brackets
bafa7d0670 Add git-version to more than just Core.
This won't catch native or armips, but it will catch more before and still
won't make the build wrongly dirty all the time.

See #5575.
2014-12-02 22:55:19 -08:00
Henrik Rydgard
d24abb3af0 More GetPointer cleanup. memCardDirectory->memStickDirectory. 2014-10-19 23:20:51 +02:00
Henrik Rydgard
dda3ca3d5f D3D9 init error reporting improved. Use "override" properly in Host. 2014-09-20 21:55:58 +02:00
Unknown W. Brackets
9f3deddef6 d3d: Release on shutdown in headless.
Could sync it up, just want to be able to run tests without major leaks.
2014-09-07 13:34:14 -07:00
Unknown W. Brackets
cdbcc12a4e Oops, flipping was off by one.
That's why software and directx9 were off, arg.
2014-08-30 13:19:52 -07:00
Unknown W. Brackets
f842d309b2 Swap RGBA/BGRA when comparing screenshot data. 2014-08-30 12:26:12 -07:00
Unknown W. Brackets
b68be67d9a Workaround headless help not showing graphics. 2014-08-30 09:57:56 -07:00
Unknown W. Brackets
bc66a43fb3 Centralize dx9 and gles headless stuff.
Well, could be cleaner, but this way all the comparison stuff works.
2014-08-30 09:55:40 -07:00
Unknown W. Brackets
af9e0510c3 Use the debug interface to compare screenshots.
This way it's already implemented in all backends.
2014-08-30 09:45:51 -07:00
Unknown W. Brackets
42aa494aeb d3d: Get some initial GE previews working.
Wrong colors.
2014-08-24 21:52:47 -07:00
Unknown W. Brackets
afe2a17ef5 Compile projects using GLEW_STATIC.
To avoid compilation warnings about dllimport.
2014-08-23 21:53:33 -07:00
Henrik Rydgård
5d836bfa5a Merge pull request #6765 from hrydgard/thin3d
Switch UI drawing from GL to Thin3D. This activates the D3D9 path as well.
2014-08-23 10:52:21 +02:00
Henrik Rydgard
92c3775d95 Start hooking up D3D 2014-08-22 20:55:04 +02:00
Unknown W. Brackets
dc91dc1ce8 x86jit: Support fpu rounding modes for mul, etc.
Fixes Gods Eater Burst loading PSP savedata, but can no longer load old
savedata.
2014-08-21 23:59:55 -07:00
Unknown W. Brackets
5c470a1923 Remove bgm and sfx volume settings.
They don't actually work in all games, and this only confuses users.

Also, the default 7 lowers the volume of audio detected as bgm or sfx, but
not other volume.  This means that some audio may have played too loud in
some games by default, which will be fixed by this change.
2014-08-17 14:16:59 -07:00
Henrik Rydgard
39cde7fc48 Hide "immersive mode" on pre-kitkat Android. 2014-07-20 12:11:50 +02:00
Unknown W. Brackets
098e763b82 Enable block transfers in headless for testing.
This allows us to do memory (not just screenshot) tests with GLES, yay.
2014-06-14 08:44:14 -07:00
Unknown W. Brackets
63b5ec3d85 Allow specifying a root path for host0:/.
This way, similar to the PSP, we can have a root path outside the test.
2014-04-19 21:43:09 -07:00
Unknown W. Brackets
4c35c1bb13 Attempt to load VFS in headless on Android.
Otherwise we don't get fonts, and savestates fail to load.
2014-03-25 00:49:03 -07:00
Unknown W. Brackets
36c3a0dd68 Make it possible to load a savestate in headless.
This is primarily useful to reproduce crashes or test performance.
2014-03-25 00:46:21 -07:00
Unknown W. Brackets
e3506ead69 Clear the symbol map between each test.
This way we could, for example, test function replacement properly.

Actually slows down tests because it spends more time correctly
determining the function boundaries.
2014-03-02 10:20:40 -08:00
Unknown W. Brackets
2e69aa913d Run tests with the max volume set. 2014-02-17 01:39:54 -08:00
Henrik Rydgard
7ac99e866a Delete temp file (accidentally committed) 2014-02-10 18:32:13 +01:00
Henrik Rydgard
c6caff61bf Update native with buildfix. Fix some resizing issues. 2014-02-10 15:14:45 +01:00
Henrik Rydgard
8b6b491820 Remove obsolete outputWidth/outputHeight 2014-02-10 12:44:35 +01:00
Unknown W. Brackets
cd4cd77938 Clean up defines in MSVC project files.
This way they're all basically the same.  A lot of cases where
debug/release/etc. where inconsistent...

Also, define USING_WIN_UI.
2014-02-08 16:38:44 -08:00
Unknown W. Brackets
2c204e8028 Update project to MSVC 2013 tools.
Retaining XP support, using SDK 7.1a (v120_xp.)  Disables SSE2 flag on x64
since it's implied and causes compile warnings.
2014-02-08 13:41:28 -08:00
Henrik Rydgård
2871633e36 Merge pull request #4750 from unknownbrackets/ui-tweaks
Support pinning paths in the game browser
2013-12-16 06:08:05 -08:00
Unknown W. Brackets
0c7e9b9849 headless: default to single core.
Was zero before, causing divide by zero issues.
2013-12-15 11:59:24 -08:00
Unknown W. Brackets
4bc86afd5e Adjust some project filters. 2013-12-14 22:36:41 -08:00
Henrik Rydgard
109decf481 Actually fix headless build, doh 2013-12-08 12:12:45 +01:00
Unknown W. Brackets
83dd3c74d6 Fix a stupid mistake in the headless timeout.
Although, still need to figure out why it gets corrupted.
2013-12-06 21:18:26 -08:00
Henrik Rydgard
32f479b0a6 Assorted log spam reductions.
Also let Java know of some important events. Not used for anything yet.
2013-12-04 17:43:00 +01:00
Unknown W. Brackets
f1f87e7b6f Workaround random headless timeouts on Android/etc.
Seems like we have stack corruption, so probably it's not that XMM etc.
need to be saved.  Not sure what exactly is up.
2013-11-23 10:42:28 -08:00
Unknown W. Brackets
fa7467f03d Try to find the flash0 directory in headless. 2013-11-17 10:15:49 -08:00
Unknown W. Brackets
c1c1b5213e Fix logging missing in headless with --log. 2013-11-17 10:15:13 -08:00
Unknown W. Brackets
712b582d26 Remove coreParam.disableG3Dlog and enableDebugging.
One was uninitialized, the other one unused.
2013-11-09 11:02:12 -08:00
Unknown W. Brackets
5d523ea06a Add android-ndk-profiler v3.2.
This allows fairly easy profiling on Android without rooting.
2013-11-02 21:54:45 -07:00
Unknown W. Brackets
2757fb7096 Ignore import warnings from ffmpeg.
Seems to be a known issue with the msvc ffmpeg stuff.
2013-10-26 17:37:08 -07:00
The Dax
1f1c8e4a48 Remove avdevice.lib linker dependency/input for Headless and PPSSPP. 2013-10-26 15:54:17 -04:00
Henrik Rydgård
f73aec2570 Only disable buffered rendering by default on Galaxy Y instead of all
Armv6 devices.

Would have like to use gpu feature flags but GL isn't necessarily initialized
when we load the config. Will need to find a different solution.

Also a buildfix for headless non-windows.
2013-10-25 11:47:44 +02:00
Unknown W. Brackets
04f1df4415 Set directories in headless on Windows.
Caused some tests to fail.
2013-10-24 21:29:48 -07:00
Unknown W. Brackets
c486a09c2c Use a better default font path on Linux/Mac OS X.
This way people don't have to copy to ~/.ppsspp/flash0.
The override in ~/.ppsspp/PSP/flash0 still works.
2013-10-20 23:45:56 -07:00
Unknown W. Brackets
5554865ebb Fix headless auto-compare when expected have \r's. 2013-10-14 23:55:18 -07:00
Unknown W. Brackets
b190208aa5 Fix non-Windows headless build. 2013-10-14 02:35:47 -07:00
Unknown W. Brackets
af2ccbb9da Rename flashDirectory to flash0Directory. 2013-10-12 16:08:39 -07:00
adrian17
58d8bc86c5 Removed two functions as they are also in Native/file.
Also, removed TabsToSpaces() from the header as it no longer exists.
2013-09-28 23:05:36 +02:00
Unknown W. Brackets
54f2bc8262 Don't frameskip unthrottle in headless.
Could make graphic tests wrong or something.
2013-09-19 00:29:19 -07:00
Ced2911
8ec6ca8dc0 [dx9] correct window size 2013-09-18 14:40:53 +02:00
Henrik Rydgård
198434c6eb Merge pull request #3823 from unknownbrackets/headless
Fix headless on buildbot (command line length), speed up further
2013-09-18 00:48:17 -07:00
Unknown W. Brackets
48eef19538 Optionally read test filenames from stdin.
This way we don't hit command line length limits.
2013-09-18 00:17:30 -07:00
Unknown W. Brackets
0735a9a679 Just disable PPGe during tests, should be okay. 2013-09-17 23:13:13 -07:00
Unknown W. Brackets
7a81b802cc Don't shutdown gl in headless so quickly.
Oops.
2013-09-17 22:50:43 -07:00
Henrik Rydgård
2de4db3e31 Merge pull request #3818 from unknownbrackets/headless
Headless - use auto compare, just build test list in test.py
2013-09-17 09:08:20 -07:00
Unknown W. Brackets
43c3fd9386 Remove compare logic from test.py, use --compare. 2013-09-17 08:40:20 -07:00
The Dax
d102baacd0 Prep PPSSPP for Visual Studio 2013. 2013-09-17 10:27:06 -04:00
Henrik Rydgård
db92f26e56 Merge pull request #3806 from thedax/win32UITranslation
Win32 UI: Rewrite most of the menu translation code to be cleaner and simpler.
2013-09-17 06:43:24 -07:00
Unknown W. Brackets
0185825b23 Support the verbose test compare parameter. 2013-09-17 00:15:19 -07:00
Unknown W. Brackets
c96ea1d226 List failed tests in autocompare. 2013-09-17 00:02:53 -07:00
Unknown W. Brackets
e72a06503e Support running multiple tests in a row. 2013-09-16 23:58:42 -07:00
Unknown W. Brackets
9a2ea4cdc1 Move the actual test run to its own function. 2013-09-16 23:49:41 -07:00
Unknown W. Brackets
5d99fd8a98 Skip trailing newlines in test comparison. 2013-09-16 23:49:09 -07:00
Unknown W. Brackets
3e6df2d7aa Just save XMM0-XMM15 on x64.
Not really sure why but seems like VS2010 expects XMM4 to be preserved.

Fixes headless on x64.
2013-09-16 23:17:34 -07:00
The Dax
426e6630d9 Rewrite most of the translation stuff to be cleaner.
Also fix a bug where in-game only menu items become enabled after selecting a language when we're in various NewUI menus.
Rename Config::ilanguage to Config::iLanguage for consistency with other Config variables.
2013-09-16 18:45:09 -04:00
Unknown W. Brackets
94af2b388b Support a timeout directly in headless.
Obviously, though, if headless infinite loops we're screwed.
2013-09-16 08:36:10 -07:00
Unknown W. Brackets
57b636816b Add an internal comparison algorithm to headless.
This is slightly smarter than the test.py version, and should be
completely compatible.  It doesn't handle timeouts though.
2013-09-16 08:30:02 -07:00
Unknown W. Brackets
35cd59ae87 Remove hack to skip messages from native.
Native is not so talkative anymore.
2013-09-16 08:19:53 -07:00
Unknown W. Brackets
c2e20e32e7 Buffer test output in headless a bit.
Just to newlines.  Cuts from profile by like 70%.

Seems like the bottleneck is Python, though...
2013-09-16 08:19:53 -07:00