Commit Graph

904 Commits

Author SHA1 Message Date
LibretroAdmin 61e24132bf (task_save.c) Simplification in control flow
(snprintf) Try to reduce or simplify snprintf calls, only tend to
use it for processing integers/numbers and avoid it for regular
string concatenation (NOTE: we try to be a bit safer about it to
address earlier cited criticism, although we don't consider concatenating
3 or 4 characters at the end to be insecure)
(msg_hash_to_str) Try to avoid duplicate calls to the same localized
string when we can just cache the results once instead locally
2022-08-27 07:55:02 +02:00
LibretroAdmin 88bc26da4e Replace some more trivial strlcat calls 2022-08-04 04:05:27 +02:00
LibretroAdmin 7a993a5951
Count amount of characters window title has so that we can (#14274)
return the value when calling video_driver_get_window_title -
this is so we can prevent strlen calls in x11_common.c
2022-08-02 17:00:33 +02:00
libretroadmin c2f618d394 * (gfx_widgets) ptr_width >= ptr_height - equal would just mean setting ptr_width to
the same value, so turn it into 'greater than' instead
* Avoid some tertiary operators where we just set the variable back to its
own value
2022-07-09 13:00:50 +02:00
libretroadmin 61e08ee35b Fix line breaks in gfx/video_driver.c 2022-06-20 20:26:02 +02:00
sonninnos 3d619de114 Automatic Frame Delay improvements 2022-06-14 07:11:43 +03:00
Ryunam d7cfcd3f9b Add option to toggle automatic refresh rate switching 2022-05-16 17:50:11 +02:00
jdgleaver 801b16885e Enable automatic configuration of 'VSync Swap Interval' 2022-05-12 14:22:46 +01:00
m4xw e389b8c7a1
Fix readability and precision issues in aspectratio_lut (#13893) 2022-04-28 15:30:13 +02:00
twinaphex 68032c7734 (D3D9) Split up D3D9 driver into two separate drivers - one for D3D9 HLSL
and another one for D3D9 Cg
2022-04-19 15:45:22 +02:00
Tony 85fef3427a
Fast-Forward Frameskip improvement (#13834) 2022-04-06 15:39:25 +01:00
Tony 7768c296b9
Prevent refresh rate switching to half frame rate modes (#13656) 2022-02-24 07:10:27 +01:00
jdgleaver a953b27614
Rework optional fast-forward frame skipping: Drop frames based on frame timing (#13578) 2022-01-31 16:32:17 +01:00
Tony 86cced8eab
Fix frameskipping with duped frames (#13560) 2022-01-29 10:57:01 +01:00
Tony 84f558db0b
Add optional frame skipping when fast-forwarding (#13550) 2022-01-26 18:30:33 +01:00
Nikos Chantziaras be650a790c
Add option for showing the overlay behind the menu (#13360)
* Add option for showing the overlay behind the menu

This commit lays the groundwork for this option. Support for this option
in the video drivers themselves is going to be added in later commits.

* gl1: Add overlay behind menu support

* gl2: Add overlay behind menu support

* gl3: Add overlay behind menu support

* vulkan: Add overlay behind menu support

* ctr: Add overlay behind menu support

* d3d9: Add overlay behind menu support

* d3d10: Add overlay behind menu support

* d3d11: Add overlay behind menu support

* d3d12: Add overlay behind menu support

* CHANGES.md: overlay behind menu

Co-authored-by: MrHuu <MrHuu@users.noreply.github.com>
Co-authored-by: Tony <45124675+sonninnos@users.noreply.github.com>
2021-12-26 04:56:44 +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
Tony 8cc423e036
Logging cleanups (#13370) 2021-12-17 18:04:24 +01:00
Tony 6ee92d8583
Stop logging fps statistics twice on quit (#13369) 2021-12-17 16:06:15 +01:00
Tony 71836c1055
Add option for showing notifications only in menu (#13326) 2021-12-16 14:38:43 +01:00
Tony 09880e92d2
Logging cleanups (#13320) 2021-12-04 14:21:12 +01:00
Tony 41838ef544
Refresh rate switch addition on startup (#13316) 2021-12-03 17:52:46 +01:00
Tony 121ca3a482
'Automatic Frame Delay' improvements: (#13297)
- swap interval handling
- d3dx handling
2021-12-02 02:32:39 +01:00
twinaphex b4137915e8 Move code to proper locations 2021-11-23 16:58:36 +01:00
twinaphex 0a40e1f771 (gl_core/gl3) Rename gl_core internally to gl3 2021-11-23 08:45:54 +01:00
twinaphex 0b768d0460 Split up recording code 2021-11-10 02:34:04 +01:00
twinaphex 2a5751ca0e Get rid of some getters 2021-11-09 07:06:04 +01:00
twinaphex a93a2e3366 (MSVC2019 UWP) Buildfix 2021-11-07 05:54:23 +01:00
twinaphex 88c771fc66 Cleanups 2021-11-07 01:44:45 +01:00
Tony 3137f8470b
Add 'Automatic Frame Delay' option (#13190) 2021-11-05 23:42:23 +01:00
twinaphex fe0c0d73ff Move aspectratio_lut to video_driver.c 2021-11-05 03:47:04 +01:00
twinaphex f50df1acfb Buildfix 2021-11-05 03:15:17 +01:00
twinaphex c17bcb8d91 Move code from retroarch.c to video_driver.c 2021-11-05 02:53:58 +01:00
twinaphex e4ccc2508e Move code over from retroarch.c to video_driver.c 2021-11-05 02:33:22 +01:00
twinaphex a291323467 Move some code to gfx/video_driver.c 2021-10-15 02:25:12 +02:00
twinaphex 7f2cc93cf5 Silence warning 2021-10-13 21:44:40 +02:00
twinaphex aa6d3542d2 Prevent warning 2021-10-13 18:44:27 +02:00
twinaphex 70606eab1e Buildfix for WiiU 2021-10-13 18:40:41 +02:00
twinaphex d87e0c1744 * Fix implicit declaration
* Move more code to gfx/video_driver.c
2021-10-13 16:36:38 +02:00
twinaphex 99b09ce359 Move more code to gfx/video_driver.c 2021-10-13 15:20:09 +02:00
twinaphex 5f4d4fe678 Move more code from retroarch.c to video_driver.c - retroarch.c now
778kb
2021-10-13 15:15:24 +02:00
Autechre 0a888f7868
Move video state to gfx/video_driver.c - reduces filesize of retroarch.c to 809kb (#13104)
* Move video state to gfx/video_driver.c - reduces filesize of retroarch.c
to 809Kb
2021-10-13 14:56:22 +02:00
Salvador 58e7dd8a1a
Add Miyoo target (#12860)
* add miyoo target
2021-10-08 13:53:49 +02:00
twinaphex 4f8ca90dd0 Move code over to gfx/video_driver.c 2021-09-28 15:29:05 +02:00
twinaphex 774dccca7c Move more code over to gfx/video_driver.c 2021-09-28 02:15:11 +02:00
twinaphex 3dee62ce62 Cleanups and buildfix 2021-09-28 01:16:53 +02:00
twinaphex 05e4aa8bfb move more code over to gfx/video_driver.c 2021-09-28 00:50:48 +02:00
twinaphex 4574a58683 (video_driver.c) Move some code over 2021-09-27 20:31:31 +02:00
twinaphex 0448afab96 Move video driver functions over to gfx/video_driver.c 2021-09-27 19:37:22 +02:00
twinaphex f061941456 Integrate record_driver.c into retroarch.c 2019-06-17 16:23:46 +02:00
twinaphex ee3208ac39 Integrate video_driver.c into retroarch.c 2019-06-17 15:10:22 +02:00
twinaphex 127bf556c7 Merge audio_driver.c into retroarch.c 2019-06-17 12:49:21 +02:00
Brad Parker c962da0ddb add video setting to select gpu (currently implemented for vulkan) 2019-06-13 12:47:08 -04:00
twinaphex fdd09a8b06 Refactor task screenshot 2019-06-06 15:48:50 +02:00
twinaphex 280cec702b video_driver_supports_viewport_read should only check if
taking screenshots with the GPU backbuffer is supported,
move outside settings check to callee
2019-06-06 15:06:27 +02:00
Huw Pascoe 8e9913a1ab Fix video_layout crash on unsupported drivers 2019-05-18 18:19:55 +01:00
Huw Pascoe 2c56011f84 video_layout interface 2019-05-11 09:58:48 +01:00
Huw Pascoe 6aaa4df394 video_layout 2019-05-11 09:58:46 +01:00
twinaphex 74388d8490 Remove string_concat 2019-05-10 18:05:58 +02:00
natinusala 636f2ddb28 menu_widgets: implement the user setting 2019-05-03 21:25:20 +02:00
twinaphex 29b8ddef28 Move video_driver_menu_settings 2019-05-01 00:09:49 +02:00
twinaphex 4b22522ae0 We need faster string concatenation for performance-critical
codepaths - this is being run every frame
2019-04-30 19:36:40 +02:00
twinaphex 4c3e0d44b8 Revert "Start using string_is_equal_memcmp and"
This reverts commit 26d6aee1eb.
2019-04-29 04:04:33 +02:00
twinaphex 26d6aee1eb Start using string_is_equal_memcmp and
string_is_equal_memcmp_fast
2019-04-28 17:23:11 +02:00
twinaphex 59b45f7812 Start making HAVE_OPENGL_CORE independent 2019-04-24 03:23:57 +02:00
twinaphex 04d062b3d4 (MSVC2003) Enable HAVE_OPENGL1; make HAVE_OPENGL1 independent from
HAVE_OPENGL
2019-04-22 22:48:23 +02:00
natinusala 7a3caf82d0 menu widgets: reimplement FPS counter 2019-04-08 17:06:04 +02:00
twinaphex cd75045792 Simplify video_driver_frame - simplify FPS reporting printout 2019-03-19 16:03:19 +01:00
twinaphex 4fb95db80b Simplify video_driver_frame 2019-03-19 04:32:36 +01:00
twinaphex 46dc4508f4 Buildfix for Cg 2019-03-18 16:32:46 +01:00
twinaphex 819016b00c Move video_shader_driver_init to gl.c 2019-03-18 15:52:21 +01:00
twinaphex f67bfa24ef Get rid of video_poke_interface set_mvp 2019-03-18 15:19:11 +01:00
twinaphex fe1255094f Get rid of now unused set_coords in video_driver_poke_interface 2019-03-18 05:04:23 +01:00
Brad Parker a8a06d498c gl1: fix matrix not loading when threaded video is on 2019-03-17 12:46:01 -04:00
Themaister d9b245ce66 Swap order of drivers gl2/glcore. 2019-03-09 12:30:49 +01:00
Themaister 3029f96511 Add a new "glcore" driver with slang support.
This driver should sunset the old gl2 driver, but that driver will
likely live on to support really ancient and terrible GL stacks.
All the worst legacy cruft has been ripped out, and it's almost a decent
backend now.

Requirements for slang are GL 3.2+ or GLES3.
Some shaders require features which are not directly compatible with
GLES2 or legacy GL.

This driver shares a lot of concepts from the Vulkan driver.
The slang shader stack and SPIRV-Cross are used to implement the shader
spec, and the menu shaders are also shared with Vulkan.
2019-03-09 12:30:49 +01:00
Brad Parker 10df615d14 add "Send Debug Info" option under Help 2019-03-07 19:17:54 -05:00
twinaphex ebae7ebc79 Input driver - Get rid of 'own driver' mechanism 2019-02-27 17:17:34 +01:00
twinaphex 829aedc6e2 (Video/Audio) Remove 'own driver' mechanism 2019-02-27 17:09:15 +01:00
Brad Parker f5f492845f add setting for screen orientation, with initial android implementation 2019-02-21 00:31:55 -05:00
twinaphex 158a442036 Add further HAVE_OPENGL1 support 2019-02-17 10:42:16 +01:00
alphanu1 e11c910c39 Fix native naming after new additions
CRT dynamic width changes

Change menu detection width

Using alternative variables for CRT width and height

see output

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Add files via upload

Update video_crt_switch.c

Update video_crt_switch.c

Update video_display_server.h

Update video_display_server.c

Update dispserv_win32.c

Update dispserv_x11.c

Update menu_cbs_ok.c

X centring on the fly

X centring on the fly

Update dispserv_x11.c

X centring on the fly

Update dispserv_win32.c

Fix dispserv_win32.c

Fix dispserv_win32.c
2019-02-12 21:23:13 +00:00
alphanu1 c9c3c626e8
turn dynamic super res off on the fly 2019-02-12 11:23:53 +00:00
alphanu1 a76c1f4c51
Removed CRT setting video driver build info 2019-02-12 10:10:35 +00:00
alphanu1 f7d2fbd212
fix for dynamic super resolutions 2019-02-12 10:04:41 +00:00
alphanu1 14b80cc3e1
incorporation of dynamic super res
Closer to native look super resolution. Used to prevent artefacts
2019-02-12 09:44:06 +00:00
twinaphex 49bade15ae (video_driver.c) Cleanups 2019-02-12 06:22:50 +01:00
twinaphex a51acb8377 Buildfix 2019-02-12 04:03:10 +01:00
Brad Parker d64933b30d gl1: put behind HAVE_OPENGL1, off by default for now 2019-02-08 16:04:23 -05:00
Brad Parker 74fd184097 initial GL1 video driver, only rgui is working currently 2019-02-08 12:14:55 -05:00
twinaphex 7022786f34 Revert parts of menu_widgets that were causing breakage, but leave
all the hooks in so we can add them back piece by piece again
2019-02-08 07:26:43 +01:00
natinusala c20ab3864d First version of menu widgets (gl only) 2019-02-06 20:48:24 +01:00
twinaphex 1e394091d8 Namespace GL2 driver 2019-02-06 19:43:31 +01:00
twinaphex 0a04a1c80a (GL) Cleanups 2019-02-05 02:27:08 +01:00
twinaphex 9877e1ce3e (GL) Cleanups 2019-02-05 02:12:42 +01:00
twinaphex 5102eff399 (GL) Move GL-only shader code to gl.c 2019-02-05 01:13:39 +01:00
orbea 28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
orbea 4c56167446 Convert to linux line endings. 2019-02-03 15:43:42 -08:00
twinaphex 4cbbd3470b Revert "Simplify video_driver_set_mvp"
This reverts commit 1dd89e1bce.
2019-02-03 19:40:48 +01:00
twinaphex 4aadd53d80 Revert "Get rid of video_shader_driver_scale"
This reverts commit 256b28fa2a.
2019-02-03 19:40:36 +01:00