Commit Graph

9732 Commits

Author SHA1 Message Date
twinaphex
035d7dad12 Go through utf8 to utf16 functions 2020-06-27 01:10:45 +02:00
twinaphex
1ae20ea17c Style nits - turn macro names into upper-case - some while style nits 2020-06-26 20:00:19 +02:00
twinaphex
808c00db41 (drivers_shader) Move static functions to top of files 2020-06-26 18:54:30 +02:00
twinaphex
80581f14a8 Revert "Revert "Cleanups""
This reverts commit 1fda1e0b28.
2020-06-26 18:44:38 +02:00
twinaphex
021625fd4a Revert "Move static functions to top of files"
This reverts commit 02b542e2a5.
2020-06-26 18:40:26 +02:00
twinaphex
1fda1e0b28 Revert "Cleanups"
This reverts commit a9c8cf205d.
2020-06-26 18:39:34 +02:00
twinaphex
a9c8cf205d Cleanups 2020-06-26 18:28:58 +02:00
twinaphex
02b542e2a5 Move static functions to top of files 2020-06-26 18:15:38 +02:00
twinaphex
601a73fa8b Use string_starts_with_size where possible - avoids the strlen 2020-06-25 12:51:04 +02:00
twinaphex
67898f5d12 (Font drivers) Simplifications 2020-06-24 21:27:47 +02:00
twinaphex
9cb4d924cb Revert "(drivers_font) Cut down on unnecessary strlen calls within a for loop"
This reverts commit 3e9d0b8758.
2020-06-24 21:09:44 +02:00
twinaphex
5fc63dc578 Cleanup 2020-06-24 21:07:35 +02:00
twinaphex
3e9d0b8758 (drivers_font) Cut down on unnecessary strlen calls within a for loop
- precompute once for function duration
2020-06-24 20:52:39 +02:00
valadaa48
f753efeaa7 oga_gfx: fix race condition with rgui callback
- oga_gfx_frame is sometimes called before set_texture_frame has been
called
2020-06-22 21:38:19 -04:00
Hugo Hromic
2e57a690ce (Win32/DispServer) Improve video resolution switching
* Only switch to a display mode with the same current bit-depth and screen rotation
* Only switch to a display mode with default stretching mode
* Cleanup the function for consistency with other functions
2020-06-21 23:49:26 +01:00
Hugo Hromic
9ec3a5ccad (Win32/DispServer) Improve building of video resolution list
* Only use display modes with the same current bit-depth and screen rotation
* Only use display modes with default stretching mode
* Cleanup the function for consistency with other functions
2020-06-21 23:49:11 +01:00
Jamiras
47dbaeabb8 gfx_widgets: move achievement popup widget into its own file 2020-06-17 10:48:01 -06:00
Autechre
5f8419b8d2
Merge pull request #10861 from Jamiras/gfx_threaded_msg
(widgets) prevent freeing message while it's being rendered
2020-06-16 22:18:48 +02:00
Jamiras
42e2d740d3 add lock around current_msgs 2020-06-16 07:27:15 -06:00
Jamiras
649f83c82e load badge texture outside of lock 2020-06-15 10:48:02 -06:00
valadaa48
69e2bd986d oga_gfx 24bit menu support
- hack borrowed from drm_gfx
2020-06-14 03:54:36 +00:00
twinaphex
01bd76405f Buildfixes 2020-06-13 08:37:26 +02:00
twinaphex
d903d684a0 (glslang) Group together more strings 2020-06-12 05:24:34 +02:00
twinaphex
c2044beedd Fix shader regression with MinProgramTexelOffset 2020-06-12 05:18:38 +02:00
twinaphex
d8cf551608 Silence 'suggest braces around initialization of subobject' warning 2020-06-11 17:38:11 +02:00
twinaphex
7ee5ffcd1c Further optimize SlangProcess 2020-06-11 05:51:03 +02:00
twinaphex
a68b942d1d Refactor AI Service code 2020-06-11 03:27:01 +02:00
twinaphex
bc24092374 (VIDEOCRT SWITCH) move global state to rarch_state 2020-06-10 17:42:08 +02:00
twinaphex
e04bce7dd0 Move gfx_thumbnail global state to rarch_state 2020-06-10 17:22:02 +02:00
twinaphex
b2f5262a3b crt_first_run and crt_video_restore were both useless 2020-06-10 15:50:29 +02:00
Autechre
02ca1a1f01
Merge pull request #10829 from valadaa48/oga_gfx_ffwd
Add ffwd to non-threaded oga_gfx driver
2020-06-10 15:05:04 +02:00
jdgleaver
9bbc9dd30e (Widgets) Fix serious heap-use-after-free errors 2020-06-10 12:32:50 +01:00
valadaa48
3abcb2b922 Add ffwd to non-threaded oga_gfx driver 2020-06-09 20:24:28 -04:00
jdgleaver
1fde6f8aed Fix 3DS build 2020-06-09 10:57:00 +01:00
Themaister
f089e1ccf5 Vulkan: Do not emulate mailbox on Android. 2020-06-09 00:24:29 +02:00
Themaister
cd4f22c275 Vulkan: Add path which uses WSI acquire semaphores.
Fence wait path has some issues on certain platforms. For now, gate this
on whether the GPU is integrated or not.
2020-06-09 00:24:29 +02:00
Themaister
15df55d011 Vulkan: Refactor swapchain index and frame index.
Do not tie these concepts together, it will not work for upcoming
refactor of swapchain logic.
2020-06-09 00:24:29 +02:00
Themaister
6f68571805 Vulkan: Use VK_LAYER_KHRONOS_validation in VULKAN_DEBUG=1.
LUNARG_standard_validation was deprecated and removed ages ago.
2020-06-09 00:24:28 +02:00
twinaphex
5a690b7ac8 (display widgets) Cleanups 2020-06-09 00:13:34 +02:00
twinaphex
52050739a1 Cleanups 2020-06-08 23:13:29 +02:00
twinaphex
b183abbb0f More string_is_equal optimizations; localize more strings 2020-06-08 22:46:56 +02:00
twinaphex
6fce0435a1 Update more logs 2020-06-08 18:04:29 +02:00
twinaphex
be886bf2aa Update log message 2020-06-08 18:01:15 +02:00
twinaphex
fc491e9ea4 Add more environ logs 2020-06-08 17:32:36 +02:00
jdgleaver
0c7f0df41a Fix crash when taking screenshots with widgets enabled 2020-06-08 12:41:22 +01:00
twinaphex
58b22b0a6e Optimize some long iterations of string_is_equal 2020-06-08 07:00:22 +02:00
twinaphex
8ba8772edb Cleanups 2020-06-08 05:57:47 +02:00
twinaphex
a87d15e361 Cleanups 2020-06-08 05:52:25 +02:00
twinaphex
2660182d52 Get rid of gfx_widgets_ready call inside
gfx_widgets_frame
2020-06-08 05:45:15 +02:00
twinaphex
5c2a2ca485 Move widgets state over to retroarch global state 2020-06-08 05:09:42 +02:00
twinaphex
57c3b1b041 Move widgets_persisting to retroarch.c 2020-06-08 04:36:40 +02:00
twinaphex
73b5bf438b Move widgets_active to retroarch.c 2020-06-08 04:32:54 +02:00
twinaphex
d9565b6619 Cut down on unnecessary widgets_active early returns 2020-06-08 04:17:33 +02:00
twinaphex
d6229ed70d gfx_widgets_deinit - turn return value into bool 2020-06-08 04:12:15 +02:00
twinaphex
9707f1f622 Get rid of gfx_ctx_animation_tag 2020-06-08 04:09:12 +02:00
twinaphex
eb20c10713 Start getting rid of gfx_ctx_animation_tag - it's just a uintptr_t
typedef
2020-06-08 03:56:35 +02:00
twinaphex
573eddb5a4 (Metal) Always run this regardless 2020-06-08 03:28:32 +02:00
twinaphex
7f54f410f4 Remove pointer grabbing from get_msg_queue function 2020-06-08 03:11:59 +02:00
twinaphex
69bdf581f4 Change this back 2020-06-08 03:10:31 +02:00
twinaphex
876419294d (gfx widgets) Pass more state around 2020-06-08 02:54:01 +02:00
twinaphex
54372f2524 Pass state around to widget interface 2020-06-08 02:31:36 +02:00
twinaphex
77f5433f22 Create global wrapper function for state 2020-06-08 01:59:25 +02:00
twinaphex
9aa736b522 Move forward declarations up 2020-06-08 01:56:45 +02:00
twinaphex
a2ea198fdd (gfx widgets) Pass pointer around more 2020-06-08 01:55:04 +02:00
twinaphex
3f163eaa8d Bring all graphics widget global state together under one struct 2020-06-08 01:41:21 +02:00
twinaphex
dc217b313c Buildfix 2020-06-07 23:45:48 +02:00
twinaphex
ddf45fdad2 (gfx widgets) Cleanups 2020-06-07 23:43:59 +02:00
twinaphex
4524ff7cd7 (Gfx widgets) Cleanups 2020-06-07 23:39:11 +02:00
twinaphex
797d3f871c (Gfx widgets) get rid of this early return - already done outside 2020-06-07 23:26:37 +02:00
twinaphex
6b5e9a3224 (gfx widgets) Cleanups 2020-06-07 23:17:37 +02:00
twinaphex
ce02161255 Cleanups 2020-06-07 23:01:52 +02:00
twinaphex
5e2649a6f5 Move gfx_display global state to rarch state 2020-06-07 22:58:06 +02:00
Twinaphex
df8df6c18b Fix EXC_BAD_ACCESS crash on RetroArch exit on OSX 2020-06-07 05:53:46 +02:00
Autechre
eddcde84b6
Merge pull request #10802 from heuripedes/coz
Ozone improvement
2020-06-07 03:01:47 +02:00
twinaphex
be76958070 Unneeded gdi_has_menu_frame 2020-06-07 02:56:56 +02:00
twinaphex
b42897d0b6 (GDI) Weird code - clean this up 2020-06-07 02:55:51 +02:00
Higor Eurípedes
1f45018ee8 shader_glsl.c: Move buffer null pointer check in gl_glsl_set_coords()
`buffer` is initialized to a statically allocated variable and can only be NULL
when the allocation of a bigger buffer fails. When only the core frame is being
displayed, the buffer never points to the heap thanks to the small buffer
optimization.
2020-06-06 20:08:28 -03:00
twinaphex
9059b4962e Cleanups 2020-06-07 00:05:41 +02:00
Francisco José García García
13b5450ff9 [GL1] Initial changes for hw context without FBO 2020-06-03 20:48:16 +02:00
Guo Yunhe
e9916df9d0 Change keys to upper case 2020-06-02 10:28:00 +03:00
Rinnegatamante
14a6c42e0d [VITA] Using a global to prevent erroneous vitaGL re-initializations. 2020-06-01 11:12:16 +02:00
Francisco José García García
ec336442bd
Merge pull request #10749 from libretro/vitagl
VitaGL fixes
2020-05-31 17:14:23 +02:00
Francisco José García García
f976078ef2 [VITA] GL fixes 2020-05-31 17:10:26 +02:00
nia
ef0038de2a sdl_gl_ctx: advertise GLSL support 2020-05-29 18:03:25 +01:00
twinaphex
479a8a6e64 (PS2) Fix warning incompatible pointer type 2020-05-29 11:22:53 +02:00
twinaphex
ec35ce7fdc Add TODO/FIXME notes 2020-05-29 10:23:48 +02:00
twinaphex
3ae7e9f8df Update TODO/FIXMEs 2020-05-29 06:20:16 +02:00
twinaphex
a5ca6c24de Add more TODO/FIXMEs for globals 2020-05-29 06:17:39 +02:00
twinaphex
02bc3ee1e8 Buildfixes/cleanups 2020-05-26 21:34:05 +02:00
jdgleaver
23916f88c7 Extended core message interface - add concept of message 'type' 2020-05-26 10:03:25 +01:00
jdgleaver
18912ac23d Enable configuration of date seperator in clock and runtime 'last played' displays 2020-05-25 15:46:53 +01:00
twinaphex
bc226305d7 (x11_common.c) Cleanup 2020-05-24 19:38:41 +02:00
twinaphex
e030986837 Replace fprintfs with RARCH_LOG/RARCH_ERR 2020-05-24 19:29:55 +02:00
twinaphex
cf1bc2634d Prevent doing unnecessary double strlen 2020-05-24 16:38:53 +02:00
twinaphex
cebc01cb1e C89_BUILD buildfix 2020-05-24 06:54:42 +02:00
Autechre
2ac18a621a
Merge pull request #10697 from phcoder/x11
Improvements for XShm
2020-05-24 06:51:13 +02:00
Vladimir Serbinenko
c9c2d8a0b6 xshm_gfx: Add missing casts 2020-05-24 06:34:59 +02:00
Vladimir Serbinenko
54a07eaa60 Move decarations to the start of function 2020-05-24 06:33:20 +02:00
Vladimir Serbinenko
3f5eb55405 Replace C++ commants with C89 ones 2020-05-24 06:32:36 +02:00
Vladimir Serbinenko
77829a8e5b Rename xshm to x11 as it can now work without shm
xshm was disabled, so no problem with config update
2020-05-24 05:11:53 +02:00
Vladimir Serbinenko
62bb1d4da4 xshm: Allow to operate without shm extension
In most cases it doesn't make a nice gameplay but is still useful for debugging
on remote system and xnest
2020-05-24 05:01:51 +02:00
twinaphex
b5fe162c32 C89_BUILD fix 2020-05-24 03:52:23 +02:00
Vladimir Serbinenko
c4b4961ed1 xshm: fix compatibility with x input 2020-05-24 03:52:13 +02:00
Vladimir Serbinenko
cfe68a4c2d Fix crash in x11_display_server_get_screen_orientation 2020-05-24 03:38:24 +02:00
Higor Eurípedes
4ea0f232ef Use small buffer optimization in gfx_animation_ticker_smooth()
Like the previous commit, this one lowers the number of temporary allocations
while the menu is up.
2020-05-23 22:34:12 -03:00
Higor Eurípedes
0c9499a88e Implements small buffer optimization in font_driver_reshape_msg()
Use a stack-allocated 64 bytes long buffer to avoid so many temp heap
allocations when the menu is up. This size is more than enough store 75% of the
return values from msg_hash_to_str and 50% of the returned values from
msg_hash_get_help of any currently supported language (includes fallback to
English).

