Commit Graph

1402 Commits

Author SHA1 Message Date
libretroadmin f96ff71416 (video context drivers) Cleanups 2023-02-21 09:49:46 +01:00
libretroadmin a4dda41739 (PSL1GHT) Buildfixes/warning fixes 2023-02-20 15:33:54 +01:00
warmenhoven 4d5bea1208
Vulkan video driver on iOS (#14902) 2023-01-25 16:17:01 +01:00
libretroadmin fdc47dcdae Remove redundant headers 2023-01-24 22:59:15 +01:00
libretroadmin daa9e352cc Remove asserts 2023-01-09 00:51:05 +01:00
libretroadmin 8a3686df58 Revert "Header cleanups - don't include retroarch.h everywhere"
This reverts commit 0e3b478f8c.
2023-01-08 09:05:46 +01:00
libretroadmin 0e3b478f8c Header cleanups - don't include retroarch.h everywhere 2023-01-08 08:56:57 +01:00
reallibretroadmin 6199baff3a Silence several Vulkan related warnings that showed up in Xcode 2023-01-07 08:05:06 +01:00
Eric Warmenhoven 3c199c794e Updated Vulkan on Metal for OSX via MoltenVK 2023-01-07 07:38:42 +01:00
Eric Warmenhoven f07a720a31 On Metal OSX build, with GL cores, fix fullscreening redisplay 2023-01-05 09:04:47 +01:00
Eric Warmenhoven 860ffb2b6a Fix for fullscreen GL driver in Metal OSX build
After calling enterFullScreenMode on the GL view, it becomes the "key"
window, meaning it gets all of the input. This is problematic as that
view doesn't forward the input on to the input driver.
2023-01-05 01:21:15 +01:00
libretroadmin e108fefc41 Remove video_driver_set_video_cache_context_ack - replace with single line 2022-11-23 20:55:05 +01:00
libretroadmin 5351aeaa4e (DRM Go2) fix to prior commit - not sure why this was missing 2022-11-22 17:11:11 +01:00
libretroadmin 623b925256 Implement get_video_size for DRM Go2 2022-11-22 17:09:51 +01:00
libretroadmin 9e0c0865cd Use HAVE_DYLIB more 2022-11-16 17:09:53 +01:00
LibretroAdmin 724acc4eb9 (Vulkan) Use flags for vulkan_ctx_data 2022-10-30 23:07:07 +01:00
LibretroAdmin 0159c2f70f gfx_ctx_vulkan_data - use flags instead of booleans 2022-10-30 22:03:36 +01:00
LibretroAdmin b4a2216049 (Context drivers) Cleanups; use flags instead of booleans etc. 2022-10-29 19:36:50 +02:00
LibretroAdmin 9b21848f4c (Cocoa GL CTX) Turn booleans into flags 2022-10-29 19:25:47 +02:00
LibretroAdmin f6866fe6ce Buildfix for Linux 2022-10-28 22:33:28 +02:00
LibretroAdmin 174b01f7d9 Remove unnecessary video_driver_is_cache_context 2022-10-28 19:36:56 +02:00
LibretroAdmin 18639cca6e (Win32) Create g_win32_flags - reduce amount of global booleans kept
around for state
2022-10-26 17:31:42 +02:00
Giovanni Cascione 18b3997a15
mali_fbdev: change bools to flags (#14508) 2022-10-12 12:12:16 +02:00
LibretroAdmin d100e73780 Use more runloop flags 2022-10-10 08:59:27 +02:00
LibretroAdmin d506210fbe
(menu_driver.c) Use flags instead of bools (#14500)
* (menu_driver.c) Use flags instead of bools
2022-10-08 22:52:18 +02:00
Giovanni Cascione fd2a026f96
mali_fbdev: add conditional support for gles3 (#14494) 2022-10-08 19:05:26 +02:00
LibretroAdmin ddeef350bd (X11) Simplify HAVE_XF86VM code ifdefs some more
(CodeQL) Take out for now while it fails to build
2022-09-05 18:36:45 +02:00
LibretroAdmin 77f3e20e3c (CodeQL) Only use 'cpp' language
(X11) Use HAVE_XF86VM for XFree86-VidMode X extension library
2022-09-05 18:26:08 +02:00
LibretroAdmin da13fb0f48 Don't include errno.h in files that don't justify its use 2022-08-25 05:19:30 +02:00
Giovanni Cascione 093432d6c4
mali_fbdev: fix assertion failed on video threaded switch (#14316)
* mali_fbdev: fix assertion failed on video thread switch

* mali_fbdev: added fallback to get refresh rate currently set
2022-08-16 22:13:43 +02:00
LibretroAdmin 94ed25be56
Cleanups (#14296)
- (database_info.c) Optimizations for database_info_build_query_enum() -
 it would call strlcat at the very least 3 times, normally more than that.
 Every strlcat call is at least one or more strlens. Reduce it all down
 to manual string concatenation and one strlcat
- (database_info_build_query_enum) - always NULL terminates string so no need for NULL termination done by callee
* (menu_displaylist) use smaller strings for basename paths, remove one unnecessary string
in menu_displaylist.c function
- (disk_index_file.c) Avoid another trivial string concatenation by doing
it manually after fill_pathname_join_special
- (fill_pathname_join_delim) since fill_pathname_join_delim() now has a return value, use it for 
string concatenation
- (platform_unix) - Use BUFSIZ as size for a buffer in system_property_get
- some other trivial strlcat usage replacements
2022-08-06 18:04:40 +02:00
libretroadmin b021f96522 (PSL1GHT) Silence some warnings 2022-07-03 14:20:10 +02:00
libretroadmin 06d62cf86a Simplify vulkan set_resize function callbacks 2022-05-31 20:18:27 +02:00
libretroadmin bf7b1c9d9c (Wayland) Fixups 2022-05-31 20:04:33 +02:00
tunip3 6994ff3ab7
add display res matching 2022-05-23 22:55:41 +01:00
libretroadmin 9590fdd0d4 Cleanups pt.2 2022-05-22 20:29:53 +02:00
Francisco Javier Trujillo Mata 6366fcf8e3 [ORBIS] Remove legacy implementation and compile with Werror 2022-05-21 17:10:35 +02:00
OsirizX c6d51fdb32 [ORBIS] Initial changes for PS4 2022-05-21 16:31:10 +02:00
Colin Kinloch d95bc2dd54 (Wayland) Dynamically load libdecor at runtime 2022-03-22 06:58:41 +01:00
Colin Kinloch 47c850c7fd (Wayland) Dedupe VK/GL code 2022-03-21 07:50:34 +01:00
Colin Kinloch c6892d03c3 (Wayland) Fix splash screen when using xdg_toplevel 2022-03-20 20:18:11 +01:00
Colin Kinloch 065fb5acee (Wayland) Skip splash screen if window is not ready 2022-03-18 16:29:49 +01:00
Giovanni Cascione fe943a65e8 mali_fbdev: fix segfault switching video threaded from quickmenu 2022-03-15 05:45:38 +01:00
Colin Kinloch 6dec52fda7
(Wayland) Fix wayland vulkan not reacting to initial resize (#13640)
(Wayland) Correct log stamps for GL or Vulkan

(Wayland) Fix style issues and sync formatting on identical code in GL and Vulkan
2022-02-22 08:58:46 +01:00
Colin Kinloch b2527b43e8
(Wayland) Show window early to get screen info (#13591)
* (Wayland) Show window early to get screen info

* Report current monitor size on initial get_video_size call

* Fullscreen to monitor selected in settings

* Fullscreen on current monitor when setting is set to automatic

* Fallback to shm_open when memfd_create is not supported
2022-02-18 19:59:41 +01:00
Autechre b45a192416
Revert "(Wayland) Show window early to get screen info (#13582)" (#13590)
This reverts commit 4bb2c14293.
2022-02-01 12:47:53 +01:00
Colin Kinloch 4bb2c14293
(Wayland) Show window early to get screen info (#13582)
* Report current monitor size on initial get_video_size call

* Fullscreen to monitor selected in settings

* Fullscreen on current monitor when setting is set to automatic
2022-02-01 10:30:34 +01:00
Giovanni Cascione ffbbdbd256
fbdev: fix segfault on video thread switch and exit from hw_ctx cores (#13571) 2022-01-30 09:24:33 +01:00
Colin Kinloch 5bd7433ac4
(Vulkan/GL) goto error without HAVE_EGL (#13568) 2022-01-29 19:56:49 +01:00
Piotr Dobrowolski a612e7f7cc
sdl_gl_ctx: fix focus detection on webOS (#13526) 2022-01-24 16:31:35 +01:00
Giovanni Cascione f93548ab56
mali_fbdev fix for fps drop after egl_destroy (#13494)
Currently each time a screen resolution or setting change occurs, fbdev_destroy, fbdev_init and fbdev_set_mode are called in sequence, trying to destroy context and surface (though context pointer seems to remain unchanged) and create again both of them.
However it seems something is wrong with egl_destroy, as after the call fps drops from 60 to 33fps in GUI with huge performance impact, at least with libmali.
Philosophy is changed with this commit to avoid destroying and creating context and surface each time (creation only occurs in fbdev_init and egl_destroy is called only if retroarch is shutting down).
As a minor modification, framebuffer is resetted to 0 on retroarch shutdown to avoid any chance of freezed screen effect.
2022-01-14 15:30:04 +01:00
Dystopian 2095fc53f8
Fix webOS build and run (#13480) 2022-01-12 07:12:34 +01:00
crystalct 19d05db9ae
PSL1GHT/PS3 build fix (#13446) 2022-01-06 08:21:14 +01:00
Giovanni Cascione f43b19db4f
mali_fbdev: fix for yoffset>0 (screen freezing), setterm unavailable and refresh_rate division by 0 (#13450)
-In case yoffset is not set=0 by the driver (which seems to occur randomly on certain configurations), on next set_video_mode call screen freezes and cannot be updated. Condition to set yoffset to 0 if current value is >0 is added as fix.
-If setterm is not available, sh error occurs in the shell on gfx_ctx_mali_fbdev_destroy call. Condition based on setterm availability is added to avoid this.
-If pixclock from driver is not available (=0), divide by 0 occurs when trying to calculate refresh rate. Condition is added as a fix, if pixclock=0 refresh rate is set as 60.
2022-01-05 19:26:39 +01:00
Colin Kinloch 22df09885e
(Wayland) Use any display for initial metrics (#13417) 2021-12-26 04:53:57 +01:00
tunip3 a28e226ef4
Make resolution switching automatic and fix angle output issues [UWP/XBOX] (#13406)
* force angle to render at 1080p regardless of screensize as the output is 1080p regardless of screensize.
This fixes an issue where at 4k any angle output would be zoomed into a corner

* set resolution based on display resolution (auto 4k)

* set driver to d3d11 if booting with opengl

* reset width and height of output on boot to match display

Co-authored-by: Tunip3 <tunip3@users.noreply.github.com>
2021-12-24 14:34:30 +01:00
twinaphex e1d144e2b8 (Wayland) Style nits 2021-12-24 14:29:12 +01:00
Colin Kinloch f0392474f2
(Wayland) Add libdecor for client side decoration (#13397) 2021-12-24 14:20:45 +01:00
Colin Kinloch 1afbe4a326
(Wayland) Use checked sizes in EGL resize (#13394) 2021-12-24 03:27:07 +01:00
Colin Kinloch 7d52d43667
[Wayland] Fix window title update (#13396) 2021-12-24 03:14:20 +01:00
Tony 09880e92d2
Logging cleanups (#13320) 2021-12-04 14:21:12 +01:00
jdgleaver 196cc8b33d SDL1 buildfix 2021-11-12 12:35:31 +01:00
twinaphex 758eafa686 (SDL) Potential buildfix 2021-10-20 15:57:34 +02:00
Autechre 3f179a5762
Merge pull request #12632 from Sunderland93/remove-xdg-shell-v6
[Wayland] Remove xdg-shell-v6 protocol
2021-10-07 05:10:53 +02:00
Francisco Javier Trujillo Mata 3bbfcf7b39 Adding to get_video_output_size 2 parameters for additional info 2021-10-04 23:53:55 +02:00
twinaphex 8ef9065c86 Get rid of menu_driver_is_alive - we don't want these one/two-line getters/setters anymore 2021-09-28 10:27:00 +02:00
twinaphex 31eaeb1a03 Create gl_flush 2021-09-26 22:28:28 +02:00
twinaphex d4af68d2dd Add glsym/rglgen.h for x_ctx.c 2021-09-26 22:16:18 +02:00
twinaphex 76db3e02cf Create gl_clear 2021-09-26 22:10:53 +02:00
twinaphex 4aafbf2340 Create gl_common.c/gl_common.h 2021-09-26 19:57:08 +02:00
twinaphex 4b5951bda3 Rename gl_common.h to gl2_common.h and remove some file dependencies
on it
2021-09-26 17:42:12 +02:00
Mark W. Kidd 2b3dfeb10c standardize include path for config.h 2021-08-18 18:54:40 -04:00
Autechre f0bd4e9172
Merge pull request #12785 from sonninnos/win32-vulkan-cleanup
(WIN32/Vulkan) Refresh rate fixes + cleanups
2021-08-12 19:23:29 +02:00
sonninnos 11b0667e72 (WIN32/Vulkan) Refresh rate fixes + cleanups 2021-08-12 18:33:58 +03:00
twinaphex 20ef0667b0 Add initial webOS port courtesy of informatic/webosbrew/mariotaku 2021-08-11 20:04:11 +02:00
twinaphex e596bf7925 Buildfix for previous commit 2021-08-02 16:19:26 +02:00
twinaphex 2af9441d35 Create separate wnd_proc functions for winraw 2021-08-02 16:14:58 +02:00
CrystalCT 89b46bc246 First basic RSX driver for PSL1GHT 2021-07-12 09:35:44 +02:00
Aleksey Samoilov 6bc9181bc9 Remove xdg_shell_v6 from wayland_vk 2021-07-10 14:52:16 +04:00
Aleksey Samoilov 146804fcbc Remove xdg_shell_v6 support 2021-07-10 14:22:58 +04:00
p-sam 1bc588acbd Fix building with libnx 4.0.0 2021-06-28 17:38:17 +02:00
twinaphex 97ad8cbfd2 Remove this code for Vulkan over X too 2021-06-22 18:26:32 +02:00
twinaphex b5be2006f2 Remove commented out code 2021-06-22 18:25:54 +02:00
Grant bd10e5bdc3 fix x11 threaded videoc segfault 2021-06-21 21:12:26 +01:00
CTCaer a8028d5e8e X11: fix fullscreen when swapping monitors/resolution
Most DEs have the tendency to lose focus when monitor is getting swapped or the resolution changes.
That causes X11 exiting fullscreen and setting a lower resolution to fit desktop.
Pushing the window back to top, automatically fixes that and X11 enforces fullscreen again and new max resolution.

Additionally, XConfigure events are now checked and preferred over XGetWindowAttributes.
That saves several to hundreds μs per frame.
2021-05-29 22:19:19 +03:00
twinaphex 35543ecd91 Move defines files over to libretro-common 2021-05-18 22:15:04 +02:00
jdgleaver 484c4ad51e Add API extension for cores to override frontend fast-forward state 2021-05-13 13:16:37 +01:00
jdgleaver a501dfd680 Update 7-Zip dependency to latest stable version (fixes CHD support on static platforms) 2021-04-28 12:00:50 +01:00
David Carlier c7f3fa2b5d macOS with vulkan build fix 2021-04-26 20:31:15 +01:00
Autechre a56fcfb24a
Revert "Screen Resolution option fixes" 2021-04-17 19:33:23 +02:00
repojohnray 45047732a7 Fix xegl_ctx.c mouse activation
The mouse is not working when using opengles with x11. This fix adds the required notifications.
2021-04-03 15:56:06 +02:00
Valerio Proietti fc69e73dcf [DRM] set the correct video mode
mode->vrefresh is a display-only value and should not be used for calculations
the drm context is now able to differentiate between, for example, 640x480@60.00 and 640x480@59.92 when setting the video mode
2021-03-31 13:13:27 +02:00
jdgleaver 0a08437e0a Add OpenDingux Beta support 2021-03-25 16:19:42 +00:00
David Guillen Fandos 1cad93207b Upstream OGA patch for vertical screen
This keeps the tradition DRM driver along with the OGA one. The probe
function skips the driver if the screen is non rotated to fall back to
the regular DRM driver. This is being upstreamed from the Lakka repo.
2021-03-23 20:27:24 +01:00
sonninnos 371453623b Screen Resolution option fixes 2021-02-16 22:59:24 +02:00
Francisco José García García 066917ac23
Vita: VitaGL api changes (#11981)
* Vita: VitaGL api changes: vglSwapBuffers

* Vita: VitaGL api change: Remove vglStartRendering
2021-02-04 11:46:00 +01:00
Autechre 7ea1d7d0da
Revert "Mac buildfixes (#11933)" (#11934)
This reverts commit 18a6880900.
2021-01-24 03:56:05 +01:00
Autechre 18a6880900
Mac buildfixes (#11933)
* (Metal/WindowListener) Fix duplicate symbol errors by
moving implementation of WindowListener to cocoa_common.m

* (Apple) Cleanup some conditionals

* (Cocoa) Cut down on OSX ifdefs in Cocoa-specific code
2021-01-24 03:53:10 +01:00
Autechre 760c9a8482
(Mac) Remove Apple Core GL Context (#11912)
* Remove Apple CGL context - was never used and never tested
2021-01-21 00:33:12 +01:00
twinaphex 55a766b0bc (CocoaGL) Add forward declaration 2021-01-19 07:28:42 +01:00