Commit Graph

489 Commits

Author SHA1 Message Date
Hans-Kristian Arntzen d043123f71 Vulkan: Add support for queue transfers in HW rendering. 2016-06-25 11:39:52 +02:00
Hans-Kristian Arntzen 82c7aa0e6f Use max swapchain image setting when creating swapchain. 2016-06-25 09:52:46 +02:00
twinaphex b434f0863a CXX_BUILD buildfix 2016-06-23 07:44:56 +02:00
Alcaro 90dd86a66a Fix #3129 again 2016-06-19 22:09:52 +02:00
Hans-Kristian Arntzen 21be54501b Log which present modes are supported. 2016-06-13 22:00:32 +02:00
Hans-Kristian Arntzen e7b4f4fd4d Fix various Android Vulkan issues.
Was getting bogus swapchain width/height causing weird issues.
Also, create swapchain after swap interval is correctly set.
2016-06-13 19:51:44 +02:00
twinaphex f4c3a41f84 (Win32) Implement application process events 2016-06-07 17:28:51 +02:00
twinaphex ee8277b31c Rename ui_win32_window.h to ui_win32.h 2016-06-07 16:33:55 +02:00
Hans-Kristian Arntzen c374c9853d Some potential fixes for Android Vulkan. 2016-06-07 01:43:14 +02:00
twinaphex ea5f458fbd Go through function pointer 2016-06-06 08:01:26 +02:00
twinaphex 2f7bc8760c Turn win32_browser into static function 2016-06-04 18:43:03 +02:00
twinaphex cfc3b97808 Use ui_window_win32_focused 2016-06-04 17:30:06 +02:00
twinaphex b5830de236 Create stub GetForegroundWindow function for Xbox 2016-06-04 17:18:20 +02:00
twinaphex abbd39fc6e Might want to use GetForegroundWindow instead for window focus 2016-06-04 17:17:10 +02:00
twinaphex c63f11f6fd Use ui_window_win32_set_droppable 2016-06-04 08:50:43 +02:00
twinaphex b4c340ca88 (win32_common.cpp) Cleanup 2016-06-04 06:21:58 +02:00
twinaphex d739e4771e Use set_title function from wgl_ctx.cpp 2016-06-04 06:02:15 +02:00
twinaphex 24688469b0 Buildfix 2016-06-04 05:58:03 +02:00
twinaphex 2d649f5147 Reimplement win32_monitor_from_window 2016-06-04 05:56:46 +02:00
twinaphex f490b2b58a Simplify win32_monitor_from_window 2016-06-04 05:54:33 +02:00
twinaphex 0c3bc35be1 (Win32) Buildfix 2016-06-04 05:45:39 +02:00
twinaphex 745b204a8f Start using ui_window_win32_t 2016-06-04 05:44:06 +02:00
twinaphex 94e16e638d Cleanup WndProcCommon 2016-06-04 05:09:58 +02:00
mudlord d75fc24ad7 update 2016-06-04 12:36:05 +10:00
twinaphex b88db89b89 (Win32) Buildfix 2016-06-04 03:22:31 +02:00
twinaphex 45d6b4a228 Create win32_drag_query_file 2016-06-04 03:20:55 +02:00
twinaphex d7d5f29c90 (win32_common.cpp) Buildfix 2016-06-03 19:46:09 +02:00
twinaphex 6628da2646 Create CONTENT_MODE_LOAD_CONTENT_WITH_NEW_CORE_FROM_COMPANION_UI 2016-06-03 18:43:05 +02:00
mudlord 1ab94a2c9a updates to dragndrop 2016-06-03 18:25:45 +10:00
twinaphex 30d3cf8a4e Indenting nits 2016-06-03 08:23:43 +02:00
twinaphex 4cfe09faed Nits 2016-06-03 08:21:56 +02:00
twinaphex 59413e0289 (win32_common.cpp) Cleanups/get rid of warning 2016-06-03 08:20:36 +02:00
twinaphex 01390f8ceb Use retro_common_api.h 2016-06-03 08:06:49 +02:00
mudlord bcf636283b Updates to drag and drop:
* Now recognises old core used, if compatible.
* If not compatible, compatibile cores are scanned and used.
* Different compatible cores are now enumerated to be selected at will.
2016-06-03 16:00:08 +10:00
mudlord 4c53bdf4f9 add drag and drop 2016-06-03 09:14:53 +10:00
twinaphex 7d12408f24 x11_create_input_context - prevent memleak 2016-05-26 07:34:25 +02:00
twinaphex 6bd7fd482c Performance counters got function name changes 2016-05-21 13:14:25 +02:00
Twinaphex 72e1a33715 Merge pull request #3016 from Themaister/master
Add perf counter to fence waits.
2016-05-21 12:36:25 +02:00
Hans-Kristian Arntzen 218ecc07c1 Add perf counter to fence waits.
Makes it easy to check if we're GPU bound or not.
2016-05-21 12:13:46 +02:00
Twinaphex e133ce31e8 (QNX) Buildfixes 2016-05-19 20:10:10 +02:00
twinaphex 0d833c903a Merge remote-tracking branch 'origin/vulkan-windows' 2016-05-16 07:51:01 +02:00
twinaphex e2cc3bc08d Create gl_query_core_context_in_use 2016-05-16 05:55:42 +02:00
twinaphex fc56f6ebdb Add some HAVE_THREADS ifdefs 2016-05-11 10:10:30 +02:00
twinaphex 4a7ab8366b Move libretro.h headers to libretro-common/include 2016-05-10 19:03:53 +02:00
twinaphex b79b2dca13 Create performance_counters 2016-05-10 08:53:14 +02:00
twinaphex dde471e001 Rename gfx_ structs 2016-05-10 02:39:09 +02:00
twinaphex 2ebb92834c Rename gfx_fbo_rect to video_fbo_rect 2016-05-10 02:34:36 +02:00
twinaphex 0e08dbe931 Rename gfx_coord to video_coord 2016-05-10 02:32:59 +02:00
twinaphex ca976aeda9 Make gl_load_texture_data a static function 2016-05-09 03:44:46 +02:00
twinaphex 9c1885a46e Fix Display FPS 2016-05-08 22:00:30 +02:00
Torsten Paul 1979ea52d2 Suppress screensaver only if requested by user settings. 2016-05-08 19:22:45 +02:00
Hans-Kristian Arntzen d723411436 De ioctl video_driver. 2016-05-08 14:00:51 +02:00
Hans-Kristian Arntzen 464a4add66 XMB ribbon works in Vulkan. 2016-05-08 11:11:28 +02:00
Torsten Paul ccb224043b Initialize window name at window creation time (fixes #1521).
The protocol error reported in #1521 is caused by two different issues.
First xdg-screensaver fails to parse decimal values for the window id
(https://bugzilla.redhat.com/show_bug.cgi?id=1274931). Using the hex
notation fixes this part.

Second, the script reads the WM_NAME property from the window which is
not yet available at this time. Calling x11_update_window_title() early
ensures the property is set when xdg-screensaver is run.
2016-05-06 00:17:47 +02:00
twinaphex a34ce90940 (d3d_common.cpp) Include d3dx9tex.h instead 2016-04-23 19:09:15 +02:00
twinaphex 6083f850aa (D3D) Buildfix 2016-04-23 19:04:19 +02:00
twinaphex cc7f661f9c (D3D) Buildfixes 2016-04-23 19:02:40 +02:00
twinaphex 3902a6715a (D3D) Buildfix 2016-04-23 10:22:23 +02:00
twinaphex 38bc378c4d (D3D) Some buildfixes 2016-04-23 10:18:46 +02:00
twinaphex 61a71e91e0 (D3D common) Add C versions of functions 2016-04-23 09:26:38 +02:00
twinaphex d9ddb92a90 (egl_common.c) Silence warning 2016-04-22 07:56:32 +02:00
twinaphex 641a37ce06 Change some function parameters for gl_ff_matrix/gl_ff_vertex 2016-04-17 05:00:42 +02:00
Hans-Kristian Arntzen e04bbfbae2 Vulkan: Add more logging ... 2016-03-29 17:57:13 +02:00
Hans-Kristian Arntzen c7b96b75b8 Vulkan: Add more error logging. 2016-03-29 17:36:13 +02:00
Hans-Kristian Arntzen 38a305bb6e Vulkan: Add proc address query functions to HW interface.
Allows cores to avoid linking directly against any extra library.
Update HW interface version to 2 to signal ABI change.

Note that the interface is still experimental and can change at any time.
2016-03-29 16:35:31 +02:00
Hans-Kristian Arntzen 02736963bc Vulkan: Implement get_context_data callback in Win32.
Also fix some potential crashes with dinput handling.
2016-03-29 15:50:12 +02:00
Hans-Kristian Arntzen 8ade7fb274 Vulkan: Attempt Windows backend support.
Completely bind since I cannot test myself, but compiles.
2016-03-29 15:50:12 +02:00
Hans-Kristian Arntzen 87a5fd2e44 win32_set_style: Fix broken pointer-to-pointer.
This can't possibly have worked in any sensible way before ...
2016-03-29 15:36:08 +02:00
Hans-Kristian Arntzen 1ff4445ba0 Remove dead code with full_x/full_y.
Very confusing and no longer serves any purpose anyways.
2016-03-29 15:28:13 +02:00
Hans-Kristian Arntzen ca62f342b0 Vulkan: Fix original history.
Verified to work now.
2016-03-25 18:50:49 +01:00
Hans-Kristian Arntzen 83ab0d799f Vulkan: Begin implementing history and feedback. 2016-03-25 14:51:37 +01:00
twinaphex e1c47a68fe Take prototype declaration out of video_driver.h 2016-03-23 06:57:29 +01:00
twinaphex ca63357b54 (X11) Do not keep appending to suspend screensaver if not available 2016-03-21 19:12:16 +01:00
Hans-Kristian Arntzen f1a5725f66 Vulkan: Host writes are implicitly flushed on submit.
Use TOP_OF_PIPE/0 access instead to work
around spammy asserts on Anvil.

We still have to invalidate the caches however.
2016-03-21 16:57:04 +01:00
Hans-Kristian Arntzen fa7eeb57b8 Vulkan: Use 1.0.6.
1.0.2 is pre public release version I think ...
2016-03-21 10:03:15 +01:00
Hans-Kristian Arntzen 84923a0465 Vulkan: Tighten up pipeline barrier usage.
Lots of memory barriers used with TOP_OF_PIPE which is not valid.
2016-03-21 10:02:00 +01:00
twinaphex 34958ec39a (Vulkan) Don't use VK_API_VERSION any more 2016-03-20 03:04:52 +01:00
twinaphex f79418459f Ability to compile now with --enable-wayland and --disable-x11
defined
2016-03-09 09:21:07 +01:00
Hans-Kristian Arntzen f02faeea27 Vulkan: Fix segfault on nVidia. 2016-03-06 12:33:46 +01:00
Hans-Kristian Arntzen ebdb7168ed Vulkan: Clean up symbol loading.
Should use GetDeviceProcAddr when appropriate.
2016-03-06 11:27:36 +01:00
twinaphex eebcde721b Rename video_coord_array 2016-03-05 07:28:02 +01:00
twinaphex 418c5cbb76 (Win32) Buildfix 2016-03-04 05:01:49 +01:00
twinaphex 6d4212ca06 Check OS version before going down screensaver path 2016-03-04 04:51:57 +01:00
twinaphex 7d0205deac (vulkan_common.c) Add log error when vkCreateInstance fails 2016-03-02 03:13:31 +01:00
twinaphex 6f80e09ce1 Change MIN/MAX to upper-case 2016-03-02 00:07:31 +01:00
twinaphex 77001a5577 (Android) More preparation for Vulkan 2016-03-01 18:59:12 +01:00
twinaphex 86a8899b0f (Android) Start preparing Android JNI Makefiles for Android 2016-03-01 18:46:40 +01:00
twinaphex e938be3747 Have to rewrite EGL context code 2016-03-01 06:49:05 +01:00
twinaphex de27720044 We don't need to link against libvulkan.so implicitly anymore 2016-03-01 02:47:16 +01:00
twinaphex b79edb6095 Reimplement function pointers 2016-03-01 02:21:53 +01:00
twinaphex 937230564d move more code to vksym.h 2016-03-01 01:53:48 +01:00
twinaphex a6048b4218 Add vksym.h 2016-02-29 23:38:49 +01:00
twinaphex 7a907a97a7 Start preparing to split this code up 2016-02-29 23:31:51 +01:00
twinaphex 9a10ef5591 (Vulkan) Add more Vulkan function pointers 2016-02-29 23:28:12 +01:00
twinaphex 860b7fde62 (Vulkan) Add DeviceWaitIdle function pointer 2016-02-29 23:25:25 +01:00
twinaphex 1d9220d9d1 (Vulkan) Add vkCmdBindVertexBuffers function pointer 2016-02-29 23:22:56 +01:00
twinaphex c8b9bb609f (Vulkan) More image function pointers 2016-02-29 23:19:23 +01:00
twinaphex 30eac5b778 (Vulkan) Add vkDestroyDescriptorPool fp 2016-02-29 23:13:13 +01:00
twinaphex 6023a5f06e Add vkAllocateDescriptorSets fp 2016-02-29 23:11:00 +01:00
twinaphex 4a1a623099 (Vulkan) Add more funcptrs 2016-02-29 23:09:05 +01:00
twinaphex 0e60d20705 Add Command Function pointers 2016-02-29 23:04:17 +01:00
twinaphex 67ea4e1d6b (Vulkan) Pipeline function pointers 2016-02-29 22:55:31 +01:00
twinaphex 1fbac78e35 (Vulkan) Go through function pointer for vkDestroyPipelineCache 2016-02-29 22:38:58 +01:00
twinaphex a7df7be64b Add vkAllocateMemory/vkFreeMemory 2016-02-29 22:36:53 +01:00
twinaphex a53e7a5437 (Vulkan) Add pipeline barrier function pointer 2016-02-29 22:30:23 +01:00
twinaphex bd96ab3585 (vulkan_common.c) Cleanups 2016-02-29 22:26:20 +01:00
twinaphex 1b85ee442f Go through funcptr for vkAllocateCommandBuffers 2016-02-29 22:23:35 +01:00
twinaphex 83dc7db6c7 (Vulkan) Add descriptor set layout function callbacks 2016-02-29 22:04:23 +01:00
twinaphex caed6c61cb (Vulkan) Function pointer for vkFreeCommandBuffers 2016-02-29 21:58:10 +01:00
twinaphex 1e407079e4 Add function pointers for image view functions 2016-02-29 21:55:54 +01:00
twinaphex a6eb40b3d2 Add funcptr for vkAllocateCommandBuffers 2016-02-29 21:51:42 +01:00
twinaphex 4771c45ed3 Add render pass command function pointers 2016-02-29 21:43:04 +01:00
twinaphex 7f5d0f2763 (Vulkan) More function pointers for command buffer functions 2016-02-29 21:37:35 +01:00
twinaphex 860ffff3c9 (Vulkan) Go through funcptr for vkEndCommandBuffer 2016-02-29 21:31:51 +01:00
twinaphex a1c8a47665 (Vulkan) Go through funcptr for vkDestroyInstance 2016-02-29 21:27:18 +01:00
twinaphex c62971042d (Vulkan) Cleanups 2016-02-29 21:20:36 +01:00
twinaphex eae652d6a5 Go through funcptr for vkDestroyCommandPool 2016-02-29 21:17:21 +01:00
twinaphex f0458495f4 Go through funcptr for vkDestroyPipeline 2016-02-29 19:41:25 +01:00
twinaphex d45f0e0946 Some cleanups 2016-02-29 19:39:49 +01:00
twinaphex 670eede306 Go through function pointer for vkCmdClearAttachments 2016-02-29 19:34:40 +01:00
twinaphex fc7a972466 Go through function pointers for vkMapMemory/vkUnmapMemory 2016-02-29 19:20:42 +01:00
twinaphex b660fb8878 Create sampler function pointers 2016-02-29 19:11:09 +01:00
twinaphex 0e91bb6852 Go through more function pointers 2016-02-29 19:03:18 +01:00
twinaphex dfde6f833a (Vulkan) Nits 2016-02-29 18:46:17 +01:00
twinaphex 1d96e80b05 (Vulkan) More funcptrs 2016-02-29 18:40:30 +01:00
twinaphex fbf527eac2 (vulkan_common.c) Style nits 2016-02-29 18:24:12 +01:00
twinaphex ef93f92ea2 Cleanups 2016-02-29 17:22:57 +01:00
twinaphex a8ccf2531d Cleanups 2016-02-29 17:21:40 +01:00
twinaphex e6da374bb5 Cleanups 2016-02-29 17:18:28 +01:00
twinaphex a4c9d02953 Add DestroyImage funcptr 2016-02-29 17:16:01 +01:00
twinaphex 874b5b7e17 Go through more funcptrs 2016-02-29 17:13:13 +01:00
twinaphex 8f69470c25 Go through VKFUNC macro 2016-02-29 17:00:08 +01:00
twinaphex d6005c224c Go through VKFUNC 2016-02-29 16:55:50 +01:00
twinaphex 6836b5f868 vkCreateImage - go through funcptr 2016-02-29 16:48:55 +01:00
twinaphex 3677144d18 Start going through VKFUNC 2016-02-29 16:47:21 +01:00
twinaphex 6c9e8041c6 Add function pointer for vkCreateCommandPool 2016-02-29 16:41:49 +01:00
twinaphex 6dce80ea07 Add function pointers for vkCreatePipelineCache and vkCreatePipelineLayout 2016-02-29 16:37:15 +01:00
twinaphex 778b50fc28 Add funcptr for vkCreateFramebuffer 2016-02-29 16:32:34 +01:00
twinaphex 361cce328d vkCreateRenderPass - add funcptr 2016-02-29 16:30:45 +01:00
twinaphex 277e2977ff (Vulkan) Add function pointer to vkDestroyDevice 2016-02-29 16:28:12 +01:00
twinaphex 4248e244a8 Go through funcptr for vkCmdCopyImage 2016-02-29 06:52:08 +01:00
twinaphex 89ee08214d We need to grab a function pointer to vkCmdDraw later after
vkCreateDevice
2016-02-29 06:21:42 +01:00
twinaphex be5333371b (Vulkan) More funcptrs 2016-02-29 06:16:31 +01:00
twinaphex bfd38e171b (Vulkan) More Vulkan funcptrs 2016-02-29 05:57:38 +01:00
twinaphex 3abea50cbf Move function pointers to vulkan_context 2016-02-29 05:49:05 +01:00
twinaphex 2a621a8424 Go through vkEnumeratePhysicalDevices funcptr 2016-02-29 05:37:37 +01:00
twinaphex cf03851cc8 Add vkGetDeviceQueue funcptr 2016-02-29 05:37:37 +01:00
twinaphex 5e970637d4 (Vulkan) Add more function pointers 2016-02-29 05:32:10 +01:00
twinaphex 25d741e26a Start setting up more function pointers 2016-02-29 04:21:08 +01:00
Alcaro 7a6463a300 Add escape hatch if rarch (or the core) is in an infinite loop. 2016-02-23 16:11:39 +01:00