mirror of
https://github.com/libretro/RetroArch
synced 2025-03-29 22:20:21 +00:00
Merge branch 'master' of github.com:libretro/RetroArch
This commit is contained in:
commit
6a17168739
@ -17,9 +17,11 @@
|
||||
#include "../../config.h"
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_X11
|
||||
#ifdef HAVE_XCB
|
||||
#include <X11/Xlib-xcb.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <retro_assert.h>
|
||||
#include <dynamic/dylib.h>
|
||||
@ -1485,6 +1487,7 @@ bool vulkan_surface_create(gfx_ctx_vulkan_data_t *vk,
|
||||
#endif
|
||||
break;
|
||||
case VULKAN_WSI_XCB:
|
||||
#ifdef HAVE_X11
|
||||
#ifdef HAVE_XCB
|
||||
{
|
||||
VkXcbSurfaceCreateInfoKHR surf_info;
|
||||
@ -1501,6 +1504,7 @@ bool vulkan_surface_create(gfx_ctx_vulkan_data_t *vk,
|
||||
!= VK_SUCCESS)
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
break;
|
||||
case VULKAN_WSI_MIR:
|
||||
|
@ -278,7 +278,7 @@ static gfx_ctx_proc_t gfx_ctx_mali_fbdev_get_proc_address(const char *symbol)
|
||||
{
|
||||
#ifdef HAVE_EGL
|
||||
return egl_get_proc_address(symbol);
|
||||
#else
|
||||
#endif
|
||||
}
|
||||
|
||||
static void gfx_ctx_mali_fbdev_bind_hw_render(void *data, bool enable)
|
||||
|
@ -31,6 +31,10 @@ struct gl_cached_state
|
||||
GLuint ids[MAX_TEXTURE];
|
||||
} bind_textures;
|
||||
|
||||
#ifndef HAVE_OPENGLES
|
||||
GLenum colorlogicop;
|
||||
#endif
|
||||
|
||||
struct
|
||||
{
|
||||
bool enabled[MAX_ATTRIB];
|
||||
@ -516,6 +520,17 @@ void rglGetProgramiv(GLuint shader, GLenum pname, GLint *params)
|
||||
glGetProgramiv(shader, pname, params);
|
||||
}
|
||||
|
||||
void rglUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose,
|
||||
const GLfloat *value)
|
||||
{
|
||||
glUniformMatrix4fv(location, count, transpose, value);
|
||||
}
|
||||
|
||||
void rglDetachShader(GLuint program, GLuint shader)
|
||||
{
|
||||
glDetachShader(program, shader);
|
||||
}
|
||||
|
||||
void rglGetShaderiv(GLuint shader, GLenum pname, GLint *params)
|
||||
{
|
||||
glGetShaderiv(shader, pname, params);
|
||||
@ -526,6 +541,11 @@ void rglAttachShader(GLuint program, GLuint shader)
|
||||
glAttachShader(program, shader);
|
||||
}
|
||||
|
||||
GLint rglGetAttribLocation(GLuint program, const GLchar *name)
|
||||
{
|
||||
return glGetAttribLocation(program, name);
|
||||
}
|
||||
|
||||
void rglShaderSource(GLuint shader, GLsizei count,
|
||||
const GLchar **string, const GLint *length)
|
||||
{
|
||||
@ -561,7 +581,7 @@ void rglGetProgramInfoLog(GLuint shader, GLsizei maxLength,
|
||||
|
||||
GLboolean rglIsProgram(GLuint program)
|
||||
{
|
||||
glIsProgram(program);
|
||||
return glIsProgram(program);
|
||||
}
|
||||
|
||||
void rglEnableVertexAttribArray(GLuint index)
|
||||
@ -707,6 +727,10 @@ static void glsm_state_setup(void)
|
||||
gl_state.cap_translate[SGL_SCISSOR_TEST] = GL_SCISSOR_TEST;
|
||||
gl_state.cap_translate[SGL_STENCIL_TEST] = GL_STENCIL_TEST;
|
||||
|
||||
#ifndef HAVE_OPENGLES
|
||||
gl_state.cap_translate[SGL_COLOR_LOGIC_OP] = GL_COLOR_LOGIC_OP;
|
||||
#endif
|
||||
|
||||
for (i = 0; i < MAX_ATTRIB; i++)
|
||||
gl_state.vertex_attrib_pointer.enabled[i] = 0;
|
||||
|
||||
@ -732,6 +756,10 @@ static void glsm_state_setup(void)
|
||||
|
||||
gl_state.depthfunc.func = GL_LESS;
|
||||
|
||||
#ifndef HAVE_OPENGLES
|
||||
gl_state.colorlogicop = GL_COPY;
|
||||
#endif
|
||||
|
||||
#ifdef CORE
|
||||
glGenVertexArrays(1, &gl_state.vao);
|
||||
#endif
|
||||
@ -812,8 +840,6 @@ static void glsm_state_bind(void)
|
||||
{
|
||||
if (gl_state.cap_state[i])
|
||||
glEnable(gl_state.cap_translate[i]);
|
||||
else
|
||||
glDisable(gl_state.cap_translate[i]);
|
||||
}
|
||||
|
||||
if (gl_state.frontface.used)
|
||||
@ -851,7 +877,10 @@ static void glsm_state_unbind(void)
|
||||
glBindVertexArray(0);
|
||||
#endif
|
||||
for (i = 0; i < SGL_CAP_MAX; i ++)
|
||||
glDisable(gl_state.cap_translate[i]);
|
||||
{
|
||||
if (gl_state.cap_state[i])
|
||||
glDisable(gl_state.cap_translate[i]);
|
||||
}
|
||||
|
||||
glBlendFunc(GL_ONE, GL_ZERO);
|
||||
|
||||
|
@ -100,6 +100,9 @@ enum
|
||||
SGL_DITHER,
|
||||
SGL_SAMPLE_ALPHA_TO_COVERAGE,
|
||||
SGL_SAMPLE_COVERAGE,
|
||||
#ifndef HAVE_OPENGLES
|
||||
SGL_COLOR_LOGIC_OP,
|
||||
#endif
|
||||
SGL_CAP_MAX
|
||||
};
|
||||
|
||||
|
@ -61,6 +61,7 @@ extern "C" {
|
||||
#define glGetProgramiv rglGetProgramiv
|
||||
#define glGetShaderiv rglGetShaderiv
|
||||
#define glAttachShader rglAttachShader
|
||||
#define glDetachShader rglDetachShader
|
||||
#define glShaderSource rglShaderSource
|
||||
#define glCompileShader rglCompileShader
|
||||
#define glCreateProgram rglCreateProgram
|
||||
@ -109,6 +110,8 @@ extern "C" {
|
||||
#define glPolygonOffset rglPolygonOffset
|
||||
#define glPixelStorei rglPixelStorei
|
||||
#define glReadBuffer rglReadBuffer
|
||||
#define glUniformMatrix4fv rglUniformMatrix4fv
|
||||
#define glGetAttribLocation rglGetAttribLocation
|
||||
|
||||
void rglReadBuffer(GLenum mode);
|
||||
void rglPixelStorei(GLenum pname, GLint param);
|
||||
@ -207,7 +210,10 @@ void rglBlitFramebuffer(
|
||||
GLint dstX0, GLint dstY0,
|
||||
GLint dstX1, GLint dstY1,
|
||||
GLbitfield mask, GLenum filter);
|
||||
|
||||
void rglDetachShader(GLuint program, GLuint shader);
|
||||
void rglUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose,
|
||||
const GLfloat *value);
|
||||
GLint rglGetAttribLocation(GLuint program, const GLchar *name);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -3210,6 +3210,14 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
|
||||
menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_QUIT_RETROARCH),
|
||||
PARSE_ACTION, false);
|
||||
#endif
|
||||
#if defined(HAVE_LAKKA)
|
||||
menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_SHUTDOWN),
|
||||
PARSE_ACTION, false);
|
||||
menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_REBOOT),
|
||||
PARSE_ACTION, false);
|
||||
#endif
|
||||
info->need_push = true;
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user