Henrik Rydgård
22e65ba80d
Get rid of ugly alignment macros and some other cruft, we now have alignas(16) from C++11
2017-08-31 01:14:51 +02:00
twinaphex
157d04b2a5
Simplify this conditional
2017-08-30 19:47:15 +02:00
twinaphex
db404adb95
More mingw patches
2017-08-29 22:24:20 +02:00
twinaphex
78b6636a2b
Remove this too - we will use UNICODE and _UNICODE defines for
...
mingw build
2017-08-29 18:49:36 +02:00
twinaphex
cc24b158ac
Change this to _MSC_VER
2017-08-29 18:46:31 +02:00
twinaphex
4e040986ec
Removed MSVC check
2017-08-29 18:45:15 +02:00
twinaphex
418e341b32
Patches to make it possible to compile with mingw, pt. 1
2017-08-29 18:27:46 +02:00
Henrik Rydgård
8d0498303a
Fix a PIC compliance bug in the VFPU. Comment other cases properly (for easy searching).
2017-08-29 11:45:12 +02:00
Henrik Rydgård
871fa713ed
Fix bug in vulkan init. Add some sanity checks to GL shader cache loading.
2017-08-28 15:22:18 +02:00
Henrik Rydgård
6a0f65764d
Minor cleanups
2017-08-28 15:04:28 +02:00
Henrik Rydgård
21d85617c1
Buildfix
2017-08-28 14:37:15 +02:00
Henrik Rydgård
55e9807a53
Separate VulkanContext::CreateDevice into ChooseDevice and CreateDevice to give an opportunity to enable extensions.
2017-08-28 14:12:56 +02:00
Henrik Rydgård
8c1bfb876f
Assorted cleanup of Vulkan init code. Show Vulkan extensions in system info.
2017-08-28 13:47:31 +02:00
Henrik Rydgård
e1f991a096
Linux buildfix
2017-08-20 21:51:48 +02:00
Henrik Rydgård
9c3549f0be
... And also for the vertex decoder (DenseHashMap)
2017-08-20 19:18:50 +02:00
Henrik Rydgård
10cebb4195
32-bit buildfix
2017-08-20 15:33:53 +02:00
Henrik Rydgård
6ffb3d6b53
Buildfix
2017-08-20 14:58:10 +02:00
Henrik Rydgård
237cca683b
Maintain the hashmap from time to time. Fix a bug in count reset on grow.
2017-08-20 13:34:11 +02:00
Henrik Rydgård
e0e13e191f
Replace the most critical unordered_maps and maps with two new maps: FastHashMap and PrehashMap.
2017-08-20 11:30:19 +02:00
Henrik Rydgård
750c124c33
Vulkan: Fix some inefficient command pool usage, might also fix a race condition
2017-08-18 17:09:48 +02:00
Henrik Rydgård
560eaa5390
Vulkan: Add code (disabled) to be able to run with more in-flight frames. Only improves performance marginally and needs more testing.
2017-08-17 17:57:37 +02:00
Henrik Rydgård
d60bb27cd9
Merge pull request #9906 from hrydgard/fastrunloop-optimize
...
GPU FastRunLoop optimizations
2017-08-17 16:25:15 +02:00
Henrik Rydgård
2c4e5e2303
Fastpath in fastrunloop when diff=0. Remove need for Execute for UV scale/offset.
2017-08-17 15:20:16 +02:00
Henrik Rydgård
5e788ffadf
Implement vertex caching for Vulkan.
2017-08-17 11:22:45 +02:00
Henrik Rydgård
bc76c8d541
Cleaner Vulkan shutdown
2017-08-15 17:30:37 +02:00
Jan Beich
e33acdc5e9
Common: fix MAP_32BIT after 9f24203ef8
...
9f24203ef8
added 0x20000000 as a default fallback address hint which
unconditionally disabled MAP_32BIT. FreeBSD cannot use the hints
because without adjusting RLIMIT_DATA lower addresses are reserved for
brk(2) style heap. So, don't try to use hints with MAP_32BIT.
2017-07-26 15:25:54 +00:00
Henrik Rydgård
033676ca4d
Vulkan debug mode: In case of missing validation layers, warn, don't error out.
2017-07-13 23:36:53 +02:00
Henrik Rydgård
f7fea57bb6
More RIP addressing in software skinning..
2017-07-07 15:12:57 +02:00
Henrik Rydgård
837118d230
More RIP elimination
2017-07-07 15:07:56 +02:00
Henrik Rydgård
567937fa4d
x64: Enable non-RIP addressing for FPU registers
2017-07-07 11:33:07 +02:00
Henrik Rydgård
381c4ca4b2
X64: Fix bug in a case in the MOVQ emitter : rex byte should be after the 0x66 prefix
2017-07-07 11:33:07 +02:00
Henrik Rydgård
0645677fea
Access FPU temps through CTXREG
2017-07-07 11:33:06 +02:00
Henrik Rydgård
7c3b37c561
More RIP elimination
2017-07-07 11:33:05 +02:00
Henrik Rydgård
d82f90f1b2
More RIP removal
2017-07-07 11:33:05 +02:00
Henrik Rydgård
80b82ecd81
Buildfix attempt
2017-07-07 11:33:02 +02:00
Henrik Rydgård
e6e96c0d89
Fix build with NDK 15. This does force us to make do with 32-bit file sizes...
2017-07-03 16:25:12 +02:00
Henrik Rydgård
7da5dfcdd7
Don't use stat64 unless we need to
2017-07-03 16:14:41 +02:00
Unknown W. Brackets
9dced68812
Core: Buildfix.
2017-06-24 14:19:25 -07:00
Simonas Kazlauskas
55c193ce78
Remove use of C file api in LocalFileLoader
...
Instead use native system calls.
2017-06-24 21:07:37 +03:00
Simonas Kazlauskas
3f63c29736
Also support atomic windows readAt
2017-06-23 18:40:00 +03:00
Unknown W. Brackets
531c6682b7
Vulkan: Increment engine version.
...
Since we are kinda majorly different now.
2017-05-31 20:04:11 -07:00
Henrik Rydgård
33d4f8c7ad
Vulkan: Fix minor bug when clearing the back buffer (loaded stencil for no reason)
2017-05-31 13:37:47 +02:00
Unknown W. Brackets
cb3db559bd
SoftGPU: Jit the linear sampling too.
...
For now, just reducing overhead. Could be smarter.
2017-05-30 22:57:46 -07:00
Henrik Rydgård
901b62ae54
Merge pull request #9730 from LunaMoo/HomebrewIdent
...
Fix a bunch of emu features for Homebrew by better identification.
2017-05-30 14:57:31 +02:00
Henrik Rydgård
996d0e9508
Oops.
2017-05-30 14:54:12 +02:00
LunaMoo
5e0f8141d2
Corrections, some %i->%d around other code as well.
2017-05-30 13:52:29 +02:00
Henrik Rydgård
fede9a05fb
Only show the Vulkan setting if Vulkan might be available.
2017-05-30 10:38:17 +02:00
Henrik Rydgård
38b50501c2
Clearing fix, drawpixels fix/hack
2017-05-30 09:36:17 +02:00
Henrik Rydgård
c173da49d3
Fix a number of bugs and stuff affecting Vulkan on Mali
2017-05-30 09:36:17 +02:00
Henrik Rydgard
0c70735bc4
Buffered rendering is starting to work, though still kinda broken.
2017-05-30 09:36:17 +02:00
Henrik Rydgård
a7dd6d6085
Further steps towards Vulkan framebuffer support
2017-05-30 09:36:17 +02:00
Henrik Rydgard
4407445d50
Separate BeginFrame from BeginSurfaceRenderPass
2017-05-30 09:22:40 +02:00
Unknown W. Brackets
c5d1c1cd1c
Android: Fix minor typo.
2017-05-27 22:33:47 -07:00
Unknown W. Brackets
9b7f43db04
Add additional button defines.
...
Not yet functional (overlap with virtkeys.)
2017-05-27 10:25:04 -07:00
Henrik Rydgård
21fe73c8e7
Switch strncpy to truncate_cpy in a bunch of places.
2017-05-26 19:04:08 +02:00
Henrik Rydgård
0ec1e5e3b2
Don't erase and rewrite the dispatcher when the cache is cleared. Fixes #9708
2017-05-26 15:48:03 +02:00
Henrik Rydgård
d9695da3a5
Make extra sure that asserts arrive in the Android log.
2017-05-26 11:59:15 +02:00
Henrik Rydgård
6d58a8d8f6
Move up Software Rendering to Rendering where it belongs. Makes it easier to turn it off if enabled by accident. Also warn if used and it runs slow.
2017-05-18 14:56:10 +02:00
Henrik Rydgard
d4e1fc8d93
More vulkan shutdown fixes
2017-05-07 11:08:09 +02:00
Henrik Rydgard
5974e0ee6d
Work towards a clean vulkan shutdown.
2017-05-07 10:40:11 +02: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
LunaMoo
a9d9063680
Handle more mouse buttons(middle, 4, 5)
2017-04-27 13:54:38 +02:00
Unknown W. Brackets
bf02f7d98b
Vulkan: Detect swapchain init failure.
...
This seems to be a driver bug, and occurs on NVIDIA when OpenGL has
previously been inited. Or we're not cleaning something up properly...
but there's a driver error logged to debug output.
2017-04-15 16:26:26 -07:00
LunaMoo
4a2677e0c6
Revert unintentional change from: 429bf5d8b3
2017-03-23 11:54:54 +01:00
Henrik Rydgård
4bad28046b
UWP: Save memory by only committing the ranges we need, instead of doing a giant allocation.
2017-03-23 10:02:29 +01:00
Henrik Rydgård
29ad3180a0
Add hack to make the JIT stable(r) on UWP ARM. Can't make it right without FlushInstructionCache which is not available. Sigh...
2017-03-23 10:02:29 +01:00
Henrik Rydgård
5880f37598
Simplify log initialization a little. Minor logging improvments in native. Don't disable logging in UWPMain
2017-03-23 10:02:29 +01:00
Henrik Rydgard
792dd1557c
Improve StorageFileLoader enough to actually kind of work
2017-03-23 10:02:28 +01:00
Henrik Rydgard
ff2b6b3fca
Assorted cleanup, UWP memory map fixes. PSPFlower runs in both 32-bit and 64-bit.
2017-03-23 10:02:28 +01:00
Henrik Rydgard
4ced81b1df
UWP: Hook up basic touch/mouse input. Start work on loading from a StorageFile. Getting closer to starting to boot a game
2017-03-23 10:02:28 +01:00
Henrik Rydgård
fdfc572b69
Misc logging improvments, minor safety check
2017-03-20 13:07:22 +01:00
Unknown W. Brackets
a1f59deafe
Fix some type narrowing warnings and typos.
2017-03-19 07:44:31 -07:00
Henrik Rydgard
961157551a
Another buildfix
2017-03-18 11:38:25 +01:00
Henrik Rydgard
7c0761ef15
Buildfix
2017-03-18 11:11:27 +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
a5d77f940a
More cleanup
2017-03-17 18:00:24 +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
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
f3c518ac7f
Remove unused AxisPos.
2017-03-13 23:08:09 -07:00
LunaMoo
429bf5d8b3
Use $(DefaultPlatformToolset)_xp for easier VS builds with different toolsets.
2017-03-13 21:40:08 +01:00
Henrik Rydgård
eb73a28140
Add new log category FRAMEBUF
2017-03-13 13:55:29 +01:00
Henrik Rydgård
6062262431
Add a comment explaining why a strncpy can't be replaced by truncate_cpy, because it would break savestates.
2017-03-13 13:55:29 +01:00
Henrik Rydgard
b0bd7e3c6f
Minor changes for compatibility with VS2017
2017-03-12 17:33:00 +01:00
Henrik Rydgård
e74749f2b2
A function renamed, some logging improvements
2017-03-10 00:11:00 +01:00
Henrik Rydgard
afc27c30eb
Quick buildfix (should probably just enable exceptions on Android)
2017-03-07 20:10:18 +01:00
Henrik Rydgård
ed16096365
Don't crash if not enough memory to save a state. Very annoying.
...
Minor tweaks.
2017-03-07 15:32:34 +01:00
Henrik Rydgård
a895936913
More log cleanup. Fix resize issue: Fixes #9392
2017-03-06 13:50:22 +01:00
Henrik Rydgård
440e72d250
Clean up among the logs. Remove MASTER_LOG.
2017-03-06 13:10:23 +01:00
Henrik Rydgård
cfe2621604
LogManager: Hook up save/load, remove "long names"
2017-03-06 11:44:35 +01:00
Henrik Rydgard
de3e906795
Linux buildfix
2017-03-05 11:25:07 +01:00
Henrik Rydgard
7b3f84aae8
More buildfixes for Windows on ARM
2017-03-05 10:52:08 +01:00
Henrik Rydgard
f2ccd1d648
Assorted Windows-on-ARM fixes
2017-03-05 10:47:41 +01:00
Henrik Rydgard
26a2d42731
Big mutex overhaul - remove our custom ones, make them non-recursive where possible
2017-02-28 11:40:29 +01:00
Henrik Rydgård
54f862cda6
UWP: Fix Timer
2017-02-28 11:40:18 +01:00
Henrik Rydgård
0e83a4c418
Fix savestates. Still don't understand quite how this broke though, it should work. Fixes #9365
2017-02-28 00:09:33 +01:00
Henrik Rydgard
03dab0fdbd
More UWP prep
2017-02-25 09:57:22 +01:00
Henrik Rydgard
fa80cfa4aa
Additional UWP preparations
2017-02-25 09:57:14 +01:00
Henrik Rydgard
fcbc20f240
Small changes to make Common and Core build under my preliminary UWP setup.
2017-02-24 18:59:41 +01:00
Henrik Rydgard
acde17e3ce
Improvements to D3D11 detection and error handling.
2017-02-23 10:40:55 +01:00
Henrik Rydgard
dfc71f32cb
Initial work on shader translation using glslang+spirv-cross
2017-02-15 21:51:33 +01:00
Henrik Rydgard
5c918da774
Minor cleanups (combined two identical enums, misc)
2017-02-15 11:06:59 +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
ad29974a56
Change when drawcontexts are allocated. Hook up backbuffer events to fix d3d9 resizing.
2017-02-06 11:40:16 +01:00
Henrik Rydgard
20d9e60a67
Just some renaming. Start moving away from the "thin3d" name
2017-01-30 14:38:31 +01:00
Henrik Rydgård
c4bac2d379
ABI: Switch to paired load/stores of floats too
2017-01-27 14:56:38 +01:00
Henrik Rydgård
e1bae9aa67
Follow the ARM64 ABI better (update the frame pointer).
2017-01-27 14:19:03 +01:00
Henrik Rydgard
a1ec735f6c
ARM64Emitter: Implement instructions to move data to/from SP
2017-01-26 14:23:42 +01:00
Henrik Rydgård
4a0437d0ed
Remove a useless wrapper function
2017-01-26 10:01:14 +01:00
Henrik Rydgård
1503f00885
Memory function cleanups. Better simulation of RW exclusive mode on Windows (if desired)
2017-01-26 09:49:26 +01:00
Henrik Rydgård
6ea3c6a7e3
Delete unused code
2017-01-26 08:51:48 +01:00
Henrik Rydgård
56acafdb52
Fix page size for page-aligning generated code
2017-01-25 20:39:16 +01:00
Henrik Rydgård
b9bbee5c85
Use the mach memory functions on Mac and 32-bit iOS as well.
2017-01-25 20:38:46 +01:00
Henrik Rydgard
b10e0a9a57
Windows buildfix
2017-01-25 20:10:17 +01:00
Henrik Rydgård
ff9e1517c7
More bugfixes
2017-01-25 19:11:33 +01:00
Henrik Rydgård
193b5f3094
By skipping kernel mappings, I got things to fit in the iOS 64-bit address space. However, something is still a bit broken with JIT...
2017-01-25 18:35:09 +01:00
Henrik Rydgård
5e61a5afe1
Implement fastmem for Darwin. Not very successfully yet..
2017-01-25 17:14:43 +01:00
Henrik Rydgård
510228aab9
Turn off color in iOS logs
2017-01-25 17:14:16 +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 Rydgard
19e309c91e
Fix LogManager typo
2017-01-25 16:14:41 +01:00
Henrik Rydgard
5df4bac6d2
Delete some left behind unused code
2017-01-25 10:05:39 +01:00
Henrik Rydgård
f86b9f7900
Guess what? More renaming
2016-12-27 11:59:06 +01:00
Henrik Rydgård
10393f5d4e
Move Thin3D into the Draw namespace.
2016-12-27 11:58:03 +01:00
Florent Castelli
46fdc0f5f5
cmake: Move some cmake includes to ext
2016-12-18 22:17:41 +01:00
Henrik Rydgard
a2b49fd0e0
Update Vulkan headers. Hack around another validation check (which I beleive to be bugged).
2016-12-15 18:12:53 +01:00
Henrik Rydgård
4a7809881b
Merge pull request #9139 from hrydgard/defensive-programming
...
Attempts to counter crashes seen in the Google Play developer console
2016-12-07 11:25:43 +01:00
Henrik Rydgard
d33ad4acba
Actually fix the build this time, doh
2016-12-06 23:58:31 +01:00
Henrik Rydgård
8aa04eb25e
Oops again. Let's not const these.
2016-12-06 20:16:59 +01:00
Henrik Rydgård
11267b237e
Oops
2016-12-06 19:59:13 +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
latot
96f4eba6b0
Remove empty define
2016-12-04 01:08:01 -03:00
latot
cb1e01f380
clean double end statements
2016-12-03 12:25:05 -03:00
latot
7047ad2271
fix sscanf types
2016-12-02 22:46:52 -03:00
Henrik Rydgard
5d5f10d956
Attempts to counter crashes seen in the Google Play developer console
2016-12-01 22:07:03 +01:00
Henrik Rydgård
405ac4f2cc
Merge pull request #9041 from unknownbrackets/vulkan
...
WIP: Progress toward device restore on Vulkan
2016-12-01 15:58:32 +01:00
Henrik Rydgård
9ec4c8bd31
Merge pull request #9108 from joolswills/rpi_fix
...
Fix building on rpi - #9104
2016-11-01 09:53:31 +01:00
Jools Wills
afe8e2bfb4
Fix building on rpi - #9104
...
Check for PPSSPP_ARCH(ARM_NEON) for neon code
Fix up rpi armv6/armv6 toolchain to work around issue with CMAKE_*_FLAGS not being set.
2016-11-01 02:45:30 +00:00
Henrik Rydgard
6e7e62f3d5
Fix compiler check in Arm64Emitter.cpp. Should help #9104
2016-10-31 22:34:15 +01: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
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
Florent Castelli
4145b60a0e
symbian: Remove!
2016-10-11 18:49:08 +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
Unknown W. Brackets
1d9222b3e4
Vulkan: Add comment for Android validation layers.
...
Note: these also require minor tweaks to Local.mk to include, currently,
but we're probably moving to gradle.
2016-10-10 22:08:44 -07:00
Unknown W. Brackets
e263bb945e
Vulkan: Correct initial swapchain compositeAlpha.
...
We'll just need to deal with the fact that we have to output 1.0 so that
blending doesn't matter, I think.
2016-10-10 22:07:50 -07:00