String size per type:
                     count       mean         std  ...   50%    75%    max
type                                               ...
msg_hash_get_help  83885.0  95.295476  106.331779  ...  54.0  103.0  842.0
msg_hash_to_str    83903.0  27.737959   33.389184  ...  19.0   31.0  440.0

string size per type and language:
                             count        mean         std  ...   50%    75%    max
type              language                                  ...
msg_hash_get_help 0         4415.0   89.922310   96.873902  ...  55.0  101.0  590.0
                  1         4415.0   97.555606  118.031412  ...  55.0  101.0  842.0
                  2         4415.0  118.459570  127.811760  ...  75.0  131.0  774.0
                  3         4415.0  111.978256  112.702991  ...  68.0  125.0  651.0
                  4         4415.0  106.040544  111.360658  ...  62.0  124.0  776.0
                  5         4415.0  100.129105  114.437432  ...  62.0  103.0  688.0
                  6         4415.0   32.987769   31.047851  ...  28.0   28.0  595.0
                  7         4415.0  109.366025  124.717259  ...  71.0  121.0  720.0
                  8         4415.0   98.023783  105.149942  ...  62.0  105.0  610.0
                  9         4415.0   93.834428  104.433820  ...  55.0  101.0  637.0
                  10        4415.0   93.657984   96.884429  ...  55.0  101.0  594.0
                  11        4415.0   93.452775  104.040553  ...  48.0  100.0  583.0
                  12        4415.0   89.729558  104.062959  ...  50.0  100.0  550.0
                  13        4415.0   91.462514   95.968107  ...  55.0  101.0  590.0
                  14        4415.0   92.062741   97.959207  ...  55.0  101.0  611.0
                  15        4415.0   92.597055   97.190835  ...  56.0  101.0  600.0
                  16        4415.0   92.088109   98.110738  ...  55.0  101.0  608.0
                  17        4415.0  102.483126  106.379639  ...  65.0  110.0  652.0
                  18        4415.0  104.782786  114.025678  ...  65.0  112.0  646.0
