Commit Graph

2880 Commits

Author SHA1 Message Date
Zach Morris b16f04de0a
Add Named_Logos (#17216)
* Draft:  Add Named_Logos

* Allow selecting Content Logo as a thumbnail display

* Increase pl_thumbnail_download index

to 4 to match the 4 available thumb types

---------

Co-authored-by: Rob Loach <robloach@gmail.com>
2024-12-20 18:52:27 -08:00
libretroadmin 6c914bed06 Add GDI system feature 2024-12-20 21:03:57 +01:00
libretroadmin 8571847fda Filter system features 2024-12-20 20:41:59 +01:00
libretroadmin 8212bf60ef * Rewrite System Info - only shows builtin features relevant to the platform
* Add Pipewire to 'features' CLI switch and System Info screen
2024-12-20 20:10:24 +01:00
libretroadmin 17fc55c762 fill_pathname_parent_dir_name - small cleanups 2024-12-19 21:05:43 +01:00
Eric Warmenhoven 99c2676efa
Add option to load overlay based on system name (#17233) 2024-12-07 23:58:33 -08:00
sonninnos cd4bca9178
Core info page cleanup and firmware icons (#17153) 2024-11-03 18:14:53 -06:00
Cathode Ray Dude e3a0973e30
Added check for filter_exts in compressed file case (#17149) 2024-11-02 04:03:50 -07:00
Bernhard Schelling cab85c6f8d
Menu support for loading directories as content if a core indicates supports for that (#17142)
A core needs to have "/" in its list of supported extensions to indicate support for loading directories.
If a core additionally supports the disk control interface, also support loading of directories as disk images.
2024-10-30 17:56:30 -07:00
sonninnos 84b58dd001
Pixel perfect integer scaling improvements (#17098) 2024-10-14 14:44:10 -07:00
neil4 f85c9693a0
Combine menu entries for RunAhead and Preemptive Frames (#17093) 2024-10-14 04:21:09 -07:00
libretroadmin bbfe078515 Reduce char arrays that are 8192 of size or bigger - reduce
them to PATH_MAX_LENGTH * 2 instead
2024-09-15 22:21:22 +02:00
zoltanvb 4e063934fd
Add option to disable analog stick menu navigation (#16743)
Two new settings added to Settings / Input / Menu Control:
- disable left analog stick in menu navigation
- disable right analog stick in menu navigation

Since the corresponding logic is already a distinct logic flow in
input driver, no change was necessary to analog-to-digital settings
or the like.
2024-09-10 18:13:31 -07:00
Jay Paul e61b3ae2ba
Sort Remaps by Connected Controller (#16747)
* sort remaps by connected controller if option is enabled

* ensure dir name is valid based on input device name

* Fix comments

* Fix forbidden mixed declarations and code

* fixing build errors

* fix additional build warning/error

* Resolved code review change requests

* Changed strlcat to strlcpy as per recommendation

* Retrigger checks

* Use proper path separator.

* Ensure default value is toggled off.

* Ensure that gamepad device name is valid.
2024-09-10 17:39:35 -07:00
libretroadmin 4d88381481 Reduce some variables 2024-09-11 00:27:37 +02:00
libretroadmin 7f87a46744 More downsizing of variables 2024-09-09 16:18:32 +02:00
libretroadmin 73e5d955c3 Downgrade some more variables to NAME_MAX_LENGTH 2024-09-09 16:01:29 +02:00
libretroadmin b8391e233f * PATH_MAX_LENGTH redefined from 4096 to 2048
* 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
2024-09-09 05:47:32 +02:00
zoltanvb 8562c16b4c
Fine-tune device reservation. (#16979)
- add reserved device check against device display name as well
- selected device name matching in menu with or without vid:pid
- cosmetical change in test input file
2024-09-08 03:10:21 -07:00
Antonio Orefice 139f461d06
Check for shader parameter step set to 0.0 and handle it outside the otherwise neverending loop; should fix #16958 (#16962) 2024-09-04 22:53:24 -07:00
sonninnos 5ed4a3c291
Input reserved device menu item cleanup (#16946) 2024-09-04 04:01:33 -07:00
sonninnos 3f8dc5c49d
Remove 'Frame Rest' (#16936) 2024-08-29 03:35:09 -07:00
sonninnos 391b46c3be
Automatic Frame Delay refactor (#16929) 2024-08-27 01:53:10 -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
libretroadmin e543aa25ae Silence some warnings 2024-07-20 15:46:26 +02:00
Eric Warmenhoven 63799385fc
iCloud cloud sync driver (#16794) 2024-07-18 22:02:52 -07:00
Joseph C. Osborn a7bc0ad68f Make custom aspect ratios under integer scaling respect xy offset
This makes them more usable.  I don't understand why it was ever
disallowed, can someone review and let me know?
2024-07-18 08:22:42 -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
zoltanvb 2ca973770f Fullscreen refresh rate improvements
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.
2024-06-17 13:29:40 -05:00
libretroadmin c4685e8c31 Cut down on strlcats 2024-06-16 19:15:07 +02:00
libretroadmin cfd9cbad8e Fix ST_STRING_OPTIONS 'selected' dropdown item - was off by one 2024-06-16 13:16:49 +02:00
libretroadmin 761d740e46 (menu_displaylist.c) More string_list removal 2024-06-15 18:00:22 +02:00
libretroadmin c741c9d9a9 Remove unused variables 2024-06-15 16:44:41 +02:00
libretroadmin 01a7740f6f (menu_displaylist.c) Get rid of more string_list usage 2024-06-15 14:02:09 +02:00
libretroadmin 78acf23a9b More string_list removal in menu_displaylist.c 2024-06-15 13:40:22 +02:00
libretroadmin 7af5cf5690 menu_displaylist_parse_core_option_dropdown - don't use string_list 2024-06-15 05:55:28 +02:00
libretroadmin dcd89f4280 Silence warnings 2024-06-14 23:11:47 +02: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
libretroadmin fc022d780d use C comments in C source files 2024-05-23 08:02:27 +02:00
Eric Warmenhoven 5bac6c6aac
Add Galician and Norwegian to list of languages (#16510) 2024-05-11 16:57:54 -07:00
sonninnos 17b9324a24
Cleanup 'Add to Playlist' (#16495) 2024-05-05 03:48:20 -07:00
Eric Warmenhoven c0366aba06
Apple misc (#16462)
* iOS/tvOS: Hide MoltenVK from Core List, again

* iOS/tvOS: Don't show certain core management options

* apple: Manage macOS/iOS/tvOS from one workspace

* iOS/tvOS: update-cores.sh tweaks
2024-04-23 15:53:35 -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 95f734fade Silence warning for Dingux - no unused variables 2024-04-06 18:44:49 +02:00
zoltanvb 2d7ac133ae
Add core path to Core Information screen (#16405) 2024-04-02 00:06:33 -07:00
Jason Breitweiser 87b9d0328e
Add To Playlist functionality (#16386)
* This PR contains Add To Favorite functionality.  It allows moving content to another playlist or to Create a new playlist with the selected content.

* Update retroarch.c

Fixed ISO C90 variable declaration at top of code.

* Update menu_cbs_ok.c

Fixed variable declaration for ISO requirement.
2024-03-28 12:58:16 -07: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
Eric Warmenhoven 68df74e628
tvOS build fix (#16363) 2024-03-16 12:30:11 -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
Eric Warmenhoven bca3cc0165
Minor iOS JIT availability information (#16358) 2024-03-15 23:59:49 -07:00
sonninnos 59381b7312
Add visibility option for disc control notifications (#16292) 2024-02-26 06:01:15 -08:00
sonninnos 2ad48ae585
Reorder User Interface menu (#16289) 2024-02-26 03:12:19 -08:00
Bobby Smith de8e33c6b1
Bring the recent system files checks changes to Qt menu (#16251) 2024-02-18 08:22:57 -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
Bobby Smith 9e6b790f19
Fall back to global system dir if content path is empty when 'System Files are in Content Directory' is enabled (#16175) 2024-02-01 09:42:05 -08:00
Bobby Smith 3572461d31
Improvements to firmware checks when "System Files are in Content Directory" is enabled (#16170) 2024-01-28 09:57:34 -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
Eric Warmenhoven 6c57b31ce5
Fix setting iOS app icon (#16107) 2024-01-11 05:48:54 -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 2b820bdf10
iOS: Add option to disable respecting silent mode (#14928) (#15952) 2023-11-26 04:59:14 -08:00
sonninnos 598a0c0d37
(WASAPI) Shared buffer refactor + cleanup (#15929) 2023-11-19 08:44:25 -08:00
sonninnos 3bf5b518bb
(GLUI) Icon corrections (#15914) 2023-11-16 09:41:03 -08:00
sonninnos 9b97b40566
Enforce swap interval 1 in menu if vsync is on + Restore menu_throttle_framerate option (#15889)
* Enforce swap interval 1 in menu if vsync is on

* Restore menu_throttle_framerate option
2023-11-10 18:40:02 -08:00
zoltanvb e35afdb57a
Separate ffmpeg and audiomixer conditionals (#15872)
There are cases when mixer exists without ffmpeg. In such cases,
some music content can still be added to the mixer for playback.
Logic added to separate the two cases.
2023-11-05 15:32:14 -08:00
zoltanvb 636a6e9d55
Silence a format truncation warning (#15857)
This line generates a warning during compilation:

menu/menu_displaylist.c:11925:46: warning: '%d' directive output may be truncated writing between 1 and 3 bytes into a region of size 2 [-Wformat-truncation=]
11925 |                                        "Mode %d", toc->track[i].mode);
      |                                              ^~
menu/menu_displaylist.c:11925:40: note: directive argument in the range [0, 255]
11925 |                                        "Mode %d", toc->track[i].mode);
      |                                        ^~~~~~~~~
In file included from /usr/include/stdio.h:936,
                 from ./libretro-common/include/file/file_path.h:26,
                 from menu/menu_displaylist.c:27:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:64:10: note: '__builtin___snprintf_chk' output between 7 and 9 bytes into a destination of size 7
   64 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   65 |        __bos (__s), __fmt, __va_arg_pack ());
      |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Since the value of the track mode should be either 1 or 2, a modulo 10 should not limit the displayed value, and it removes the warning.
2023-11-01 17:56:56 -07:00
sonninnos 220caa5143
Remove menu_throttle_framerate option (#15850) 2023-10-31 09:58:47 -07:00
Eric Warmenhoven cdb2549b2e
Sort playlists ignoring extension. (#15836)
"Sony - PlayStation 2" sorts before "Sony - PlayStation" because when
the menu sorts, it includes the `.lpl` extension, and space comes
before period.
2023-10-30 15:32:50 -07:00
sonninnos da59b8c9ac
Add 'Frame Rest' power saving option (#15834) 2023-10-26 04:20:48 -07:00
Cpod12 274d47f957
Xunkar's AI service rework updated (#15640)
* AI service rework

* File missing

* Fixed C89 build

* Fixed usage of inline for C89 build

* Fixed an overlay unloading bug

Made sure to unload the overlay on release and when the server returns empty values in automatic modes.

* Fixed forward decl (c89)

* Fixed OpenGL texture loading

Moved image display to the main thread for now

* Changed some formatting slightly

* Fixed struct variable order and put brackets on newlines

* Moved pointer, fixed retroarch.cfg, and replaced strlcat with strlcpy

* Fixed catenation issue

* Fixed a few other catenation issues

* Fixed one more concatenation  issue

* Fixed concatenation issue

* Fixed a few other concatenation issues

* Fixed one more concatenation  issue

* potential fix for parsing issue

---------

Co-authored-by: Xunkar <329857+xunkar@users.noreply.github.com>
2023-10-24 00:27:06 -07:00
GavinDarkglider 4387b0ab94
Lakka Switch Updates.... (#15754)
* Lakka: Switch: Decouple From LibNX builds.

* Lakka: Always show Power Management Settings menu

* Lakka: Switch: Add Nintendo Switch Options Menu, and First Option

* Lakka: Switch: Add CEC Toggle

* Lakka: Switch: Add Bluetooth ERTM Toggle

* Retroarch: unix platform:  Always display battery meter even when the device reports it as unknown
This is useful for most arm devices that have unknown battery status until charger state changes

* Retroarch: Lakka: Remove Gamemode stuff from build

Lakka will never include this, as it only runs base system, and retroarch.
2023-10-06 04:55:22 -07:00
bulzipke 32ed9b6041
플레이리스트 롬파일 이름으로 썸네일 이미지를 찾도록 옵션 추가 (#15731) 2023-09-26 05:31:59 -07:00
libretroadmin 050996ab0f Rewrite some strlcats 2023-09-06 02:37:24 +02:00
sonninnos edd1b646e6
Show MIDI output first (#15675) 2023-09-05 11:53:55 -07:00
sonninnos 878ed7583c
Audio synchronization menu cleanup (#15674) 2023-09-05 07:56:47 -07:00
libretroadmin c2b81881ae Cleanups 2023-09-02 16:42:49 +02:00
libretroadmin 94accbb6ef Nits 2023-08-30 06:36:38 +02:00
sonninnos 2623f8d085
(XMB+Ozone) Animation corrections (#15645) 2023-08-25 13:02:19 -07:00
sonninnos 60ba927f15
Menu visibility list correction (#15642) 2023-08-23 07:59:15 -07:00
sonninnos 45663afc3f
Add more missing sublabels (#15639) 2023-08-22 18:29:45 -07:00
sonninnos ab1e5c37ca
Add PAL threshold option for automatic refresh rate switch (#15636) 2023-08-22 14:56:15 -07:00
sonninnos dec6c0ca31
Remap label fix when no autoconf profile active (#15631) 2023-08-21 17:05:04 -07:00
sonninnos 12136ad516
Add 'Save As' option for remaps and overrides (#15630) 2023-08-21 16:11:48 -07:00
sonninnos b782111025
Move 'systemfiles_in_content_dir' from Saving to Core (#15629) 2023-08-20 14:56:41 -07:00
sonninnos 3246bc6655
Add visibility option for save state notifications (#15616) 2023-08-18 12:38:36 -07:00
sonninnos e220e8d234
'Updater Settings' relocation (#15613) 2023-08-17 15:28:45 -07:00
sonninnos 0dafa3ca1a
Reorganize settings menu (#15610) 2023-08-17 08:38:52 -07:00
sonninnos 408d5cdd28
Reorganize 'Saving' menu (#15607) 2023-08-16 18:08:08 -07:00