Commit Graph

9388 Commits

Author SHA1 Message Date
twinaphex 9f3a2db44e Merge branch 'master' of https://github.com/libretro/RetroArch 2020-04-17 16:24:39 +02:00
valadaa48 587a425f77 oga_gfx: move non-inlined function out of loop 2020-04-11 02:30:39 +00:00
jdgleaver f559798750 Widget text improvements 2020-04-06 11:39:30 +01:00
twinaphex e88568625c Merge branch 'master' of https://github.com/libretro/RetroArch 2020-04-06 01:04:23 +02:00
Olivier PARRA 5813228c6c [FIXES]GPU capture on Metal/OSX/NVidia
[FIX]RetroArch CRASH on Metal internal assert
_validateGetBytes:39: failed assertion `texture must not be a
framebufferOnly texture.' GPU Capture were done on a
framebufferOnly texture. Fix it by setting framebufferOnly
CAMetalLayer property to NO. Subsequent MTLTexture inherits from
this property.

[FIX]Capture black frames. Resulting PNG screenshots were black.
Since GPU texture where not sync with CPU,
getBytes:bytesPerRow:fromRegion:mipmapLevel: behavior is undefined
Fix it by adding synchronizeResource command to blitCommandEncoder
In order to keep performances, syncing is done ONLY when a GPU
Capture is requested.

[FIX]Corrupted image due to incorrect viewport copy
Modify code in charge of copying MTLTexture bytes to 24bits PNG
buffer.
2020-04-02 23:01:48 +02:00
twinaphex a9154373fc Merge branch 'master' of https://github.com/libretro/RetroArch 2020-04-02 02:13:12 +02:00
Autechre e80fb4f386
Merge pull request #10375 from jdgleaver/font-fixes
Enable correct vertical alignment of text (+ font rendering fixes)
2020-04-01 20:59:51 +02:00
Twinaphex 8292f31ea0 Fix unused variable warning 2020-04-01 20:43:03 +02:00
Twinaphex d0a9de01a3 (GL) Fix unused variable setting 2020-04-01 20:41:38 +02:00
jdgleaver 73bcd7a692 Enable correct vertical alignment of text (+ font rendering fixes) 2020-03-31 16:55:22 +01: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
twinaphex 92c472c227 Merge branch 'master' of https://github.com/libretro/RetroArch 2020-03-29 06:01:31 +02:00
Autechre 15c661a374
Merge pull request #10262 from valadaa48/odroidgo2_drm_ctx_hw_scaling
Add drm_go2_ctx for odroidgo2
2020-03-29 04:40:57 +02:00
valadaa48 2d2bd625c6 Register signal handler for oga video driver 2020-03-28 04:54:33 +00:00
twinaphex 19c68fad43 Take out cb_update_window_title and cb_get_metrics 2020-03-28 05:36:31 +01: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
twinaphex 5972ed9cc6 (gfx_widgets) Cleanups 2020-03-28 03:53:51 +01:00
twinaphex 2dc0fdcfee (gfx drivers_display) Cleanups 2020-03-28 03:47:05 +01:00
jdgleaver 1440b46eb0 Fix 'gfx_display_draw_texture_slice()' (i.e. prevent glitches when rendering Ozone's selection cursor) 2020-03-26 11:45:28 +00:00
jdgleaver 9194a3b24d (Menu) Prevent font-related segfaults when using extremely small scales/window sizes 2020-03-24 16:14:53 +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
Javier Martinez Canillas 42e8890c91
(GL) Fix NULL pointer dereference in gl2_init()
Commit 10df615d14 ("add "Send Debug Info" option under Help") added some
debug information that contains the GL_VENDOR, GL_RENDERER and GL_VERSION
strings that are returned by the glGetString() function, and is used by
algorithms to recognize the platform.

But in some GL contexts, these may be NULL which leads to a NULL pointer
dereference when trying to copy the returned strings. Commit 97247dbaec
("gl1: check for vender/renderer was in the wrong place") later fixed it
for the GL1 driver, but it missed doing the same for the GL driver.

For example, on an Exynos Odroid XU4 with a mali-fdev GL context I get:

$ retroarch -v
[INFO] RetroArch 1.8.5 (Git 8d3f25f)
[INFO] === Build =======================================
[INFO] Capabilities:  NEON VFPv3 VFPv4
[INFO] Built: Mar 18 2020
[INFO] Version: 1.8.5
[INFO] Git: 8d3f25f
[INFO] =================================================
[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.
[INFO] Version of libretro API: 1
[INFO] Compiled against API: 1
[INFO] [Audio]: Set audio input rate to: 30000.00 Hz.
[INFO] [Video]: Video @ 960x720
[INFO] [EGL] Falling back to eglGetDisplay
[INFO] [EGL]: EGL version: 1.4
[INFO] [GL]: Found GL context: mali-fbdev
[INFO] [GL]: Detecting screen resolution 0x0.
[INFO] [EGL]: Current context: 0xf08e20.
[INFO] [GL]: Vendor: (null), Renderer: (null).
[INFO] [GL]: Version: (null).
Segmentation fault (core dumped)
2020-03-18 23:44:50 +01:00
natinusala 997136c029 gfx_widgets: move libretro message widget into its own file 2020-03-17 17:16:21 +01:00
natinusala 7246d0d053 gfx_widgets: move generic message to its own file 2020-03-13 17:13:56 +01:00
twinaphex 7986561598 Rename menu widgets to display widgets 2020-03-13 03:58:33 +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 30e8ec6543 (win32_common.c) Put g_win32_resized into struct 2020-03-13 00:15:51 +01:00
twinaphex 91fd05133b C89_BUILD fix 2020-03-13 00:11:43 +01:00
twinaphex c796f3268b (win32_common.c) Cleanups 2020-03-13 00:11:21 +01:00
twinaphex b4da4940eb Revert "(Win32) Move global state to struct"
This reverts commit dfa1288988.
2020-03-12 22:10:24 +01:00
twinaphex 26bb0105c0 (Vita) Buildfix 2020-03-12 20:54:38 +01:00
twinaphex dfa1288988 (Win32) Move global state to struct 2020-03-12 17:47:49 +01:00
twinaphex 28eec1489a Every global has to be named uniquely for Griffin targets 2020-03-12 17:00:13 +01:00
Autechre 76f0c14289
Merge pull request #10263 from jdgleaver/widget-scale-setting-cleanup
Use single 'Widgets Scale Override' setting on console and mobile platforms
2020-03-12 16:38:38 +01:00
Autechre c20e83e50a
Merge pull request #10256 from jdgleaver/threaded-video-show-mouse
(Threaded Video) Enable proper mouse cursor show/hide functionality
2020-03-12 16:09:09 +01:00
jdgleaver 018209d6c2 Use single 'Widgets Scale Override' setting on console and mobile platforms 2020-03-12 11:29:53 +00:00
natinusala 375621394c gfx_widgets: move volume into its own file 2020-03-12 09:31:05 +01:00
natinusala 37a5e7ff08 gfx_widgets: cleanup 2020-03-12 09:29:04 +01:00
jdgleaver 27ab57bc05 (Threaded Video) Enable proper mouse cursor show/hide functionality 2020-03-11 16:26:17 +00:00
jdgleaver b92dcd1334 (gfx_widgets) reorder internal status updates 2020-03-11 14:28:15 +00:00
jdgleaver 086c68bca7 Enable widget persistence across drivers_init()/driver_uninit() events 2020-03-11 11:47:13 +00:00
twinaphex c4dfa1e12a (Gfx drivers) Cleanups 2020-03-10 19:52:05 +01:00
twinaphex ae18fc808d Cleanups 2020-03-10 19:32:21 +01:00
twinaphex 92b09a9f60 (Video layout) Get rid of video_frame_info dependency 2020-03-10 19:10:02 +01:00
twinaphex abcfe03059 (Metal) Simplification 2020-03-10 19:03:34 +01:00
Twinaphex d81e756fa7 (Metal) Buildfix 2020-03-10 03:37:48 +01:00
twinaphex f4c5036c3c Get rid of video_frame_info dep for fonts 2020-03-10 03:24:59 +01:00
Twinaphex 35a528a3e0 (Metal raster font) Remove dependency on video_info 2020-03-10 03:02:37 +01:00
Twinaphex 783f16b198 Updates 2020-03-10 02:48:01 +01:00