* Initial implementation of CoreAspect uniform
* float -> float_t
* Possibly fix wii_u building
* vulkan: use float instead of float_t;
* slangp: Advertise support of CoreAspect uniform
by defining _RARCH_HAS_COREASPECT_UNIFORM early in the shader source, just after "#extension GL_GOOGLE_cpp_style_line_directive : require"
* CoreAspect + glsl fix: use glUniform1f()
* Add CoreAspectRot uniform.
It reports CoreAspect value or 1/CoreAspect when the content is rotated by 90 or 270 deg.
* Fixed stupid typo
* Just use _HAS_COREASPECT_UNIFORMS to check for CoreAspect uniforms support (was _RARCH_HAS_COREASPECT_UNIFORMS)
* Rename CoreAspect, CoreAspectRot, _HAS_COREASPECT_UNIFORMS to OriginalAspect, OriginlAspectRot, _HAS_ORIGINALASPECT_UNIFORMS
* GLCore: void Pass::build_semantic_float needs glUniform1f.
...how on earth did it worked for UBO !?
* d3d10,11,12, wrong function called by overlook.
* Add test shader, will remove that before PR
* Fix metal rotated aspect reporting
* remove test shader
* Fix C89 Build
* Use OriginalAspectRotated instead of OriginalAspectRot
* slang shaders: add support for __has_include like C++17 macro.
This adds a new #pragma include_if_exist "filename" directive that acts like #include statements,
but does not return error if the file does not exists.
* removed unuseful define
The build with `--enable-wayland --disable-kms` has a part where an
unsigned long is passed as a void*, but GCC 14 enforces
-Werror=int-conversion, causing the build to fail.
https://gcc.gnu.org/gcc-14/porting_to.html#int-conversion
This commit imports a series of patches from the FreeBSD port of RetroArch to
improve build compatibility and address specific issues encountered in the
FreeBSD environment. These patches, sourced from the FreeBSD Ports collection
(https://cgit.freebsd.org/ports/tree/games/retroarch/files), have been adapted
and tested to ensure they integrate seamlessly with the current build process.
* Massive reduction in heap space allocation, going from settings struct
264kb to 119Kb
* Use NAME_MAX_LENGTH for base paths/names, etc
* Use DIR_MAX_LENGTH for directory sizes
* This change allows playlist icons to be replaced with Logos. the art is loaded to the Thumbnail Named_Logos folder. It is treated the same as other thumbnails for naming and for automatic download. There is a settings menu option to turn it on and off. It is off by default. This only applies to the xmb menu driver.
* Removed commented out code against the style guide.
* Code cleanup for C89 compatibitity
* Cleaned up errors from Automated CI.
* Cleaned up comments.
* Update gfx_display.c
change strcpy to strlcpy
* Update gfx_thumbnail_path.c
fix code formatting
* Update xmb.c
code formatting changes
Allow thumbnails (boxart, title, screenshot) to be loaded in any
other supported format as well, currently jpg, bmp, tga.
Support is for local thumbnails only, downloads are not changed.
PNG format is always preferred. Menu option added for control,
since trying for multiple thumbnail files may impact performance
on slow storage media.
Since Vulkan doesn't support negative x or y viewport positions, this
patch concatenates a translation matrix to the projection matrix used in
Vulkan rendering. In this way, if a negative x or y coordinate would
be necessary, we can instead use a 0 coordinate and a
leftwards/upwards translation to achieve the same effect. This seems
to work alright with overlays, so as far as I can tell this patch
seems sufficient to get the behavior we want?
Support added for extra mouse buttons. Since these buttons were
not returned by XQueryPointer(), some additional logic was needed
which fit best to scroll wheel handling.
This mirrors the use of video_viewport_get_scaled_integer for
non-integer scaling at various aspect ratios. Two variants are
provided, one with implicit device and desired ratios and one with
explicit ratios.
Also added a flag to video_viewport_get_scaled_integer to indicate the
direction of positive y.
- Add missing numlock mod to dinput
- Add missing scrolllock mod to x11
- Add missing capslock, numlock, scrolllock and meta mods to android
- Add missing scrolllock mod to sdl
- Add missing capslock, numlock, scrolllock and meta mods to switch
- Add missing numlock mod to winraw
- Add missing numlock mod to uwp
Handle refresh rate as float in general, and add also extra
attributes (interlaced, doublescan) for video modes.
Make it possible to select exact mode (interlaced / doublescan modes
will not be selected), and allow close matches such as 49.5 Hz
for PAL 50 Hz.
Change GL2, GL3 and Vulkan drivers to behave as fullscreen if context driver
(such as KMS/DRM or KHR) does not support windowed mode at all.
Take it into account also for refresh rate switch.
On Win32, the numlock and pause keys need special handling. But the existing code did only handle it correctly for pressing and not releasing. It separately called GetKeyState for the two keys which only returned true while pressing a key and not while releasing it. This then caused the releasing of the pause key to be treated as releasing the numlock key and vice versa. This fix handles releasing the two keys correctly.
* iOS/tvOS: bundle cores as frameworks as opposed to dylibs
* iOS/tvOS: update plist to indicate controller support
* iOS/tvOS: living within the sandbox
* iOS/tvOS: import content through share sheet
* iOS/tvOS: default audio sync off due to crash on background
* iOS/tvOS: don't try altkit if there's no reason to
* iOS/tvOS: enumerate cores for appstore distribution
* provide more information during achievement load process
* update rcheevos version
* do disconnected processing even when no game is loaded
* make loading widget unique
* only show loading indicator with verbose messages on
This fixes a recurrent bug where context initialization fails due to the major/minor being both set as 0, causing an OpenGL ES 1.1 context to be created.
* [WINRT] Enable logging on __WINRT__ and bypass verbosidy in debug
* [UWP] wrong configuration prevents GLES to compile, common functions defines GL symbols
* [UWP] configure project to allow OPENGL on default configuration and copy MESA DLLs into UWP release
* [UWP] add MESA headers
* [UWP] add MESA EGL.lib needed for GLES context. However HAVE_OPENGL is better as GL cores use desktop version, so this is left for reference and to make the solution build with HAVE_OPENGLES
* [UWP] UWP is missing some GDI function definitions, implemented into MESA Gallium
* [UWP] Configure Release project too
* [UWP] Add mesa alpha-2 release dlls
* [UWP] allow griffin and vide_driver to have an OPENGL context
* [UWP] allow wgl context to work with mesa under WINRT
* [UWP] BUG: have to modify height/width getters and align them to MESA because the screen resolution is not right in gl context. Pending further investigation
* [UWP] fix ANGLE build
* [UWP] remove duplicate import code.
* (UWP) Cleanup filters file
* MESA screen destroy fix and Yabasanshiro hack. Align to alpha-2-hack tag
---------
Co-authored-by: Gabriel Morazán <35014183+GABO1423@users.noreply.github.com>