msg_hash_to_str   0         4415.0   24.591619   29.148312  ...  18.0   28.0  346.0
                  1         4416.0   31.247736   36.302532  ...  21.0   36.0  352.0
                  2         4416.0   31.853714   39.332395  ...  21.0   36.0  418.0
                  3         4416.0   28.270833   33.300996  ...  21.0   32.0  429.0
                  4         4416.0   27.139040   31.905206  ...  19.0   31.0  346.0
                  5         4416.0   27.380435   32.314188  ...  19.0   31.0  346.0
                  6         4416.0   25.028080   29.188490  ...  19.0   28.0  346.0
                  7         4416.0   29.660553   35.283592  ...  21.0   33.0  393.0
                  8         4416.0   27.685915   32.707466  ...  20.0   31.0  346.0
                  9         4416.0   34.786685   43.587766  ...  21.0   39.0  414.0
                  10        4416.0   28.769928   34.428596  ...  20.0   32.0  440.0
                  11        4416.0   24.407609   28.690934  ...  18.0   27.0  346.0
                  12        4416.0   23.970788   27.075638  ...  18.0   28.0  346.0
                  13        4416.0   24.587636   29.146213  ...  18.0   28.0  346.0
                  14        4416.0   27.642889   33.300451  ...  20.0   31.0  346.0
                  15        4416.0   25.036005   29.159115  ...  18.0   28.0  346.0
                  16        4416.0   24.732111   29.134002  ...  18.0   28.0  346.0
                  17        4416.0   32.068161   38.807095  ...  21.0   36.0  407.0
                  18        4416.0   28.160779   34.013300  ...  20.0   31.0  432.0
