Commit Graph

12893 Commits

Author SHA1 Message Date
Eric Warmenhoven 72df261ed0
Fix opening file inside archive with core detection (#17461) 2025-01-23 18:56:11 +01:00
Mathieu Poliquin 66e23fca79
New feature: Override player input with machine learning models (#17407)
* Add dummy game ai subsystem

* First working prototype of a machine learning model that can override player input

* Update README.md

* Update README.md

* Fix loading path on Windows

* Change ai override to player 2

* Added quick menu show game ai option

* Implemented Quick Menu entry for Game AI options

* Redirect debug logs to retroarch log system + properly support player override

* Added support to use framebuffer as input to the AI

* Added pixel format parameter to API

* Fix game name

* code clean-up of game_ai.cpp

* Update README.md - Windows Build

* Update README.md

* Update README.md

* Update README.md

* Update config.params.sh

turn off GAME_AI feature by default

* Fix compile error in menu_displaylist.c

* Add missing #define in menu_cbs_title.c

* Added new game_ai entry in griffin_cpp

* Remove GAME_AI entry in  msg_hash_us.c

* Fix compile error in menu_displaylist.h

* Removed GAME AI references from README.md

* Fixes coding style + add GameAI lib API header

* Convert comment to legacy + remove unused code

* Additional coding style fixes to game_ai.cpp

* Fix identation issues in game_ai.cpp

* Removed some debug code in game_ai.cpp

* Add game_ai_lib in deps

* Replace assert with retro_assert

* Update Makefile.common

* Converting game_ai from cpp to c. First step.

* Convert game_ai from CPP to C. STEP 2: add C function calls

* Convert game_ai from CPP to C. Final Step

* Added shutdown function for game ai lib

* Update game_ai_lib README

* Fix crash when loading/unloading multiple games
2025-01-21 13:05:43 +01:00
LibretroAdmin a49196ee30 (menu_cbs_get_value.c) Put protective guards around strlcpy copies
into s2
2025-01-21 03:57:08 +01:00
LibretroAdmin e9afd53351 Fix crash that can happen in menu_action_setting_disp_set_label_entry 2025-01-21 03:50:46 +01:00
sonninnos 1c724f5355
RGUI: 'Use This Directory' cleanup (#17450) 2025-01-21 02:02:55 +01:00
sonninnos 66921e8549
RGUI: Entry value cleanup (#17443) 2025-01-20 20:38:40 +01:00
sonninnos 391ba55b81
Add playlist random selector (#17441)
* Add playlist random selector

* Buildfix attempt

* ORBIS buildfix attempt
2025-01-20 18:25:41 +01:00
LibretroAdmin cde82f532c * Naming convention changes for variable names/function arguments
* Try to fit lines within ANSI 80-char limit
2025-01-19 20:19:14 +01:00
LibretroAdmin 48d903e811 print_buf_lines - cast to unsigned to avoid warnings 2025-01-17 21:52:50 +01:00
Eric Warmenhoven 8aa445dfe2
tvos build fix (#17426) 2025-01-17 21:45:01 +01:00
LibretroAdmin b211adaaca Function argument name standardization 2025-01-17 19:55:32 +01:00
Eric Warmenhoven 2471082ced
macos: fix some sandbox handling for app store (#17424)
* minor safety check

* macos: fix some sandbox handling for app store
2025-01-17 19:54:54 +01:00
LibretroAdmin e2c8e98be0 Buildfixes and warning fixes 2025-01-17 12:03:30 +01:00
LibretroAdmin 31b7812720 Function argument name standardization 2025-01-17 04:16:12 +01:00
LibretroAdmin 0b329018ee Less string buffers and less string copies 2025-01-16 23:59:22 +01:00
LibretroAdmin 86c9a43b08 Use path_get_extension_mutable 2025-01-16 21:09:19 +01:00
LibretroAdmin a5c9d9520f * Use fill_pathname_basedir where possible
* Move static variable to only function where it's used
* Change signature of file_path.c function
2025-01-15 22:17:59 +01:00
LibretroAdmin 47d888364d Standardize len variables - argument should always be named 'len',
while local len variables should have '_' prefix
2025-01-13 21:53:49 +01:00
LibretroAdmin e84ea6082c Fix 'Remove Preset' 2025-01-12 19:05:44 +01:00
LibretroAdmin 203c6218e4 Re-enable BFI menu setting for mobile 2025-01-12 17:35:50 +01:00
Rob Loach 941806698e
Add SSL Support to the information list (#17370) 2025-01-09 00:09:56 +01:00
Tatsuya79 43a2e1003e
allow exact sync with shader subframes (#17355)
* allow exact sync with shader subframes

* Update menu_setting.c
2025-01-06 21:36:57 +01:00
neil4 6412f4feef
Overlay: Add Analog Recentering Zone (#17339) 2025-01-04 03:19:02 +01:00
Eric Warmenhoven 53d9452439
Change config_get_path/array return back to bool (#17333) 2025-01-02 14:35:33 +01:00
Eric Warmenhoven 9dd6e85d2f
fix writing before string when substring is not found (#17330) 2025-01-02 06:17:00 +01:00
LibretroAdmin 4e5df036f9 action_get_Title_generic - fix warning 2024-12-31 11:40:00 +01:00
LibretroAdmin 20ec0c605a (courtesy of Psyraven) Fix crashes with Explore view 2024-12-31 11:22:43 +01:00
LibretroAdmin 30b3760959 (menu_explore.c) Don't use fill_pathname here, go back to old code 2024-12-31 05:40:30 +01:00
LibretroAdmin 1e656261b0 Local len variables need to have '_' prefix 2024-12-30 14:03:58 +01:00
LibretroAdmin 8ebedcb6bd (menu_explore) Simplification of explore_load_icons
fill_pathname_application_special - return size_t
2024-12-30 10:07:58 +01:00
LibretroAdmin 28f6ee9c26 Use return value of fill_pathname_basedir 2024-12-30 09:56:02 +01:00
LibretroAdmin 9d15900979 Small cleanups: * Prevent some unneccessary strlcpy calls and intermediary string copies * Name local length variables for strings '_len', parameter/argument 'len' 2024-12-28 22:22:07 +01:00
LibretroAdmin 4951201b6b disp_set_label_menu_file_core - set *w to implicit 0 2024-12-28 00:38:04 +01:00
LibretroAdmin 1a751ef9a2 Remove core value label 2024-12-28 00:30:00 +01:00
sonninnos da05947b41
GLUI: Restore core list icons (#17293) 2024-12-27 15:50:55 +01:00
LibretroAdmin 0d4eeb647a Warning cleanups/unused variables removal 2024-12-27 15:39:32 +01:00
LibretroAdmin 18c85b5ccd Cleanups -
* Less string copies
* Some general cleanups
* Add extra param to runloop_message_queue_push so we can pass size_t
of the message
* Consistent conventions for local variable usage for certain things
2024-12-27 15:13:45 +01:00
LibretroAdmin ed58e4a8d8 Conventionalize len variables:
* In function arguments, use 'size_t len'
* Inside the function, use '_len'
* If you need a seciondary len variable inside the function, use '__len'
2024-12-27 05:51:33 +01:00
hizzlekizzle bc819bb412
change increment on max Fast-Forward speed (#17290)
closes https://github.com/libretro/RetroArch/issues/15540

we can still tick through to higher values quite fast, but there's not much reason for someone to exceed, say, 3x without just setting it to 0 anyway, so I don't think there's any real usability loss.
2024-12-27 04:26:54 +01:00
libretroadmin 5749a2179d Use members from path_data directly and bypass functions
in gfx_thumbnail_path
2024-12-26 02:48:05 +01:00
libretroadmin 1450cc04de Reduce local string sizes 2024-12-25 22:36:13 +01:00
libretroadmin 700b13654c Some string cleanups 2024-12-25 19:18:45 +01:00
libretroadmin 51e706007b String handling cleanups 2024-12-25 19:06:04 +01:00
libretroadmin 44238e909f Consistent viewport naming conventions 2024-12-24 22:50:51 +01:00
libretroadmin 8074a833aa Cleanups/less string copies and indirection 2024-12-24 21:07:31 +01:00
libretroadmin 2cfdccc085 Less string intermediary copies 2024-12-24 18:46:22 +01:00
libretroadmin 279270ae5f string_list_join_concat_special - specialized version without bounds
check
2024-12-24 06:14:26 +01:00
libretroadmin 67b0147a59 Cleanups - menu_entries_get_title returns results of strlcpy 2024-12-24 05:35:36 +01:00
libretroadmin de8f979cb7 less string copies 2024-12-24 05:10:09 +01:00
libretroadmin 55c457e548 menu_displaylist - cleanups 2024-12-23 22:44:18 +01:00
libretroadmin 1340e751e0 print_buf_lines - extended was never used as a parameter (always set to
false), so change function
2024-12-23 07:28:49 +01:00
libretroadmin 72acdb4eb1 datetime_cache can go now from the struct 2024-12-23 07:12:29 +01:00
libretroadmin cdef3ff9f7 strftime - write directly into string instead of using intermediary copies 2024-12-23 07:10:03 +01:00
libretroadmin 7317fa9ee9 Cut down on some strlen calls where possible 2024-12-23 06:24:01 +01:00
libretroadmin 442b9bc3da Syntax style nits 2024-12-23 05:44:40 +01:00
libretroadmin 99c7e08445 Don't use string_trim_whitespace 2024-12-23 00:51:01 +01:00
libretroadmin e26a38c8d4 Buildfix 2024-12-22 22:08:22 +01:00
libretroadmin b3e5c578b3 Faster shader capabilities queries 2024-12-22 21:58:51 +01:00
libretroadmin c09fd38c1d * Use fill_pathname more
* Get rid of strlen in some locations
2024-12-22 20:43:54 +01:00
libretroadmin ab43347fdd C89_BUILD fix 2024-12-22 05:32:17 +01:00
libretroadmin ce88a46a05 Menu simplifications/cleanups 2024-12-22 05:21:25 +01:00
libretroadmin e01ef9e1de Cleanup unused menu_is_nonrunning_quickmenu 2024-12-22 05:07:30 +01:00
libretroadmin 6b8466f87a menu_driver_set_thumbnail_system/menu_driver_get_thumbnail_system
just small wrapper functions, remove
2024-12-22 04:53:04 +01:00
LibretroAdmin 739f2ff55c
Reduce calls to path_remove_extension - use fill_pathname instead (#17270)
* Reduce calls to path_remove_extension - use fill_pathname instead

* More fill_pathname usage
2024-12-20 21:40:58 -08:00
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
libretroadmin 7d71f94dc6 Fix misleading indentation warning 2024-12-18 22:15:35 +01:00
libretroadmin 6b801333e7 file_path - change function signatures - output char array always
is named 's', and size of it 'len'
2024-12-18 21:43:33 +01:00
Eric Warmenhoven a4b478524a
iOS/tvOS: Fix more places where paths weren't expanded correctly (#17265) 2024-12-17 05:24:20 -08:00
libretroadmin eb08faa434 Replace strpbrk with strchr - we only need to search for one char 2024-12-16 17:49:44 +01:00
libretroadmin 275c6c0267 (XMB) xmb_path_dynamic_wallpaper - don't use string_replace_substring
unless absolutely necessary - uses memory allocation - single strpbrk
instead gets the job done here
2024-12-16 17:38:09 +01:00
Eric Warmenhoven 99c2676efa
Add option to load overlay based on system name (#17233) 2024-12-07 23:58:33 -08:00
Antonio Orefice b0db968454
Ozone: Add a touch-sensitive "resume" button in the lower-right corner. (#17192)
This enhancement is particularly useful when using RetroArch with a touchscreen, as it allows you to resume content without needing to navigate back to the quick menu, thereby preserving the current menu screen.
2024-11-20 10:56:35 -08:00
libretroadmin 2809421d4e Revert "static variables are initialized to '0' automatically as per C rules"
This reverts commit 2a0984b6e4.
2024-11-19 03:03:13 +01:00
libretroadmin 2a0984b6e4 static variables are initialized to '0' automatically as per C rules 2024-11-18 15:33:34 +01:00
sonninnos 564dac40c8
XMB: Alpha adjustment for default basic icon (#17188) 2024-11-17 15:11:45 -08:00
sonninnos 8a853d53af
Set CLI content as last start content (#17179) 2024-11-10 15:02:10 -08:00
sonninnos adade1b9da
Remove SD_FLAG_LAKKA_ADVANCED from custom viewport options (#17178) 2024-11-09 08:44:24 -08:00
sonninnos 522efc333c
Menu: Trigger scroll home+end on keyup (#17171) 2024-11-07 07:41:39 -08:00
sonninnos 767be489d9
Custom aspect ratio safeguards (#17168) 2024-11-06 11:06:21 -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 771dabbf56
Fix save state screenshot visibility (#17119) 2024-10-26 06:44:54 -07:00
sonninnos 2b8d743a85
GLUI icon fixes (#17102) 2024-10-16 12:00:07 -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
Viačasłaŭ c84962a5e8
Fix displaying entry after renaming (#17072) 2024-10-04 12:47:12 -07:00
Viačasłaŭ 3019b926c2
Fix typos (#17068) 2024-10-01 17:36:33 -07:00
sonninnos 11103347c8
Fix playlist search index in XMB+Ozone (#17047) 2024-09-27 14:36:32 -07:00
sonninnos 6713e3b7f7
(Vulkan) Prefer IMMEDIATE mode without vsync (#17009)
* (Vulkan) Prefer IMMEDIATE mode without vsync

* Clamp max_swapchain_images and hard_sync_frames

* (Vulkan) Improve fastforward frameskip option hack
2024-09-17 10:23:02 -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
libretroadmin dc7473d046 See if this prevents some warnings 2024-09-15 00:03:48 +02:00
Eric Warmenhoven b557bc9523
Fixing compiler warnings (#17001) 2024-09-14 13:11:20 -07:00
ItsZariep 580efd41e4
Fix Selenium theme definition position (#17000) 2024-09-14 12:15:18 -07:00
Eric Warmenhoven be7645024c
ozone: some fixes for better touchscreen handling (#16994) 2024-09-12 11:15:10 -07:00
libretroadmin 23bd9686e5 Silence unused variable warnings 2024-09-11 15:48:43 +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
Jason Breitweiser d4e5f7ac4b
Crash when pressing B button on playlists #16951 (#16971)
* Added check for null thumbnail path.  Applies to 16951

* Moved null check up the code to cover multiple accesses to the thumbnail path.

* Checked for null values before trying to get logo icons for playlists

* Rolled back the thumbnail_path_gfx changes and instead added
deinitialization of the icon thumbnails when a list was not a playlist.
2024-09-10 16:15:38 -07:00
libretroadmin 364d977027 (menU_driver) small cleanup 2024-09-11 01:13:50 +02:00
libretroadmin 4d88381481 Reduce some variables 2024-09-11 00:27:37 +02:00
libretroadmin 29f011acef * Inline find_last_slash
* explore_load_icons - fill_pathname_slash is equivalent to usage
of strlen here, no need to call strlen
2024-09-10 16:02:06 +02:00
libretroadmin 8db629ebae (Menu) Cleanups pt. 2 2024-09-09 22:18:23 +02:00
libretroadmin 6020877043 Cleanups 2024-09-09 22:01: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 fca38419f5 Add more TODO/FIXME notes 2024-09-09 15:34:32 +02:00
libretroadmin 0c91d77ae3 C89_BUILD buildfix 2024-09-09 15:27:52 +02:00
libretroadmin e675ea7e29 Variable cleanups - add TODO/FIXME notes for spurious variable sizes 2024-09-09 15:22:08 +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
libretroadmin 01a9745f5b Settings struct now has a flags variable 2024-09-08 22:49:26 +02:00
libretroadmin f4e2fbb660 (Menu/MaterialUI/RGUI) Integrate more bool flags into flags 2024-09-08 17:53:39 +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
zoltanvb 17fefa7891
Invoke menu icon thumbnail loading only if needed. (#16966) 2024-09-06 11:33:06 -07:00
libretroadmin 5fbb19ea85 Optimize some flag setting 2024-09-05 11:13:57 +02:00
libretroadmin 91516cdd49 (Menu input) Use flags 2024-09-05 10:58:29 +02:00
libretroadmin 239ea7ef0e (Ozone) Move some more bools into flags 2024-09-05 08:58:24 +02:00
libretroadmin 77eb564abc (menu_setting) turn default_value into flag 2024-09-05 08:35:58 +02: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
Eric Warmenhoven 60ee32b879
apple: display server, including ProMotion support (#16963) 2024-09-04 22:52:59 -07:00
sonninnos 5ed4a3c291
Input reserved device menu item cleanup (#16946) 2024-09-04 04:01:33 -07:00
ItzSelenux cbfe2a7279
Add Selenium theme for Ozone (#16960) 2024-09-03 22:00:14 -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 800be5530f
iOS: Better handling of physical mice/magic keyboard trackpad (#16911) 2024-08-22 12:11:16 -07:00
Eric Warmenhoven 5b04c060e1
glui: Honor menu_show_sublabels option (#16878) 2024-08-15 15:27:17 -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 2c31de56ff Move XMB-specific line ticker code to xmb.c 2024-07-23 21:02:20 +02:00
libretroadmin afc9cb509a CXX_BUILDFIX buildfixes 2024-07-20 19:42:45 +02: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
Jonathan Rascher 8935d9db1b Skip core unload when Quit on Close Content is set 2024-06-27 18:32:02 -05:00
libretroadmin 6319fa30c3 (menu_cbs_ok.c) Some cleanups, warning fixes, use strtok_r instead
of strtok
2024-06-26 15:30:45 +02:00
libretroadmin 58e2e581ec Silence warnings 2024-06-26 15:19:00 +02: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
libretroadmin 6ac25079bf (menu_cbs_deferred_push) Get rid of string_list usage 2024-06-18 09:20:36 +02: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 38f278519c Remove some header includes 2024-06-16 21:37:46 +02:00
libretroadmin 3f0d3ec393 Replace more strlcats 2024-06-16 19:42:51 +02:00
libretroadmin c4685e8c31 Cut down on strlcats 2024-06-16 19:15:07 +02:00
libretroadmin 54a24dc9d5 input_config_get_bind_string - do proper character
counting now, avoid strlcats, and have functions return
size_t value indicating how many chars were written
2024-06-16 18:07:30 +02:00
libretroadmin 36e9d4a79d (ozone) ozone_draw_osk - use strtok_r instead of string_list 2024-06-16 16:38:42 +02:00
libretroadmin 5a863652b6 (RGUI) rgui_update_menu_sublabel - use strtok_r instead of string_list 2024-06-16 16:21:18 +02:00
libretroadmin 37bcb4f093 Replace some strlcat usage with strlcpy 2024-06-16 14:52:26 +02:00
libretroadmin 57273faa5a Rewrite 2 of action_ok_rdb_entry_submenu - now with less
allocations
2024-06-16 13:52:28 +02:00
libretroadmin b8448274df Rewrite action_ok_rdb_entry_submenu - no more string_list usage 2024-06-16 13:44:46 +02:00
libretroadmin cfd9cbad8e Fix ST_STRING_OPTIONS 'selected' dropdown item - was off by one 2024-06-16 13:16:49 +02:00
libretroadmin 81a1079123 generic_action_ok_dropdown_setting - don't use string_list for
ST_STRING_OPTIONS
2024-06-16 12:52:22 +02:00
libretroadmin d7d1011ab0 More string_list removal 2024-06-15 19:12:15 +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 59025e849f (menu_cbs_title.c) Remove string_list usage 2024-06-15 15:54:21 +02:00
libretroadmin 1ef4be2280 (menu) More string_list removal 2024-06-15 15:04:05 +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 827e631903 (libretro-common) Some functions now return len 2024-06-15 12:47:51 +02:00
libretroadmin 9e71a566cc Get rid of more instances of string_list in menu code 2024-06-15 07:06:36 +02:00
libretroadmin 6cc5c414da Revert "Cleanups - remove/silence warnings"
This reverts commit cf04a2c0fe.
2024-06-15 06:20:55 +02:00
libretroadmin 7af5cf5690 menu_displaylist_parse_core_option_dropdown - don't use string_list 2024-06-15 05:55:28 +02:00
libretroadmin de12f0bd28 action_get_title_dropdown_items - use strrchr instead of string_list 2024-06-15 05:41:12 +02:00
libretroadmin 8b66d02db1 general_push - get rid of strlcat calls 2024-06-15 03:28:27 +02:00
libretroadmin 5a3000bcdf general_push - simplifications - less usage of string_list 2024-06-15 03:21:54 +02:00
libretroadmin df4d59c120 (cbs_deferred_push) Simplify general_push 2024-06-15 02:47:53 +02:00
libretroadmin c022e4e624 Cut down on snprintf 2024-06-15 00:56:51 +02:00
libretroadmin dcd89f4280 Silence warnings 2024-06-14 23:11:47 +02:00
libretroadmin 55b4ceec70 (WASAPI) WASAPI settings did not show up anymore 2024-06-13 03:53:20 +02:00
zoltanvb a8d77f618c Better support for multiple reserved devices of the same kind. 2024-06-05 18:17:54 -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
Eric Warmenhoven aa36f75dba apple: Hide threaded video setting 2024-06-05 13:06:14 -05:00
Tomáš Kelemen (vudiq) c4f84094c2 Lakka: provide update URL and target name at buildtime
it is more convenient to provide the URL via make option rather than
rely on hardcoded value in the code base. it provides more flexibility
in case of different servers for stable, daily, canary, community, ...

and instead of parsing a file in the filesystem to obtain target name of
the device on which lakka is running, we can provide the target name at
build time as well. the target name is used for the full path URL for
the download of updates.

there is no need to have these values editable via retroarch frontend
and saved in the config file. it is safer to provide them at build time
and have them set this way.
2024-05-25 00:26:22 +02:00
libretroadmin fc022d780d use C comments in C source files 2024-05-23 08:02:27 +02:00
libretroadmin cf04a2c0fe Cleanups - remove/silence warnings 2024-05-23 07:48:08 +02:00
Eric Warmenhoven 8479d83a99 iOS/tvOS: Fix escaping the sandbox for jailbroken devices 2024-05-22 20:33:28 -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
Eric Warmenhoven 7a44fb94a6
iOS: Display app icon in app icon picker in materialui (#16520) 2024-05-12 22:52:52 -07:00
zoltanvb 198656eb20
Add support for multimedia keys (#16502)
Extended RETROK_ values with 18 new items, commonly found on
"multimedia" keyboards.

Mapping added for SDL, X11, Wayland, dinput, winraw keymaps.

Keyboard tester function of Remote Retropad extended to cover new keys.

One fix in Android mapping for #12986
2024-05-11 17:06:54 -07: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 e7f726bd19
iOS: import roms from iCloud (#16478) 2024-04-29 18:30:15 -07:00
sonninnos 5e79dd4569
Bring back audio toggling on menu toggle (#16467) 2024-04-25 10:10:39 -07:00
Eric Warmenhoven d6ceb3d15c
iOS/tvOS: Fix a couple more path name mangling bugs (#16465) 2024-04-24 10:18:47 -07:00
sonninnos e2a1e6024a
Video sync option label cleanup (#16466) 2024-04-24 07:04:49 -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 867d3a92af
iOS/tvOS: fix Import Content (#16450) 2024-04-19 07:12:13 -07:00
BAXY Square ac79b43cb9
Add FlatUX Theme, Remove Retired Themes (#16441)
* Add FlatUX Theme, Remove Retired Themes

With some help from @gouchi, I decided to try and add the FlatUX theme, which has been in the retroarch-assets repository for years.  FlatUX was designed to merge the FlatUI and Retroactive themes into a single, unified design.

With the addition of FlatUX, the Retroactive and Neoactive themes will be retired. This PR removes them both from the menus. The theme files will be removed from retroarch-assets, but are archived on baxy-retroarch-themes.

* Edited Language Files to Add FlatUX, Remove Retired Themes

Edited the language files to Add FlatUX and remove the Retroactive and Neoactive themes.

* Fixed Language Files Again

I apologize for my errors.  Let's see if this gets it right.

* Updated IT Language File
2024-04-18 03:10:56 -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
Tomáš Kelemen c2eddfb260
Upstream Lakka patches (#16439)
* Lakka: fix makefile for Lakka canary

* reboot/restart/eject: fix system commands

* Lakka: add url for devbuild updates
2024-04-16 22:57:49 -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
libretroadmin 95f734fade Silence warning for Dingux - no unused variables 2024-04-06 18:44:49 +02:00
Eric Warmenhoven 595f574f5c
Fix 'Add to Playlist' icon in materialui (#16401) 2024-04-02 00:06:46 -07: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
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
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
Rob Loach 936328e637
Remove cursor_directory and resampler_directory (#16346) 2024-03-12 04:10:42 -07:00
sonninnos 2af029d451
(Ozone) Sidebar + sublabel animation fixes (#16326)
* (Ozone) List cache safeguards

* (Ozone) Sublabel width optimization + cleanup
2024-03-04 14:31:39 -08: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
Eric Warmenhoven 7379d33801
tvOS Top Shelf (#16302)
This puts the History and Favorites playlists (up to five items each)
in the Top Shelf menu. In order for this to be enabled you must build
it yourself and change the app identifiers for the TV app and Top
Shelf extension, and add both of them to an app group.
2024-02-27 23:20:32 -08:00
sonninnos 219c666ef8
(Ozone) Sidebar related fixes (#16299)
* (Ozone) Fix crash when deleting last playlist from sidebar

* (Ozone) Respect navigation wraparound in sidebar

* (Ozone) Fix sidebar after loading configuration
2024-02-27 03:00:00 -08: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
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
sonninnos 3cb79e38f0
Don't disable FF when toggling menu (#16265) 2024-02-20 13:47:00 -08:00
zoltanvb df193685a4
Add sublabel for mouse index entry. (#16268) 2024-02-20 13:46:47 -08:00
sonninnos 7a4255af9b
Add sensible limits to input_axis_threshold (#16255) 2024-02-19 11:13:05 -08:00
sonninnos 3365f9b86e
Fix input bind hold when every axis does not rest on 0 (#16256) 2024-02-19 11:12:54 -08:00
Rob Loach 1af8a5ff34
[Menu] Tweak the Dracula color theme for rgui and ozone (#16223)
* ozone: Tweak the Dracula color theme

* rgui: Update RGUI's Dracula  color theme

* rgui: Update Dracula's transparency colors
2024-02-18 21:42:12 -08:00
Bobby Smith e1cc4fb14d
Add a new "Classic (Toggle)" turbo mode (#16239) 2024-02-18 08:24:05 -08:00
zoltanvb 46cc2250cf
Sublabels for input bind common entries (#16242)
* Add sublabels for "port x controls" entries

Due to the port-specific indexes, sublabels for these entries
are handled specially. Some simplification/generalization  was
applied and hand-crafted string joining was removed from a few
places, though it remains still in other places.

Preparation for #16121 (this commit does not do anything yet with
file names).

* Further simplifications around joypad_index

Removed a few labels, now unused, and the left/right check, as it
fell back to the default which is given anyway in advance.
2024-02-18 08:23:56 -08:00
Bobby Smith de8e33c6b1
Bring the recent system files checks changes to Qt menu (#16251) 2024-02-18 08:22:57 -08:00
zoltanvb 8dd26faf51
Fix ANDROID_INPUT_WORKAROUND sublabel. (#16226) 2024-02-12 05:40: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
Viačasłaŭ Chalikin 997c7453a8
Fix narrator modes (#16179)
* Fix narrator

* Refactor accessibility
2024-02-08 21:14:23 -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
Eric Warmenhoven 79e43e2bd4
Fix many warnings (#16180)
Also change iOS/tvOS to use system zlib instead of compiling it in
2024-01-31 09:15:14 -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 07e945b5ae
(XMB) Layout and thumbnail fixes (#16156)
* (XMB) Thumbnail layout adjustments

* (XMB) Header title improvements

* (XMB) Handheld layout adjustments
2024-01-22 22:10:24 -08:00
sonninnos 266d3ed150
Add option for merging 'Hotkey Enable' device types (#16152) 2024-01-21 18:13:17 -08:00
zoltanvb 7a3c4a14b0
Menu label finetunes (#16144)
Change quit sublabel depending on config save on exit status.
Update restart and menu driver sublabels.
Restore quit help text display.
2024-01-21 18:12:47 -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
waitingmoon 35e140ae08
fix wrong translation key (#16095) 2024-01-09 00:19:50 -08:00
sonninnos 020f3d9390
Silence compilation warning (#16092) 2024-01-09 00:17: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
David G. F b30aa330aa
Fix quit on close in CLI mode (#16054)
This should fix #16048 It seems that launched_from_cli is overwritten
right after the core unload, which makes RA think it was *not* CLI
launched.
2023-12-28 11:10:22 -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
David G. F 799e56ca98
Fix LAN room join for netpacket cores (#16026)
Tested by @schellingb
2023-12-21 13:48:27 -08:00
David G. F 3194dc9d65
Fix quit on content close option (#16014)
Right now close is based on core unload. There are several places where
cores are unloaded without the intention of stopping the emulation (for
instance whenever Netplay is started, core is updated, etc).

Moreover scheduling a quit under some of those events causes a task
queue deadlock (as per issue #15313) and freezed retroarch.

This fix moves the quit on close to a "manual" check, placed in the
relevant places (close content menu option, close content event (which
also covers hotkeys), etc.)
2023-12-20 16:23:18 -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
Bernhard Schelling f029b41a74
Netplay netpacket connection flow improvements (#15986)
- Allow starting netplay host while a netpacket core is running without restart
- Allow connecting to a host while a netpacket core is running without restart
- Avoid clients getting stuck in connection loop if the host has the content paused while a client connects by automatically unpausing
2023-12-09 04:48:36 -08:00
Jamiras 93e5566b9a
(cheevos) inform user when server is unreachable (#15970)
* ensure game placard is loaded on main thread

* show on-screen indicator while disconnected

* show server unreachable message in achievements menu

* remove comment
2023-12-02 05:33:13 -08:00
Eric Warmenhoven d7708ad84a
iOS: allow ignoring the safe area (#11210) (#15951) 2023-11-26 04:59:22 -08:00