Commit Graph

1285 Commits

Author SHA1 Message Date
twinaphex 465e84d60c (context drivers) Make names uniform 2020-07-20 18:22:33 +02:00
twinaphex 7574a80391 Change some context driver names 2020-07-20 18:15:37 +02:00
twinaphex 9ac9309991 Optimize call to vulkan_present 2020-07-20 04:45:12 +02:00
Yoshi Sugawara 3dc716299f replaced confusing ifdef with a more concise #if TARGET_OS_OSX 2020-07-19 07:54:47 -10:00
Yoshi Sugawara fd9ac64d55 Merge branch 'master' into yoshisuga/ios-metal 2020-07-19 00:33:54 -10:00
twinaphex 34662e8fe8 (Context drivers) Cleanups - use egl_get_proc_address directly instead
of wrapper functions
2020-07-18 17:22:24 +02:00
twinaphex 7c66f0adbc Simplify win32_check_window 2020-07-18 17:09:07 +02:00
twinaphex 0ccb86d130 Cleanup 2020-07-18 14:15:23 +02:00
twinaphex 80c405ce52 Cleanups 2020-07-18 14:11:13 +02:00
twinaphex ef552ba768 Style nits/cleanups 2020-07-18 14:06:45 +02:00
twinaphex ebd62ecd78 Cleanups 2020-07-18 14:01:35 +02:00
twinaphex 8cfbe3b8d4 Cleanups 2020-07-17 20:35:11 +02:00
twinaphex 9f9d59f2be Cleanups 2020-07-17 16:46:00 +02:00
twinaphex 2e4938601a Cleanups 2020-07-17 16:34:11 +02:00
twinaphex 8390388f3f (DRM Go2) This global seems unused, remove it 2020-07-17 16:30:01 +02:00
twinaphex fcf0663baa (DRM CTX) Get rid of static globals - put them in struct 2020-07-17 16:26:57 +02:00
twinaphex 318c11129b Cleanups 2020-07-17 15:02:14 +02:00
twinaphex 5deb8f8bd8 Cleanups 2020-07-17 14:59:19 +02:00
twinaphex 1ca5958832 Cleanups 2020-07-17 14:57:00 +02:00
twinaphex 3983a19281 (Context drivers) Cleanups 2020-07-17 14:53:49 +02:00
twinaphex 7c66a7457a Go for a consistent return value 2020-07-17 14:44:57 +02:00
twinaphex b02d538a63 set_resize should not return false on success 2020-07-17 14:43:47 +02:00
twinaphex d2b749e0e6 Unnecessary 2020-07-17 14:19:17 +02:00
twinaphex 1fb77c43a3 (X11) Split up X11 context into two - GL and Vulkan 2020-07-17 14:15:30 +02:00
twinaphex e8e9a7b1d3 Get rid of multiple definition of wayland show mouse function 2020-07-17 13:59:13 +02:00
twinaphex f4bc332bcd (Wayland) Split up Wayland context driver into two - GL and Vulkan 2020-07-17 13:55:25 +02:00
twinaphex 501f737249 (Android) Split up Android context driver into two - GL and Vulkan 2020-07-17 13:45:37 +02:00
twinaphex 2ff2604e69 MSVC buildfix 2020-07-17 04:35:01 +02:00
twinaphex cbca370d76 Split up wgl_ctx.c into two files - GL and Vulkan 2020-07-17 04:28:26 +02:00
twinaphex df73277ca8 (WGL) Bind different callback for Vulkan 2020-07-17 02:31:12 +02:00
twinaphex 105e135e48 Cleanup 2020-07-17 01:20:31 +02:00
twinaphex 6a5770af6d Cleanups 2020-07-17 01:17:37 +02:00
twinaphex 707b40d116 Cleanups 2020-07-17 01:09:00 +02:00
twinaphex be1e245396 Cleanups 2020-07-17 00:59:20 +02:00
twinaphex 318d5490cd Cleanups 2020-07-17 00:50:06 +02:00
twinaphex b8cc047d20 (context drivers) Cleanups 2020-07-16 03:40:52 +02:00
twinaphex 9a34e9799a Cleanups 2020-07-15 03:22:01 +02:00
twinaphex 07b075c16f Cleanup 2020-07-15 02:59:02 +02:00
twinaphex 8696d292da Cleanup 2020-07-15 02:54:27 +02:00
twinaphex 014d0fafb4 (DRM) Cleanups 2020-07-15 02:45:34 +02:00
twinaphex f707994cb8 Get rid of gfx_ctx_network 2020-07-15 02:37:50 +02:00
twinaphex 03c7403a05 Cleanups 2020-07-14 16:37:02 +02:00
twinaphex e416d96769 (UWP EGL) Cleanups 2020-07-14 16:27:49 +02:00
twinaphex 748e3dccf2 (wayland) buildfixes 2020-07-14 16:20:15 +02:00
twinaphex b7c2cbc6b2 Move flush_wayland_fd to input/common/wayland_common.c 2020-07-14 16:17:43 +02:00
twinaphex 4009919eca (Wayland) Fix code duplication 2020-07-14 16:14:47 +02:00
twinaphex 3cb1b7b4bb (Wayland) Move more code 2020-07-14 16:09:13 +02:00
twinaphex 646d627a6c Move more Wayland code 2020-07-14 16:04:10 +02:00
twinaphex 1f4a27abba Split up wayland code 2020-07-14 15:56:52 +02:00
twinaphex 88f742894d Move wayland header to input/common 2020-07-14 14:32:37 +02:00
twinaphex ed9d40caa2 (DRM) Cleanups 2020-07-13 20:24:14 +02:00
Bernhard Schelling 2226226663 Add missing header (for non griffin builds) 2020-07-11 23:02:18 +09:00
twinaphex 3fd7338df1 Cleanups 2020-07-09 10:36:49 +02:00
twinaphex d0736a1797 (MSVC) Buildfixes 2020-07-09 10:20:27 +02:00
twinaphex f56b6a3a0f (GDI) Merge gdi_ctx.c into gdi_gfx.c 2020-07-09 09:25:10 +02:00
twinaphex d81f426060 Cleanups 2020-07-09 08:17:50 +02:00
twinaphex 255332c989 Remove sixel_ctx.c 2020-07-09 08:12:47 +02:00
twinaphex 9a148f6d48 Cleanups 2020-07-09 03:11:11 +02:00
twinaphex b0157cd47d CLeanups 2020-07-09 03:00:55 +02:00
twinaphex 364ee31712 (sixel) Simplifications 2020-07-09 02:55:25 +02:00
twinaphex 298413dce8 Cleanups 2020-07-09 00:33:19 +02:00
twinaphex e48ffd14cd Cleanups 2020-07-09 00:24:09 +02:00
Yoshi Sugawara 82d6d8e876 add the metal view to the view controller view after initializing the metal view for iOS 2020-07-07 08:19:46 -10:00
Yoshi Sugawara 6308ba1acb support ApplePlatform for iOS and conform app delegate class to it, move app delegate class to apple_platform.h, fix metal references for iOS 2020-07-07 05:03:42 -10:00
twinaphex d9b4b44091 (Winraw) Cleanups 2020-07-02 07:07:42 +02:00
twinaphex a3c687f0a6 Add HAVE_WINRAWINPUT 2020-07-02 06:43:36 +02:00
twinaphex fe14bc6e07 (core_info.c) Get rid of calloc 2020-06-29 03:46:27 +02:00
nia ef0038de2a sdl_gl_ctx: advertise GLSL support 2020-05-29 18:03:25 +01:00
twinaphex e030986837 Replace fprintfs with RARCH_LOG/RARCH_ERR 2020-05-24 19:29:55 +02:00
twinaphex ad1aa59ce1 Cleanup != NULL comparisons 2020-05-19 21:15:06 +02:00
Vladimir Serbinenko 2fb7ba22e5 PSL1GHT port
Working:

* packaging
* running cores
* switching cores
* gamepad including axis
* rgui
* audio
* video

Not working:

* OSD
* menus other than rgui
* shaders
* Graphical acceleration
* Proper signing
* ODE build
* rumble
* keyboard
* mouse

Not tested:

* A lot
2020-03-30 05:39:22 +02:00
valadaa48 6e4228b054 Add drm_go2_ctx for odroidgo2
- Revert odroidgo changes to drm_ctx
- Introduce new drm_go2_ctx specifically for odroidgo2 (and libgo2)
- Add hw_scaling option to mitigate builtin gl scaling/filtering and to
use libgo2 and rga's hw scaling and bicubic filtering via librga. The
quality of the image is improved by this and should be a bit faster.

Credits to CrashOverride for the initial libgo2 port and
commit to RA. And to natinusala for the initial cleanup/commit in the original
drm_ctx driver. NOirBRight for finding this setting and testing.
2020-03-28 03:30:28 +00:00
valadaa48 53fffbd670 Add "oga" graphics driver for odroid go advance
libgo2 improvements

- Expose rga scale mode as param for future use
- Cleanup whitespace
- Add option to disable managed surfaces and allow direct posting to drm
  driver

oga graphics driver

- Uses direct framebuffers in libgo2
- Bitmap font only supported for now
- Uses built-in bicubic filtering: graphics quality better than gl + bilinear
- Support for rotation
2020-03-22 23:35:22 -04:00
natinusala 00590f2077 Fix VG and VC EGL 2020-03-20 09:19:06 +01:00
twinaphex 7f8c13ae09 (GDI/Win32) Refactor code - handle doubleclick press on title bar
inside DInput driver
2020-03-13 02:20:31 +01:00
twinaphex 252bb3a905 (GLX) Fixes fastforwarding issues 2020-03-09 19:13:43 +01:00
twinaphex c007b68e6b (GLX) GLX OML was unstable with threaded video - remove it -
also put SwapInterval first instead of SwapIntervalEXT - this
makes fastforwarding work on Intel iGPUs
2020-03-09 18:37:20 +01:00
twinaphex c5fc9cf5ce (X ctx) Move two static global variables to struct 2020-03-07 18:28:53 +01:00
twinaphex 0d543baa4b (Drivers context) Move more static global state to structs 2020-03-07 18:21:49 +01:00
twinaphex 4598f186a8 Get rid of video_frame_info dependency 2020-03-07 00:39:06 +01:00
twinaphex 83b815df17 (XEGL) Buildfix 2020-03-07 00:26:44 +01:00
twinaphex 7f75bcfcb5 (DRM) Buildfix 2020-03-07 00:06:34 +01:00
twinaphex 250468a1ba drm_get_connector - cleanup 2020-03-06 23:18:22 +01:00
twinaphex 4d7b627421 Get rid of video_info dependency for set_video_mode 2020-03-06 22:58:12 +01:00
twinaphex e20151a048 Get rid of video_info struct for swap_buffers too 2020-03-06 22:29:51 +01:00
twinaphex 68664fdf1d update_title - we don't need video_info 2020-03-06 22:11:44 +01:00
twinaphex 4aae293e3d Remove is_shutdown from check_window 2020-03-06 20:29:31 +01:00
twinaphex bd5f151077 Settings cleanups 2020-03-06 02:52:21 +01:00
twinaphex a7d679d391 Rename WndProcGL to WndProcWGL 2020-03-05 18:45:41 +01:00
twinaphex 0ef1b342e4 settings Cleanups 2020-03-02 20:10:24 +01:00
natinusala f00fb6d1ea odroidgo2: patched DRM driver 2020-02-27 10:22:51 +01:00
natinusala a75059f94b odroidgo2: add skeleton 2020-02-27 10:22:51 +01:00
twinaphex 1b0ab1c05f Cleanups 2020-02-21 07:34:53 +01:00
jdgleaver b1773cc73b (Switch) Report correct (approximate) DPI in 'docked' mode 2020-02-12 14:25:49 +00:00
twinaphex 880391d0c5 (libnx) Try to silence warnings 2020-02-10 12:36:11 +01:00
twinaphex d48d4385d9 (Wayland) Silence warning 2020-01-15 08:48:13 +01:00
twinaphex 0923985516 (GL/WGL) This regression caused cores that required GL to fail
because it would try to erroneously load GLESv2.dll instead of
OpenGL32.dll
2020-01-09 19:26:53 +01:00
twinaphex fa7859ad13 (Gfx drivers context) Cleanup EGL calls 2020-01-06 18:27:18 +01:00
twinaphex 6e0971fc61 (EGL) Call EGL common calls 2020-01-04 19:58:57 +01:00
twinaphex 063986a4b3 (ANGLE) Angle gets separate EXE name 2020-01-04 19:05:23 +01:00
jovonna decd374c15 Initial port to dingux platform 2020-01-04 12:20:03 -05:00
twinaphex 3e1f56d57f Change function signature of win32_has_focus 2020-01-04 15:49:23 +01:00
twinaphex 91baea201a Change function signature of win32_show_cursor 2020-01-04 15:40:02 +01:00
twinaphex 53dbd69751 (EGL) Create egl_bind_api 2020-01-04 15:09:42 +01:00
GH Cao 090919490a UWP: Remove uwp_egl_create_surface
Because of 0e2265, this is not doing anything special anymore.
Remove it entirely and use common EGL surface creation instead.
2020-01-03 06:07:05 +08:00
Themaister 15ffffa835 Android/Vulkan: Recreate swapchain on orientation change.
ANativeWindow getWidth/Height does not detect any changes when using
Vulkan, so use the old onContentRectChanged callback to get notified
when size changed. Use those values instead when figuring out how large
swapchain to create.