2020-05-23 22:33:45 -03:00
twinaphex
3a057d594b MSVC2003 buildfix 2020-05-24 00:05:14 +02:00
Autechre
942d82593b
Merge pull request #10691 from phcoder/rbxv
Fix xvideo support on xwayland and input in general
2020-05-23 05:47:57 +02:00
Vladimir Serbinenko
a86e8e0f36 Support YV12
Only I420 and YZ12 are available on xwayland. Support it
2020-05-23 05:39:18 +02:00
Vladimir Serbinenko
9c4fde00ce xvideo: Fix order of context init
Current order causes an error in x11_input init and hence keyboard
doesn't work
2020-05-23 04:36:53 +02:00
twinaphex
6408da2ae4 Silence warnings 2020-05-23 03:19:25 +02:00
twinaphex
d717f3537a Update sdl2_gfx.c 2020-05-22 22:58:41 +02:00
barbudreadmon
2052f1595c
(vita) try at fixing upside-down vertical games
it is a blind commit, i don't have access to the hardware, see #6859 for more explanations
2020-05-22 12:02:19 +02:00
twinaphex
6dc758a080 Move cheevos-new to cheevos/ 2020-05-21 23:23:01 +02:00
Twinaphex
ede03659ca Update 2020-05-21 22:31:51 +02:00
twinaphex
a9cf718e75 Get rid of auto variable in glslang.cpp 2020-05-21 20:04:36 +02:00
twinaphex
060ad38905 (WiiU) Buildfix 2020-05-20 23:34:23 +02:00
Francisco Javier Trujillo Mata
1eeb3dcf30 Adapt PS2 port to new SDK with newlib support (CDVDFS support is missing) 2020-05-20 20:13:19 +02:00
twinaphex
a8fdfd77ce Make gamma correction 'int' type across the board 2020-05-20 15:04:16 +02:00
twinaphex
2cc776d2d9 Cleanups 2020-05-20 02:42:39 +02:00
twinaphex
2a36fa0855 Remove double ';' 2020-05-19 21:29:35 +02:00
twinaphex
ad1aa59ce1 Cleanup != NULL comparisons 2020-05-19 21:15:06 +02:00
twinaphex
9ace693ec0 Refactor menu_driver_frame 2020-05-19 16:20:43 +02:00
jdgleaver
5eee8daa4f (gfx_thumbnail) Fix heap-use-after-free error 2020-05-19 14:03:02 +01:00
twinaphex
1d1c7e5a0d (PSL1GHT/GCM) Style nits 2020-05-12 15:10:15 +02:00
twinaphex
bde18ba86a Style nits 2020-05-12 14:36:27 +02:00
twinaphex
57bbf7c944 (gfx widgets) Rearrange variables 2020-05-12 08:56:57 +02:00
twinaphex
84369cf6ba (Win32) Cleanups 2020-05-12 08:49:41 +02:00
Vladimir Serbinenko
05500c6c39 dos: Add 32-bit gfx support 2020-05-12 03:09:38 +02:00
Vladimir Serbinenko
67c3c93aec dos fixes 2020-05-12 03:09:38 +02:00
Vladimir Serbinenko
cc73de48d6 Fix dos compilation 2020-05-12 03:09:38 +02:00
jdgleaver
63644ac761 (GLUI) Add desktop-style playlist view mode 2020-05-09 14:53:52 +01:00
jdgleaver
a305a48a11 (3DS) Fix font driver 2020-05-04 16:57:44 +01:00
jdgleaver
548c5dc925 (glcore/slang) Set filter and wrap mode correctly when intialising shader textures 2020-04-30 17:04:02 +01:00
twinaphex
d995fa045a (GDI) Get rid of unused functions 2020-04-29 18:40:48 +02:00
twinaphex
bb27496e2e Prevent NULL pointer dereference 2020-04-29 14:38:11 +02:00
twinaphex
9b8c596057 (GL Core) Buildfix for video context drivers that dont
implement this callback
2020-04-29 13:50:21 +02:00
jdgleaver
9eb8472805 Only write config files to disk when parameters change 2020-04-27 17:06:35 +01:00
twinaphex
c88ffa56ff (Vulkan) Fix crash 2020-04-25 17:44:13 +02:00
jdgleaver
0e3026d41f (Vulkan) Fix display of statistics text 2020-04-23 17:48:15 +01:00
Autechre
21f15d5cbd
Merge pull request #10490 from phcoder/msb
Remove manual MSB_FIRST definitions and switch to retro_endianness.h
2020-04-22 21:16:45 +02:00
Ash Logan
ed24d05752 WiiU: gfx_display: fix non-vertex coordinates in draws using tex shader
This second case is hit when there's a quad with different-coloured 
corners, since the tex shader is needed to support that. In the quad 
case, there are no vertexes, and the ->x,y,width,height fields are used 
instead.

