Commit Graph

1692 Commits

Author SHA1 Message Date
libretroadmin
8491aaf659 Shave off some bool variables from structs that are allocated a
lot on heap
2024-09-05 11:35:15 +02:00
sonninnos
3f8dc5c49d
Remove 'Frame Rest' (#16936) 2024-08-29 03:35:09 -07:00
kwyxz
4016b2524b
Allow building RetroArch with menu disabled (#16881)
* allow building with --disable-menu --disable-cheevos --disable-qt --disable-slang

* allow building with cheevos while disabling menus and qt
2024-08-15 15:26:59 -07:00
Eric Warmenhoven
12def933dc
cloud sync: add options to sync thumbnails and system files, default off (#16869) 2024-08-11 13:12:35 -07:00
Jason Breitweiser
11d9a841f3
This change allows playlist icons to be replaced with Logos. (#16758)
* 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
2024-08-07 08:39:57 -07:00
zoltanvb
b090f85620
Support for non-PNG local thumbnails (#16806)
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.
2024-07-24 18:31:41 -07:00
Eric Warmenhoven
63799385fc
iCloud cloud sync driver (#16794) 2024-07-18 22:02:52 -07:00
zoltanvb
7db9a2de60 Test input driver and sensor test screen
A new input driver (test_input), similar to test joypad driver.
Takes its inputs from a json file provided in options. Supports
keyboard input and sensor input (accelerometer, gyroscope,
illuminance).

Remote Retropad extended with a sensor test screen.
2024-07-06 13:55:55 -05:00
Jay Paul
8aa5fd2658 ensure that all folders are enabled by default. 2024-06-25 08:25:28 -05:00
Jay Paul
c570a6a20a allow saves and configs to be optionally synced to cloud 2024-06-25 08:25:28 -05:00
Joseph C. Osborn
05faba73e3 Add config values and menu items for viewport bias x/y 2024-06-25 08:18:39 -05:00
Thiago Seus
17fc346a36 Accessibility: change the is_screen_reader_enabled function name to lower case and match with the function name in Java code 2024-06-08 12:01:53 -05:00
Thiago Seus
216f55c7b2 Accessibility: Refactor Android is_narrator_running to align with the rest of RetroArch accessibility API 2024-06-08 12:01:53 -05:00
zoltanvb
a9968e9e86 Controller device reservation / preference.
For each player, 2 new options are added:
- a reservation type (no reservation, preferred, reserved)
- a reserved device name

When handling port - player assignments, reserved devices
will be assigned to the respective player port. If reservation
type is "reserved", no other device can take that port
automatically.

Reservation config option and matching function lifted from:
PatrickStankard https://github.com/libretro/RetroArch/pull/16269

Test joypad driver was extended for more tests.

Co-authored-by: Patrick Stankard <me@patrickstankard.com>
2024-06-05 18:17:54 -05:00
Thiago Seus
22646d3e74 Accessibility: enable accessibility if Talkback is on 2024-06-02 14:49:19 -05:00
Eric Warmenhoven
77da47613e macos: default Accessibility on if VoiceOver is on 2024-05-24 03:40:18 +02:00
Eric Warmenhoven
07a03811a2 Another ios9 buildfix 2024-05-24 00:12:36 +02:00
Eric Warmenhoven
b38304cae5 iOS/tvOS: default accessibility on if voice over is enabled 2024-05-23 18:39:13 +02:00
Tomáš Kelemen (vudiq)
0f89425ed6 add missing include to fix build with gcc14 2024-05-22 04:48:56 -07:00
Eric Warmenhoven
ee8d8b1689 iOS/tvOS: Post Apple App Store fixes
- both: default VRR true
- tvOS: default overlay off
- tvOS: default directory fix
- both: default language fix
- tvOS: jit support fix
2024-05-17 14:38:35 -07:00
sonninnos
17b9324a24
Cleanup 'Add to Playlist' (#16495) 2024-05-05 03:48:20 -07:00
Eric Warmenhoven
5fd4eb905c
iOS QOL improvements (#16444)
* 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
2024-04-18 03:01:39 -07:00
Barry Rowe
26a824caff
Revert of AI service changes (#16428) 2024-04-12 16:17:24 -07:00
libretroadmin
d3ff0425d8 Silence some warnings - unused variables/etc 2024-04-06 19:15:30 +02:00
MajorPainTheCactus
eef34e9461
Added rolling scan line simulation based on the shader subframe feature. This is implemented with a scrolling scissor rect rather than in the shader itself as this is more efficient although may not work for every shader pass - we may need an option to exclude certain passes. The implementation simply divides the screen up by the number of sub frames and then moves the scissor rect down over the screen over the number of sub frames. (#16282) 2024-03-19 08:59:36 -07:00
Patrick Stankard
5452999b2a
Fix mouse grab behavior on Android (#16203)
* Add grab_mouse interface for Android
Makes mouse grabbing and 'Game Focus' work on Android with a real mouse
Properly handle relative mouse motion events on Android (SDK 28 and newer)

* Enable workflow_dispatch on CI Android

* Update android_mouse_calculate_deltas callsites

* Add RETRO_DEVICE_MOUSE to android_input_get_capabilities

* Use Handler to trigger UI events (toggle mouse, immersive mode) with 300ms delay

* Enable input_auto_mouse_grab by default for Android

* Handle RARCH_DEVICE_MOUSE_SCREEN in Android input driver

* Add android.hardware.type.pc to manifest

* Don't attempt to set pointer speed via scaling in android_mouse_calculate_deltas

* Keep x/y values within viewport resolution for screen mouse

* Use video_driver_get_size to get width/height

---------

Co-authored-by: Bernhard Schelling <14200249+schellingb@users.noreply.github.com>
2024-03-19 05:33:02 -07:00
zoltanvb
b27233b3b8
Test input joypad driver (#16370)
* Test driver for joypad inputs

Add a new joypad input driver:
- hide driver behind #ifdef and enable it in config_params.sh
- add a new config parameter to specify the test input file
- add aux files: additional config files that cancel out any binds
  that may be present in RA config, autoconfig profile for
  test joypads, test input file that matches controller test
  sequence

* Fixes and comments for test input driver.
2024-03-18 12:07:36 -07:00
neil4
cc97df732c
Add Overlay Mouse, Lightgun, and Pointer (#16343)
- When enabled, any touch inputs not in a hitbox are used to create pointing device input for the core.
- Mouse: 1-, 2-, 3-touch inputs are LMB, RMB, and MMB
- Lightgun: allows input from overlay buttons or multi-touch mappings
2024-03-16 01:56:30 -07:00
Rob Loach
936328e637
Remove cursor_directory and resampler_directory (#16346) 2024-03-12 04:10:42 -07:00
zoltanvb
82ad6a0320
Logging config file writes in all places where it was not done so far. (#16311) 2024-03-03 08:09:46 -08:00
sonninnos
59381b7312
Add visibility option for disc control notifications (#16292) 2024-02-26 06:01:15 -08:00
zoltanvb
900c82bfe6
Add saved file name to autoconfig profile save message (#16267)
Autoconfig profile may be useful for e.g. submitting to autoconfig
repo. Construction of the filename is moved to a separate function
and reused for message.
2024-02-20 13:47:35 -08:00
Bobby Smith
c43f4738d9
Fullscreen/windowed fixes when using overrides (#16213) 2024-02-09 11:54:46 -08:00
Ophidon
7b711214a7
Slang Subframe Shaders Feature (#16209)
Adds support for sub-frame shaders to vulkan/glcore/dx10-11-12.

Builds on the concept already present for frame duplication in use for BFI, to present multiple 'sub' frames per real frame to the shaders, so they can run at a higher framerate than the content framerate. Must be enabled via subframe shaders setting under synchronization settings to be active.

Will allow BFI to be implemented inside of the shaders, among any other use for the higher framerate shader authors can devise.

CurrentSubFrame and TotalSubFrames have been available inside the shaders to track what they want to do on an given subframe. TotalSubFrames will always be 1 when the setting is disabled (and when in menu/ff/pause). Framecount will not increment on sub-frames, as it does not for injected bfi frames now. Should not interfere with any existing shaders that do not check for subframes.
2024-02-09 03:12:55 -08:00
zoltanvb
d88d0d5219
Option for disabling initial disc change (#16197)
Loading the last used disc for multi-disc content was automatic.
However, in some cases it is not wanted, as described in #16018
Option is added for controlling the function. Disabling the
option will also implicitly disable index saving.
2024-02-04 11:58:16 -08:00
sonninnos
266d3ed150
Add option for merging 'Hotkey Enable' device types (#16152) 2024-01-21 18:13:17 -08:00
Ophidon
72c901a90e
Squashed commit of the following: (#16142)
commit 793d41c303206b43932ddcefd44a45836def55eb
Author: Ophidon <jrogers2@gmail.com>
Date:   Fri Jan 19 23:12:31 2024 -0500

    Build Fix 2

    Move declarations of iterators.

commit c0e959b3d3cd773a66a17cfe034f08eaa53d525a
Author: Ophidon <jrogers2@gmail.com>
Date:   Fri Jan 19 22:57:01 2024 -0500

    Build Fix

    Help string was 14 characters too long for c89.

commit fc5506c7906bf82d6f88b7b0d7e4764d58d90622
Author: Ophidon <jrogers2@gmail.com>
Date:   Fri Jan 19 22:40:45 2024 -0500

    BFI Updates

    Significant BFI updates.

    - Adds BFI to dx10/11/12 in general.

    - Updates existing BFI menu option descriptions to be somewhat more clear in how to use correctly.

    - Adds Variable Strobe length via new 'Dark Frames' bfi sub-choice. Only valid at 180hz and above, as it must work with whole frames.

    - Algorithm to auto select 'decent' Dark Frames choice, for any given selected BFI refresh rate. Will also avoid defaults that can cause Image Retention at any Hz higher than 120. (Impossible to avoid at 120 if you have an affected screen... get an OLED :D ) .

    - Some sanity checking on selecting BFI or the other synchronizations options like Swap Interval > 1, that don't play well with BFI.
2024-01-19 23:11:31 -08:00
Bobby Smith
caf2bcbc80
Don't save mouse buttons in autoconfig (#16098) 2024-01-10 07:26:23 -08:00
zoltanvb
14d2a61952
Removal of thumbnail pack downloader related options (#16096)
Thumbnail packs are no longer available, but the option was still
present as "legacy thumbnail downloader". Since it serves no
purpose any more, it is removed from the code.
2024-01-09 00:17:47 -08:00
Eric Warmenhoven
4220e5683d
Do CRC checks on PSP/PSP(PSN) content scan (#15623) 2024-01-01 21:57:44 -08:00
Eric Warmenhoven
089f7321c7
iOS: Allow changing the app icon (take 2) (#16034) 2023-12-24 16:36:49 -08:00
libretroadmin
3c564b8284 Revert "Revert "Revert "iOS: Allow changing the app icon (#16020)" (#16029)" (#16030)"
This reverts commit 8caf6c19b1.
2023-12-22 09:41:31 +01:00
LibretroAdmin
8caf6c19b1
Revert "Revert "iOS: Allow changing the app icon (#16020)" (#16029)" (#16030)
This reverts commit c06743678f.
2023-12-22 00:37:18 -08:00
LibretroAdmin
c06743678f
Revert "iOS: Allow changing the app icon (#16020)" (#16029)
This reverts commit 93f7bba6a5.
2023-12-21 23:15:41 -08:00
Eric Warmenhoven
93f7bba6a5
iOS: Allow changing the app icon (#16020) 2023-12-20 16:22:11 -08:00
hunterk
6513a023b8
Add a setting to allow turbo d-pad directions (#16006)
* Add option to allow turbo d-pad inputs

* fix macro tab and update comment
2023-12-13 18:36:09 -08:00
Eric Warmenhoven
d8c444d44d
iOS - Default to not enabling keyboard gamepad (#15340) (#15955) 2023-11-26 19:34:45 -08:00
Eric Warmenhoven
2b820bdf10
iOS: Add option to disable respecting silent mode (#14928) (#15952) 2023-11-26 04:59:14 -08:00
Jesse Talavera-Greenberg
cbf49a0b77
XDelta patch support (Take 2) (#15915)
* Add xdelta in deps

* Include <assert.h> in xdelta3.h

- Otherwise the static_assert calls can fail

* Build xdelta3 in Makefile.common

* Add xdelta support to the softpatching infrastructure

- The patching itself isn't fully implemented yet

* Adjust how xdelta3.h checks the sizes of some types

- Now checks max values instead of relying on autotools

* Add some enums that were excluded by the cherry-pick

* Remove stray whitespace

* Adjust SIZE macros in xdelta3.h

- Move them outside the XD3_USE_LARGEFILE64 block
- Add more SIZE declarations
- Make SIZEOF_UNSIGNED_LONG_LONG contingent on the presence of ULLONG_MAX

* Reintegrate xdelta support

* Enable support for xdelta's secondary compressors

- Necessary for some patches

* Fix some format specifiers

* Remove unnecessary files from xdelta

* Include xdelta3.h with a relative path

* Add xdelta3 headers to HEADERS variable

* Gate Xdelta support behind HAVE_XDELTA

- HAVE_XDELTA is on by default
- HAVE_PATCH is still required for HAVE_XDELTA to be meaningful
- Support is mostly contingent on the availability of LZMA
- Anything modern should be okay
- Legacy platforms (e.g. DOS) may need to have Xdelta support disabled
- At least until some other solution can be found

* Disable HAVE_XDELTA on platforms where the build recently failed

- These come from looking at the failed builds on GitHub
- These are guesses, and may turn out to be wrong

* Fix a potential memory leak

- Whoops, looks like I need to call two cleanup functions
- xd3_close_stream exists separately from xd3_free_stream

* Split the --help printout for --xdelta into its own strlcat call

- GCC was complaining about #ifdefs within macro arguments being non-portable

* Fix some incorrect printf format specifiers

* Modify Xdelta to adhere to C89

- It's mostly using RetroArch's INLINE macro instead of the inline keyword

* Slight cleanups

* Remove a stray comma that was hindering C89 builds

* Add XDelta support to CHANGES.md

* Change how the xdelta patch's name is computed

- To be in line with other recent refactoring

* Fix an incorrect merge

- Whoops, this part was from before I figured out how to get the size of a patched file

* Explain the song-and-dance behind computing a patched file's size

* Define some XDelta3-related constants to 0 on 32-bit platforms

* Adjust some Xdelta-related macro definitions

- Exclude the encoder, since we're not making patches
- Move some #defines to after inclusion of <stdint.h>, to fix undefined behavior
- Remove _WIN32_WINNT overrides, since they were for code that we're not using

* Fix Xdelta support

* Wrap an encoder-only function in `#if XD3_ENCODER`
2023-11-23 20:19:07 -08:00
sonninnos
598a0c0d37
(WASAPI) Shared buffer refactor + cleanup (#15929) 2023-11-19 08:44:25 -08:00