Tested trivially on Galaxy S9+ Exynos model.
2019-12-15 16:46:41 +01:00
driver1998 105fadd668 [ANGLE] Add HAVE_ANGLE 2019-12-06 15:43:19 +08:00
driver1998 bfe167fae8 [UWP] Add ANGLE context 2019-12-06 13:24:18 +08:00
driver1998 7cbdd845ad [Win32] Add ANGLE context 2019-12-06 13:24:17 +08:00
Twinaphex 002f2ab6e7
Merge pull request #9801 from cmitu/kms-video-mode-selection
KMSDRM: better detection for the current video mode
2019-12-05 23:39:02 +01:00
cmitu 3953659901 KMSDRM: better detection for the current video mode 2019-12-01 06:45:43 +00:00
Jean-André Santoni ba2c870d95
Allow building using make on OSX 2019-11-30 12:37:58 +07:00
twinaphex 861379d8e3 Revert code in hopes iOS works again 2019-11-20 06:25:40 +01:00
Twinaphex d2d240ecf5 (iOS) Should fix iOS build problems 2019-11-20 02:58:17 +01:00
Twinaphex 81c020d300 Replace g_instance with CocoaView get 2019-11-20 02:24:03 +01:00
twinaphex e3506ed06b Move nsview_get_ptr to cocoa_common 2019-11-20 02:24:03 +01:00
Twinaphex 387e18b528 cocoagl_gfx_ctx_set_video_mode - go through [CocoaView get] here 2019-11-20 02:24:03 +01:00
twinaphex 964fcda79a Move glkitview_init to cocoa_common.m 2019-11-20 02:24:02 +01:00
Jean-André Santoni 8e028f4db3
Remove useless HAVE_COCOA_METAL ifdef 2019-11-19 14:50:21 +07:00
twinaphex 29ced2a72f Simplify cocoagl_gfx_ctx_get_video_size somewhat 2019-11-19 08:26:12 +01:00
Twinaphex c7ce2c7053 Fix Xcode issue 2019-11-19 05:54:01 +01:00
Jean-André Santoni d5a5380e6d
Fix building with make on OSX 2019-11-19 11:38:27 +07:00
Rinnegatamante 616759ed8c [VITA] Implement check_window. 2019-11-13 11:19:51 +01:00
Rinnegatamante 637319c938 [VITA] Implement swap_interval in vita video driver context. 2019-11-13 09:57:03 +01:00
Rinnegatamante bed9847b48 [VITA] Hijacking wrong positioning for UI elements. 2019-11-12 19:06:18 +01:00
Rinnegatamante f3ca57e6f0 [VITA] Add vita video driver context. 2019-11-12 16:33:36 +01:00
Rinnegatamante 6b7673f806 [VITA] Fixing gl1 video driver crashes. 2019-11-12 15:37:37 +01:00
Rinnegatamante 1533d618e5 [VITA] Allow usage of null context with gl1. 2019-11-12 13:50:14 +01:00
Rinnegatamante 02c35441d6 Revert to old x context. 2019-10-16 18:29:17 +02:00
Rinnegatamante d1a74e1b96 Fix for crash on Linux. 2019-10-15 09:07:15 +02:00
Twinaphex 7bed40d17b
Merge pull request #9547 from Rinnegatamante/videodrivers
Graceful switch between video drivers.
2019-10-12 14:21:33 +02:00
twinaphex 221df13250 Cleanups/warning fixes - compilation fix for OSX PPC 2019-10-05 18:38:17 +02:00
twinaphex eed44eea9c Cache this string too 2019-10-04 14:27:09 +02:00
twinaphex 1788042c9e (Android) dpi_get_density - cache one variable to avoid excessive
system_property_get querying
2019-10-04 14:22:10 +02:00
Rinnegatamante 453781af9c Graceful switch between video drivers. 2019-10-03 17:45:59 +02:00
twinaphex c5b3428408 Add sdl2_common.c/.h 2019-09-22 12:40:40 +02:00
twinaphex efdc07ab10 (Wayland) update_title function - simplify this function a bit 2019-09-22 12:14:49 +02:00
Twinaphex 2414224df8 (Cocoa) It's only necessary to set the display server userdata for
set_video_mode
2019-09-22 11:29:58 +02:00
Twinaphex 511f43d5cf Move it to cocoa_gl_ctx.m 2019-09-22 11:26:06 +02:00
Twinaphex 83f1b28f98 Revert "(Cocoa) Move nsview_get_ptr and nsview_set_ptr to cocoa_gl_ctx.m"
This reverts commit 4f564360e7.
2019-09-22 10:54:01 +02:00
twinaphex 4f564360e7 (Cocoa) Move nsview_get_ptr and nsview_set_ptr to cocoa_gl_ctx.m 2019-09-22 10:48:23 +02:00
Twinaphex 23bb1414ff (Metal) Buildfix 2019-09-22 10:30:59 +02:00
Twinaphex 6a9feb7978 (OSX) Refactor this so that we always set the userdata
pointer so we can use the new set_title codepaths - will
have to check how to reduce the overhead in nsview_get_ptr
later
2019-09-22 10:19:03 +02:00
Twinaphex 69a38f9b9f (Cocoa) Pass direct pointer to UI companion driver window title function 2019-09-22 07:41:56 +02:00
twinaphex 03bddff8e6 Cleanups of update_window_title functions 2019-09-22 03:05:06 +02:00
twinaphex 302e2fdc53 Move show memory details outside of the video context driver and
into retroarch.c - avoid lots of code duplication
2019-09-21 07:49:33 +02:00
twinaphex b28c405377 Backport and rebase initial FPGA port that was done in 2017 (port
done for Z-Turn board) - has some outstanding issues such as
very slow framebuffer software rendering output that needs to
be overcome before this becomes usable - community help needed
2019-09-17 08:16:50 +02:00
Brad Parker c7c7d0988e initial network video driver, sends raw frames over TCP 2019-09-17 04:18:44 +02:00
twinaphex 718d65d95d Take this out - too unsafe - fixes D3D12 driver 2019-08-29 12:30:56 +02:00
twinaphex 5ca165379c Cleanups 2019-08-29 01:45:44 +02:00