Fixes #8519.
2020-04-22 23:35:46 +10:00
Vladimir Serbinenko
1fcdddf579 Remove manual MSB_FIRST definitions and switch to retro_endianness.h 2020-04-21 04:16:55 +02:00
jdgleaver
6c49ae5152 (WiiU/3DS) Fix font driver horizontal text alignment 2020-04-20 16:20:21 +01:00
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
Twinaphex
238d72d187 Buildfix 2020-03-10 02:38:23 +01:00
Twinaphex
dde5f67962 Revert "(Metal raster font) remove video_frame_info dep"
This reverts commit f2df63e246.
2020-03-10 02:07:10 +01:00
twinaphex
f2df63e246 (Metal raster font) remove video_frame_info dep 2020-03-10 02:02:19 +01:00
twinaphex
083a0453c6 (PS2) Buildfix 2020-03-10 01:07:29 +01:00
twinaphex
1a854021a4 (Metal raster font) More simplifications 2020-03-09 22:47:40 +01:00
twinaphex
2da2dd3b0b (Metal raster font) Simplify code 2020-03-09 22:44:01 +01:00
twinaphex
c77861126f remove video_info deps 2020-03-09 22:35:25 +01:00
twinaphex
867bdad010 Get rid of unimplemented FPGA font driver 2020-03-09 22:13:17 +01:00
twinaphex
a395bf9355 (Drivers font) Start getting rid of video_frame_info dependency 2020-03-09 21:56:03 +01:00
twinaphex
43feea3496 (Drivers font) Add parameter 2020-03-09 21:34:14 +01:00
twinaphex
0ee8119459 (widgets) Nits 2020-03-09 19:35:49 +01:00
Twinaphex
adfef2a503
Merge pull request #10240 from natinusala/split-widgets
gfx_widgets: start moving widgets into their own file
2020-03-09 19:14:26 +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
4e6f26d2e4 (Video drivers) Cleanups 2020-03-09 16:24:20 +01:00
twinaphex
9e9ad8d5eb (video_thread_wrapper) Remove unused CMD_POKE_SET_OSD_MSG 2020-03-09 16:19:07 +01:00
twinaphex
b7da58b40b (Gfx) Video driver cleanups 2020-03-09 16:15:53 +01:00
twinaphex
17bb6f7354 (D3D10) Cleanups 2020-03-09 15:55:37 +01:00
twinaphex
68678987c4 (Vulkan) Cleanups 2020-03-09 15:48:15 +01:00
twinaphex
cd152399a3 (GL) Cleanups 2020-03-09 15:40:14 +01:00
natinusala
b4ea5d3cd5 gfx_widgets: move screenshot widget into its own file 2020-03-09 14:40:31 +01:00
natinusala
8e3ef34c1f gfx_widgets: pipe all functions to the widgets 2020-03-09 14:40:31 +01:00
natinusala
3c1e9372ab gfx_widgets: add gfx_widget struct 2020-03-09 14:40:31 +01:00
twinaphex
ee2f25b1dc (Gfx drivers) Cleanups 2020-03-09 05:18:02 +01:00
twinaphex
cdbae18ae5 Cleanups 2020-03-09 04:13:41 +01:00
twinaphex
7d4e5b8ce5 No more video_info_frame dependency in gfx_thumbnail.c 2020-03-09 02:15:44 +01:00
twinaphex
7f958862fe cleanups 2020-03-09 01:32:05 +01:00
twinaphex
e08689ed98 (Menu) Cleanups 2020-03-09 01:26:43 +01:00
twinaphex
c3be8f45fc (Metal) Buildfix 2020-03-09 01:18:01 +01:00
twinaphex
a0446f778c Cleanups 2020-03-09 00:34:31 +01:00
twinaphex
5388448cf3 (gfx_widgets.c) Cleanups 2020-03-09 00:25:28 +01:00
twinaphex
8c39c804ee (gfx_widgets.c) Cleanups 2020-03-09 00:18:38 +01:00
twinaphex
13249f6011 Cleanups 2020-03-09 00:08:18 +01:00
twinaphex
d72596142e gfx_display_draw_quad - no longer dependent on video_frame_info 2020-03-08 23:56:22 +01:00
twinaphex
b24d1f06aa gfx_display_scissor_begin/end - get rid of video_frame_info dependency 2020-03-08 22:58:17 +01:00
twinaphex
044619281c gfx_display_draw - remove video_frame_info dependency 2020-03-08 22:52:02 +01:00
twinaphex
d42a76dec1 Simplify conditional and fix clear_color call 2020-03-08 22:36:51 +01:00
twinaphex
6cb6f76add gfx_display_rotate_z - get rid of video_frame_info dependency 2020-03-08 22:33:11 +01:00
twinaphex
e4aa0fd544 (gfx display) Get rid of video_frame_info dependency for
blend_begin/blend_end
2020-03-08 22:28:42 +01:00
twinaphex
c16568cf32 (gfx drivers display) No more video_frame_info dependency 2020-03-08 22:06:08 +01:00
twinaphex
7a9684b6ea (Gfx display) scissor_begin/scissor_end - drop video_frame_info dependency 2020-03-08 22:06:08 +01:00
twinaphex
591bb36e03 (gfx display) blend_begin/blend_end - no more dependency on
video_frame_info
2020-03-08 21:02:03 +01:00
twinaphex
809e22ec1a (gfx display) set_viewport - no longer dependent on video_frame_info 2020-03-08 20:23:39 +01:00
twinaphex
874510152e (drivers_display) Get rid of video_frame_info argument for
get_default_mvp
2020-03-08 19:59:03 +01:00
twinaphex
3e706fe5b2 (D3D9 renderchain) Take out video_frame_info dependencies 2020-03-08 19:03:57 +01:00
twinaphex
7c7eeff0fb Move display_server code into retroarch.c 2020-03-08 18:48:15 +01:00
twinaphex
2497ac4584 (video_crt_switch.c) Move static global variables to struct 2020-03-08 18:48:15 +01:00
twinaphex
c32cb51755 Cleanups 2020-03-08 01:45:29 +01:00
twinaphex
cfa90a4a36 (gfx/drivers_display) cleanups 2020-03-08 01:28:15 +01:00
twinaphex
f0bf2df92f Get rid of stale PERF_START/PERF_STOP macros in d3d files 2020-03-07 23:16:25 +01:00
twinaphex
935393b391 Cleanups 2020-03-07 23:12:02 +01:00
twinaphex
212f32e2fd Get rid of the static asserts 2020-03-07 22:54:57 +01:00
twinaphex
9b76446b48 Cache video_info->width/video_info->height into local variables
and use them throughout code
2020-03-07 21:18:12 +01:00
twinaphex
9b0ff1fd0d (gfx_display.c) Cleanup 2020-03-07 20:53:39 +01:00
twinaphex
6505080d64 (gfx drivers font) Get rid of as many video_frame_info
dependencies as possible
2020-03-07 20:48:26 +01:00
twinaphex
be861cf55d (gfx drivers font) Reduce dependency on video_frame_info 2020-03-07 20:11:39 +01:00